aboutsummaryrefslogtreecommitdiff
path: root/vim/bundle/vim-snippets/UltiSnips/php-laravel.snippets
diff options
context:
space:
mode:
Diffstat (limited to 'vim/bundle/vim-snippets/UltiSnips/php-laravel.snippets')
-rw-r--r--vim/bundle/vim-snippets/UltiSnips/php-laravel.snippets270
1 files changed, 270 insertions, 0 deletions
diff --git a/vim/bundle/vim-snippets/UltiSnips/php-laravel.snippets b/vim/bundle/vim-snippets/UltiSnips/php-laravel.snippets
new file mode 100644
index 0000000..7367a14
--- /dev/null
+++ b/vim/bundle/vim-snippets/UltiSnips/php-laravel.snippets
@@ -0,0 +1,270 @@
+#resource controller
+snippet l_rsc "Laravel resource controller" b
+/*!
+ * \class $1
+ *
+ * \author ${3:`!v g:snips_author`}
+ * \date `!v strftime('%d-%m-%y')`
+ */
+
+class ${1:`!v expand('%:t:r')`} extends ${2:BaseController} {
+ function __construct() {
+ }
+
+ public function index() {
+ }
+
+ public function create() {
+ }
+
+ public function store() {
+ }
+
+ public function show($id) {
+ }
+
+ public function edit($id) {
+ }
+
+ public function update($id) {
+ }
+
+ public function destroy($id) {
+ }
+}
+endsnippet
+
+#service service provider
+snippet l_ssp "Laravel service provider for service" b
+<?php
+
+/*!
+ * \namespace $1
+ * \class $2
+ *
+ * \author ${3:`!v g:snips_author`}
+ * \date `!v strftime('%d-%m-%y')`
+ */
+
+namespace ${1:Services};
+
+use Illuminate\Support\ServiceProvider;
+
+class ${2:`!v expand('%:t:r')`} extends ServiceProvider {
+
+ public function register() {
+ $this->app->bind('${4}Service', function ($app) {
+ return new ${5}(
+ $app->make('Repositories\\${6}Interface')
+ );
+ });
+ }
+}
+endsnippet
+
+#repository service provider
+snippet l_rsp "Laravel service provider for repository" b
+<?php
+
+/*!
+ * \namespace $2
+ * \class $3
+ *
+ * \author ${4:`!v g:snips_author`}
+ * \date `!v strftime('%d-%m-%y')`
+ */
+
+namespace ${2:Repositories\\${1:}};
+
+use Entities\\$1;
+use $2\\$1Repository;
+use Illuminate\Support\ServiceProvider;
+
+class ${3:`!v expand('%:t:r')`} extends ServiceProvider {
+ /*!
+ * \var defer
+ * \brief Defer service
+ */
+ protected $defer = ${5:true};
+
+ public function register() {
+ $this->app->bind('$2\\$1Interface', function($app) {
+ return new $1Repository(new $1());
+ });
+ }
+
+ /*!
+ * \brief If $defer == true need this fn
+ */
+ public function provides() {
+ return ['$2\\$1Interface'];
+ }
+}
+endsnippet
+
+#model
+snippet l_md "Laravel simple model" b
+<?php
+
+/*!
+ * \namespace $1
+ * \class $2
+ *
+ * \author ${3:`!v g:snips_author`}
+ * \date `!v strftime('%d-%m-%y')`
+ */
+
+namespace ${1:Entities};
+
+class ${2:`!v expand('%:t:r')`} extends \Eloquent {
+ protected $table = '${4:`!p snip.rv = t[2].lower()`}';
+
+ public $timestamps = ${5:false};
+
+ protected $hidden = array(${6});
+
+ protected $guarded = array(${7:'id'});
+}
+endsnippet
+
+#abstract repository
+snippet l_ar "Laravel abstract Repository" b
+<?php
+
+/*!
+ * \namespace $1
+ * \class $2
+ * \implements $3
+ *
+ * \author ${4:`!v g:snips_author`}
+ * \date `!v strftime('%d-%m-%y')`
+ */
+
+namespace ${1:Repositories};
+
+use Illuminate\Database\Eloquent\Model;
+
+abstract class ${2:`!v expand('%:t:r')`} implements ${3:BaseRepositoryInterface} {
+ protected $model;
+
+ /*!
+ * \fn __construct
+ *
+ * \brief Take the model
+ */
+
+ public function __construct(Model $model) {
+ $this->model = $model;
+ }
+
+ /*!
+ * \fn all
+ *
+ * \return Illuminate\Database\Eloquent\Collection
+ */
+ public function all($columns = array('*')) {
+ return $this->model->all()->toArray();
+ }
+
+ /*!
+ * \fn create
+ *
+ * \return Illuminate\Database\Eloquent\Model
+ */
+ public function create(array $attributes) {
+ return $this->model->create($attributes);
+ }
+
+ /*!
+ * \fn destroy
+ *
+ * \return int
+ */
+ public function destroy($ids) {
+ return $this->model->destroy($ids);
+ }
+
+ /*!
+ * \fn find
+ *
+ * \return mixed
+ */
+ public function find($id, $columns = array('*')) {
+ return $this->model->find($id, $columns);
+ }
+}
+endsnippet
+
+#repository
+snippet l_r "Laravel Repository" b
+<?php
+
+/*!
+ * \namespace $1
+ * \class $3
+ * \implements $4
+ *
+ * \author ${5:`!v g:snips_author`}
+ * \date `!v strftime('%d-%m-%y')`
+ */
+
+namespace ${1:Repositories\\${2}};
+
+class ${3:`!v expand('%:t:r')`} extends \\${6} implements ${4:$3RepositoryInterface} {
+ ${7}
+}
+endsnippet
+
+#service
+snippet l_s "Laravel Service" b
+<?php
+
+/*!
+ * \namespace $1
+ * \class $2
+ *
+ * \author ${6:`!v g:snips_author`}
+ * \date `!v strftime('%d-%m-%y')`
+ */
+
+namespace Services\\${1};
+
+use ${3:Repositories\\${4:Interface}};
+
+class ${2:`!v expand('%:t:r')`} {
+ protected $${5:repo};
+
+ /*!
+ * \fn __construct
+ */
+ public function __construct($4 $repo) {
+ $this->$5 = $repo;
+ }
+}
+endsnippet
+
+#facade
+snippet l_f "Laravel Facade" b
+<?php
+
+/*!
+ * \namespace $1
+ * \class $2
+ *
+ * \author ${5:`!v g:snips_author`}
+ * \date `!v strftime('%d-%m-%y')`
+ */
+
+namespace ${1:Services};
+
+use \Illuminate\Support\Facades\Facade;
+
+class ${2:`!v expand('%:t:r')`} extends Facade {
+ /*!
+ * \fn getFacadeAccessor
+ *
+ * \return string
+ */
+ protected static function getFacadeAccessor() { return '${4:${3}Service}'; }
+}
+endsnippet