├── public
├── favicon.ico
├── js
│ └── ace
│ │ ├── mode-text.js
│ │ ├── ext-error_marker.js
│ │ ├── snippets
│ │ ├── d.js
│ │ ├── abap.js
│ │ ├── ada.js
│ │ ├── dot.js
│ │ ├── ejs.js
│ │ ├── ftl.js
│ │ ├── glsl.js
│ │ ├── haxe.js
│ │ ├── ini.js
│ │ ├── jack.js
│ │ ├── jade.js
│ │ ├── json.js
│ │ ├── jsx.js
│ │ ├── less.js
│ │ ├── lisp.js
│ │ ├── mel.js
│ │ ├── nix.js
│ │ ├── rdoc.js
│ │ ├── rust.js
│ │ ├── sass.js
│ │ ├── scad.js
│ │ ├── scss.js
│ │ ├── sjs.js
│ │ ├── svg.js
│ │ ├── text.js
│ │ ├── toml.js
│ │ ├── twig.js
│ │ ├── vhdl.js
│ │ ├── xml.js
│ │ ├── yaml.js
│ │ ├── cirru.js
│ │ ├── cobol.js
│ │ ├── csharp.js
│ │ ├── curly.js
│ │ ├── forth.js
│ │ ├── golang.js
│ │ ├── groovy.js
│ │ ├── jsoniq.js
│ │ ├── julia.js
│ │ ├── latex.js
│ │ ├── liquid.js
│ │ ├── logiql.js
│ │ ├── lucene.js
│ │ ├── matlab.js
│ │ ├── mysql.js
│ │ ├── ocaml.js
│ │ ├── pascal.js
│ │ ├── pgsql.js
│ │ ├── prolog.js
│ │ ├── rhtml.js
│ │ ├── scala.js
│ │ ├── scheme.js
│ │ ├── smarty.js
│ │ ├── space.js
│ │ ├── stylus.js
│ │ ├── xquery.js
│ │ ├── gherkin.js
│ │ ├── luapage.js
│ │ ├── verilog.js
│ │ ├── asciidoc.js
│ │ ├── batchfile.js
│ │ ├── c9search.js
│ │ ├── html_ruby.js
│ │ ├── mushcode.js
│ │ ├── protobuf.js
│ │ ├── vbscript.js
│ │ ├── apache_conf.js
│ │ ├── autohotkey.js
│ │ ├── coldfusion.js
│ │ ├── handlebars.js
│ │ ├── livescript.js
│ │ ├── objectivec.js
│ │ ├── plain_text.js
│ │ ├── powershell.js
│ │ ├── properties.js
│ │ ├── typescript.js
│ │ ├── assembly_x86.js
│ │ ├── soy_template.js
│ │ ├── html_completions.js
│ │ ├── mushcode_high_rules.js
│ │ ├── makefile.js
│ │ ├── snippets.js
│ │ ├── haml.js
│ │ ├── lua.js
│ │ ├── textile.js
│ │ ├── diff.js
│ │ ├── velocity.js
│ │ ├── sql.js
│ │ ├── dart.js
│ │ ├── tcl.js
│ │ ├── haskell.js
│ │ ├── markdown.js
│ │ ├── clojure.js
│ │ ├── sh.js
│ │ ├── coffee.js
│ │ ├── r.js
│ │ └── c_cpp.js
│ │ ├── mode-plain_text.js
│ │ ├── ext-statusbar.js
│ │ ├── mode-properties.js
│ │ ├── mode-lucene.js
│ │ ├── ext-themelist.js
│ │ ├── ext-spellcheck.js
│ │ ├── mode-sql.js
│ │ ├── mode-ada.js
│ │ ├── mode-scheme.js
│ │ ├── mode-lisp.js
│ │ ├── mode-gherkin.js
│ │ ├── mode-textile.js
│ │ ├── theme-xcode.js
│ │ ├── theme-eclipse.js
│ │ ├── mode-toml.js
│ │ ├── mode-vhdl.js
│ │ ├── theme-clouds.js
│ │ ├── theme-kuroir.js
│ │ ├── mode-space.js
│ │ ├── theme-vibrant_ink.js
│ │ ├── theme-dawn.js
│ │ ├── theme-merbivore.js
│ │ ├── theme-idle_fingers.js
│ │ ├── theme-github.js
│ │ ├── theme-kr.js
│ │ ├── mode-cobol.js
│ │ ├── theme-solarized_dark.js
│ │ ├── theme-cobalt.js
│ │ ├── theme-solarized_light.js
│ │ ├── theme-monokai.js
│ │ ├── mode-diff.js
│ │ ├── ext-whitespace.js
│ │ ├── theme-clouds_midnight.js
│ │ ├── theme-merbivore_soft.js
│ │ ├── theme-twilight.js
│ │ ├── mode-verilog.js
│ │ ├── theme-tomorrow.js
│ │ ├── ext-static_highlight.js
│ │ ├── theme-textmate.js
│ │ ├── theme-pastel_on_dark.js
│ │ ├── mode-ini.js
│ │ └── mode-tex.js
├── packages
│ └── .gitkeep
├── robots.txt
├── img
│ ├── gruik.png
│ ├── icons.png
│ ├── bgbody.png
│ ├── bglogin.png
│ ├── screen1.png
│ ├── screen2.png
│ ├── screen3.png
│ ├── gruik-black.png
│ ├── sprite-skin-flat.png
│ └── sprite-skin-nice.png
├── fonts
│ ├── source-sans-pro
│ │ ├── SourceSansPro-It.otf
│ │ ├── SourceSansPro-Black.otf
│ │ ├── SourceSansPro-Bold.otf
│ │ ├── SourceSansPro-BoldIt.otf
│ │ ├── SourceSansPro-Light.otf
│ │ ├── SourceSansPro-BlackIt.otf
│ │ ├── SourceSansPro-LightIt.otf
│ │ ├── SourceSansPro-Regular.otf
│ │ ├── SourceSansPro-Semibold.otf
│ │ ├── SourceSansPro-ExtraLight.otf
│ │ ├── SourceSansPro-SemiboldIt.otf
│ │ └── SourceSansPro-ExtraLightIt.otf
│ └── kaushan-script
│ │ └── KaushanScript-Regular.otf
├── .htaccess
├── index.php
└── css
│ ├── gruik.css
│ └── fonts.css
├── app
├── commands
│ └── .gitkeep
├── config
│ ├── packages
│ │ ├── .gitkeep
│ │ ├── thomaswelton
│ │ │ └── laravel-gravatar
│ │ │ │ ├── .gitkeep
│ │ │ │ └── config.php
│ │ └── laracasts
│ │ │ └── utilities
│ │ │ └── config.php
│ ├── gruik.php
│ ├── user_preferences.php
│ ├── compile.php
│ ├── testing
│ │ ├── cache.php
│ │ └── session.php
│ ├── workbench.php
│ ├── view.php
│ ├── remote.php
│ ├── auth.php
│ └── queue.php
├── controllers
│ ├── .gitkeep
│ ├── TagController.php
│ ├── BaseController.php
│ ├── SettingsController.php
│ ├── UserController.php
│ └── HomeController.php
├── database
│ ├── seeds
│ │ ├── .gitkeep
│ │ ├── DatabaseSeeder.php
│ │ ├── UserTableSeeder.php
│ │ └── PostTableSeeder.php
│ ├── migrations
│ │ ├── .gitkeep
│ │ ├── 2014_04_27_143338_create_tags_table.php
│ │ ├── 2014_04_27_194029_create_post_tags_table.php
│ │ ├── 2014_04_30_233114_create_user_preferences_table.php
│ │ ├── 2014_04_24_005828_create_posts_table.php
│ │ ├── 2014_04_30_174450_add_public_infos_to_user_table.php
│ │ ├── 2012_12_06_225929_migration_cartalyst_sentry_install_groups.php
│ │ ├── 2012_12_06_225945_migration_cartalyst_sentry_install_users_groups_pivot.php
│ │ ├── 2012_12_06_225988_migration_cartalyst_sentry_install_throttle.php
│ │ └── 2012_12_06_225921_migration_cartalyst_sentry_install_users.php
│ └── production.sqlite
├── start
│ ├── local.php
│ └── artisan.php
├── storage
│ ├── .gitignore
│ ├── cache
│ │ └── .gitignore
│ ├── logs
│ │ └── .gitignore
│ ├── meta
│ │ └── .gitignore
│ ├── sessions
│ │ └── .gitignore
│ └── views
│ │ └── .gitignore
├── views
│ ├── jsassets.blade.php
│ ├── emails
│ │ ├── auth
│ │ │ └── reminder.blade.php
│ │ └── welcome.blade.php
│ ├── auth
│ │ └── tags.blade.php
│ ├── front
│ │ ├── forgot.blade.php
│ │ ├── reset_password.blade.php
│ │ ├── layout.blade.php
│ │ ├── register.blade.php
│ │ └── login.blade.php
│ └── partials
│ │ └── sidebar.blade.php
├── Gruik
│ └── Repo
│ │ ├── Tag
│ │ ├── TagInterface.php
│ │ └── EloquentTag.php
│ │ ├── Post
│ │ └── PostInterface.php
│ │ ├── User
│ │ ├── UserInterface.php
│ │ └── EloquentUser.php
│ │ ├── RepoInterface.php
│ │ ├── RepoAbstract.php
│ │ └── RepoServiceProvider.php
├── tests
│ ├── ExampleTest.php
│ └── TestCase.php
├── lang
│ └── en
│ │ ├── pagination.php
│ │ └── reminders.php
├── models
│ ├── Tag.php
│ ├── UserPreference.php
│ ├── Post.php
│ └── User.php
└── filters.php
├── .gitattributes
├── bootstrap
├── environment.php
├── environment.php.dist
├── paths.php
└── start.php
├── .bowerrc
├── .gitignore
├── server.php
├── bower.json
├── phpunit.xml
├── composer.json
├── LICENSE.txt
└── README.md
/public/favicon.ico:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/app/commands/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/app/config/packages/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/app/controllers/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/app/database/seeds/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/js/ace/mode-text.js:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/packages/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/.gitattributes:
--------------------------------------------------------------------------------
1 | * text=auto
2 |
--------------------------------------------------------------------------------
/app/database/migrations/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/app/database/production.sqlite:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/app/start/local.php:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/robots.txt:
--------------------------------------------------------------------------------
1 | User-agent: *
2 | Disallow:
3 |
--------------------------------------------------------------------------------
/app/config/packages/thomaswelton/laravel-gravatar/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/bootstrap/environment.php:
--------------------------------------------------------------------------------
1 | ''
6 |
7 | ];
--------------------------------------------------------------------------------
/public/img/bgbody.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/grena/gruik/HEAD/public/img/bgbody.png
--------------------------------------------------------------------------------
/public/img/bglogin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/grena/gruik/HEAD/public/img/bglogin.png
--------------------------------------------------------------------------------
/public/img/screen1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/grena/gruik/HEAD/public/img/screen1.png
--------------------------------------------------------------------------------
/public/img/screen2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/grena/gruik/HEAD/public/img/screen2.png
--------------------------------------------------------------------------------
/public/img/screen3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/grena/gruik/HEAD/public/img/screen3.png
--------------------------------------------------------------------------------
/public/img/gruik-black.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/grena/gruik/HEAD/public/img/gruik-black.png
--------------------------------------------------------------------------------
/public/js/ace/ext-error_marker.js:
--------------------------------------------------------------------------------
1 | (function(){window.require(["ace/ext/error_marker"],function(){})})()
--------------------------------------------------------------------------------
/public/img/sprite-skin-flat.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/grena/gruik/HEAD/public/img/sprite-skin-flat.png
--------------------------------------------------------------------------------
/public/img/sprite-skin-nice.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/grena/gruik/HEAD/public/img/sprite-skin-nice.png
--------------------------------------------------------------------------------
/public/js/ace/snippets/d.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/d",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="d"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/abap.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/abap",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="abap"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/ada.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/ada",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="ada"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/dot.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/dot",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="dot"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/ejs.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/ejs",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="ejs"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/ftl.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/ftl",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="ftl"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/glsl.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/glsl",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="glsl"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/haxe.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/haxe",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="haxe"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/ini.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/ini",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="ini"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/jack.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/jack",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="jack"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/jade.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/jade",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="jade"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/json.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/json",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="json"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/jsx.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/jsx",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="jsx"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/less.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/less",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="less"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/lisp.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/lisp",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="lisp"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/mel.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/mel",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="mel"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/nix.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/nix",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="nix"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/rdoc.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/rdoc",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="rdoc"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/rust.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/rust",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="rust"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/sass.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/sass",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="sass"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/scad.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/scad",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="scad"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/scss.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/scss",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="scss"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/sjs.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/sjs",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="sjs"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/svg.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/svg",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="svg"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/text.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/text",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="text"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/toml.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/toml",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="toml"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/twig.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/twig",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="twig"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/vhdl.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/vhdl",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="vhdl"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/xml.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/xml",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="xml"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/yaml.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/yaml",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="yaml"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/cirru.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/cirru",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="cirru"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/cobol.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/cobol",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="cobol"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/csharp.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/csharp",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="csharp"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/curly.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/curly",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="curly"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/forth.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/forth",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="forth"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/golang.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/golang",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="golang"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/groovy.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/groovy",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="groovy"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/jsoniq.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/jsoniq",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="jsoniq"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/julia.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/julia",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="julia"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/latex.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/latex",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="latex"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/liquid.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/liquid",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="liquid"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/logiql.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/logiql",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="logiql"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/lucene.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/lucene",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="lucene"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/matlab.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/matlab",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="matlab"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/mysql.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/mysql",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="mysql"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/ocaml.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/ocaml",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="ocaml"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/pascal.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/pascal",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="pascal"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/pgsql.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/pgsql",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="pgsql"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/prolog.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/prolog",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="prolog"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/rhtml.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/rhtml",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="rhtml"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/scala.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/scala",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="scala"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/scheme.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/scheme",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="scheme"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/smarty.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/smarty",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="smarty"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/space.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/space",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="space"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/stylus.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/stylus",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="stylus"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/xquery.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/xquery",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="xquery"})
--------------------------------------------------------------------------------
/public/fonts/source-sans-pro/SourceSansPro-It.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/grena/gruik/HEAD/public/fonts/source-sans-pro/SourceSansPro-It.otf
--------------------------------------------------------------------------------
/public/js/ace/snippets/gherkin.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/gherkin",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="gherkin"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/luapage.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/luapage",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="luapage"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/verilog.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/verilog",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="verilog"})
--------------------------------------------------------------------------------
/public/fonts/kaushan-script/KaushanScript-Regular.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/grena/gruik/HEAD/public/fonts/kaushan-script/KaushanScript-Regular.otf
--------------------------------------------------------------------------------
/public/fonts/source-sans-pro/SourceSansPro-Black.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/grena/gruik/HEAD/public/fonts/source-sans-pro/SourceSansPro-Black.otf
--------------------------------------------------------------------------------
/public/fonts/source-sans-pro/SourceSansPro-Bold.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/grena/gruik/HEAD/public/fonts/source-sans-pro/SourceSansPro-Bold.otf
--------------------------------------------------------------------------------
/public/fonts/source-sans-pro/SourceSansPro-BoldIt.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/grena/gruik/HEAD/public/fonts/source-sans-pro/SourceSansPro-BoldIt.otf
--------------------------------------------------------------------------------
/public/fonts/source-sans-pro/SourceSansPro-Light.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/grena/gruik/HEAD/public/fonts/source-sans-pro/SourceSansPro-Light.otf
--------------------------------------------------------------------------------
/public/js/ace/snippets/asciidoc.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/asciidoc",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="asciidoc"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/batchfile.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/batchfile",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="batchfile"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/c9search.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/c9search",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="c9search"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/html_ruby.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/html_ruby",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="html_ruby"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/mushcode.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/mushcode",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="mushcode"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/protobuf.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/protobuf",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="protobuf"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/vbscript.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/vbscript",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="vbscript"})
--------------------------------------------------------------------------------
/public/fonts/source-sans-pro/SourceSansPro-BlackIt.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/grena/gruik/HEAD/public/fonts/source-sans-pro/SourceSansPro-BlackIt.otf
--------------------------------------------------------------------------------
/public/fonts/source-sans-pro/SourceSansPro-LightIt.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/grena/gruik/HEAD/public/fonts/source-sans-pro/SourceSansPro-LightIt.otf
--------------------------------------------------------------------------------
/public/fonts/source-sans-pro/SourceSansPro-Regular.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/grena/gruik/HEAD/public/fonts/source-sans-pro/SourceSansPro-Regular.otf
--------------------------------------------------------------------------------
/public/fonts/source-sans-pro/SourceSansPro-Semibold.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/grena/gruik/HEAD/public/fonts/source-sans-pro/SourceSansPro-Semibold.otf
--------------------------------------------------------------------------------
/public/js/ace/snippets/apache_conf.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/apache_conf",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="apache_conf"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/autohotkey.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/autohotkey",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="autohotkey"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/coldfusion.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/coldfusion",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="coldfusion"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/handlebars.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/handlebars",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="handlebars"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/livescript.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/livescript",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="livescript"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/objectivec.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/objectivec",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="objectivec"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/plain_text.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/plain_text",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="plain_text"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/powershell.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/powershell",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="powershell"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/properties.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/properties",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="properties"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/typescript.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/typescript",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="typescript"})
--------------------------------------------------------------------------------
/public/fonts/source-sans-pro/SourceSansPro-ExtraLight.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/grena/gruik/HEAD/public/fonts/source-sans-pro/SourceSansPro-ExtraLight.otf
--------------------------------------------------------------------------------
/public/fonts/source-sans-pro/SourceSansPro-SemiboldIt.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/grena/gruik/HEAD/public/fonts/source-sans-pro/SourceSansPro-SemiboldIt.otf
--------------------------------------------------------------------------------
/public/js/ace/snippets/assembly_x86.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/assembly_x86",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="assembly_x86"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/soy_template.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/soy_template",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="soy_template"})
--------------------------------------------------------------------------------
/public/fonts/source-sans-pro/SourceSansPro-ExtraLightIt.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/grena/gruik/HEAD/public/fonts/source-sans-pro/SourceSansPro-ExtraLightIt.otf
--------------------------------------------------------------------------------
/app/Gruik/Repo/Tag/TagInterface.php:
--------------------------------------------------------------------------------
1 | 80,
5 | 'default' => 'identicon',
6 | 'maxRating' => 'g'
7 | );
8 |
--------------------------------------------------------------------------------
/public/js/ace/snippets/mushcode_high_rules.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/mushcode_high_rules",["require","exports","module"],function(e,t,n){t.snippetText="",t.scope="mushcode_high_rules"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/makefile.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/makefile",["require","exports","module"],function(e,t,n){t.snippetText="snippet ifeq\n ifeq (${1:cond0},${2:cond1})\n ${3:code}\n endif\n",t.scope="makefile"})
--------------------------------------------------------------------------------
/app/config/user_preferences.php:
--------------------------------------------------------------------------------
1 | [
8 | 'private' => false,
9 | 'allow_comments' => true
10 | ]
11 |
12 | ];
--------------------------------------------------------------------------------
/app/controllers/TagController.php:
--------------------------------------------------------------------------------
1 | with('user', Sentry::getUser());
9 | }
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/public/js/ace/snippets/snippets.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/snippets",["require","exports","module"],function(e,t,n){t.snippetText="# snippets for making snippets :)\nsnippet snip\n snippet ${1:trigger}\n ${2}\nsnippet msnip\n snippet ${1:trigger} ${2:description}\n ${3}\nsnippet v\n {VISUAL}\n",t.scope="snippets"})
--------------------------------------------------------------------------------
/app/database/seeds/DatabaseSeeder.php:
--------------------------------------------------------------------------------
1 | call('UserTableSeeder');
15 | $this->call('PostTableSeeder');
16 | }
17 |
18 | }
19 |
--------------------------------------------------------------------------------
/app/views/emails/auth/reminder.blade.php:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Password Reset
8 |
9 |
10 | To reset your password, complete this form: {% link_to_route('passwordReseter', 'reset page', array($token)) %}.
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/app/tests/ExampleTest.php:
--------------------------------------------------------------------------------
1 | client->request('GET', '/');
13 |
14 | $this->assertTrue($this->client->getResponse()->isOk());
15 | }
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/app/controllers/BaseController.php:
--------------------------------------------------------------------------------
1 | layout))
13 | {
14 | $this->layout = View::make($this->layout);
15 | }
16 | }
17 |
18 | }
19 |
--------------------------------------------------------------------------------
/app/database/seeds/UserTableSeeder.php:
--------------------------------------------------------------------------------
1 | 'test@example.com',
9 | 'username' => 'test',
10 | 'password' => 'test',
11 | 'activated' => true,
12 | ));
13 | }
14 | }
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # System
2 | .DS_Store
3 | Thumbs.db
4 |
5 | # Developer env
6 | /.idea
7 | .jshintrc
8 |
9 | # Vendor & externals
10 | /vendor
11 | /public/vendor
12 |
13 | # Composer
14 | composer.phar
15 | composer.lock
16 |
17 | # NPM
18 | /node_modules/
19 | npm-debug.log
20 |
21 | # Laravel
22 | /bootstrap/compiled.php
23 | /app/config/local
24 | .env.local.php
25 | .env.php
26 |
--------------------------------------------------------------------------------
/app/Gruik/Repo/RepoInterface.php:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Welcome on Gruik !
8 |
9 |
10 | Hi
{% $user->username %} ! Thank you for your registration on
Gruik !
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/public/.htaccess:
--------------------------------------------------------------------------------
1 |
2 |
3 | Options -MultiViews
4 |
5 |
6 | RewriteEngine On
7 |
8 | # Redirect Trailing Slashes...
9 | RewriteRule ^(.*)/$ /$1 [L,R=301]
10 |
11 | # Handle Front Controller...
12 | RewriteCond %{REQUEST_FILENAME} !-d
13 | RewriteCond %{REQUEST_FILENAME} !-f
14 | RewriteRule ^ index.php [L]
15 |
16 |
--------------------------------------------------------------------------------
/app/tests/TestCase.php:
--------------------------------------------------------------------------------
1 | '${1:partial}'\nsnippet =rpl\n = render :partial => '${1:partial}', :locals => {}\nsnippet =rpc\n = render :partial => '${1:partial}', :collection => @$1\n\n",t.scope="haml"})
--------------------------------------------------------------------------------
/app/start/artisan.php:
--------------------------------------------------------------------------------
1 | preferences = $userRepo->getPreferencesForUser($user->id);
11 |
12 | JavaScript::put([
13 | 'user' => $user
14 | ]);
15 |
16 | return View::make('auth.settings')
17 | ->with('user', $user);
18 | }
19 |
20 | }
21 |
--------------------------------------------------------------------------------
/public/js/ace/mode-plain_text.js:
--------------------------------------------------------------------------------
1 | define("ace/mode/plain_text",["require","exports","module","ace/lib/oop","ace/mode/text","ace/tokenizer","ace/mode/text_highlight_rules","ace/mode/behaviour"],function(e,t,n){var r=e("../lib/oop"),i=e("./text").Mode,s=e("../tokenizer").Tokenizer,o=e("./text_highlight_rules").TextHighlightRules,u=e("./behaviour").Behaviour,a=function(){this.HighlightRules=o,this.$behaviour=new u};r.inherits(a,i),function(){this.type="text",this.getNextLineIndent=function(e,t,n){return""},this.$id="ace/mode/plain_text"}.call(a.prototype),t.Mode=a})
--------------------------------------------------------------------------------
/public/js/ace/snippets/diff.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/diff",["require","exports","module"],function(e,t,n){t.snippetText='# DEP-3 (http://dep.debian.net/deps/dep3/) style patch header\nsnippet header DEP-3 style header\n Description: ${1}\n Origin: ${2:vendor|upstream|other}, ${3:url of the original patch}\n Bug: ${4:url in upstream bugtracker}\n Forwarded: ${5:no|not-needed|url}\n Author: ${6:`g:snips_author`}\n Reviewed-by: ${7:name and email}\n Last-Update: ${8:`strftime("%Y-%m-%d")`}\n Applied-Upstream: ${9:upstream version|url|commit}\n\n',t.scope="diff"})
--------------------------------------------------------------------------------
/app/views/auth/tags.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layout')
2 |
3 | @section('controller')
4 | ng-controller="TagsCtrl"
5 | @stop
6 |
7 | @section('content')
8 |
19 | @stop
20 |
21 |
--------------------------------------------------------------------------------
/server.php:
--------------------------------------------------------------------------------
1 | '« Previous',
17 |
18 | 'next' => 'Next »',
19 |
20 | );
21 |
--------------------------------------------------------------------------------
/app/config/testing/cache.php:
--------------------------------------------------------------------------------
1 | 'array',
19 |
20 | );
21 |
--------------------------------------------------------------------------------
/bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "gruik",
3 | "version": "0.1.0",
4 | "dependencies": {
5 | "jquery": "~2.0.0",
6 | "bootstrap": "~3.3.1",
7 | "font-awesome": "~4.2.0",
8 | "lodash": "~2.4.1",
9 | "momentjs": "~2.6.0",
10 | "angular-bootstrap": "~0.10.0",
11 | "angular": "1.3.8",
12 | "select2": "~3.4.6",
13 | "markdown": "~0.5.0",
14 | "marked": "~0.3.2",
15 | "highlightjs": "~8.0.0",
16 | "angular-ui-select2": "~0.0.5",
17 | "selectize": "~0.11.0",
18 | "checklist-model": "~0.1.3",
19 | "smoke.js": "*",
20 | "humane-js": "~3.2.0",
21 | "ekko-lightbox": "~3.2.0"
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/public/js/ace/snippets/velocity.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/velocity",["require","exports","module"],function(e,t,n){t.snippetText='# macro\nsnippet #macro\n #macro ( ${1:macroName} ${2:\\$var1, [\\$var2, ...]} )\n ${3:## macro code}\n #end\n# foreach\nsnippet #foreach\n #foreach ( ${1:\\$item} in ${2:\\$collection} )\n ${3:## foreach code}\n #end\n# if\nsnippet #if\n #if ( ${1:true} )\n ${0}\n #end\n# if ... else\nsnippet #ife\n #if ( ${1:true} )\n ${2}\n #else\n ${0}\n #end\n#import\nsnippet #import\n #import ( "${1:path/to/velocity/format}" )\n# set\nsnippet #set\n #set ( $${1:var} = ${0} )\n',t.scope="velocity",t.includeScopes=["html","javascript","css"]})
--------------------------------------------------------------------------------
/phpunit.xml:
--------------------------------------------------------------------------------
1 |
2 |
13 |
14 |
15 | ./app/tests/
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/app/config/testing/session.php:
--------------------------------------------------------------------------------
1 | 'array',
20 |
21 | );
22 |
--------------------------------------------------------------------------------
/app/models/Tag.php:
--------------------------------------------------------------------------------
1 | belongsTo('User');
27 | }
28 |
29 | public function posts()
30 | {
31 | return $this->belongsToMany('Post', 'post_tags');
32 | }
33 |
34 | }
--------------------------------------------------------------------------------
/app/models/UserPreference.php:
--------------------------------------------------------------------------------
1 | belongsTo('User');
28 | }
29 |
30 | public function getValueAttribute($value)
31 | {
32 | return boolval($value);
33 | }
34 |
35 | }
--------------------------------------------------------------------------------
/app/database/migrations/2014_04_27_143338_create_tags_table.php:
--------------------------------------------------------------------------------
1 | increments('id');
18 | $table->integer('user_id')->unsigned()->index();
19 | $table->string('label');
20 | $table->timestamps();
21 | });
22 | }
23 |
24 | /**
25 | * Reverse the migrations.
26 | *
27 | * @return void
28 | */
29 | public function down()
30 | {
31 | Schema::drop('tags');
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/app/database/migrations/2014_04_27_194029_create_post_tags_table.php:
--------------------------------------------------------------------------------
1 | increments('id');
18 | $table->integer('post_id')->unsigned()->index();
19 | $table->integer('tag_id')->unsigned()->index();
20 | });
21 | }
22 |
23 | /**
24 | * Reverse the migrations.
25 | *
26 | * @return void
27 | */
28 | public function down()
29 | {
30 | Schema::drop('post_tags');
31 | }
32 |
33 | }
34 |
--------------------------------------------------------------------------------
/app/lang/en/reminders.php:
--------------------------------------------------------------------------------
1 | "Passwords must be at least six characters and match the confirmation.",
17 |
18 | "user" => "We can't find a user with that e-mail address.",
19 |
20 | "token" => "This password reset token is invalid.",
21 |
22 | "sent" => "Password reminder sent!",
23 |
24 | );
25 |
--------------------------------------------------------------------------------
/app/database/seeds/PostTableSeeder.php:
--------------------------------------------------------------------------------
1 | 1,
11 | 'title' => 'My hello world',
12 | 'md_content' => '#Hello world !',
13 | 'private' => false,
14 | 'allow_comments' => true,
15 | ];
16 |
17 | $post2 = [
18 | 'user_id' => 1,
19 | 'title' => 'My private note.',
20 | 'md_content' => 'Because markdown is __awesome__.',
21 | 'private' => true,
22 | 'allow_comments' => false,
23 | ];
24 |
25 | $postRepo->store($post1);
26 | $postRepo->store($post2);
27 | }
28 | }
--------------------------------------------------------------------------------
/app/database/migrations/2014_04_30_233114_create_user_preferences_table.php:
--------------------------------------------------------------------------------
1 | increments('id');
18 | $table->integer('user_id')->unsigned()->index();
19 | $table->string('key');
20 | $table->string('value');
21 | $table->timestamps();
22 | });
23 | }
24 |
25 | /**
26 | * Reverse the migrations.
27 | *
28 | * @return void
29 | */
30 | public function down()
31 | {
32 | Schema::drop('user_preferences');
33 | }
34 |
35 | }
36 |
--------------------------------------------------------------------------------
/app/Gruik/Repo/RepoAbstract.php:
--------------------------------------------------------------------------------
1 | model->newInstance( $attributes );
24 | }
25 |
26 | public function byId($id)
27 | {
28 | return $this->model->find($id);
29 | }
30 | }
--------------------------------------------------------------------------------
/app/database/migrations/2014_04_24_005828_create_posts_table.php:
--------------------------------------------------------------------------------
1 | increments('id');
18 | $table->integer('user_id')->unsigned()->index();
19 | $table->string('title')->nullable();
20 | $table->text('md_content');
21 | $table->boolean('private')->default(false);
22 | $table->boolean('allow_comments')->default(true);
23 | $table->timestamps();
24 | });
25 | }
26 |
27 | /**
28 | * Reverse the migrations.
29 | *
30 | * @return void
31 | */
32 | public function down()
33 | {
34 | Schema::drop('posts');
35 | }
36 |
37 | }
38 |
--------------------------------------------------------------------------------
/public/js/ace/snippets/sql.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/sql",["require","exports","module"],function(e,t,n){t.snippetText="snippet tbl\n create table ${1:table} (\n ${2:columns}\n );\nsnippet col\n ${1:name} ${2:type} ${3:default ''} ${4:not null}\nsnippet ccol\n ${1:name} varchar2(${2:size}) ${3:default ''} ${4:not null}\nsnippet ncol\n ${1:name} number ${3:default 0} ${4:not null}\nsnippet dcol\n ${1:name} date ${3:default sysdate} ${4:not null}\nsnippet ind\n create index ${3:$1_$2} on ${1:table}(${2:column});\nsnippet uind\n create unique index ${1:name} on ${2:table}(${3:column});\nsnippet tblcom\n comment on table ${1:table} is '${2:comment}';\nsnippet colcom\n comment on column ${1:table}.${2:column} is '${3:comment}';\nsnippet addcol\n alter table ${1:table} add (${2:column} ${3:type});\nsnippet seq\n create sequence ${1:name} start with ${2:1} increment by ${3:1} minvalue ${4:1};\nsnippet s*\n select * from ${1:table}\n",t.scope="sql"})
--------------------------------------------------------------------------------
/app/Gruik/Repo/RepoServiceProvider.php:
--------------------------------------------------------------------------------
1 | app;
18 |
19 | $app->bind('Gruik\Repo\User\UserInterface', function($app)
20 | {
21 | return new EloquentUser(new User, new UserPreference);
22 | });
23 |
24 | $app->bind('Gruik\Repo\Post\PostInterface', function($app)
25 | {
26 | return new EloquentPost(new Post);
27 | });
28 |
29 | $app->bind('Gruik\Repo\Tag\TagInterface', function($app)
30 | {
31 | return new EloquentTag(new Tag);
32 | });
33 |
34 | }
35 | }
--------------------------------------------------------------------------------
/public/js/ace/ext-statusbar.js:
--------------------------------------------------------------------------------
1 | define("ace/ext/statusbar",["require","exports","module","ace/lib/dom","ace/lib/lang"],function(e,t,n){var r=e("ace/lib/dom"),i=e("ace/lib/lang"),s=function(e,t){this.element=r.createElement("div"),this.element.className="ace_status-indicator",this.element.style.cssText="display: inline-block;",t.appendChild(this.element);var n=i.delayedCall(function(){this.updateStatus(e)}.bind(this));e.on("changeStatus",function(){n.schedule(100)}),e.on("changeSelection",function(){n.schedule(100)})};(function(){this.updateStatus=function(e){function n(e,n){e&&t.push(e,n||"|")}var t=[];e.$vimModeHandler?n(e.$vimModeHandler.getStatusText()):e.commands.recording&&n("REC");var r=e.selection.lead;n(r.row+":"+r.column," ");if(!e.selection.isEmpty()){var i=e.getSelectionRange();n("("+(i.end.row-i.start.row)+":"+(i.end.column-i.start.column)+")")}t.pop(),this.element.textContent=t.join("")}}).call(s.prototype),t.StatusBar=s}),function(){window.require(["ace/ext/statusbar"],function(){})}()
--------------------------------------------------------------------------------
/app/models/Post.php:
--------------------------------------------------------------------------------
1 | belongsTo('User');
30 | }
31 |
32 | public function tags()
33 | {
34 | return $this->belongsToMany('Tag', 'post_tags');
35 | }
36 |
37 | public function getPrivateAttribute($value)
38 | {
39 | return boolval($value);
40 | }
41 |
42 | public function getAllowCommentsAttribute($value)
43 | {
44 | return boolval($value);
45 | }
46 |
47 | }
--------------------------------------------------------------------------------
/app/config/packages/laracasts/utilities/config.php:
--------------------------------------------------------------------------------
1 | 'jsassets',
15 |
16 | /*
17 | |--------------------------------------------------------------------------
18 | | JavaScript Namespace
19 | |--------------------------------------------------------------------------
20 | |
21 | | By default, we'll add variables to the global window object.
22 | | It's recommended that you change this to some namespace - anything.
23 | | That way, from your JS, you may do something like `Laracasts.myVar`.
24 | |
25 | */
26 | 'js_namespace' => 'Gruik'
27 |
28 | ];
--------------------------------------------------------------------------------
/app/config/workbench.php:
--------------------------------------------------------------------------------
1 | '',
17 |
18 | /*
19 | |--------------------------------------------------------------------------
20 | | Workbench Author E-Mail Address
21 | |--------------------------------------------------------------------------
22 | |
23 | | Like the option above, your e-mail address is used when generating new
24 | | workbench packages. The e-mail is placed in your composer.json file
25 | | automatically after the package is created by the workbench tool.
26 | |
27 | */
28 |
29 | 'email' => '',
30 |
31 | );
32 |
--------------------------------------------------------------------------------
/app/database/migrations/2014_04_30_174450_add_public_infos_to_user_table.php:
--------------------------------------------------------------------------------
1 | string('about', 512)->nullable();
18 | $table->string('github_username')->nullable();
19 | $table->string('twitter_username')->nullable();
20 | $table->string('username');
21 | });
22 | }
23 |
24 | /**
25 | * Reverse the migrations.
26 | *
27 | * @return void
28 | */
29 | public function down()
30 | {
31 | Schema::table('users', function($table)
32 | {
33 | $table->dropColumn('about');
34 | $table->dropColumn('github_username');
35 | $table->dropColumn('twitter_username');
36 | $table->dropColumn('username');
37 | });
38 | }
39 |
40 | }
41 |
--------------------------------------------------------------------------------
/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "laravel/laravel",
3 | "description": "The Laravel Framework.",
4 | "keywords": ["framework", "laravel"],
5 | "license": "MIT",
6 | "require": {
7 | "laravel/framework": "4.2.*",
8 | "cartalyst/sentry": "2.1.*",
9 | "laracasts/utilities": "1.0.*",
10 | "thomaswelton/laravel-gravatar": "0.0.x"
11 | },
12 | "autoload": {
13 | "classmap": [
14 | "app/commands",
15 | "app/controllers",
16 | "app/models",
17 | "app/database/migrations",
18 | "app/database/seeds",
19 | "app/tests/TestCase.php"
20 | ],
21 | "psr-0": {
22 | "Gruik": "app"
23 | }
24 | },
25 | "scripts": {
26 | "post-install-cmd": [
27 | "php artisan clear-compiled",
28 | "php artisan optimize"
29 | ],
30 | "post-update-cmd": [
31 | "php artisan clear-compiled",
32 | "php artisan optimize"
33 | ],
34 | "post-create-project-cmd": [
35 | "php artisan key:generate"
36 | ]
37 | },
38 | "config": {
39 | "preferred-install": "dist"
40 | },
41 | "minimum-stability": "stable"
42 | }
43 |
--------------------------------------------------------------------------------
/app/config/view.php:
--------------------------------------------------------------------------------
1 | array(__DIR__.'/../views'),
17 |
18 | /*
19 | |--------------------------------------------------------------------------
20 | | Pagination View
21 | |--------------------------------------------------------------------------
22 | |
23 | | This view will be used to render the pagination link output, and can
24 | | be easily customized here to show any view you like. A clean view
25 | | compatible with Twitter's Bootstrap is given to you by default.
26 | |
27 | */
28 |
29 | 'pagination' => 'pagination::slider-3',
30 |
31 | );
32 |
--------------------------------------------------------------------------------
/public/js/ace/mode-properties.js:
--------------------------------------------------------------------------------
1 | define("ace/mode/properties",["require","exports","module","ace/lib/oop","ace/mode/text","ace/tokenizer","ace/mode/properties_highlight_rules"],function(e,t,n){var r=e("../lib/oop"),i=e("./text").Mode,s=e("../tokenizer").Tokenizer,o=e("./properties_highlight_rules").PropertiesHighlightRules,u=function(){this.HighlightRules=o};r.inherits(u,i),function(){this.$id="ace/mode/properties"}.call(u.prototype),t.Mode=u}),define("ace/mode/properties_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,t,n){var r=e("../lib/oop"),i=e("./text_highlight_rules").TextHighlightRules,s=function(){var e=/\\u[0-9a-fA-F]{4}|\\/;this.$rules={start:[{token:"comment",regex:/[!#].*$/},{token:"keyword",regex:/[=:]$/},{token:"keyword",regex:/[=:]/,next:"value"},{token:"constant.language.escape",regex:e},{defaultToken:"variable"}],value:[{regex:/\\$/,token:"string",next:"value"},{regex:/$/,token:"string",next:"start"},{token:"constant.language.escape",regex:e},{defaultToken:"string"}]}};r.inherits(s,i),t.PropertiesHighlightRules=s})
--------------------------------------------------------------------------------
/app/views/front/forgot.blade.php:
--------------------------------------------------------------------------------
1 | @extends('front.layout')
2 |
3 | @section('title', 'Forgot Password')
4 |
5 | @section('controller', 'ng-controller="ForgotCtrl"')
6 |
7 | @section('content')
8 |
28 | @stop
29 |
--------------------------------------------------------------------------------
/LICENSE.txt:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c)
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in
13 | all copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | THE SOFTWARE.
22 |
--------------------------------------------------------------------------------
/public/js/ace/mode-lucene.js:
--------------------------------------------------------------------------------
1 | define("ace/mode/lucene",["require","exports","module","ace/lib/oop","ace/mode/text","ace/tokenizer","ace/mode/lucene_highlight_rules"],function(e,t,n){var r=e("../lib/oop"),i=e("./text").Mode,s=e("../tokenizer").Tokenizer,o=e("./lucene_highlight_rules").LuceneHighlightRules,u=function(){this.$tokenizer=new s((new o).getRules())};r.inherits(u,i),function(){this.$id="ace/mode/lucene"}.call(u.prototype),t.Mode=u}),define("ace/mode/lucene_highlight_rules",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/mode/text_highlight_rules"],function(e,t,n){var r=e("../lib/oop"),i=e("../lib/lang"),s=e("./text_highlight_rules").TextHighlightRules,o=function(){this.$rules={start:[{token:"constant.character.negation",regex:"[\\-]"},{token:"constant.character.interro",regex:"[\\?]"},{token:"constant.character.asterisk",regex:"[\\*]"},{token:"constant.character.proximity",regex:"~[0-9]+\\b"},{token:"keyword.operator",regex:"(?:AND|OR|NOT)\\b"},{token:"paren.lparen",regex:"[\\(]"},{token:"paren.rparen",regex:"[\\)]"},{token:"keyword",regex:"[\\S]+:"},{token:"string",regex:'".*?"'},{token:"text",regex:"\\s+"}]}};r.inherits(o,s),t.LuceneHighlightRules=o})
--------------------------------------------------------------------------------
/public/js/ace/ext-themelist.js:
--------------------------------------------------------------------------------
1 | define("ace/ext/themelist",["require","exports","module"],function(e,t,n){var r=[["Chrome"],["Clouds"],["Crimson Editor"],["Dawn"],["Dreamweaver"],["Eclipse"],["GitHub"],["Solarized Light"],["TextMate"],["Tomorrow"],["XCode"],["Kuroir"],["KatzenMilch"],["Ambiance","ambiance","dark"],["Chaos","chaos","dark"],["Clouds Midnight","clouds_midnight","dark"],["Cobalt","cobalt","dark"],["idle Fingers","idle_fingers","dark"],["krTheme","kr_theme","dark"],["Merbivore","merbivore","dark"],["Merbivore Soft","merbivore_soft","dark"],["Mono Industrial","mono_industrial","dark"],["Monokai","monokai","dark"],["Pastel on dark","pastel_on_dark","dark"],["Solarized Dark","solarized_dark","dark"],["Terminal","terminal","dark"],["Tomorrow Night","tomorrow_night","dark"],["Tomorrow Night Blue","tomorrow_night_blue","dark"],["Tomorrow Night Bright","tomorrow_night_bright","dark"],["Tomorrow Night 80s","tomorrow_night_eighties","dark"],["Twilight","twilight","dark"],["Vibrant Ink","vibrant_ink","dark"]];t.themesByName={},t.themes=r.map(function(e){var n=e[1]||e[0].replace(/ /g,"_").toLowerCase(),r={caption:e[0],theme:"ace/theme/"+n,isDark:e[2]=="dark",name:n};return t.themesByName[n]=r,r})}),function(){window.require(["ace/ext/themelist"],function(){})}()
--------------------------------------------------------------------------------
/public/js/ace/snippets/dart.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/dart",["require","exports","module"],function(e,t,n){t.snippetText="snippet lib\n library ${1};\n ${2}\nsnippet im\n import '${1}';\n ${2}\nsnippet pa\n part '${1}';\n ${2}\nsnippet pao\n part of ${1};\n ${2}\nsnippet main\n void main() {\n ${1:/* code */}\n }\nsnippet st\n static ${1}\nsnippet fi\n final ${1}\nsnippet re\n return ${1}\nsnippet br\n break;\nsnippet th\n throw ${1}\nsnippet cl\n class ${1:`Filename(\"\", \"untitled\")`} ${2}\nsnippet imp\n implements ${1}\nsnippet ext\n extends ${1}\nsnippet if\n if (${1:true}) {\n ${2}\n }\nsnippet ife\n if (${1:true}) {\n ${2}\n } else {\n ${3}\n }\nsnippet el\n else\nsnippet sw\n switch (${1}) {\n ${2}\n }\nsnippet cs\n case ${1}:\n ${2}\nsnippet de\n default:\n ${1}\nsnippet for\n for (var ${2:i} = 0, len = ${1:things}.length; $2 < len; ${3:++}$2) {\n ${4:$1[$2]}\n }\nsnippet fore\n for (final ${2:item} in ${1:itemList}) {\n ${3:/* code */}\n }\nsnippet wh\n while (${1:/* condition */}) {\n ${2:/* code */}\n }\nsnippet dowh\n do {\n ${2:/* code */}\n } while (${1:/* condition */});\nsnippet as\n assert(${1:/* condition */});\nsnippet try\n try {\n ${2}\n } catch (${1:Exception e}) {\n }\nsnippet tryf\n try {\n ${2}\n } catch (${1:Exception e}) {\n } finally {\n }\n",t.scope="dart"})
--------------------------------------------------------------------------------
/public/js/ace/ext-spellcheck.js:
--------------------------------------------------------------------------------
1 | define("ace/ext/spellcheck",["require","exports","module","ace/lib/event","ace/editor","ace/config"],function(e,t,n){var r=e("../lib/event");t.contextMenuHandler=function(e){var t=e.target,n=t.textInput.getElement();if(!t.selection.isEmpty())return;var i=t.getCursorPosition(),s=t.session.getWordRange(i.row,i.column),o=t.session.getTextRange(s);t.session.tokenRe.lastIndex=0;if(!t.session.tokenRe.test(o))return;var u="\x01\x01",a=o+" "+u;n.value=a,n.setSelectionRange(o.length,o.length+1),n.setSelectionRange(0,0),n.setSelectionRange(0,o.length);var f=!1;r.addListener(n,"keydown",function l(){r.removeListener(n,"keydown",l),f=!0}),t.textInput.setInputHandler(function(e){console.log(e,a,n.selectionStart,n.selectionEnd);if(e==a)return"";if(e.lastIndexOf(a,0)===0)return e.slice(a.length);if(e.substr(n.selectionEnd)==a)return e.slice(0,-a.length);if(e.slice(-2)==u){var r=e.slice(0,-2);if(r.slice(-1)==" ")return f?r.substring(0,n.selectionEnd):(r=r.slice(0,-1),t.session.replace(s,r),"")}return e})};var i=e("../editor").Editor;e("../config").defineOptions(i.prototype,"editor",{spellcheck:{set:function(e){var n=this.textInput.getElement();n.spellcheck=!!e,e?this.on("nativecontextmenu",t.contextMenuHandler):this.removeListener("nativecontextmenu",t.contextMenuHandler)},value:!0}})}),function(){window.require(["ace/ext/spellcheck"],function(){})}()
--------------------------------------------------------------------------------
/app/views/front/reset_password.blade.php:
--------------------------------------------------------------------------------
1 | @extends('front.layout')
2 |
3 | @section('title', 'Reset password')
4 |
5 | @section('controller', 'ng-controller="ResetPasswordCtrl"')
6 |
7 | @section('content')
8 |
31 | @stop
32 |
--------------------------------------------------------------------------------
/app/views/partials/sidebar.blade.php:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | ## What is Gruik ?
2 |
3 | It's a free & open-source **note-taking service**. A space where you can store notes, tutorials, code snippets... by writing them in markdown and then keep them private or public.
4 |
5 | 
6 |
7 | ## How to install ?
8 | __For now, Gruik is under hard development with regular breaking changes !__
9 |
10 | But if you want to try it :
11 |
12 | * Clone this repo
13 | * Make sure to have a database that Laravel framework supports, and edit `app/config/local/database.php` file.
14 | * `composer install && bower install && php artisan migrate --seed && php artisan serve`
15 | * Go to [http://localhost:8000](http://localhost:8000) and login with [test@example.com : test]
16 |
17 | ## Technologies, libs & design
18 |
19 | #### Technos
20 |
21 | * PHP 5.5+
22 | * Laravel Framework
23 | * AngularJS
24 |
25 | #### Libs
26 | Well, the best way to look for libs we use is to search in the [composer file](https://github.com/grena/gruik/blob/master/composer.json), and the [bower file](https://github.com/grena/gruik/blob/master/bower.json).
27 |
28 | #### Design & Logo
29 | Design template is the free MIT licensed [template AdminLTE](https://github.com/almasaeed2010/AdminLTE), and the awesome and sweet logo has been designed by [MyleneLa](http://www.mylenela.fr).
30 |
31 | ## License
32 |
33 | The Gruik App is open-sourced software licensed under the [MIT license](http://opensource.org/licenses/MIT)
34 |
--------------------------------------------------------------------------------
/app/views/front/layout.blade.php:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Gruik. - @yield('title')
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 | @yield('content')
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/public/js/ace/mode-sql.js:
--------------------------------------------------------------------------------
1 | define("ace/mode/sql",["require","exports","module","ace/lib/oop","ace/mode/text","ace/tokenizer","ace/mode/sql_highlight_rules","ace/range"],function(e,t,n){var r=e("../lib/oop"),i=e("./text").Mode,s=e("../tokenizer").Tokenizer,o=e("./sql_highlight_rules").SqlHighlightRules,u=e("../range").Range,a=function(){this.HighlightRules=o};r.inherits(a,i),function(){this.lineCommentStart="--",this.$id="ace/mode/sql"}.call(a.prototype),t.Mode=a}),define("ace/mode/sql_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,t,n){var r=e("../lib/oop"),i=e("./text_highlight_rules").TextHighlightRules,s=function(){var e="select|insert|update|delete|from|where|and|or|group|by|order|limit|offset|having|as|case|when|else|end|type|left|right|join|on|outer|desc|asc",t="true|false|null",n="count|min|max|avg|sum|rank|now|coalesce",r=this.createKeywordMapper({"support.function":n,keyword:e,"constant.language":t},"identifier",!0);this.$rules={start:[{token:"comment",regex:"--.*$"},{token:"comment",start:"/\\*",end:"\\*/"},{token:"string",regex:'".*?"'},{token:"string",regex:"'.*?'"},{token:"constant.numeric",regex:"[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b"},{token:r,regex:"[a-zA-Z_$][a-zA-Z0-9_$]*\\b"},{token:"keyword.operator",regex:"\\+|\\-|\\/|\\/\\/|%|<@>|@>|<@|&|\\^|~|<|>|<=|=>|==|!=|<>|="},{token:"paren.lparen",regex:"[\\(]"},{token:"paren.rparen",regex:"[\\)]"},{token:"text",regex:"\\s+"}]},this.normalizeRules()};r.inherits(s,i),t.SqlHighlightRules=s})
--------------------------------------------------------------------------------
/app/database/migrations/2012_12_06_225929_migration_cartalyst_sentry_install_groups.php:
--------------------------------------------------------------------------------
1 | increments('id');
35 | $table->string('name');
36 | $table->text('permissions')->nullable();
37 | $table->timestamps();
38 |
39 | // We'll need to ensure that MySQL uses the InnoDB engine to
40 | // support the indexes, other engines aren't affected.
41 | $table->engine = 'InnoDB';
42 | $table->unique('name');
43 | });
44 | }
45 |
46 | /**
47 | * Reverse the migrations.
48 | *
49 | * @return void
50 | */
51 | public function down()
52 | {
53 | Schema::drop('groups');
54 | }
55 |
56 | }
57 |
--------------------------------------------------------------------------------
/app/database/migrations/2012_12_06_225945_migration_cartalyst_sentry_install_users_groups_pivot.php:
--------------------------------------------------------------------------------
1 | integer('user_id')->unsigned();
35 | $table->integer('group_id')->unsigned();
36 |
37 | // We'll need to ensure that MySQL uses the InnoDB engine to
38 | // support the indexes, other engines aren't affected.
39 | $table->engine = 'InnoDB';
40 | $table->primary(array('user_id', 'group_id'));
41 | });
42 | }
43 |
44 | /**
45 | * Reverse the migrations.
46 | *
47 | * @return void
48 | */
49 | public function down()
50 | {
51 | Schema::drop('users_groups');
52 | }
53 |
54 | }
55 |
--------------------------------------------------------------------------------
/public/js/ace/snippets/tcl.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/tcl",["require","exports","module"],function(e,t,n){t.snippetText="# #!/usr/bin/env tclsh\nsnippet #!\n #!/usr/bin/env tclsh\n \n# Process\nsnippet pro\n proc ${1:function_name} {${2:args}} {\n ${3:#body ...}\n }\n#xif\nsnippet xif\n ${1:expr}? ${2:true} : ${3:false}\n# Conditional\nsnippet if\n if {${1}} {\n ${2:# body...}\n }\n# Conditional if..else\nsnippet ife\n if {${1}} {\n ${2:# body...}\n } else {\n ${3:# else...}\n }\n# Conditional if..elsif..else\nsnippet ifee\n if {${1}} {\n ${2:# body...}\n } elseif {${3}} {\n ${4:# elsif...}\n } else {\n ${5:# else...}\n }\n# If catch then\nsnippet ifc\n if { [catch {${1:#do something...}} ${2:err}] } {\n ${3:# handle failure...}\n }\n# Catch\nsnippet catch\n catch {${1}} ${2:err} ${3:options}\n# While Loop\nsnippet wh\n while {${1}} {\n ${2:# body...}\n }\n# For Loop\nsnippet for\n for {set ${2:var} 0} {$$2 < ${1:count}} {${3:incr} $2} {\n ${4:# body...}\n }\n# Foreach Loop\nsnippet fore\n foreach ${1:x} {${2:#list}} {\n ${3:# body...}\n }\n# after ms script...\nsnippet af\n after ${1:ms} ${2:#do something}\n# after cancel id\nsnippet afc\n after cancel ${1:id or script}\n# after idle\nsnippet afi\n after idle ${1:script}\n# after info id\nsnippet afin\n after info ${1:id}\n# Expr\nsnippet exp\n expr {${1:#expression here}}\n# Switch\nsnippet sw\n switch ${1:var} {\n ${3:pattern 1} {\n ${4:#do something}\n }\n default {\n ${2:#do something}\n }\n }\n# Case\nsnippet ca\n ${1:pattern} {\n ${2:#do something}\n }${3}\n# Namespace eval\nsnippet ns\n namespace eval ${1:path} {${2:#script...}}\n# Namespace current\nsnippet nsc\n namespace current\n",t.scope="tcl"})
--------------------------------------------------------------------------------
/public/js/ace/mode-ada.js:
--------------------------------------------------------------------------------
1 | define("ace/mode/ada",["require","exports","module","ace/lib/oop","ace/mode/text","ace/tokenizer","ace/mode/ada_highlight_rules","ace/range"],function(e,t,n){var r=e("../lib/oop"),i=e("./text").Mode,s=e("../tokenizer").Tokenizer,o=e("./ada_highlight_rules").AdaHighlightRules,u=e("../range").Range,a=function(){this.HighlightRules=o};r.inherits(a,i),function(){this.lineCommentStart="--",this.$id="ace/mode/ada"}.call(a.prototype),t.Mode=a}),define("ace/mode/ada_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,t,n){var r=e("../lib/oop"),i=e("./text_highlight_rules").TextHighlightRules,s=function(){var e="abort|else|new|return|abs|elsif|not|reverse|abstract|end|null|accept|entry|select|access|exception|of|separate|aliased|exit|or|some|all|others|subtype|and|for|out|synchronized|array|function|overriding|at|tagged|generic|package|task|begin|goto|pragma|terminate|body|private|then|if|procedure|type|case|in|protected|constant|interface|until||is|raise|use|declare|range|delay|limited|record|when|delta|loop|rem|while|digits|renames|with|do|mod|requeue|xor",t="true|false|null",n="count|min|max|avg|sum|rank|now|coalesce|main",r=this.createKeywordMapper({"support.function":n,keyword:e,"constant.language":t},"identifier",!0);this.$rules={start:[{token:"comment",regex:"--.*$"},{token:"string",regex:'".*?"'},{token:"string",regex:"'.*?'"},{token:"constant.numeric",regex:"[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b"},{token:r,regex:"[a-zA-Z_$][a-zA-Z0-9_$]*\\b"},{token:"keyword.operator",regex:"\\+|\\-|\\/|\\/\\/|%|<@>|@>|<@|&|\\^|~|<|>|<=|=>|==|!=|<>|="},{token:"paren.lparen",regex:"[\\(]"},{token:"paren.rparen",regex:"[\\)]"},{token:"text",regex:"\\s+"}]}};r.inherits(s,i),t.AdaHighlightRules=s})
--------------------------------------------------------------------------------
/app/views/front/register.blade.php:
--------------------------------------------------------------------------------
1 | @extends('front.layout')
2 |
3 | @section('title', 'Register')
4 |
5 | @section('controller', 'ng-controller="RegisterCtrl"')
6 |
7 | @section('content')
8 |
37 | @stop
--------------------------------------------------------------------------------
/public/index.php:
--------------------------------------------------------------------------------
1 |
7 | */
8 |
9 | /*
10 | |--------------------------------------------------------------------------
11 | | Register The Auto Loader
12 | |--------------------------------------------------------------------------
13 | |
14 | | Composer provides a convenient, automatically generated class loader
15 | | for our application. We just need to utilize it! We'll require it
16 | | into the script here so that we do not have to worry about the
17 | | loading of any our classes "manually". Feels great to relax.
18 | |
19 | */
20 |
21 | require __DIR__.'/../bootstrap/autoload.php';
22 |
23 | /*
24 | |--------------------------------------------------------------------------
25 | | Turn On The Lights
26 | |--------------------------------------------------------------------------
27 | |
28 | | We need to illuminate PHP development, so let's turn on the lights.
29 | | This bootstraps the framework and gets it ready for use, then it
30 | | will load up this application so that we can run it and send
31 | | the responses back to the browser and delight these users.
32 | |
33 | */
34 |
35 | $app = require_once __DIR__.'/../bootstrap/start.php';
36 |
37 | /*
38 | |--------------------------------------------------------------------------
39 | | Run The Application
40 | |--------------------------------------------------------------------------
41 | |
42 | | Once we have the application, we can simply call the run method,
43 | | which will execute the request and send the response back to
44 | | the client's browser allowing them to enjoy the creative
45 | | and wonderful application we have whipped up for them.
46 | |
47 | */
48 |
49 | $app->run();
50 |
--------------------------------------------------------------------------------
/app/config/remote.php:
--------------------------------------------------------------------------------
1 | 'production',
17 |
18 | /*
19 | |--------------------------------------------------------------------------
20 | | Remote Server Connections
21 | |--------------------------------------------------------------------------
22 | |
23 | | These are the servers that will be accessible via the SSH task runner
24 | | facilities of Laravel. This feature radically simplifies executing
25 | | tasks on your servers, such as deploying out these applications.
26 | |
27 | */
28 |
29 | 'connections' => array(
30 |
31 | 'production' => array(
32 | 'host' => '',
33 | 'username' => '',
34 | 'password' => '',
35 | 'key' => '',
36 | 'keyphrase' => '',
37 | 'root' => '/var/www',
38 | ),
39 |
40 | ),
41 |
42 | /*
43 | |--------------------------------------------------------------------------
44 | | Remote Server Groups
45 | |--------------------------------------------------------------------------
46 | |
47 | | Here you may list connections under a single group name, which allows
48 | | you to easily access all of the servers at once using a short name
49 | | that is extremely easy to remember, such as "web" or "database".
50 | |
51 | */
52 |
53 | 'groups' => array(
54 |
55 | 'web' => array('production')
56 |
57 | ),
58 |
59 | );
60 |
--------------------------------------------------------------------------------
/public/css/gruik.css:
--------------------------------------------------------------------------------
1 | .navbar-nav > .user-menu > .dropdown-menu > li.user-header {
2 | background: url('/img/bglogin.png');
3 | }
4 |
5 | .rotate-anti {
6 | -webkit-transform: rotate(-90deg);
7 | -moz-transform: rotate(-90deg);
8 | -ms-transform: rotate(-90deg);
9 | -o-transform: rotate(-90deg);
10 | transform: rotate(-90deg);
11 | float: left;
12 | vertical-align:top;
13 | }
14 |
15 | .wrapper, .content {
16 | background: url('/img/bgbody.png');
17 | }
18 |
19 | .box .todo-list > li.private {
20 | margin-left: 16px;
21 | }
22 |
23 | [ng\:cloak], [ng-cloak], [data-ng-cloak], [x-ng-cloak], .ng-cloak, .x-ng-cloak {
24 | display: none !important;
25 | }
26 |
27 | .btn.btn-app > .badge {
28 | font-size: 13px;
29 | }
30 |
31 | .skin-black .logo {
32 | background-color: #fff;
33 | color: #000;
34 | border-bottom: 1px solid #eee;
35 | }
36 |
37 | .skin-black .logo:hover {
38 | background: #fff;
39 | }
40 |
41 | .gruik-top-menu {
42 | margin-top:10px;
43 | }
44 | .gruik-top-menu > a {
45 | font-weight: bold;
46 | color:#000;
47 | display: inline-block;
48 | margin-right: 30px;
49 | }
50 | .gruik-top-menu > a:hover {
51 | color:#3c8dbc;
52 | }
53 | .gruik-top-menu > input {
54 | padding: 4px 5px;
55 | border:1px solid #EFEFEF;
56 | width: 250px;
57 | }
58 | .gruik-top-menu > input:focus {
59 | border:1px solid #EFEFEF;
60 | }
61 |
62 | .navbar-nav>li>a {
63 | padding-top: 12px !important;
64 | padding-bottom: 15px;
65 | }
66 |
67 | #markdown_content {
68 | padding-left: 25px;
69 | padding-right: 25px;
70 | }
71 |
72 | .box-body img {
73 | max-width: 100%;
74 | }
75 |
76 | *:focus {
77 | outline: none !important;
78 | }
79 |
80 | .transparent {
81 | opacity: 0;
82 | }
83 |
84 | .user-item:last-child hr {
85 | display: none;
86 | }
--------------------------------------------------------------------------------
/app/database/migrations/2012_12_06_225988_migration_cartalyst_sentry_install_throttle.php:
--------------------------------------------------------------------------------
1 | increments('id');
35 | $table->integer('user_id')->unsigned()->nullable();
36 | $table->string('ip_address')->nullable();
37 | $table->integer('attempts')->default(0);
38 | $table->boolean('suspended')->default(0);
39 | $table->boolean('banned')->default(0);
40 | $table->timestamp('last_attempt_at')->nullable();
41 | $table->timestamp('suspended_at')->nullable();
42 | $table->timestamp('banned_at')->nullable();
43 |
44 | // We'll need to ensure that MySQL uses the InnoDB engine to
45 | // support the indexes, other engines aren't affected.
46 | $table->engine = 'InnoDB';
47 | $table->index('user_id');
48 | });
49 | }
50 |
51 | /**
52 | * Reverse the migrations.
53 | *
54 | * @return void
55 | */
56 | public function down()
57 | {
58 | Schema::drop('throttle');
59 | }
60 |
61 | }
62 |
--------------------------------------------------------------------------------
/app/views/front/login.blade.php:
--------------------------------------------------------------------------------
1 | @extends('front.layout')
2 |
3 | @section('title', 'Login')
4 |
5 | @section('controller', 'ng-controller="LoginCtrl"')
6 |
7 | @section('content')
8 |
40 | @stop
--------------------------------------------------------------------------------
/public/js/ace/mode-scheme.js:
--------------------------------------------------------------------------------
1 | define("ace/mode/scheme",["require","exports","module","ace/lib/oop","ace/mode/text","ace/tokenizer","ace/mode/scheme_highlight_rules"],function(e,t,n){var r=e("../lib/oop"),i=e("./text").Mode,s=e("../tokenizer").Tokenizer,o=e("./scheme_highlight_rules").SchemeHighlightRules,u=function(){this.HighlightRules=o};r.inherits(u,i),function(){this.lineCommentStart=";",this.$id="ace/mode/scheme"}.call(u.prototype),t.Mode=u}),define("ace/mode/scheme_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,t,n){var r=e("../lib/oop"),i=e("./text_highlight_rules").TextHighlightRules,s=function(){var e="case|do|let|loop|if|else|when",t="eq?|eqv?|equal?|and|or|not|null?",n="#t|#f",r="cons|car|cdr|cond|lambda|lambda*|syntax-rules|format|set!|quote|eval|append|list|list?|member?|load",i=this.createKeywordMapper({"keyword.control":e,"keyword.operator":t,"constant.language":n,"support.function":r},"identifier",!0);this.$rules={start:[{token:"comment",regex:";.*$"},{token:["storage.type.function-type.scheme","text","entity.name.function.scheme"],regex:"(?:\\b(?:(define|define-syntax|define-macro))\\b)(\\s+)((?:\\w|\\-|\\!|\\?)*)"},{token:"punctuation.definition.constant.character.scheme",regex:"#:\\S+"},{token:["punctuation.definition.variable.scheme","variable.other.global.scheme","punctuation.definition.variable.scheme"],regex:"(\\*)(\\S*)(\\*)"},{token:"constant.numeric",regex:"#[xXoObB][0-9a-fA-F]+"},{token:"constant.numeric",regex:"[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?"},{token:i,regex:"[a-zA-Z_#][a-zA-Z0-9_\\-\\?\\!\\*]*"},{token:"string",regex:'"(?=.)',next:"qqstring"}],qqstring:[{token:"constant.character.escape.scheme",regex:"\\\\."},{token:"string",regex:'[^"\\\\]+',merge:!0},{token:"string",regex:"\\\\$",next:"qqstring",merge:!0},{token:"string",regex:'"|$',next:"start",merge:!0}]}};r.inherits(s,i),t.SchemeHighlightRules=s})
--------------------------------------------------------------------------------
/public/js/ace/mode-lisp.js:
--------------------------------------------------------------------------------
1 | define("ace/mode/lisp",["require","exports","module","ace/lib/oop","ace/mode/text","ace/tokenizer","ace/mode/lisp_highlight_rules"],function(e,t,n){var r=e("../lib/oop"),i=e("./text").Mode,s=e("../tokenizer").Tokenizer,o=e("./lisp_highlight_rules").LispHighlightRules,u=function(){this.HighlightRules=o};r.inherits(u,i),function(){this.lineCommentStart=";",this.$id="ace/mode/lisp"}.call(u.prototype),t.Mode=u}),define("ace/mode/lisp_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,t,n){var r=e("../lib/oop"),i=e("./text_highlight_rules").TextHighlightRules,s=function(){var e="case|do|let|loop|if|else|when",t="eq|neq|and|or",n="null|nil",r="cons|car|cdr|cond|lambda|format|setq|setf|quote|eval|append|list|listp|memberp|t|load|progn",i=this.createKeywordMapper({"keyword.control":e,"keyword.operator":t,"constant.language":n,"support.function":r},"identifier",!0);this.$rules={start:[{token:"comment",regex:";.*$"},{token:["storage.type.function-type.lisp","text","entity.name.function.lisp"],regex:"(?:\\b(?:(defun|defmethod|defmacro))\\b)(\\s+)((?:\\w|\\-|\\!|\\?)*)"},{token:["punctuation.definition.constant.character.lisp","constant.character.lisp"],regex:"(#)((?:\\w|[\\\\+-=<>'\"])+)"},{token:["punctuation.definition.variable.lisp","variable.other.global.lisp","punctuation.definition.variable.lisp"],regex:"(\\*)(\\S*)(\\*)"},{token:"constant.numeric",regex:"0[xX][0-9a-fA-F]+(?:L|l|UL|ul|u|U|F|f|ll|LL|ull|ULL)?\\b"},{token:"constant.numeric",regex:"[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?(?:L|l|UL|ul|u|U|F|f|ll|LL|ull|ULL)?\\b"},{token:i,regex:"[a-zA-Z_$][a-zA-Z0-9_$]*\\b"},{token:"string",regex:'"(?=.)',next:"qqstring"}],qqstring:[{token:"constant.character.escape.lisp",regex:"\\\\."},{token:"string",regex:'[^"\\\\]+'},{token:"string",regex:"\\\\$",next:"qqstring"},{token:"string",regex:'"|$',next:"start"}]}};r.inherits(s,i),t.LispHighlightRules=s})
--------------------------------------------------------------------------------
/public/js/ace/snippets/haskell.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/haskell",["require","exports","module"],function(e,t,n){t.snippetText="snippet lang\n {-# LANGUAGE ${1:OverloadedStrings} #-}\nsnippet info\n -- |\n -- Module : ${1:Module.Namespace}\n -- Copyright : ${2:Author} ${3:2011-2012}\n -- License : ${4:BSD3}\n --\n -- Maintainer : ${5:email@something.com}\n -- Stability : ${6:experimental}\n -- Portability : ${7:unknown}\n --\n -- ${8:Description}\n --\nsnippet import\n import ${1:Data.Text}\nsnippet import2\n import ${1:Data.Text} (${2:head})\nsnippet importq\n import qualified ${1:Data.Text} as ${2:T}\nsnippet inst\n instance ${1:Monoid} ${2:Type} where\n ${3}\nsnippet type\n type ${1:Type} = ${2:Type}\nsnippet data\n data ${1:Type} = ${2:$1} ${3:Int}\nsnippet newtype\n newtype ${1:Type} = ${2:$1} ${3:Int}\nsnippet class\n class ${1:Class} a where\n ${2}\nsnippet module\n module `substitute(substitute(expand('%:r'), '[/\\\\]','.','g'),'^\\%(\\l*\\.\\)\\?','','')` (\n ) where\n `expand('%') =~ 'Main' ? \"\\n\\nmain = do\\n print \\\"hello world\\\"\" : \"\"`\n\nsnippet const\n ${1:name} :: ${2:a}\n $1 = ${3:undefined}\nsnippet fn\n ${1:fn} :: ${2:a} -> ${3:a}\n $1 ${4} = ${5:undefined}\nsnippet fn2\n ${1:fn} :: ${2:a} -> ${3:a} -> ${4:a}\n $1 ${5} = ${6:undefined}\nsnippet ap\n ${1:map} ${2:fn} ${3:list}\nsnippet do\n do\n \nsnippet \u03bb\n \\${1:x} -> ${2}\nsnippet \\\n \\${1:x} -> ${2}\nsnippet <-\n ${1:a} <- ${2:m a}\nsnippet \u2190\n ${1:a} <- ${2:m a}\nsnippet ->\n ${1:m a} -> ${2:a}\nsnippet \u2192\n ${1:m a} -> ${2:a}\nsnippet tup\n (${1:a}, ${2:b})\nsnippet tup2\n (${1:a}, ${2:b}, ${3:c})\nsnippet tup3\n (${1:a}, ${2:b}, ${3:c}, ${4:d})\nsnippet rec\n ${1:Record} { ${2:recFieldA} = ${3:undefined}\n , ${4:recFieldB} = ${5:undefined}\n }\nsnippet case\n case ${1:something} of\n ${2} -> ${3}\nsnippet let\n let ${1} = ${2}\n in ${3}\nsnippet where\n where\n ${1:fn} = ${2:undefined}\n",t.scope="haskell"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/markdown.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/markdown",["require","exports","module"],function(e,t,n){t.snippetText='# Markdown\n\n# Includes octopress (http://octopress.org/) snippets\n\nsnippet [\n [${1:text}](http://${2:address} "${3:title}")\nsnippet [*\n [${1:link}](${2:`@*`} "${3:title}")${4}\n\nsnippet [:\n [${1:id}]: http://${2:url} "${3:title}"\nsnippet [:*\n [${1:id}]: ${2:`@*`} "${3:title}"\n\nsnippet \nsnippet ${4}\n\nsnippet ![:\n ![${1:id}]: ${2:url} "${3:title}"\nsnippet ![:*\n ![${1:id}]: ${2:`@*`} "${3:title}"\n\nsnippet ===\nregex /^/=+/=*//\n ${PREV_LINE/./=/g}\n \n ${0}\nsnippet ---\nregex /^/-+/-*//\n ${PREV_LINE/./-/g}\n \n ${0}\nsnippet blockquote\n {% blockquote %}\n ${1:quote}\n {% endblockquote %}\n\nsnippet blockquote-author\n {% blockquote ${1:author}, ${2:title} %}\n ${3:quote}\n {% endblockquote %}\n\nsnippet blockquote-link\n {% blockquote ${1:author} ${2:URL} ${3:link_text} %}\n ${4:quote}\n {% endblockquote %}\n\nsnippet bt-codeblock-short\n ```\n ${1:code_snippet}\n ```\n\nsnippet bt-codeblock-full\n ``` ${1:language} ${2:title} ${3:URL} ${4:link_text}\n ${5:code_snippet}\n ```\n\nsnippet codeblock-short\n {% codeblock %}\n ${1:code_snippet}\n {% endcodeblock %}\n\nsnippet codeblock-full\n {% codeblock ${1:title} lang:${2:language} ${3:URL} ${4:link_text} %}\n ${5:code_snippet}\n {% endcodeblock %}\n\nsnippet gist-full\n {% gist ${1:gist_id} ${2:filename} %}\n\nsnippet gist-short\n {% gist ${1:gist_id} %}\n\nsnippet img\n {% img ${1:class} ${2:URL} ${3:width} ${4:height} ${5:title_text} ${6:alt_text} %}\n\nsnippet youtube\n {% youtube ${1:video_id} %}\n\n# The quote should appear only once in the text. It is inherently part of it.\n# See http://octopress.org/docs/plugins/pullquote/ for more info.\n\nsnippet pullquote\n {% pullquote %}\n ${1:text} {" ${2:quote} "} ${3:text}\n {% endpullquote %}\n',t.scope="markdown"})
--------------------------------------------------------------------------------
/public/js/ace/mode-gherkin.js:
--------------------------------------------------------------------------------
1 | define("ace/mode/gherkin",["require","exports","module","ace/lib/oop","ace/mode/text","ace/tokenizer","ace/mode/gherkin_highlight_rules"],function(e,t,n){var r=e("../lib/oop"),i=e("./text").Mode,s=e("../tokenizer").Tokenizer,o=e("./gherkin_highlight_rules").GherkinHighlightRules,u=function(){this.HighlightRules=o};r.inherits(u,i),function(){this.lineCommentStart="#",this.$id="ace/mode/gherkin",this.getNextLineIndent=function(e,t,n){var r=this.$getIndent(t),i=" ",s=this.getTokenizer().getLineTokens(t,e),o=s.tokens;return console.log(e),t.match("[ ]*\\|")&&(r+="| "),o.length&&o[o.length-1].type=="comment"?r:(e=="start"&&(t.match("Scenario:|Feature:|Scenario Outline:|Background:")?r+=i:t.match("(Given|Then).+(:)$|Examples:")?r+=i:t.match("\\*.+")&&(r+="* ")),r)}}.call(u.prototype),t.Mode=u}),define("ace/mode/gherkin_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,t,n){var r=e("../lib/oop"),i=e("./text_highlight_rules").TextHighlightRules,s="\\\\(x[0-9A-Fa-f]{2}|[0-7]{3}|[\\\\abfnrtv'\"]|U[0-9A-Fa-f]{8}|u[0-9A-Fa-f]{4})",o=function(){this.$rules={start:[{token:"constant.numeric",regex:"(?:(?:[1-9]\\d*)|(?:0))"},{token:"comment",regex:"#.*$"},{token:"keyword",regex:"Feature:|Background:|Scenario:|Scenario Outline:|Examples:|Given|When|Then|And|But|\\*"},{token:"string",regex:'"{3}',next:"qqstring3"},{token:"string",regex:'"',next:"qqstring"},{token:"comment",regex:"@[A-Za-z0-9]+",next:"start"},{token:"comment",regex:"<.+>"},{token:"comment",regex:"\\| ",next:"table-item"},{token:"comment",regex:"\\|$",next:"start"}],qqstring3:[{token:"constant.language.escape",regex:s},{token:"string",regex:'"{3}',next:"start"},{defaultToken:"string"}],qqstring:[{token:"constant.language.escape",regex:s},{token:"string",regex:"\\\\$",next:"qqstring"},{token:"string",regex:'"|$',next:"start"},{defaultToken:"string"}],"table-item":[{token:"string",regex:"[A-Za-z0-9 ]*",next:"start"}]}};r.inherits(o,i),t.GherkinHighlightRules=o})
--------------------------------------------------------------------------------
/app/controllers/UserController.php:
--------------------------------------------------------------------------------
1 | first();
10 |
11 | if( !$visited_user)
12 | return Redirect::to('/');
13 |
14 | $userRepo = App::make('Gruik\Repo\User\UserInterface');
15 | $postRepo = App::make('Gruik\Repo\Post\PostInterface');
16 | $tagRepo = App::make('Gruik\Repo\Tag\TagInterface');
17 |
18 | $limit = Input::get('limit', 10);
19 |
20 | $posts = $postRepo->byUserIdQuery($visited_user->id)
21 | ->where('private', false)
22 | ->with('tags')
23 | ->orderBy('created_at', 'desc')
24 | ->paginate($limit);
25 |
26 | $posts->each(function($post) {
27 | $diff = Carbon::now()->diffInMinutes(Carbon::parse($post->created_at));
28 | $post->created_at_human = Carbon::now()->subMinutes($diff)->diffForHumans();
29 | });
30 |
31 | $diff = Carbon::now()->diffInMinutes(Carbon::parse($visited_user->last_login));
32 | $last_login = Carbon::now()->subMinutes($diff)->diffForHumans();
33 |
34 | JavaScript::put([
35 | 'user' => $userRepo->toPublicArray($visited_user),
36 | 'posts' => $posts->toArray(),
37 | 'last_login' => $last_login,
38 | 'total_tags' => $tagRepo->publicByUserId($visited_user->id)->count(),
39 | 'total_days' => Carbon::now()->diffInDays(Carbon::parse($visited_user->created_at)),
40 | ]);
41 |
42 | return View::make('front.user_profile')
43 | ->with('user', Sentry::getUser())
44 | ->with('posts', $posts)
45 | ->with('visited_user', $visited_user)
46 | ->with('username', $username);
47 | }
48 |
49 | }
50 |
--------------------------------------------------------------------------------
/public/css/fonts.css:
--------------------------------------------------------------------------------
1 | /*********************
2 | | SOURCE SANS PRO
3 | **********************/
4 | @font-face {
5 | font-family: 'Source Sans Pro';
6 | font-style: normal;
7 | font-weight: 300;
8 | src: local('Source Sans Pro Light'), local('SourceSansPro-Light'), url(../fonts/source-sans-pro/SourceSansPro-Light.otf) format('woff');
9 | }
10 | @font-face {
11 | font-family: 'Source Sans Pro';
12 | font-style: normal;
13 | font-weight: 400;
14 | src: local('Source Sans Pro'), local('SourceSansPro-Regular'), url(../fonts/source-sans-pro/SourceSansPro-Regular.otf) format('woff');
15 | }
16 | @font-face {
17 | font-family: 'Source Sans Pro';
18 | font-style: normal;
19 | font-weight: 600;
20 | src: local('Source Sans Pro Semibold'), local('SourceSansPro-Semibold'), url(../fonts/source-sans-pro/SourceSansPro-Semibold.otf) format('woff');
21 | }
22 | @font-face {
23 | font-family: 'Source Sans Pro';
24 | font-style: italic;
25 | font-weight: 300;
26 | src: local('Source Sans Pro Light Italic'), local('SourceSansPro-LightIt'), url(../fonts/source-sans-pro/SourceSansPro-LightIt.otf) format('woff');
27 | }
28 | @font-face {
29 | font-family: 'Source Sans Pro';
30 | font-style: italic;
31 | font-weight: 400;
32 | src: local('Source Sans Pro Italic'), local('SourceSansPro-It'), url(../fonts/source-sans-pro/SourceSansPro-It.otf) format('woff');
33 | }
34 | @font-face {
35 | font-family: 'Source Sans Pro';
36 | font-style: italic;
37 | font-weight: 600;
38 | src: local('Source Sans Pro Semibold Italic'), local('SourceSansPro-SemiboldIt'), url(../fonts/source-sans-pro/SourceSansPro-SemiboldIt.otf) format('woff');
39 | }
40 |
41 | /*********************
42 | | KAUSHAN SCRIPT
43 | **********************/
44 | @font-face {
45 | font-family: 'Kaushan Script';
46 | font-style: normal;
47 | font-weight: 400;
48 | src: local('Kaushan Script'), local('KaushanScript-Regular'), url(../fonts/kaushan-script/KaushanScript-Regular.otf) format('woff');
49 | }
50 |
--------------------------------------------------------------------------------
/bootstrap/paths.php:
--------------------------------------------------------------------------------
1 | __DIR__.'/../app',
17 |
18 | /*
19 | |--------------------------------------------------------------------------
20 | | Public Path
21 | |--------------------------------------------------------------------------
22 | |
23 | | The public path contains the assets for your web application, such as
24 | | your JavaScript and CSS files, and also contains the primary entry
25 | | point for web requests into these applications from the outside.
26 | |
27 | */
28 |
29 | 'public' => __DIR__.'/../public',
30 |
31 | /*
32 | |--------------------------------------------------------------------------
33 | | Base Path
34 | |--------------------------------------------------------------------------
35 | |
36 | | The base path is the root of the Laravel installation. Most likely you
37 | | will not need to change this value. But, if for some wild reason it
38 | | is necessary you will do so here, just proceed with some caution.
39 | |
40 | */
41 |
42 | 'base' => __DIR__.'/..',
43 |
44 | /*
45 | |--------------------------------------------------------------------------
46 | | Storage Path
47 | |--------------------------------------------------------------------------
48 | |
49 | | The storage path is used by Laravel to store cached Blade views, logs
50 | | and other pieces of information. You may modify the path here when
51 | | you want to change the location of this directory for your apps.
52 | |
53 | */
54 |
55 | 'storage' => __DIR__.'/../app/storage',
56 |
57 | );
58 |
--------------------------------------------------------------------------------
/public/js/ace/mode-textile.js:
--------------------------------------------------------------------------------
1 | define("ace/mode/textile",["require","exports","module","ace/lib/oop","ace/mode/text","ace/tokenizer","ace/mode/textile_highlight_rules","ace/mode/matching_brace_outdent"],function(e,t,n){var r=e("../lib/oop"),i=e("./text").Mode,s=e("../tokenizer").Tokenizer,o=e("./textile_highlight_rules").TextileHighlightRules,u=e("./matching_brace_outdent").MatchingBraceOutdent,a=function(){this.HighlightRules=o,this.$outdent=new u};r.inherits(a,i),function(){this.getNextLineIndent=function(e,t,n){return e=="intag"?n:""},this.checkOutdent=function(e,t,n){return this.$outdent.checkOutdent(t,n)},this.autoOutdent=function(e,t,n){this.$outdent.autoOutdent(t,n)},this.$id="ace/mode/textile"}.call(a.prototype),t.Mode=a}),define("ace/mode/textile_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,t,n){var r=e("../lib/oop"),i=e("./text_highlight_rules").TextHighlightRules,s=function(){this.$rules={start:[{token:function(e){return e.charAt(0)=="h"?"markup.heading."+e.charAt(1):"markup.heading"},regex:"h1|h2|h3|h4|h5|h6|bq|p|bc|pre",next:"blocktag"},{token:"keyword",regex:"[\\*]+|[#]+"},{token:"text",regex:".+"}],blocktag:[{token:"keyword",regex:"\\. ",next:"start"},{token:"keyword",regex:"\\(",next:"blocktagproperties"}],blocktagproperties:[{token:"keyword",regex:"\\)",next:"blocktag"},{token:"string",regex:"[a-zA-Z0-9\\-_]+"},{token:"keyword",regex:"#"}]}};r.inherits(s,i),t.TextileHighlightRules=s}),define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"],function(e,t,n){var r=e("../range").Range,i=function(){};(function(){this.checkOutdent=function(e,t){return/^\s+$/.test(e)?/^\s*\}/.test(t):!1},this.autoOutdent=function(e,t){var n=e.getLine(t),i=n.match(/^(\s*\})/);if(!i)return 0;var s=i[1].length,o=e.findMatchingBracket({row:t,column:s});if(!o||o.row==t)return 0;var u=this.$getIndent(e.getLine(o.row));e.replace(new r(t,0,t,s-1),u)},this.$getIndent=function(e){return e.match(/^\s*/)[0]}}).call(i.prototype),t.MatchingBraceOutdent=i})
--------------------------------------------------------------------------------
/public/js/ace/snippets/clojure.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/clojure",["require","exports","module"],function(e,t,n){t.snippetText='snippet comm\n (comment\n ${1}\n )\nsnippet condp\n (condp ${1:pred} ${2:expr}\n ${3})\nsnippet def\n (def ${1})\nsnippet defm\n (defmethod ${1:multifn} "${2:doc-string}" ${3:dispatch-val} [${4:args}]\n ${5})\nsnippet defmm\n (defmulti ${1:name} "${2:doc-string}" ${3:dispatch-fn})\nsnippet defma\n (defmacro ${1:name} "${2:doc-string}" ${3:dispatch-fn})\nsnippet defn\n (defn ${1:name} "${2:doc-string}" [${3:arg-list}]\n ${4})\nsnippet defp\n (defprotocol ${1:name}\n ${2})\nsnippet defr\n (defrecord ${1:name} [${2:fields}]\n ${3:protocol}\n ${4})\nsnippet deft\n (deftest ${1:name}\n (is (= ${2:assertion})))\n ${3})\nsnippet is\n (is (= ${1} ${2}))\nsnippet defty\n (deftype ${1:Name} [${2:fields}]\n ${3:Protocol}\n ${4})\nsnippet doseq\n (doseq [${1:elem} ${2:coll}]\n ${3})\nsnippet fn\n (fn [${1:arg-list}] ${2})\nsnippet if\n (if ${1:test-expr}\n ${2:then-expr}\n ${3:else-expr})\nsnippet if-let \n (if-let [${1:result} ${2:test-expr}]\n (${3:then-expr} $1)\n (${4:else-expr}))\nsnippet imp\n (:import [${1:package}])\n & {:keys [${1:keys}] :or {${2:defaults}}}\nsnippet let\n (let [${1:name} ${2:expr}]\n ${3})\nsnippet letfn\n (letfn [(${1:name) [${2:args}]\n ${3})])\nsnippet map\n (map ${1:func} ${2:coll})\nsnippet mapl\n (map #(${1:lambda}) ${2:coll})\nsnippet met\n (${1:name} [${2:this} ${3:args}]\n ${4})\nsnippet ns\n (ns ${1:name}\n ${2})\nsnippet dotimes\n (dotimes [_ 10]\n (time\n (dotimes [_ ${1:times}]\n ${2})))\nsnippet pmethod\n (${1:name} [${2:this} ${3:args}])\nsnippet refer\n (:refer-clojure :exclude [${1}])\nsnippet require\n (:require [${1:namespace} :as [${2}]])\nsnippet use\n (:use [${1:namespace} :only [${2}]])\nsnippet print\n (println ${1})\nsnippet reduce\n (reduce ${1:(fn [p n] ${3})} ${2})\nsnippet when\n (when ${1:test} ${2:body})\nsnippet when-let\n (when-let [${1:result} ${2:test}]\n ${3:body})\n',t.scope="clojure"})
--------------------------------------------------------------------------------
/public/js/ace/theme-xcode.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/xcode",["require","exports","module","ace/lib/dom"],function(e,t,n){t.isDark=!1,t.cssClass="ace-xcode",t.cssText="/* THIS THEME WAS AUTOGENERATED BY Theme.tmpl.css (UUID: EE3AD170-2B7F-4DE1-B724-C75F13FE0085) */.ace-xcode .ace_gutter {background: #e8e8e8;color: #333}.ace-xcode .ace_print-margin {width: 1px;background: #e8e8e8}.ace-xcode {background-color: #FFFFFF;color: #000000}.ace-xcode .ace_cursor {color: #000000}.ace-xcode .ace_marker-layer .ace_selection {background: #B5D5FF}.ace-xcode.ace_multiselect .ace_selection.ace_start {box-shadow: 0 0 3px 0px #FFFFFF;border-radius: 2px}.ace-xcode .ace_marker-layer .ace_step {background: rgb(198, 219, 174)}.ace-xcode .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid #BFBFBF}.ace-xcode .ace_marker-layer .ace_active-line {background: rgba(0, 0, 0, 0.071)}.ace-xcode .ace_gutter-active-line {background-color: rgba(0, 0, 0, 0.071)}.ace-xcode .ace_marker-layer .ace_selected-word {border: 1px solid #B5D5FF}.ace-xcode .ace_constant.ace_language,.ace-xcode .ace_keyword,.ace-xcode .ace_meta,.ace-xcode .ace_variable.ace_language {color: #C800A4}.ace-xcode .ace_invisible {color: #BFBFBF}.ace-xcode .ace_constant.ace_character,.ace-xcode .ace_constant.ace_other {color: #275A5E}.ace-xcode .ace_constant.ace_numeric {color: #3A00DC}.ace-xcode .ace_entity.ace_other.ace_attribute-name,.ace-xcode .ace_support.ace_constant,.ace-xcode .ace_support.ace_function {color: #450084}.ace-xcode .ace_fold {background-color: #C800A4;border-color: #000000}.ace-xcode .ace_entity.ace_name.ace_tag,.ace-xcode .ace_support.ace_class,.ace-xcode .ace_support.ace_type {color: #790EAD}.ace-xcode .ace_storage {color: #C900A4}.ace-xcode .ace_string {color: #DF0002}.ace-xcode .ace_comment {color: #008E00}.ace-xcode .ace_indent-guide {background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==) right repeat-y}";var r=e("../lib/dom");r.importCssString(t.cssText,t.cssClass)})
--------------------------------------------------------------------------------
/public/js/ace/snippets/sh.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/sh",["require","exports","module"],function(e,t,n){t.snippetText='# Shebang. Executing bash via /usr/bin/env makes scripts more portable.\nsnippet #!\n #!/usr/bin/env bash\n \nsnippet if\n if [[ ${1:condition} ]]; then\n ${2:#statements}\n fi\nsnippet elif\n elif [[ ${1:condition} ]]; then\n ${2:#statements}\nsnippet for\n for (( ${2:i} = 0; $2 < ${1:count}; $2++ )); do\n ${3:#statements}\n done\nsnippet fori\n for ${1:needle} in ${2:haystack} ; do\n ${3:#statements}\n done\nsnippet wh\n while [[ ${1:condition} ]]; do\n ${2:#statements}\n done\nsnippet until\n until [[ ${1:condition} ]]; do\n ${2:#statements}\n done\nsnippet case\n case ${1:word} in\n ${2:pattern})\n ${3};;\n esac\nsnippet go \n while getopts \'${1:o}\' ${2:opts} \n do \n case $$2 in\n ${3:o0})\n ${4:#staments};;\n esac\n done\n# Set SCRIPT_DIR variable to directory script is located.\nsnippet sdir\n SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"\n# getopt\nsnippet getopt\n __ScriptVersion="${1:version}"\n\n #=== FUNCTION ================================================================\n # NAME: usage\n # DESCRIPTION: Display usage information.\n #===============================================================================\n function usage ()\n {\n cat <<- EOT\n\n Usage : $${0:0} [options] [--] \n\n Options: \n -h|help Display this message\n -v|version Display script version\n\n EOT\n } # ---------- end of function usage ----------\n\n #-----------------------------------------------------------------------\n # Handle command line arguments\n #-----------------------------------------------------------------------\n\n while getopts ":hv" opt\n do\n case $opt in\n\n h|help ) usage; exit 0 ;;\n\n v|version ) echo "$${0:0} -- Version $__ScriptVersion"; exit 0 ;;\n\n \\? ) echo -e "\\n Option does not exist : $OPTARG\\n"\n usage; exit 1 ;;\n\n esac # --- end of case ---\n done\n shift $(($OPTIND-1))\n\n',t.scope="sh"})
--------------------------------------------------------------------------------
/public/js/ace/theme-eclipse.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/eclipse",["require","exports","module","ace/lib/dom"],function(e,t,n){t.isDark=!1,t.cssText='.ace-eclipse .ace_gutter {background: #ebebeb;border-right: 1px solid rgb(159, 159, 159);color: rgb(136, 136, 136);}.ace-eclipse .ace_print-margin {width: 1px;background: #ebebeb;}.ace-eclipse {background-color: #FFFFFF;color: black;}.ace-eclipse .ace_fold {background-color: rgb(60, 76, 114);}.ace-eclipse .ace_cursor {color: black;}.ace-eclipse .ace_storage,.ace-eclipse .ace_keyword,.ace-eclipse .ace_variable {color: rgb(127, 0, 85);}.ace-eclipse .ace_constant.ace_buildin {color: rgb(88, 72, 246);}.ace-eclipse .ace_constant.ace_library {color: rgb(6, 150, 14);}.ace-eclipse .ace_function {color: rgb(60, 76, 114);}.ace-eclipse .ace_string {color: rgb(42, 0, 255);}.ace-eclipse .ace_comment {color: rgb(113, 150, 130);}.ace-eclipse .ace_comment.ace_doc {color: rgb(63, 95, 191);}.ace-eclipse .ace_comment.ace_doc.ace_tag {color: rgb(127, 159, 191);}.ace-eclipse .ace_constant.ace_numeric {color: darkblue;}.ace-eclipse .ace_tag {color: rgb(25, 118, 116);}.ace-eclipse .ace_type {color: rgb(127, 0, 127);}.ace-eclipse .ace_xml-pe {color: rgb(104, 104, 91);}.ace-eclipse .ace_marker-layer .ace_selection {background: rgb(181, 213, 255);}.ace-eclipse .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid rgb(192, 192, 192);}.ace-eclipse .ace_meta.ace_tag {color:rgb(25, 118, 116);}.ace-eclipse .ace_invisible {color: #ddd;}.ace-eclipse .ace_entity.ace_other.ace_attribute-name {color:rgb(127, 0, 127);}.ace-eclipse .ace_marker-layer .ace_step {background: rgb(255, 255, 0);}.ace-eclipse .ace_marker-layer .ace_active-line {background: rgb(232, 242, 254);}.ace-eclipse .ace_marker-layer .ace_selected-word {border: 1px solid rgb(181, 213, 255);}.ace-eclipse .ace_indent-guide {background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y;}',t.cssClass="ace-eclipse";var r=e("../lib/dom");r.importCssString(t.cssText,t.cssClass)})
--------------------------------------------------------------------------------
/public/js/ace/mode-toml.js:
--------------------------------------------------------------------------------
1 | define("ace/mode/toml",["require","exports","module","ace/lib/oop","ace/mode/text","ace/tokenizer","ace/mode/toml_highlight_rules","ace/mode/folding/ini"],function(e,t,n){var r=e("../lib/oop"),i=e("./text").Mode,s=e("../tokenizer").Tokenizer,o=e("./toml_highlight_rules").TomlHighlightRules,u=e("./folding/ini").FoldMode,a=function(){this.HighlightRules=o,this.foldingRules=new u};r.inherits(a,i),function(){this.lineCommentStart="#",this.$id="ace/mode/toml"}.call(a.prototype),t.Mode=a}),define("ace/mode/toml_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,t,n){var r=e("../lib/oop"),i=e("./text_highlight_rules").TextHighlightRules,s=function(){var e=this.createKeywordMapper({"constant.language.boolean":"true|false"},"identifier"),t="[a-zA-Z\\$_\xa1-\uffff][a-zA-Z\\d\\$_\xa1-\uffff]*\\b";this.$rules={start:[{token:"comment.toml",regex:/#.*$/},{token:"string",regex:'"(?=.)',next:"qqstring"},{token:["variable.keygroup.toml"],regex:"(?:^\\s*)(\\[([^\\]]+)\\])"},{token:e,regex:t},{token:"support.date.toml",regex:"\\d{4}-\\d{2}-\\d{2}(T)\\d{2}:\\d{2}:\\d{2}(Z)"},{token:"constant.numeric.toml",regex:"-?\\d+(\\.?\\d+)?"}],qqstring:[{token:"string",regex:"\\\\$",next:"qqstring"},{token:"constant.language.escape",regex:'\\\\[0tnr"\\\\]'},{token:"string",regex:'"|$',next:"start"},{defaultToken:"string"}]}};r.inherits(s,i),t.TomlHighlightRules=s}),define("ace/mode/folding/ini",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(e,t,n){var r=e("../../lib/oop"),i=e("../../range").Range,s=e("./fold_mode").FoldMode,o=t.FoldMode=function(){};r.inherits(o,s),function(){this.foldingStartMarker=/^\s*\[([^\])]*)]\s*(?:$|[;#])/,this.getFoldWidgetRange=function(e,t,n){var r=this.foldingStartMarker,s=e.getLine(n),o=s.match(r);if(!o)return;var u=o[1]+".",a=s.length,f=e.getLength(),l=n,c=n;while(++nl){var h=e.getLine(c).length;return new i(l,a,c,h)}}}.call(o.prototype)})
--------------------------------------------------------------------------------
/app/database/migrations/2012_12_06_225921_migration_cartalyst_sentry_install_users.php:
--------------------------------------------------------------------------------
1 | increments('id');
35 | $table->string('email');
36 | $table->string('password');
37 | $table->text('permissions')->nullable();
38 | $table->boolean('activated')->default(0);
39 | $table->string('activation_code')->nullable();
40 | $table->timestamp('activated_at')->nullable();
41 | $table->timestamp('last_login')->nullable();
42 | $table->string('persist_code')->nullable();
43 | $table->string('reset_password_code')->nullable();
44 | $table->string('first_name')->nullable();
45 | $table->string('last_name')->nullable();
46 | $table->timestamps();
47 |
48 | // We'll need to ensure that MySQL uses the InnoDB engine to
49 | // support the indexes, other engines aren't affected.
50 | $table->engine = 'InnoDB';
51 | $table->unique('email');
52 | $table->index('activation_code');
53 | $table->index('reset_password_code');
54 | });
55 | }
56 |
57 | /**
58 | * Reverse the migrations.
59 | *
60 | * @return void
61 | */
62 | public function down()
63 | {
64 | Schema::drop('users');
65 | }
66 |
67 | }
68 |
--------------------------------------------------------------------------------
/public/js/ace/mode-vhdl.js:
--------------------------------------------------------------------------------
1 | define("ace/mode/vhdl",["require","exports","module","ace/lib/oop","ace/mode/text","ace/tokenizer","ace/mode/vhdl_highlight_rules","ace/range"],function(e,t,n){var r=e("../lib/oop"),i=e("./text").Mode,s=e("../tokenizer").Tokenizer,o=e("./vhdl_highlight_rules").VHDLHighlightRules,u=e("../range").Range,a=function(){this.HighlightRules=o};r.inherits(a,i),function(){this.lineCommentStart="--",this.$id="ace/mode/vhdl"}.call(a.prototype),t.Mode=a}),define("ace/mode/vhdl_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,t,n){var r=e("../lib/oop"),i=e("./text_highlight_rules").TextHighlightRules,s=function(){var e="access|after|ailas|all|architecture|assert|attribute|begin|block|buffer|bus|case|component|configuration|disconnect|downto|else|elsif|end|entity|file|for|function|generate|generic|guarded|if|impure|in|inertial|inout|is|label|linkage|literal|loop|mapnew|next|of|on|open|others|out|port|process|pure|range|record|reject|report|return|select|shared|subtype|then|to|transport|type|unaffected|united|until|wait|when|while|with",t="bit|bit_vector|boolean|character|integer|line|natural|positive|real|register|severity|signal|signed|std_logic|std_logic_vector|string||text|time|unsigned|variable",n="array|constant",r="abs|and|mod|nand|nor|not|rem|rol|ror|sla|sll|srasrl|xnor|xor",i="true|false|null",s=this.createKeywordMapper({"keyword.operator":r,keyword:e,"constant.language":i,"storage.modifier":n,"storage.type":t},"identifier",!0);this.$rules={start:[{token:"comment",regex:"--.*$"},{token:"string",regex:'".*?"'},{token:"string",regex:"'.*?'"},{token:"constant.numeric",regex:"[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b"},{token:"keyword",regex:"\\s*(?:library|package|use)\\b"},{token:s,regex:"[a-zA-Z_$][a-zA-Z0-9_$]*\\b"},{token:"keyword.operator",regex:"&|\\*|\\+|\\-|\\/|<|=|>|\\||=>|\\*\\*|:=|\\/=|>=|<=|<>"},{token:"punctuation.operator",regex:"\\'|\\:|\\,|\\;|\\."},{token:"paren.lparen",regex:"[[(]"},{token:"paren.rparen",regex:"[\\])]"},{token:"text",regex:"\\s+"}]}};r.inherits(s,i),t.VHDLHighlightRules=s})
--------------------------------------------------------------------------------
/public/js/ace/theme-clouds.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/clouds",["require","exports","module","ace/lib/dom"],function(e,t,n){t.isDark=!1,t.cssClass="ace-clouds",t.cssText='.ace-clouds .ace_gutter {background: #ebebeb;color: #333}.ace-clouds .ace_print-margin {width: 1px;background: #e8e8e8}.ace-clouds {background-color: #FFFFFF;color: #000000}.ace-clouds .ace_cursor {color: #000000}.ace-clouds .ace_marker-layer .ace_selection {background: #BDD5FC}.ace-clouds.ace_multiselect .ace_selection.ace_start {box-shadow: 0 0 3px 0px #FFFFFF;border-radius: 2px}.ace-clouds .ace_marker-layer .ace_step {background: rgb(255, 255, 0)}.ace-clouds .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid #BFBFBF}.ace-clouds .ace_marker-layer .ace_active-line {background: #FFFBD1}.ace-clouds .ace_gutter-active-line {background-color : #dcdcdc}.ace-clouds .ace_marker-layer .ace_selected-word {border: 1px solid #BDD5FC}.ace-clouds .ace_invisible {color: #BFBFBF}.ace-clouds .ace_keyword,.ace-clouds .ace_meta,.ace-clouds .ace_support.ace_constant.ace_property-value {color: #AF956F}.ace-clouds .ace_keyword.ace_operator {color: #484848}.ace-clouds .ace_keyword.ace_other.ace_unit {color: #96DC5F}.ace-clouds .ace_constant.ace_language {color: #39946A}.ace-clouds .ace_constant.ace_numeric {color: #46A609}.ace-clouds .ace_constant.ace_character.ace_entity {color: #BF78CC}.ace-clouds .ace_invalid {background-color: #FF002A}.ace-clouds .ace_fold {background-color: #AF956F;border-color: #000000}.ace-clouds .ace_storage,.ace-clouds .ace_support.ace_class,.ace-clouds .ace_support.ace_function,.ace-clouds .ace_support.ace_other,.ace-clouds .ace_support.ace_type {color: #C52727}.ace-clouds .ace_string {color: #5D90CD}.ace-clouds .ace_comment {color: #BCC8BA}.ace-clouds .ace_entity.ace_name.ace_tag,.ace-clouds .ace_entity.ace_other.ace_attribute-name {color: #606060}.ace-clouds .ace_indent-guide {background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y}';var r=e("../lib/dom");r.importCssString(t.cssText,t.cssClass)})
--------------------------------------------------------------------------------
/app/controllers/HomeController.php:
--------------------------------------------------------------------------------
1 | allPublicQuery()
28 | ->with('tags')
29 | ->with(['user' => function($q) {
30 | $q->select('id', 'username');
31 | }])
32 | ->orderBy('created_at', 'DESC')
33 | ->paginate($limit);
34 |
35 | $posts->each(function($post) {
36 | $diff = Carbon::now()->diffInMinutes(Carbon::parse($post->created_at));
37 | $post->created_at_human = Carbon::now()->subMinutes($diff)->diffForHumans();
38 | });
39 |
40 | JavaScript::put([
41 | 'posts' => $posts->toArray(),
42 | ]);
43 |
44 | return View::make('front.explore')
45 | ->with('posts', $posts)
46 | ->with('user', Sentry::getUser());
47 | }
48 |
49 | public function login()
50 | {
51 | return View::make('front.login');
52 | }
53 |
54 | public function register()
55 | {
56 | return View::make('front.register');
57 | }
58 |
59 | public function forgotPassword()
60 | {
61 | return View::make('front.forgot');
62 | }
63 |
64 | public function passwordReset($token)
65 | {
66 | if ($token)
67 | {
68 | return View::make('front.reset_password')
69 | ->withToken($token);
70 | }
71 |
72 | App::abort(404);
73 | }
74 |
75 | }
76 |
--------------------------------------------------------------------------------
/public/js/ace/theme-kuroir.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/kuroir",["require","exports","module","ace/lib/dom"],function(e,t,n){t.isDark=!1,t.cssClass="ace-kuroir",t.cssText="/* THIS THEME WAS AUTOGENERATED BY Theme.tmpl.css (UUID: 467560D0-6ACE-4409-82FD-4791420837AC) */.ace-kuroir .ace_gutter {background: #e8e8e8;color: #333;}.ace-kuroir .ace_print-margin {width: 1px;background: #e8e8e8;}.ace-kuroir {background-color: #E8E9E8;color: #363636;}.ace-kuroir .ace_cursor {color: #202020;}.ace-kuroir .ace_marker-layer .ace_selection {background: rgba(245, 170, 0, 0.57);}.ace-kuroir.ace_multiselect .ace_selection.ace_start {box-shadow: 0 0 3px 0px #E8E9E8;border-radius: 2px;}.ace-kuroir .ace_marker-layer .ace_step {background: rgb(198, 219, 174);}.ace-kuroir .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid rgba(0, 0, 0, 0.29);}.ace-kuroir .ace_marker-layer .ace_active-line {background: rgba(203, 220, 47, 0.22);}.ace-kuroir .ace_gutter-active-line {background-color: rgba(203, 220, 47, 0.22);}.ace-kuroir .ace_marker-layer .ace_selected-word {border: 1px solid rgba(245, 170, 0, 0.57);}.ace-kuroir .ace_fold {border-color: #363636;}.ace-kuroir .ace_constant{color:#CD6839;}.ace-kuroir .ace_constant.ace_numeric{color:#9A5925;}.ace-kuroir .ace_support{color:#104E8B;}.ace-kuroir .ace_support.ace_function{color:#005273;}.ace-kuroir .ace_support.ace_constant{color:#CF6A4C;}.ace-kuroir .ace_storage{color:#A52A2A;}.ace-kuroir .ace_invalid.ace_illegal{color:#FD1224;background-color:rgba(255, 6, 0, 0.15);}.ace-kuroir .ace_invalid.ace_deprecated{text-decoration:underline;font-style:italic;color:#FD1732;background-color:#E8E9E8;}.ace-kuroir .ace_string{color:#639300;}.ace-kuroir .ace_string.ace_regexp{color:#417E00;background-color:#C9D4BE;}.ace-kuroir .ace_comment{color:rgba(148, 148, 148, 0.91);background-color:rgba(220, 220, 220, 0.56);}.ace-kuroir .ace_variable{color:#009ACD;}.ace-kuroir .ace_meta.ace_tag{color:#005273;}.ace-kuroir .ace_markup.ace_heading{color:#B8012D;background-color:rgba(191, 97, 51, 0.051);}.ace-kuroir .ace_markup.ace_list{color:#8F5B26;}";var r=e("../lib/dom");r.importCssString(t.cssText,t.cssClass)})
--------------------------------------------------------------------------------
/app/Gruik/Repo/Tag/EloquentTag.php:
--------------------------------------------------------------------------------
1 | model = $model;
13 | }
14 |
15 | public function byLabel($label)
16 | {
17 | return $this->model->where('label', $label)->first();
18 | }
19 |
20 | public function byPostId($id_post)
21 | {
22 | $postRepo = \App::make('Gruik\Repo\Post\PostInterface');
23 | return $postRepo->byId($id_post)->tags;
24 | }
25 |
26 | public function byUserId($id_user)
27 | {
28 | return $this->model->where('user_id', $id_user)->get();
29 | }
30 |
31 | public function publicByUserId($id_user)
32 | {
33 | return $this->model->whereHas('posts', function($q) use($id_user) {
34 | $q->where('private', false)->where('user_id', $id_user);
35 | })->get();
36 | }
37 |
38 | public function createFromString($label, $user_id)
39 | {
40 | $tag = $this->make([
41 | 'user_id' => $user_id,
42 | 'label' => $label
43 | ]);
44 |
45 | $tag->save();
46 |
47 | return $tag;
48 | }
49 |
50 | public function labelToId($labels, $user_id, $create = true)
51 | {
52 | $ids = [];
53 |
54 | if(empty($labels))
55 | {
56 | return [];
57 | }
58 |
59 | foreach ($labels as $label)
60 | {
61 | $tag = $this->byLabel($label);
62 |
63 | if($tag)
64 | {
65 | $ids[] = $tag->id;
66 | }
67 | else
68 | {
69 | if($create)
70 | {
71 | $ids[] = $this->createFromString($label, $user_id)->id;
72 | }
73 | }
74 | }
75 |
76 | return $ids;
77 | }
78 |
79 | public function idToLabel($ids)
80 | {
81 | return $this->model->whereIn('id', $ids)->lists('label');
82 | }
83 | }
--------------------------------------------------------------------------------
/public/js/ace/mode-space.js:
--------------------------------------------------------------------------------
1 | define("ace/mode/space",["require","exports","module","ace/lib/oop","ace/mode/text","ace/tokenizer","ace/mode/folding/coffee","ace/mode/space_highlight_rules"],function(e,t,n){var r=e("../lib/oop"),i=e("./text").Mode,s=e("../tokenizer").Tokenizer,o=e("./folding/coffee").FoldMode,u=e("./space_highlight_rules").SpaceHighlightRules,a=function(){var e=new u;this.$tokenizer=new s(e.getRules()),this.foldingRules=new o};r.inherits(a,i),function(){this.$id="ace/mode/space"}.call(a.prototype),t.Mode=a}),define("ace/mode/folding/coffee",["require","exports","module","ace/lib/oop","ace/mode/folding/fold_mode","ace/range"],function(e,t,n){var r=e("../../lib/oop"),i=e("./fold_mode").FoldMode,s=e("../../range").Range,o=t.FoldMode=function(){};r.inherits(o,i),function(){this.getFoldWidgetRange=function(e,t,n){var r=this.indentationBlock(e,n);if(r)return r;var i=/\S/,o=e.getLine(n),u=o.search(i);if(u==-1||o[u]!="#")return;var a=o.length,f=e.getLength(),l=n,c=n;while(++nl){var p=e.getLine(c).length;return new s(l,a,c,p)}},this.getFoldWidget=function(e,t,n){var r=e.getLine(n),i=r.search(/\S/),s=e.getLine(n+1),o=e.getLine(n-1),u=o.search(/\S/),a=s.search(/\S/);if(i==-1)return e.foldWidgets[n-1]=u!=-1&&u\n ${3:// body}\n# Array comprehension\nsnippet fora\n for ${1:name} in ${2:array}\n ${3:// body...}\n# Object comprehension\nsnippet foro\n for ${1:key}, ${2:value} of ${3:object}\n ${4:// body...}\n# Range comprehension (inclusive)\nsnippet forr\n for ${1:name} in [${2:start}..${3:finish}]\n ${4:// body...}\nsnippet forrb\n for ${1:name} in [${2:start}..${3:finish}] by ${4:step}\n ${5:// body...}\n# Range comprehension (exclusive)\nsnippet forrex\n for ${1:name} in [${2:start}...${3:finish}]\n ${4:// body...}\nsnippet forrexb\n for ${1:name} in [${2:start}...${3:finish}] by ${4:step}\n ${5:// body...}\n# Function\nsnippet fun\n (${1:args}) ->\n ${2:// body...}\n# Function (bound)\nsnippet bfun\n (${1:args}) =>\n ${2:// body...}\n# Class\nsnippet cla class ..\n class ${1:`substitute(Filename(), '\\(_\\|^\\)\\(.\\)', '\\u\\2', 'g')`}\n ${2}\nsnippet cla class .. constructor: ..\n class ${1:`substitute(Filename(), '\\(_\\|^\\)\\(.\\)', '\\u\\2', 'g')`}\n constructor: (${2:args}) ->\n ${3}\n\n ${4}\nsnippet cla class .. extends ..\n class ${1:`substitute(Filename(), '\\(_\\|^\\)\\(.\\)', '\\u\\2', 'g')`} extends ${2:ParentClass}\n ${3}\nsnippet cla class .. extends .. constructor: ..\n class ${1:`substitute(Filename(), '\\(_\\|^\\)\\(.\\)', '\\u\\2', 'g')`} extends ${2:ParentClass}\n constructor: (${3:args}) ->\n ${4}\n\n ${5}\n# If\nsnippet if\n if ${1:condition}\n ${2:// body...}\n# If __ Else\nsnippet ife\n if ${1:condition}\n ${2:// body...}\n else\n ${3:// body...}\n# Else if\nsnippet elif\n else if ${1:condition}\n ${2:// body...}\n# Ternary If\nsnippet ifte\n if ${1:condition} then ${2:value} else ${3:other}\n# Unless\nsnippet unl\n ${1:action} unless ${2:condition}\n# Switch\nsnippet swi\n switch ${1:object}\n when ${2:value}\n ${3:// body...}\n\n# Log\nsnippet log\n console.log ${1}\n# Try __ Catch\nsnippet try\n try\n ${1}\n catch ${2:error}\n ${3}\n# Require\nsnippet req\n ${2:$1} = require '${1:sys}'${3}\n# Export\nsnippet exp\n ${1:root} = exports ? this\n",t.scope="coffee"})
--------------------------------------------------------------------------------
/public/js/ace/theme-vibrant_ink.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/vibrant_ink",["require","exports","module","ace/lib/dom"],function(e,t,n){t.isDark=!0,t.cssClass="ace-vibrant-ink",t.cssText=".ace-vibrant-ink .ace_gutter {background: #1a1a1a;color: #BEBEBE}.ace-vibrant-ink .ace_print-margin {width: 1px;background: #1a1a1a}.ace-vibrant-ink {background-color: #0F0F0F;color: #FFFFFF}.ace-vibrant-ink .ace_cursor {color: #FFFFFF}.ace-vibrant-ink .ace_marker-layer .ace_selection {background: #6699CC}.ace-vibrant-ink.ace_multiselect .ace_selection.ace_start {box-shadow: 0 0 3px 0px #0F0F0F;border-radius: 2px}.ace-vibrant-ink .ace_marker-layer .ace_step {background: rgb(102, 82, 0)}.ace-vibrant-ink .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid #404040}.ace-vibrant-ink .ace_marker-layer .ace_active-line {background: #333333}.ace-vibrant-ink .ace_gutter-active-line {background-color: #333333}.ace-vibrant-ink .ace_marker-layer .ace_selected-word {border: 1px solid #6699CC}.ace-vibrant-ink .ace_invisible {color: #404040}.ace-vibrant-ink .ace_keyword,.ace-vibrant-ink .ace_meta {color: #FF6600}.ace-vibrant-ink .ace_constant,.ace-vibrant-ink .ace_constant.ace_character,.ace-vibrant-ink .ace_constant.ace_character.ace_escape,.ace-vibrant-ink .ace_constant.ace_other {color: #339999}.ace-vibrant-ink .ace_constant.ace_numeric {color: #99CC99}.ace-vibrant-ink .ace_invalid,.ace-vibrant-ink .ace_invalid.ace_deprecated {color: #CCFF33;background-color: #000000}.ace-vibrant-ink .ace_fold {background-color: #FFCC00;border-color: #FFFFFF}.ace-vibrant-ink .ace_entity.ace_name.ace_function,.ace-vibrant-ink .ace_support.ace_function,.ace-vibrant-ink .ace_variable {color: #FFCC00}.ace-vibrant-ink .ace_variable.ace_parameter {font-style: italic}.ace-vibrant-ink .ace_string {color: #66FF00}.ace-vibrant-ink .ace_string.ace_regexp {color: #44B4CC}.ace-vibrant-ink .ace_comment {color: #9933CC}.ace-vibrant-ink .ace_entity.ace_other.ace_attribute-name {font-style: italic;color: #99CC99}.ace-vibrant-ink .ace_indent-guide {background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNgYGBgYNDTc/oPAALPAZ7hxlbYAAAAAElFTkSuQmCC) right repeat-y}";var r=e("../lib/dom");r.importCssString(t.cssText,t.cssClass)})
--------------------------------------------------------------------------------
/public/js/ace/theme-dawn.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/dawn",["require","exports","module","ace/lib/dom"],function(e,t,n){t.isDark=!1,t.cssClass="ace-dawn",t.cssText=".ace-dawn .ace_gutter {background: #ebebeb;color: #333}.ace-dawn .ace_print-margin {width: 1px;background: #e8e8e8}.ace-dawn {background-color: #F9F9F9;color: #080808}.ace-dawn .ace_cursor {color: #000000}.ace-dawn .ace_marker-layer .ace_selection {background: rgba(39, 95, 255, 0.30)}.ace-dawn.ace_multiselect .ace_selection.ace_start {box-shadow: 0 0 3px 0px #F9F9F9;border-radius: 2px}.ace-dawn .ace_marker-layer .ace_step {background: rgb(255, 255, 0)}.ace-dawn .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid rgba(75, 75, 126, 0.50)}.ace-dawn .ace_marker-layer .ace_active-line {background: rgba(36, 99, 180, 0.12)}.ace-dawn .ace_gutter-active-line {background-color : #dcdcdc}.ace-dawn .ace_marker-layer .ace_selected-word {border: 1px solid rgba(39, 95, 255, 0.30)}.ace-dawn .ace_invisible {color: rgba(75, 75, 126, 0.50)}.ace-dawn .ace_keyword,.ace-dawn .ace_meta {color: #794938}.ace-dawn .ace_constant,.ace-dawn .ace_constant.ace_character,.ace-dawn .ace_constant.ace_character.ace_escape,.ace-dawn .ace_constant.ace_other {color: #811F24}.ace-dawn .ace_invalid.ace_illegal {text-decoration: underline;font-style: italic;color: #F8F8F8;background-color: #B52A1D}.ace-dawn .ace_invalid.ace_deprecated {text-decoration: underline;font-style: italic;color: #B52A1D}.ace-dawn .ace_support {color: #691C97}.ace-dawn .ace_support.ace_constant {color: #B4371F}.ace-dawn .ace_fold {background-color: #794938;border-color: #080808}.ace-dawn .ace_list,.ace-dawn .ace_markup.ace_list,.ace-dawn .ace_support.ace_function {color: #693A17}.ace-dawn .ace_storage {font-style: italic;color: #A71D5D}.ace-dawn .ace_string {color: #0B6125}.ace-dawn .ace_string.ace_regexp {color: #CF5628}.ace-dawn .ace_comment {font-style: italic;color: #5A525F}.ace-dawn .ace_heading,.ace-dawn .ace_markup.ace_heading {color: #19356D}.ace-dawn .ace_variable {color: #234A97}.ace-dawn .ace_indent-guide {background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNgYGBgYLh/5+x/AAizA4hxNNsZAAAAAElFTkSuQmCC) right repeat-y}";var r=e("../lib/dom");r.importCssString(t.cssText,t.cssClass)})
--------------------------------------------------------------------------------
/public/js/ace/theme-merbivore.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/merbivore",["require","exports","module","ace/lib/dom"],function(e,t,n){t.isDark=!0,t.cssClass="ace-merbivore",t.cssText=".ace-merbivore .ace_gutter {background: #202020;color: #E6E1DC}.ace-merbivore .ace_print-margin {width: 1px;background: #555651}.ace-merbivore {background-color: #161616;color: #E6E1DC}.ace-merbivore .ace_cursor {color: #FFFFFF}.ace-merbivore .ace_marker-layer .ace_selection {background: #454545}.ace-merbivore.ace_multiselect .ace_selection.ace_start {box-shadow: 0 0 3px 0px #161616;border-radius: 2px}.ace-merbivore .ace_marker-layer .ace_step {background: rgb(102, 82, 0)}.ace-merbivore .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid #404040}.ace-merbivore .ace_marker-layer .ace_active-line {background: #333435}.ace-merbivore .ace_gutter-active-line {background-color: #333435}.ace-merbivore .ace_marker-layer .ace_selected-word {border: 1px solid #454545}.ace-merbivore .ace_invisible {color: #404040}.ace-merbivore .ace_entity.ace_name.ace_tag,.ace-merbivore .ace_keyword,.ace-merbivore .ace_meta,.ace-merbivore .ace_meta.ace_tag,.ace-merbivore .ace_storage,.ace-merbivore .ace_support.ace_function {color: #FC6F09}.ace-merbivore .ace_constant,.ace-merbivore .ace_constant.ace_character,.ace-merbivore .ace_constant.ace_character.ace_escape,.ace-merbivore .ace_constant.ace_other,.ace-merbivore .ace_support.ace_type {color: #1EDAFB}.ace-merbivore .ace_constant.ace_character.ace_escape {color: #519F50}.ace-merbivore .ace_constant.ace_language {color: #FDC251}.ace-merbivore .ace_constant.ace_library,.ace-merbivore .ace_string,.ace-merbivore .ace_support.ace_constant {color: #8DFF0A}.ace-merbivore .ace_constant.ace_numeric {color: #58C554}.ace-merbivore .ace_invalid {color: #FFFFFF;background-color: #990000}.ace-merbivore .ace_fold {background-color: #FC6F09;border-color: #E6E1DC}.ace-merbivore .ace_comment {font-style: italic;color: #AD2EA4}.ace-merbivore .ace_entity.ace_other.ace_attribute-name {color: #FFFF89}.ace-merbivore .ace_indent-guide {background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWMQFxf3ZXB1df0PAAdsAmERTkEHAAAAAElFTkSuQmCC) right repeat-y}";var r=e("../lib/dom");r.importCssString(t.cssText,t.cssClass)})
--------------------------------------------------------------------------------
/public/js/ace/theme-idle_fingers.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/idle_fingers",["require","exports","module","ace/lib/dom"],function(e,t,n){t.isDark=!0,t.cssClass="ace-idle-fingers",t.cssText=".ace-idle-fingers .ace_gutter {background: #3b3b3b;color: #fff}.ace-idle-fingers .ace_print-margin {width: 1px;background: #3b3b3b}.ace-idle-fingers {background-color: #323232;color: #FFFFFF}.ace-idle-fingers .ace_cursor {color: #91FF00}.ace-idle-fingers .ace_marker-layer .ace_selection {background: rgba(90, 100, 126, 0.88)}.ace-idle-fingers.ace_multiselect .ace_selection.ace_start {box-shadow: 0 0 3px 0px #323232;border-radius: 2px}.ace-idle-fingers .ace_marker-layer .ace_step {background: rgb(102, 82, 0)}.ace-idle-fingers .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid #404040}.ace-idle-fingers .ace_marker-layer .ace_active-line {background: #353637}.ace-idle-fingers .ace_gutter-active-line {background-color: #353637}.ace-idle-fingers .ace_marker-layer .ace_selected-word {border: 1px solid rgba(90, 100, 126, 0.88)}.ace-idle-fingers .ace_invisible {color: #404040}.ace-idle-fingers .ace_keyword,.ace-idle-fingers .ace_meta {color: #CC7833}.ace-idle-fingers .ace_constant,.ace-idle-fingers .ace_constant.ace_character,.ace-idle-fingers .ace_constant.ace_character.ace_escape,.ace-idle-fingers .ace_constant.ace_other,.ace-idle-fingers .ace_support.ace_constant {color: #6C99BB}.ace-idle-fingers .ace_invalid {color: #FFFFFF;background-color: #FF0000}.ace-idle-fingers .ace_fold {background-color: #CC7833;border-color: #FFFFFF}.ace-idle-fingers .ace_support.ace_function {color: #B83426}.ace-idle-fingers .ace_variable.ace_parameter {font-style: italic}.ace-idle-fingers .ace_string {color: #A5C261}.ace-idle-fingers .ace_string.ace_regexp {color: #CCCC33}.ace-idle-fingers .ace_comment {font-style: italic;color: #BC9458}.ace-idle-fingers .ace_meta.ace_tag {color: #FFE5BB}.ace-idle-fingers .ace_entity.ace_name {color: #FFC66D}.ace-idle-fingers .ace_collab.ace_user1 {color: #323232;background-color: #FFF980}.ace-idle-fingers .ace_indent-guide {background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWMwMjLyZYiPj/8PAAreAwAI1+g0AAAAAElFTkSuQmCC) right repeat-y}";var r=e("../lib/dom");r.importCssString(t.cssText,t.cssClass)})
--------------------------------------------------------------------------------
/public/js/ace/theme-github.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/github",["require","exports","module","ace/lib/dom"],function(e,t,n){t.isDark=!1,t.cssClass="ace-github",t.cssText='/* CSS style content from github\'s default pygments highlighter template.Cursor and selection styles from textmate.css. */.ace-github .ace_gutter {background: #e8e8e8;color: #AAA;}.ace-github {background: #fff;color: #000;}.ace-github .ace_keyword {font-weight: bold;}.ace-github .ace_string {color: #D14;}.ace-github .ace_variable.ace_class {color: teal;}.ace-github .ace_constant.ace_numeric {color: #099;}.ace-github .ace_constant.ace_buildin {color: #0086B3;}.ace-github .ace_support.ace_function {color: #0086B3;}.ace-github .ace_comment {color: #998;font-style: italic;}.ace-github .ace_variable.ace_language {color: #0086B3;}.ace-github .ace_paren {font-weight: bold;}.ace-github .ace_boolean {font-weight: bold;}.ace-github .ace_string.ace_regexp {color: #009926;font-weight: normal;}.ace-github .ace_variable.ace_instance {color: teal;}.ace-github .ace_constant.ace_language {font-weight: bold;}.ace-github .ace_cursor {color: black;}.ace-github .ace_marker-layer .ace_active-line {background: rgb(255, 255, 204);}.ace-github .ace_marker-layer .ace_selection {background: rgb(181, 213, 255);}.ace-github.ace_multiselect .ace_selection.ace_start {box-shadow: 0 0 3px 0px white;border-radius: 2px;}/* bold keywords cause cursor issues for some fonts *//* this disables bold style for editor and keeps for static highlighter */.ace-github.ace_nobold .ace_line > span {font-weight: normal !important;}.ace-github .ace_marker-layer .ace_step {background: rgb(252, 255, 0);}.ace-github .ace_marker-layer .ace_stack {background: rgb(164, 229, 101);}.ace-github .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid rgb(192, 192, 192);}.ace-github .ace_gutter-active-line {background-color : rgba(0, 0, 0, 0.07);}.ace-github .ace_marker-layer .ace_selected-word {background: rgb(250, 250, 255);border: 1px solid rgb(200, 200, 250);}.ace-github .ace_print-margin {width: 1px;background: #e8e8e8;}.ace-github .ace_indent-guide {background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y;}';var r=e("../lib/dom");r.importCssString(t.cssText,t.cssClass)})
--------------------------------------------------------------------------------
/public/js/ace/theme-kr.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/kr_theme",["require","exports","module","ace/lib/dom"],function(e,t,n){t.isDark=!0,t.cssClass="ace-kr-theme",t.cssText=".ace-kr-theme .ace_gutter {background: #1c1917;color: #FCFFE0}.ace-kr-theme .ace_print-margin {width: 1px;background: #1c1917}.ace-kr-theme {background-color: #0B0A09;color: #FCFFE0}.ace-kr-theme .ace_cursor {color: #FF9900}.ace-kr-theme .ace_marker-layer .ace_selection {background: rgba(170, 0, 255, 0.45)}.ace-kr-theme.ace_multiselect .ace_selection.ace_start {box-shadow: 0 0 3px 0px #0B0A09;border-radius: 2px}.ace-kr-theme .ace_marker-layer .ace_step {background: rgb(102, 82, 0)}.ace-kr-theme .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid rgba(255, 177, 111, 0.32)}.ace-kr-theme .ace_marker-layer .ace_active-line {background: #38403D}.ace-kr-theme .ace_gutter-active-line {background-color : #38403D}.ace-kr-theme .ace_marker-layer .ace_selected-word {border: 1px solid rgba(170, 0, 255, 0.45)}.ace-kr-theme .ace_invisible {color: rgba(255, 177, 111, 0.32)}.ace-kr-theme .ace_keyword,.ace-kr-theme .ace_meta {color: #949C8B}.ace-kr-theme .ace_constant,.ace-kr-theme .ace_constant.ace_character,.ace-kr-theme .ace_constant.ace_character.ace_escape,.ace-kr-theme .ace_constant.ace_other {color: rgba(210, 117, 24, 0.76)}.ace-kr-theme .ace_invalid {color: #F8F8F8;background-color: #A41300}.ace-kr-theme .ace_support {color: #9FC28A}.ace-kr-theme .ace_support.ace_constant {color: #C27E66}.ace-kr-theme .ace_fold {background-color: #949C8B;border-color: #FCFFE0}.ace-kr-theme .ace_support.ace_function {color: #85873A}.ace-kr-theme .ace_storage {color: #FFEE80}.ace-kr-theme .ace_string {color: rgba(164, 161, 181, 0.8)}.ace-kr-theme .ace_string.ace_regexp {color: rgba(125, 255, 192, 0.65)}.ace-kr-theme .ace_comment {font-style: italic;color: #706D5B}.ace-kr-theme .ace_variable {color: #D1A796}.ace-kr-theme .ace_list,.ace-kr-theme .ace_markup.ace_list {background-color: #0F0040}.ace-kr-theme .ace_variable.ace_language {color: #FF80E1}.ace-kr-theme .ace_meta.ace_tag {color: #BABD9C}.ace-kr-theme .ace_indent-guide {background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNgYGBgYFBXV/8PAAJoAXX4kT2EAAAAAElFTkSuQmCC) right repeat-y}";var r=e("../lib/dom");r.importCssString(t.cssText,t.cssClass)})
--------------------------------------------------------------------------------
/public/js/ace/mode-cobol.js:
--------------------------------------------------------------------------------
1 | define("ace/mode/cobol",["require","exports","module","ace/lib/oop","ace/mode/text","ace/tokenizer","ace/mode/cobol_highlight_rules","ace/range"],function(e,t,n){var r=e("../lib/oop"),i=e("./text").Mode,s=e("../tokenizer").Tokenizer,o=e("./cobol_highlight_rules").CobolHighlightRules,u=e("../range").Range,a=function(){this.HighlightRules=o};r.inherits(a,i),function(){this.lineCommentStart="*",this.$id="ace/mode/cobol"}.call(a.prototype),t.Mode=a}),define("ace/mode/cobol_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,t,n){var r=e("../lib/oop"),i=e("./text_highlight_rules").TextHighlightRules,s=function(){var e="ACCEPT|MERGE|SUM|ADD||MESSAGE|TABLE|ADVANCING|MODE|TAPE|AFTER|MULTIPLY|TEST|ALL|NEGATIVE|TEXT|ALPHABET|NEXT|THAN|ALSO|NO|THEN|ALTERNATE|NOT|THROUGH|AND|NUMBER|THRU|ANY|OCCURS|TIME|ARE|OF|TO|AREA|OFF|TOP||ASCENDING|OMITTED|TRUE|ASSIGN|ON|TYPE|AT|OPEN|UNIT|AUTHOR|OR|UNTIL|BEFORE|OTHER|UP|BLANK|OUTPUT|USE|BLOCK|PAGE|USING|BOTTOM|PERFORM|VALUE|BY|PIC|VALUES|CALL|PICTURE|WHEN|CANCEL|PLUS|WITH|CD|POINTER|WRITE|CHARACTER|POSITION||ZERO|CLOSE|POSITIVE|ZEROS|COLUMN|PROCEDURE|ZEROES|COMMA|PROGRAM|COMMON|PROGRAM-ID|COMMUNICATION|QUOTE|COMP|RANDOM|COMPUTE|READ|CONTAINS|RECEIVE|CONFIGURATION|RECORD|CONTINUE|REDEFINES|CONTROL|REFERENCE|COPY|REMAINDER|COUNT|REPLACE|DATA|REPORT|DATE|RESERVE|DAY|RESET|DELETE|RETURN|DESTINATION|REWIND|DISABLE|REWRITE|DISPLAY|RIGHT|DIVIDE|RUN|DOWN|SAME|ELSE|SEARCH|ENABLE|SECTION|END|SELECT|ENVIRONMENT|SENTENCE|EQUAL|SET|ERROR|SIGN|EXIT|SEQUENTIAL|EXTERNAL|SIZE|FLASE|SORT|FILE|SOURCE|LENGTH|SPACE|LESS|STANDARD|LIMIT|START|LINE|STOP|LOCK|STRING|LOW-VALUE|SUBTRACT",t="true|false|null",n="count|min|max|avg|sum|rank|now|coalesce|main",r=this.createKeywordMapper({"support.function":n,keyword:e,"constant.language":t},"identifier",!0);this.$rules={start:[{token:"comment",regex:"\\*.*$"},{token:"string",regex:'".*?"'},{token:"string",regex:"'.*?'"},{token:"constant.numeric",regex:"[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b"},{token:r,regex:"[a-zA-Z_$][a-zA-Z0-9_$]*\\b"},{token:"keyword.operator",regex:"\\+|\\-|\\/|\\/\\/|%|<@>|@>|<@|&|\\^|~|<|>|<=|=>|==|!=|<>|="},{token:"paren.lparen",regex:"[\\(]"},{token:"paren.rparen",regex:"[\\)]"},{token:"text",regex:"\\s+"}]}};r.inherits(s,i),t.CobolHighlightRules=s})
--------------------------------------------------------------------------------
/public/js/ace/theme-solarized_dark.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/solarized_dark",["require","exports","module","ace/lib/dom"],function(e,t,n){t.isDark=!0,t.cssClass="ace-solarized-dark",t.cssText=".ace-solarized-dark .ace_gutter {background: #01313f;color: #d0edf7}.ace-solarized-dark .ace_print-margin {width: 1px;background: #33555E}.ace-solarized-dark {background-color: #002B36;color: #93A1A1}.ace-solarized-dark .ace_entity.ace_other.ace_attribute-name,.ace-solarized-dark .ace_storage {color: #93A1A1}.ace-solarized-dark .ace_cursor,.ace-solarized-dark .ace_string.ace_regexp {color: #D30102}.ace-solarized-dark .ace_marker-layer .ace_active-line,.ace-solarized-dark .ace_marker-layer .ace_selection {background: rgba(255, 255, 255, 0.1)}.ace-solarized-dark.ace_multiselect .ace_selection.ace_start {box-shadow: 0 0 3px 0px #002B36;border-radius: 2px}.ace-solarized-dark .ace_marker-layer .ace_step {background: rgb(102, 82, 0)}.ace-solarized-dark .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid rgba(147, 161, 161, 0.50)}.ace-solarized-dark .ace_gutter-active-line {background-color: #0d3440}.ace-solarized-dark .ace_marker-layer .ace_selected-word {border: 1px solid #073642}.ace-solarized-dark .ace_invisible {color: rgba(147, 161, 161, 0.50)}.ace-solarized-dark .ace_keyword,.ace-solarized-dark .ace_meta,.ace-solarized-dark .ace_support.ace_class,.ace-solarized-dark .ace_support.ace_type {color: #859900}.ace-solarized-dark .ace_constant.ace_character,.ace-solarized-dark .ace_constant.ace_other {color: #CB4B16}.ace-solarized-dark .ace_constant.ace_language {color: #B58900}.ace-solarized-dark .ace_constant.ace_numeric {color: #D33682}.ace-solarized-dark .ace_fold {background-color: #268BD2;border-color: #93A1A1}.ace-solarized-dark .ace_entity.ace_name.ace_function,.ace-solarized-dark .ace_entity.ace_name.ace_tag,.ace-solarized-dark .ace_support.ace_function,.ace-solarized-dark .ace_variable,.ace-solarized-dark .ace_variable.ace_language {color: #268BD2}.ace-solarized-dark .ace_string {color: #2AA198}.ace-solarized-dark .ace_comment {font-style: italic;color: #657B83}.ace-solarized-dark .ace_indent-guide {background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNg0Db1ZVCxc/sPAAd4AlUHlLenAAAAAElFTkSuQmCC) right repeat-y}";var r=e("../lib/dom");r.importCssString(t.cssText,t.cssClass)})
--------------------------------------------------------------------------------
/app/models/User.php:
--------------------------------------------------------------------------------
1 | getKey();
40 | }
41 |
42 | /**
43 | * Get the password for the user.
44 | *
45 | * @return string
46 | */
47 | public function getAuthPassword()
48 | {
49 | return $this->password;
50 | }
51 |
52 | /**
53 | * Get the token value for the "remember me" session.
54 | *
55 | * @return string
56 | */
57 | public function getRememberToken()
58 | {
59 | return $this->remember_token;
60 | }
61 |
62 | /**
63 | * Set the token value for the "remember me" session.
64 | *
65 | * @param string $value
66 | * @return void
67 | */
68 | public function setRememberToken($value)
69 | {
70 | $this->remember_token = $value;
71 | }
72 |
73 | /**
74 | * Get the column name for the "remember me" token.
75 | *
76 | * @return string
77 | */
78 | public function getRememberTokenName()
79 | {
80 | return 'remember_token';
81 | }
82 |
83 | /**
84 | * Get the e-mail address where password reminders are sent.
85 | *
86 | * @return string
87 | */
88 | public function getReminderEmail()
89 | {
90 | return $this->email;
91 | }
92 |
93 | public function posts()
94 | {
95 | $this->hasMany('Post');
96 | }
97 |
98 | public function tags()
99 | {
100 | $this->hasMany('Tag');
101 | }
102 |
103 | public function user_preferences()
104 | {
105 | $this->hasMany('UserPreference');
106 | }
107 |
108 | }
109 |
--------------------------------------------------------------------------------
/public/js/ace/theme-cobalt.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/cobalt",["require","exports","module","ace/lib/dom"],function(e,t,n){t.isDark=!0,t.cssClass="ace-cobalt",t.cssText=".ace-cobalt .ace_gutter {background: #011e3a;color: #fff}.ace-cobalt .ace_print-margin {width: 1px;background: #011e3a}.ace-cobalt {background-color: #002240;color: #FFFFFF}.ace-cobalt .ace_cursor {color: #FFFFFF}.ace-cobalt .ace_marker-layer .ace_selection {background: rgba(179, 101, 57, 0.75)}.ace-cobalt.ace_multiselect .ace_selection.ace_start {box-shadow: 0 0 3px 0px #002240;border-radius: 2px}.ace-cobalt .ace_marker-layer .ace_step {background: rgb(127, 111, 19)}.ace-cobalt .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid rgba(255, 255, 255, 0.15)}.ace-cobalt .ace_marker-layer .ace_active-line {background: rgba(0, 0, 0, 0.35)}.ace-cobalt .ace_gutter-active-line {background-color: rgba(0, 0, 0, 0.35)}.ace-cobalt .ace_marker-layer .ace_selected-word {border: 1px solid rgba(179, 101, 57, 0.75)}.ace-cobalt .ace_invisible {color: rgba(255, 255, 255, 0.15)}.ace-cobalt .ace_keyword,.ace-cobalt .ace_meta {color: #FF9D00}.ace-cobalt .ace_constant,.ace-cobalt .ace_constant.ace_character,.ace-cobalt .ace_constant.ace_character.ace_escape,.ace-cobalt .ace_constant.ace_other {color: #FF628C}.ace-cobalt .ace_invalid {color: #F8F8F8;background-color: #800F00}.ace-cobalt .ace_support {color: #80FFBB}.ace-cobalt .ace_support.ace_constant {color: #EB939A}.ace-cobalt .ace_fold {background-color: #FF9D00;border-color: #FFFFFF}.ace-cobalt .ace_support.ace_function {color: #FFB054}.ace-cobalt .ace_storage {color: #FFEE80}.ace-cobalt .ace_entity {color: #FFDD00}.ace-cobalt .ace_string {color: #3AD900}.ace-cobalt .ace_string.ace_regexp {color: #80FFC2}.ace-cobalt .ace_comment {font-style: italic;color: #0088FF}.ace-cobalt .ace_heading,.ace-cobalt .ace_markup.ace_heading {color: #C8E4FD;background-color: #001221}.ace-cobalt .ace_list,.ace-cobalt .ace_markup.ace_list {background-color: #130D26}.ace-cobalt .ace_variable {color: #CCCCCC}.ace-cobalt .ace_variable.ace_language {color: #FF80E1}.ace-cobalt .ace_meta.ace_tag {color: #9EFFFF}.ace-cobalt .ace_indent-guide {background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNgYGBgYHCLSvkPAAP3AgSDTRd4AAAAAElFTkSuQmCC) right repeat-y}";var r=e("../lib/dom");r.importCssString(t.cssText,t.cssClass)})
--------------------------------------------------------------------------------
/public/js/ace/theme-solarized_light.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/solarized_light",["require","exports","module","ace/lib/dom"],function(e,t,n){t.isDark=!1,t.cssClass="ace-solarized-light",t.cssText=".ace-solarized-light .ace_gutter {background: #fbf1d3;color: #333}.ace-solarized-light .ace_print-margin {width: 1px;background: #e8e8e8}.ace-solarized-light {background-color: #FDF6E3;color: #586E75}.ace-solarized-light .ace_cursor {color: #000000}.ace-solarized-light .ace_marker-layer .ace_selection {background: rgba(7, 54, 67, 0.09)}.ace-solarized-light.ace_multiselect .ace_selection.ace_start {box-shadow: 0 0 3px 0px #FDF6E3;border-radius: 2px}.ace-solarized-light .ace_marker-layer .ace_step {background: rgb(255, 255, 0)}.ace-solarized-light .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid rgba(147, 161, 161, 0.50)}.ace-solarized-light .ace_marker-layer .ace_active-line {background: #EEE8D5}.ace-solarized-light .ace_gutter-active-line {background-color : #EDE5C1}.ace-solarized-light .ace_marker-layer .ace_selected-word {border: 1px solid #073642}.ace-solarized-light .ace_invisible {color: rgba(147, 161, 161, 0.50)}.ace-solarized-light .ace_keyword,.ace-solarized-light .ace_meta,.ace-solarized-light .ace_support.ace_class,.ace-solarized-light .ace_support.ace_type {color: #859900}.ace-solarized-light .ace_constant.ace_character,.ace-solarized-light .ace_constant.ace_other {color: #CB4B16}.ace-solarized-light .ace_constant.ace_language {color: #B58900}.ace-solarized-light .ace_constant.ace_numeric {color: #D33682}.ace-solarized-light .ace_fold {background-color: #268BD2;border-color: #586E75}.ace-solarized-light .ace_entity.ace_name.ace_function,.ace-solarized-light .ace_entity.ace_name.ace_tag,.ace-solarized-light .ace_support.ace_function,.ace-solarized-light .ace_variable,.ace-solarized-light .ace_variable.ace_language {color: #268BD2}.ace-solarized-light .ace_storage {color: #073642}.ace-solarized-light .ace_string {color: #2AA198}.ace-solarized-light .ace_string.ace_regexp {color: #D30102}.ace-solarized-light .ace_comment,.ace-solarized-light .ace_entity.ace_other.ace_attribute-name {color: #93A1A1}.ace-solarized-light .ace_indent-guide {background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNgYGBgYHjy8NJ/AAjgA5fzQUmBAAAAAElFTkSuQmCC) right repeat-y}";var r=e("../lib/dom");r.importCssString(t.cssText,t.cssClass)})
--------------------------------------------------------------------------------
/public/js/ace/theme-monokai.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/monokai",["require","exports","module","ace/lib/dom"],function(e,t,n){t.isDark=!0,t.cssClass="ace-monokai",t.cssText=".ace-monokai .ace_gutter {background: #2F3129;color: #8F908A}.ace-monokai .ace_print-margin {width: 1px;background: #555651}.ace-monokai {background-color: #272822;color: #F8F8F2}.ace-monokai .ace_cursor {color: #F8F8F0}.ace-monokai .ace_marker-layer .ace_selection {background: #49483E}.ace-monokai.ace_multiselect .ace_selection.ace_start {box-shadow: 0 0 3px 0px #272822;border-radius: 2px}.ace-monokai .ace_marker-layer .ace_step {background: rgb(102, 82, 0)}.ace-monokai .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid #49483E}.ace-monokai .ace_marker-layer .ace_active-line {background: #202020}.ace-monokai .ace_gutter-active-line {background-color: #272727}.ace-monokai .ace_marker-layer .ace_selected-word {border: 1px solid #49483E}.ace-monokai .ace_invisible {color: #52524d}.ace-monokai .ace_entity.ace_name.ace_tag,.ace-monokai .ace_keyword,.ace-monokai .ace_meta.ace_tag,.ace-monokai .ace_storage {color: #F92672}.ace-monokai .ace_punctuation,.ace-monokai .ace_punctuation.ace_tag {color: #fff}.ace-monokai .ace_constant.ace_character,.ace-monokai .ace_constant.ace_language,.ace-monokai .ace_constant.ace_numeric,.ace-monokai .ace_constant.ace_other {color: #AE81FF}.ace-monokai .ace_invalid {color: #F8F8F0;background-color: #F92672}.ace-monokai .ace_invalid.ace_deprecated {color: #F8F8F0;background-color: #AE81FF}.ace-monokai .ace_support.ace_constant,.ace-monokai .ace_support.ace_function {color: #66D9EF}.ace-monokai .ace_fold {background-color: #A6E22E;border-color: #F8F8F2}.ace-monokai .ace_storage.ace_type,.ace-monokai .ace_support.ace_class,.ace-monokai .ace_support.ace_type {font-style: italic;color: #66D9EF}.ace-monokai .ace_entity.ace_name.ace_function,.ace-monokai .ace_entity.ace_other,.ace-monokai .ace_entity.ace_other.ace_attribute-name,.ace-monokai .ace_variable {color: #A6E22E}.ace-monokai .ace_variable.ace_parameter {font-style: italic;color: #FD971F}.ace-monokai .ace_string {color: #E6DB74}.ace-monokai .ace_comment {color: #75715E}.ace-monokai .ace_indent-guide {background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWPQ0FD0ZXBzd/wPAAjVAoxeSgNeAAAAAElFTkSuQmCC) right repeat-y}";var r=e("../lib/dom");r.importCssString(t.cssText,t.cssClass)})
--------------------------------------------------------------------------------
/public/js/ace/mode-diff.js:
--------------------------------------------------------------------------------
1 | define("ace/mode/diff",["require","exports","module","ace/lib/oop","ace/mode/text","ace/tokenizer","ace/mode/diff_highlight_rules","ace/mode/folding/diff"],function(e,t,n){var r=e("../lib/oop"),i=e("./text").Mode,s=e("../tokenizer").Tokenizer,o=e("./diff_highlight_rules").DiffHighlightRules,u=e("./folding/diff").FoldMode,a=function(){this.HighlightRules=o,this.foldingRules=new u(["diff","index","\\+{3}","@@|\\*{5}"],"i")};r.inherits(a,i),function(){this.$id="ace/mode/diff"}.call(a.prototype),t.Mode=a}),define("ace/mode/diff_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,t,n){var r=e("../lib/oop"),i=e("./text_highlight_rules").TextHighlightRules,s=function(){this.$rules={start:[{regex:"^(?:\\*{15}|={67}|-{3}|\\+{3})$",token:"punctuation.definition.separator.diff",name:"keyword"},{regex:"^(@@)(\\s*.+?\\s*)(@@)(.*)$",token:["constant","constant.numeric","constant","comment.doc.tag"]},{regex:"^(\\d+)([,\\d]+)(a|d|c)(\\d+)([,\\d]+)(.*)$",token:["constant.numeric","punctuation.definition.range.diff","constant.function","constant.numeric","punctuation.definition.range.diff","invalid"],name:"meta."},{regex:"^(\\-{3}|\\+{3}|\\*{3})( .+)$",token:["constant.numeric","meta.tag"]},{regex:"^([!+>])(.*?)(\\s*)$",token:["support.constant","text","invalid"]},{regex:"^([<\\-])(.*?)(\\s*)$",token:["support.function","string","invalid"]},{regex:"^(diff)(\\s+--\\w+)?(.+?)( .+)?$",token:["variable","variable","keyword","variable"]},{regex:"^Index.+$",token:"variable"},{regex:"^\\s+$",token:"text"},{regex:"\\s*$",token:"invalid"},{defaultToken:"invisible",caseInsensitive:!0}]}};r.inherits(s,i),t.DiffHighlightRules=s}),define("ace/mode/folding/diff",["require","exports","module","ace/lib/oop","ace/mode/folding/fold_mode","ace/range"],function(e,t,n){var r=e("../../lib/oop"),i=e("./fold_mode").FoldMode,s=e("../../range").Range,o=t.FoldMode=function(e,t){this.regExpList=e,this.flag=t,this.foldingStartMarker=RegExp("^("+e.join("|")+")",this.flag)};r.inherits(o,i),function(){this.getFoldWidgetRange=function(e,t,n){var r=e.getLine(n),i={row:n,column:r.length},o=this.regExpList;for(var u=1;u<=o.length;u++){var a=RegExp("^("+o.slice(0,u).join("|")+")",this.flag);if(a.test(r))break}for(var f=e.getLength();++n 'eloquent',
19 |
20 | /*
21 | |--------------------------------------------------------------------------
22 | | Authentication Model
23 | |--------------------------------------------------------------------------
24 | |
25 | | When using the "Eloquent" authentication driver, we need to know which
26 | | Eloquent model should be used to retrieve your users. Of course, it
27 | | is often just the "User" model but you may use whatever you like.
28 | |
29 | */
30 |
31 | 'model' => 'User',
32 |
33 | /*
34 | |--------------------------------------------------------------------------
35 | | Authentication Table
36 | |--------------------------------------------------------------------------
37 | |
38 | | When using the "Database" authentication driver, we need to know which
39 | | table should be used to retrieve your users. We have chosen a basic
40 | | default value but you may easily change it to any table you like.
41 | |
42 | */
43 |
44 | 'table' => 'users',
45 |
46 | /*
47 | |--------------------------------------------------------------------------
48 | | Password Reminder Settings
49 | |--------------------------------------------------------------------------
50 | |
51 | | Here you may set the settings for password reminders, including a view
52 | | that should be used as your password reminder e-mail. You will also
53 | | be able to set the name of the table that holds the reset tokens.
54 | |
55 | | The "expire" time is the number of minutes that the reminder should be
56 | | considered valid. This security feature keeps tokens short-lived so
57 | | they have less time to be guessed. You may change this as needed.
58 | |
59 | */
60 |
61 | 'reminder' => array(
62 |
63 | 'email' => 'emails.auth.reminder',
64 |
65 | 'table' => 'password_reminders',
66 |
67 | 'expire' => 60,
68 |
69 | ),
70 |
71 | );
72 |
--------------------------------------------------------------------------------
/app/config/queue.php:
--------------------------------------------------------------------------------
1 | 'sync',
19 |
20 | /*
21 | |--------------------------------------------------------------------------
22 | | Queue Connections
23 | |--------------------------------------------------------------------------
24 | |
25 | | Here you may configure the connection information for each server that
26 | | is used by your application. A default configuration has been added
27 | | for each back-end shipped with Laravel. You are free to add more.
28 | |
29 | */
30 |
31 | 'connections' => array(
32 |
33 | 'sync' => array(
34 | 'driver' => 'sync',
35 | ),
36 |
37 | 'beanstalkd' => array(
38 | 'driver' => 'beanstalkd',
39 | 'host' => 'localhost',
40 | 'queue' => 'default',
41 | 'ttr' => 60,
42 | ),
43 |
44 | 'sqs' => array(
45 | 'driver' => 'sqs',
46 | 'key' => 'your-public-key',
47 | 'secret' => 'your-secret-key',
48 | 'queue' => 'your-queue-url',
49 | 'region' => 'us-east-1',
50 | ),
51 |
52 | 'iron' => array(
53 | 'driver' => 'iron',
54 | 'host' => 'mq-aws-us-east-1.iron.io',
55 | 'token' => 'your-token',
56 | 'project' => 'your-project-id',
57 | 'queue' => 'your-queue-name',
58 | ),
59 |
60 | 'redis' => array(
61 | 'driver' => 'redis',
62 | 'queue' => 'default',
63 | ),
64 |
65 | ),
66 |
67 | /*
68 | |--------------------------------------------------------------------------
69 | | Failed Queue Jobs
70 | |--------------------------------------------------------------------------
71 | |
72 | | These options configure the behavior of failed queue job logging so you
73 | | can control which database and table are used to store the jobs that
74 | | have failed. You may change them to any database / table you wish.
75 | |
76 | */
77 |
78 | 'failed' => array(
79 |
80 | 'database' => 'mysql', 'table' => 'failed_jobs',
81 |
82 | ),
83 |
84 | );
85 |
--------------------------------------------------------------------------------
/public/js/ace/ext-whitespace.js:
--------------------------------------------------------------------------------
1 | define("ace/ext/whitespace",["require","exports","module","ace/lib/lang"],function(e,t,n){var r=e("../lib/lang");t.$detectIndentation=function(e,t){function h(e){var t=0;for(var r=e;r0&&!(s%c)&&!(l%c)&&(r[c]=(r[c]||0)+1),n[l]=(n[l]||0)+1}s=l;while(ud.score&&(d={score:m,length:u})}if(d.score&&d.score>1.4)var g=d.length;if(i>v+1)return{ch:" ",length:g};if(v+1>i)return{ch:" ",length:g}},t.detectIndentation=function(e){var n=e.getLines(0,1e3),r=t.$detectIndentation(n)||{};return r.ch&&e.setUseSoftTabs(r.ch==" "),r.length&&e.setTabSize(r.length),r},t.trimTrailingSpace=function(e,t){var n=e.getDocument(),r=n.getAllLines(),i=t?-1:0;for(var s=0,o=r.length;si&&n.removeInLine(s,a,u.length)}},t.convertIndentation=function(e,t,n){var i=e.getTabString()[0],s=e.getTabSize();n||(n=s),t||(t=i);var o=t==" "?t:r.stringRepeat(t,n),u=e.doc,a=u.getAllLines(),f={},l={};for(var c=0,h=a.length;c|@>|<@|&|\\^|~|<|>|<=|=>|==|!=|<>|="},{token:"paren.lparen",regex:"[\\(]"},{token:"paren.rparen",regex:"[\\)]"},{token:"text",regex:"\\s+"}]}};r.inherits(s,i),t.VerilogHighlightRules=s})
--------------------------------------------------------------------------------
/public/js/ace/theme-tomorrow.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/tomorrow",["require","exports","module","ace/lib/dom"],function(e,t,n){t.isDark=!1,t.cssClass="ace-tomorrow",t.cssText=".ace-tomorrow .ace_gutter {background: #f6f6f6;color: #4D4D4C}.ace-tomorrow .ace_print-margin {width: 1px;background: #f6f6f6}.ace-tomorrow {background-color: #FFFFFF;color: #4D4D4C}.ace-tomorrow .ace_cursor {color: #AEAFAD}.ace-tomorrow .ace_marker-layer .ace_selection {background: #D6D6D6}.ace-tomorrow.ace_multiselect .ace_selection.ace_start {box-shadow: 0 0 3px 0px #FFFFFF;border-radius: 2px}.ace-tomorrow .ace_marker-layer .ace_step {background: rgb(255, 255, 0)}.ace-tomorrow .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid #D1D1D1}.ace-tomorrow .ace_marker-layer .ace_active-line {background: #EFEFEF}.ace-tomorrow .ace_gutter-active-line {background-color : #dcdcdc}.ace-tomorrow .ace_marker-layer .ace_selected-word {border: 1px solid #D6D6D6}.ace-tomorrow .ace_invisible {color: #D1D1D1}.ace-tomorrow .ace_keyword,.ace-tomorrow .ace_meta,.ace-tomorrow .ace_storage,.ace-tomorrow .ace_storage.ace_type,.ace-tomorrow .ace_support.ace_type {color: #8959A8}.ace-tomorrow .ace_keyword.ace_operator {color: #3E999F}.ace-tomorrow .ace_constant.ace_character,.ace-tomorrow .ace_constant.ace_language,.ace-tomorrow .ace_constant.ace_numeric,.ace-tomorrow .ace_keyword.ace_other.ace_unit,.ace-tomorrow .ace_support.ace_constant,.ace-tomorrow .ace_variable.ace_parameter {color: #F5871F}.ace-tomorrow .ace_constant.ace_other {color: #666969}.ace-tomorrow .ace_invalid {color: #FFFFFF;background-color: #C82829}.ace-tomorrow .ace_invalid.ace_deprecated {color: #FFFFFF;background-color: #8959A8}.ace-tomorrow .ace_fold {background-color: #4271AE;border-color: #4D4D4C}.ace-tomorrow .ace_entity.ace_name.ace_function,.ace-tomorrow .ace_support.ace_function,.ace-tomorrow .ace_variable {color: #4271AE}.ace-tomorrow .ace_support.ace_class,.ace-tomorrow .ace_support.ace_type {color: #C99E00}.ace-tomorrow .ace_heading,.ace-tomorrow .ace_markup.ace_heading,.ace-tomorrow .ace_string {color: #718C00}.ace-tomorrow .ace_entity.ace_name.ace_tag,.ace-tomorrow .ace_entity.ace_other.ace_attribute-name,.ace-tomorrow .ace_meta.ace_tag,.ace-tomorrow .ace_string.ace_regexp,.ace-tomorrow .ace_variable {color: #C82829}.ace-tomorrow .ace_comment {color: #8E908C}.ace-tomorrow .ace_indent-guide {background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bdu3f/BwAlfgctduB85QAAAABJRU5ErkJggg==) right repeat-y}";var r=e("../lib/dom");r.importCssString(t.cssText,t.cssClass)})
--------------------------------------------------------------------------------
/public/js/ace/ext-static_highlight.js:
--------------------------------------------------------------------------------
1 | define("ace/ext/static_highlight",["require","exports","module","ace/edit_session","ace/layer/text","ace/config","ace/lib/dom"],function(e,t,n){var r=e("../edit_session").EditSession,i=e("../layer/text").Text,s=".ace_static_highlight {font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', 'Consolas', 'source-code-pro', 'Droid Sans Mono', monospace;font-size: 12px;}.ace_static_highlight .ace_gutter {width: 25px !important;display: block;float: left;text-align: right;padding: 0 3px 0 0;margin-right: 3px;position: static !important;}.ace_static_highlight .ace_line { clear: both; }.ace_static_highlight .ace_gutter-cell {-moz-user-select: -moz-none;-khtml-user-select: none;-webkit-user-select: none;user-select: none;}.ace_static_highlight .ace_gutter-cell:before {content: counter(ace_line, decimal);counter-increment: ace_line;}.ace_static_highlight {counter-reset: ace_line;}",o=e("../config"),u=e("../lib/dom"),a=function(e,t,n){var r=e.className.match(/lang-(\w+)/),i=t.mode||r&&"ace/mode/"+r[1];if(!i)return!1;var s=t.theme||"ace/theme/textmate",o="",f=[];if(e.firstElementChild){var l=0;for(var c=0;c"),u||l.push(" "),f.$renderLine(l,h,!0,!1),l.push("\n");var p="";return f.destroy(),{css:s+n.cssText,html:p,session:a}},n.exports=a,n.exports.highlight=a}),function(){window.require(["ace/ext/static_highlight"],function(){})}()
--------------------------------------------------------------------------------
/public/js/ace/theme-textmate.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/textmate",["require","exports","module","ace/lib/dom"],function(e,t,n){t.isDark=!1,t.cssClass="ace-tm",t.cssText='.ace-tm .ace_gutter {background: #f0f0f0;color: #333;}.ace-tm .ace_print-margin {width: 1px;background: #e8e8e8;}.ace-tm .ace_fold {background-color: #6B72E6;}.ace-tm {background-color: #FFFFFF;color: black;}.ace-tm .ace_cursor {color: black;}.ace-tm .ace_invisible {color: rgb(191, 191, 191);}.ace-tm .ace_storage,.ace-tm .ace_keyword {color: blue;}.ace-tm .ace_constant {color: rgb(197, 6, 11);}.ace-tm .ace_constant.ace_buildin {color: rgb(88, 72, 246);}.ace-tm .ace_constant.ace_language {color: rgb(88, 92, 246);}.ace-tm .ace_constant.ace_library {color: rgb(6, 150, 14);}.ace-tm .ace_invalid {background-color: rgba(255, 0, 0, 0.1);color: red;}.ace-tm .ace_support.ace_function {color: rgb(60, 76, 114);}.ace-tm .ace_support.ace_constant {color: rgb(6, 150, 14);}.ace-tm .ace_support.ace_type,.ace-tm .ace_support.ace_class {color: rgb(109, 121, 222);}.ace-tm .ace_keyword.ace_operator {color: rgb(104, 118, 135);}.ace-tm .ace_string {color: rgb(3, 106, 7);}.ace-tm .ace_comment {color: rgb(76, 136, 107);}.ace-tm .ace_comment.ace_doc {color: rgb(0, 102, 255);}.ace-tm .ace_comment.ace_doc.ace_tag {color: rgb(128, 159, 191);}.ace-tm .ace_constant.ace_numeric {color: rgb(0, 0, 205);}.ace-tm .ace_variable {color: rgb(49, 132, 149);}.ace-tm .ace_xml-pe {color: rgb(104, 104, 91);}.ace-tm .ace_entity.ace_name.ace_function {color: #0000A2;}.ace-tm .ace_heading {color: rgb(12, 7, 255);}.ace-tm .ace_list {color:rgb(185, 6, 144);}.ace-tm .ace_meta.ace_tag {color:rgb(0, 22, 142);}.ace-tm .ace_string.ace_regex {color: rgb(255, 0, 0)}.ace-tm .ace_marker-layer .ace_selection {background: rgb(181, 213, 255);}.ace-tm.ace_multiselect .ace_selection.ace_start {box-shadow: 0 0 3px 0px white;border-radius: 2px;}.ace-tm .ace_marker-layer .ace_step {background: rgb(252, 255, 0);}.ace-tm .ace_marker-layer .ace_stack {background: rgb(164, 229, 101);}.ace-tm .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid rgb(192, 192, 192);}.ace-tm .ace_marker-layer .ace_active-line {background: rgba(0, 0, 0, 0.07);}.ace-tm .ace_gutter-active-line {background-color : #dcdcdc;}.ace-tm .ace_marker-layer .ace_selected-word {background: rgb(250, 250, 255);border: 1px solid rgb(200, 200, 250);}.ace-tm .ace_indent-guide {background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y;}';var r=e("../lib/dom");r.importCssString(t.cssText,t.cssClass)})
--------------------------------------------------------------------------------
/public/js/ace/snippets/r.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/r",["require","exports","module"],function(e,t,n){t.snippetText='snippet #!\n #!/usr/bin/env Rscript\n\n# includes\nsnippet lib\n library(${1:package})\nsnippet req\n require(${1:package})\nsnippet source\n source(\'${1:file}\')\n\n# conditionals\nsnippet if\n if (${1:condition}) {\n ${2:code}\n }\nsnippet el\n else {\n ${1:code}\n }\nsnippet ei\n else if (${1:condition}) {\n ${2:code}\n }\n\n# functions\nsnippet fun\n ${1:name} = function (${2:variables}) {\n ${3:code}\n }\nsnippet ret\n return(${1:code})\n\n# dataframes, lists, etc\nsnippet df\n ${1:name}[${2:rows}, ${3:cols}]\nsnippet c\n c(${1:items})\nsnippet li\n list(${1:items})\nsnippet mat\n matrix(${1:data}, nrow=${2:rows}, ncol=${3:cols})\n\n# apply functions\nsnippet apply\n apply(${1:array}, ${2:margin}, ${3:function})\nsnippet lapply\n lapply(${1:list}, ${2:function})\nsnippet sapply\n lapply(${1:list}, ${2:function})\nsnippet vapply\n vapply(${1:list}, ${2:function}, ${3:type})\nsnippet mapply\n mapply(${1:function}, ${2:...})\nsnippet tapply\n tapply(${1:vector}, ${2:index}, ${3:function})\nsnippet rapply\n rapply(${1:list}, ${2:function})\n\n# plyr functions\nsnippet dd\n ddply(${1:frame}, ${2:variables}, ${3:function})\nsnippet dl\n dlply(${1:frame}, ${2:variables}, ${3:function})\nsnippet da\n daply(${1:frame}, ${2:variables}, ${3:function})\nsnippet d_\n d_ply(${1:frame}, ${2:variables}, ${3:function})\n\nsnippet ad\n adply(${1:array}, ${2:margin}, ${3:function})\nsnippet al\n alply(${1:array}, ${2:margin}, ${3:function})\nsnippet aa\n aaply(${1:array}, ${2:margin}, ${3:function})\nsnippet a_\n a_ply(${1:array}, ${2:margin}, ${3:function})\n\nsnippet ld\n ldply(${1:list}, ${2:function})\nsnippet ll\n llply(${1:list}, ${2:function})\nsnippet la\n laply(${1:list}, ${2:function})\nsnippet l_\n l_ply(${1:list}, ${2:function})\n\nsnippet md\n mdply(${1:matrix}, ${2:function})\nsnippet ml\n mlply(${1:matrix}, ${2:function})\nsnippet ma\n maply(${1:matrix}, ${2:function})\nsnippet m_\n m_ply(${1:matrix}, ${2:function})\n\n# plot functions\nsnippet pl\n plot(${1:x}, ${2:y})\nsnippet ggp\n ggplot(${1:data}, aes(${2:aesthetics}))\nsnippet img\n ${1:(jpeg,bmp,png,tiff)}(filename="${2:filename}", width=${3}, height=${4}, unit="${5}")\n ${6:plot}\n dev.off()\n\n# statistical test functions\nsnippet fis\n fisher.test(${1:x}, ${2:y})\nsnippet chi\n chisq.test(${1:x}, ${2:y})\nsnippet tt\n t.test(${1:x}, ${2:y})\nsnippet wil\n wilcox.test(${1:x}, ${2:y})\nsnippet cor\n cor.test(${1:x}, ${2:y})\nsnippet fte\n var.test(${1:x}, ${2:y})\nsnippet kvt \n kv.test(${1:x}, ${2:y})\n',t.scope="r"})
--------------------------------------------------------------------------------
/public/js/ace/snippets/c_cpp.js:
--------------------------------------------------------------------------------
1 | define("ace/snippets/c_cpp",["require","exports","module"],function(e,t,n){t.snippetText="## STL Collections\n# std::array\nsnippet array\n std::array<${1:T}, ${2:N}> ${3};${4}\n# std::vector\nsnippet vector\n std::vector<${1:T}> ${2};${3}\n# std::deque\nsnippet deque\n std::deque<${1:T}> ${2};${3}\n# std::forward_list\nsnippet flist\n std::forward_list<${1:T}> ${2};${3}\n# std::list\nsnippet list\n std::list<${1:T}> ${2};${3}\n# std::set\nsnippet set\n std::set<${1:T}> ${2};${3}\n# std::map\nsnippet map\n std::map<${1:Key}, ${2:T}> ${3};${4}\n# std::multiset\nsnippet mset\n std::multiset<${1:T}> ${2};${3}\n# std::multimap\nsnippet mmap\n std::multimap<${1:Key}, ${2:T}> ${3};${4}\n# std::unordered_set\nsnippet uset\n std::unordered_set<${1:T}> ${2};${3}\n# std::unordered_map\nsnippet umap\n std::unordered_map<${1:Key}, ${2:T}> ${3};${4}\n# std::unordered_multiset\nsnippet umset\n std::unordered_multiset<${1:T}> ${2};${3}\n# std::unordered_multimap\nsnippet ummap\n std::unordered_multimap<${1:Key}, ${2:T}> ${3};${4}\n# std::stack\nsnippet stack\n std::stack<${1:T}> ${2};${3}\n# std::queue\nsnippet queue\n std::queue<${1:T}> ${2};${3}\n# std::priority_queue\nsnippet pqueue\n std::priority_queue<${1:T}> ${2};${3}\n##\n## Access Modifiers\n# private\nsnippet pri\n private\n# protected\nsnippet pro\n protected\n# public\nsnippet pub\n public\n# friend\nsnippet fr\n friend\n# mutable\nsnippet mu\n mutable\n## \n## Class\n# class\nsnippet cl\n class ${1:`Filename('$1', 'name')`} \n {\n public:\n $1(${2});\n ~$1();\n\n private:\n ${3:/* data */}\n };\n# member function implementation\nsnippet mfun\n ${4:void} ${1:`Filename('$1', 'ClassName')`}::${2:memberFunction}(${3}) {\n ${5:/* code */}\n }\n# namespace\nsnippet ns\n namespace ${1:`Filename('', 'my')`} {\n ${2}\n } /* namespace $1 */\n##\n## Input/Output\n# std::cout\nsnippet cout\n std::cout << ${1} << std::endl;${2}\n# std::cin\nsnippet cin\n std::cin >> ${1};${2}\n##\n## Iteration\n# for i \nsnippet fori\n for (int ${2:i} = 0; $2 < ${1:count}; $2${3:++}) {\n ${4:/* code */}\n }${5}\n\n# foreach\nsnippet fore\n for (${1:auto} ${2:i} : ${3:container}) {\n ${4:/* code */}\n }${5}\n# iterator\nsnippet iter\n for (${1:std::vector}<${2:type}>::${3:const_iterator} ${4:i} = ${5:container}.begin(); $4 != $5.end(); ++$4) {\n ${6}\n }${7}\n\n# auto iterator\nsnippet itera\n for (auto ${1:i} = $1.begin(); $1 != $1.end(); ++$1) {\n ${2:std::cout << *$1 << std::endl;}\n }${3}\n##\n## Lambdas\n# lamda (one line)\nsnippet ld\n [${1}](${2}){${3:/* code */}}${4}\n# lambda (multi-line)\nsnippet lld\n [${1}](${2}){\n ${3:/* code */}\n }${4}\n",t.scope="c_cpp"})
--------------------------------------------------------------------------------
/public/js/ace/theme-pastel_on_dark.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/pastel_on_dark",["require","exports","module","ace/lib/dom"],function(e,t,n){t.isDark=!0,t.cssClass="ace-pastel-on-dark",t.cssText=".ace-pastel-on-dark .ace_gutter {background: #353030;color: #8F938F}.ace-pastel-on-dark .ace_print-margin {width: 1px;background: #353030}.ace-pastel-on-dark {background-color: #2C2828;color: #8F938F}.ace-pastel-on-dark .ace_cursor {color: #A7A7A7}.ace-pastel-on-dark .ace_marker-layer .ace_selection {background: rgba(221, 240, 255, 0.20)}.ace-pastel-on-dark.ace_multiselect .ace_selection.ace_start {box-shadow: 0 0 3px 0px #2C2828;border-radius: 2px}.ace-pastel-on-dark .ace_marker-layer .ace_step {background: rgb(102, 82, 0)}.ace-pastel-on-dark .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid rgba(255, 255, 255, 0.25)}.ace-pastel-on-dark .ace_marker-layer .ace_active-line {background: rgba(255, 255, 255, 0.031)}.ace-pastel-on-dark .ace_gutter-active-line {background-color: rgba(255, 255, 255, 0.031)}.ace-pastel-on-dark .ace_marker-layer .ace_selected-word {border: 1px solid rgba(221, 240, 255, 0.20)}.ace-pastel-on-dark .ace_invisible {color: rgba(255, 255, 255, 0.25)}.ace-pastel-on-dark .ace_keyword,.ace-pastel-on-dark .ace_meta {color: #757aD8}.ace-pastel-on-dark .ace_constant,.ace-pastel-on-dark .ace_constant.ace_character,.ace-pastel-on-dark .ace_constant.ace_character.ace_escape,.ace-pastel-on-dark .ace_constant.ace_other {color: #4FB7C5}.ace-pastel-on-dark .ace_keyword.ace_operator {color: #797878}.ace-pastel-on-dark .ace_constant.ace_character {color: #AFA472}.ace-pastel-on-dark .ace_constant.ace_language {color: #DE8E30}.ace-pastel-on-dark .ace_constant.ace_numeric {color: #CCCCCC}.ace-pastel-on-dark .ace_invalid,.ace-pastel-on-dark .ace_invalid.ace_illegal {color: #F8F8F8;background-color: rgba(86, 45, 86, 0.75)}.ace-pastel-on-dark .ace_invalid.ace_deprecated {text-decoration: underline;font-style: italic;color: #D2A8A1}.ace-pastel-on-dark .ace_fold {background-color: #757aD8;border-color: #8F938F}.ace-pastel-on-dark .ace_support.ace_function {color: #AEB2F8}.ace-pastel-on-dark .ace_string {color: #66A968}.ace-pastel-on-dark .ace_string.ace_regexp {color: #E9C062}.ace-pastel-on-dark .ace_comment {color: #A6C6FF}.ace-pastel-on-dark .ace_variable {color: #BEBF55}.ace-pastel-on-dark .ace_variable.ace_language {color: #C1C144}.ace-pastel-on-dark .ace_xml-pe {color: #494949}.ace-pastel-on-dark .ace_indent-guide {background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNgYGBgYIiPj/8PAARgAh2NTMh8AAAAAElFTkSuQmCC) right repeat-y}";var r=e("../lib/dom");r.importCssString(t.cssText,t.cssClass)})
--------------------------------------------------------------------------------
/public/js/ace/mode-ini.js:
--------------------------------------------------------------------------------
1 | define("ace/mode/ini",["require","exports","module","ace/lib/oop","ace/mode/text","ace/tokenizer","ace/mode/ini_highlight_rules","ace/mode/folding/ini"],function(e,t,n){var r=e("../lib/oop"),i=e("./text").Mode,s=e("../tokenizer").Tokenizer,o=e("./ini_highlight_rules").IniHighlightRules,u=e("./folding/ini").FoldMode,a=function(){this.HighlightRules=o,this.foldingRules=new u};r.inherits(a,i),function(){this.lineCommentStart=";",this.blockComment={start:"/*",end:"*/"},this.$id="ace/mode/ini"}.call(a.prototype),t.Mode=a}),define("ace/mode/ini_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,t,n){var r=e("../lib/oop"),i=e("./text_highlight_rules").TextHighlightRules,s="\\\\(?:[\\\\0abtrn;#=:]|x[a-fA-F\\d]{4})",o=function(){this.$rules={start:[{token:"punctuation.definition.comment.ini",regex:"#.*",push_:[{token:"comment.line.number-sign.ini",regex:"$|^",next:"pop"},{defaultToken:"comment.line.number-sign.ini"}]},{token:"punctuation.definition.comment.ini",regex:";.*",push_:[{token:"comment.line.semicolon.ini",regex:"$|^",next:"pop"},{defaultToken:"comment.line.semicolon.ini"}]},{token:["keyword.other.definition.ini","text","punctuation.separator.key-value.ini"],regex:"\\b([a-zA-Z0-9_.-]+)\\b(\\s*)(=)"},{token:["punctuation.definition.entity.ini","constant.section.group-title.ini","punctuation.definition.entity.ini"],regex:"^(\\[)(.*?)(\\])"},{token:"punctuation.definition.string.begin.ini",regex:"'",push:[{token:"punctuation.definition.string.end.ini",regex:"'",next:"pop"},{token:"constant.language.escape",regex:s},{defaultToken:"string.quoted.single.ini"}]},{token:"punctuation.definition.string.begin.ini",regex:'"',push:[{token:"constant.language.escape",regex:s},{token:"punctuation.definition.string.end.ini",regex:'"',next:"pop"},{defaultToken:"string.quoted.double.ini"}]}]},this.normalizeRules()};o.metaData={fileTypes:["ini","conf"],keyEquivalent:"^~I",name:"Ini",scopeName:"source.ini"},r.inherits(o,i),t.IniHighlightRules=o}),define("ace/mode/folding/ini",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(e,t,n){var r=e("../../lib/oop"),i=e("../../range").Range,s=e("./fold_mode").FoldMode,o=t.FoldMode=function(){};r.inherits(o,s),function(){this.foldingStartMarker=/^\s*\[([^\])]*)]\s*(?:$|[;#])/,this.getFoldWidgetRange=function(e,t,n){var r=this.foldingStartMarker,s=e.getLine(n),o=s.match(r);if(!o)return;var u=o[1]+".",a=s.length,f=e.getLength(),l=n,c=n;while(++nl){var h=e.getLine(c).length;return new i(l,a,c,h)}}}.call(o.prototype)})
--------------------------------------------------------------------------------
/app/Gruik/Repo/User/EloquentUser.php:
--------------------------------------------------------------------------------
1 | model = $user;
20 | $this->userPreference = $userPreference;
21 | }
22 |
23 | public function byId($id)
24 | {
25 | return Sentry::findUserById($id);
26 | }
27 |
28 | public function byPartialUsernameQuery($term)
29 | {
30 | return DB::table('users')
31 | ->where('username', 'LIKE', '%'.$term.'%');
32 | }
33 |
34 | public function getPreferencesForUser($id)
35 | {
36 | $user_preferences = $this->userPreference->where('user_id', $id)->get();
37 | $config = Config::get('user_preferences');
38 |
39 | $preferences = [
40 | 'posts.private',
41 | 'posts.allow_comments'
42 | ];
43 |
44 | $send = [];
45 |
46 | foreach($preferences as $key)
47 | {
48 | $user_pref = array_first($user_preferences, function($k, $v) use($key) {
49 | return $v->key == $key;
50 | }, null);
51 |
52 | $value = $user_pref ? $user_pref->value : array_get($config, $key);
53 |
54 | $send[$key] = $value;
55 | }
56 |
57 | return $send;
58 | }
59 |
60 | public function setPreferencesForUser($id, $data)
61 | {
62 | $config = Config::get('user_preferences');
63 |
64 | $preferences = [
65 | 'posts.private',
66 | 'posts.allow_comments'
67 | ];
68 |
69 | \DB::table('user_preferences')->where('user_id', $id)->delete();
70 | $inserts = [];
71 |
72 | foreach($preferences as $key)
73 | {
74 | $value = array_get($data, $key, array_get($config, $key));
75 | $inserts[] = ['key' => $key, 'value' => $value, 'user_id' => $id];
76 | }
77 |
78 | \DB::table('user_preferences')->insert($inserts);
79 | }
80 |
81 | public function toPublicArray($user)
82 | {
83 | return array_only($user->toArray(), [
84 | 'about',
85 | 'created_at',
86 | 'github_username',
87 | 'last_login',
88 | 'twitter_username',
89 | 'username'
90 | ]);
91 | }
92 | }
--------------------------------------------------------------------------------
/public/js/ace/mode-tex.js:
--------------------------------------------------------------------------------
1 | define("ace/mode/tex",["require","exports","module","ace/lib/oop","ace/mode/text","ace/tokenizer","ace/mode/text_highlight_rules","ace/mode/tex_highlight_rules","ace/mode/matching_brace_outdent"],function(e,t,n){var r=e("../lib/oop"),i=e("./text").Mode,s=e("../tokenizer").Tokenizer,o=e("./text_highlight_rules").TextHighlightRules,u=e("./tex_highlight_rules").TexHighlightRules,a=e("./matching_brace_outdent").MatchingBraceOutdent,f=function(e){e?this.HighlightRules=o:this.HighlightRules=u,this.$outdent=new a};r.inherits(f,i),function(){this.getNextLineIndent=function(e,t,n){return this.$getIndent(t)},this.allowAutoInsert=function(){return!1},this.$id="ace/mode/tex"}.call(f.prototype),t.Mode=f}),define("ace/mode/tex_highlight_rules",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/mode/text_highlight_rules"],function(e,t,n){var r=e("../lib/oop"),i=e("../lib/lang"),s=e("./text_highlight_rules").TextHighlightRules,o=function(e){e||(e="text"),this.$rules={start:[{token:"comment",regex:"%.*$"},{token:e,regex:"\\\\[$&%#\\{\\}]"},{token:"keyword",regex:"\\\\(?:documentclass|usepackage|newcounter|setcounter|addtocounter|value|arabic|stepcounter|newenvironment|renewenvironment|ref|vref|eqref|pageref|label|cite[a-zA-Z]*|tag|begin|end|bibitem)\\b",next:"nospell"},{token:"keyword",regex:"\\\\(?:[a-zA-z0-9]+|[^a-zA-z0-9])"},{token:"paren.keyword.operator",regex:"[[({]"},{token:"paren.keyword.operator",regex:"[\\])}]"},{token:e,regex:"\\s+"}],nospell:[{token:"comment",regex:"%.*$",next:"start"},{token:"nospell."+e,regex:"\\\\[$&%#\\{\\}]"},{token:"keyword",regex:"\\\\(?:documentclass|usepackage|newcounter|setcounter|addtocounter|value|arabic|stepcounter|newenvironment|renewenvironment|ref|vref|eqref|pageref|label|cite[a-zA-Z]*|tag|begin|end|bibitem)\\b"},{token:"keyword",regex:"\\\\(?:[a-zA-z0-9]+|[^a-zA-z0-9])",next:"start"},{token:"paren.keyword.operator",regex:"[[({]"},{token:"paren.keyword.operator",regex:"[\\])]"},{token:"paren.keyword.operator",regex:"}",next:"start"},{token:"nospell."+e,regex:"\\s+"},{token:"nospell."+e,regex:"\\w+"}]}};r.inherits(o,s),t.TexHighlightRules=o}),define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"],function(e,t,n){var r=e("../range").Range,i=function(){};(function(){this.checkOutdent=function(e,t){return/^\s+$/.test(e)?/^\s*\}/.test(t):!1},this.autoOutdent=function(e,t){var n=e.getLine(t),i=n.match(/^(\s*\})/);if(!i)return 0;var s=i[1].length,o=e.findMatchingBracket({row:t,column:s});if(!o||o.row==t)return 0;var u=this.$getIndent(e.getLine(o.row));e.replace(new r(t,0,t,s-1),u)},this.$getIndent=function(e){return e.match(/^\s*/)[0]}}).call(i.prototype),t.MatchingBraceOutdent=i})
--------------------------------------------------------------------------------
/bootstrap/start.php:
--------------------------------------------------------------------------------
1 | detectEnvironment(function () {
28 | return require __DIR__.'/environment.php';
29 | });
30 |
31 | /*
32 | |--------------------------------------------------------------------------
33 | | Bind Paths
34 | |--------------------------------------------------------------------------
35 | |
36 | | Here we are binding the paths configured in paths.php to the app. You
37 | | should not be changing these here. If you need to change these you
38 | | may do so within the paths.php file and they will be bound here.
39 | |
40 | */
41 |
42 | $app->bindInstallPaths(require __DIR__.'/paths.php');
43 |
44 | /*
45 | |--------------------------------------------------------------------------
46 | | Load The Application
47 | |--------------------------------------------------------------------------
48 | |
49 | | Here we will load this Illuminate application. We will keep this in a
50 | | separate location so we can isolate the creation of an application
51 | | from the actual running of the application with a given request.
52 | |
53 | */
54 |
55 | $framework = $app['path.base'].
56 | '/vendor/laravel/framework/src';
57 |
58 | require $framework.'/Illuminate/Foundation/start.php';
59 |
60 | /*
61 | |--------------------------------------------------------------------------
62 | | Return The Application
63 | |--------------------------------------------------------------------------
64 | |
65 | | This script returns the application instance. The instance is given to
66 | | the calling script so we can separate the building of the instances
67 | | from the actual running of the application and sending responses.
68 | |
69 | */
70 |
71 | return $app;
72 |
--------------------------------------------------------------------------------