From 40c135bbbc8aea1929b5c00f2419f0e781d464c7 Mon Sep 17 00:00:00 2001 From: Loveorigami Date: Sun, 2 Aug 2015 18:57:57 +0300 Subject: [PATCH] init repo --- CONTRIBUTING.md | 140 ++++++ LICENSE | 21 + LICENSE.md | 21 + Module.php | 36 ++ README.md | 98 ++++ components/EventBootstrap.php | 84 ++++ components/EventManager.php | 67 +++ components/Shortcode.php | 12 + composer.json | 28 ++ controllers/EventController.php | 121 +++++ controllers/ItemController.php | 511 +++++++++++++++++++++ docs/create_plugin.md | 106 +++++ docs/img/demo_events.jpg | Bin 0 -> 78986 bytes docs/img/event_edit.jpg | Bin 0 -> 56165 bytes docs/img/tab_events.jpg | Bin 0 -> 72758 bytes docs/img/tab_info.jpg | Bin 0 -> 62174 bytes docs/img/tab_install.jpg | Bin 0 -> 30721 bytes docs/img/tab_plugins.jpg | Bin 0 -> 85150 bytes docs/install_plugin.md | 31 ++ helpers/Crawler.php | 174 +++++++ helpers/JsonValidator.php | 51 ++ messages/en/plugin.php | 61 +++ messages/ru/plugin.php | 36 ++ migrations/m150720_090901_plugin_table.php | 45 ++ migrations/m150720_090905_app_table.php | 55 +++ migrations/m150720_091726_event_table.php | 91 ++++ models/App.php | 56 +++ models/Event.php | 130 ++++++ models/EventQuery.php | 35 ++ models/EventSearch.php | 71 +++ models/Item.php | 83 ++++ models/ItemQuery.php | 35 ++ models/ItemSearch.php | 73 +++ plugins/code/Code.php | 69 +++ plugins/code/CodeAsset.php | 24 + plugins/code/README.md | 29 ++ plugins/helloworld/Helloworld.php | 55 +++ plugins/helloworld/README.md | 17 + plugins/httpauth/Httpauth.php | 100 ++++ plugins/httpauth/README.md | 18 + views/_menu.php | 35 ++ views/event/_form.php | 59 +++ views/event/_search.php | 39 ++ views/event/create.php | 21 + views/event/index.php | 93 ++++ views/event/update.php | 23 + views/event/view.php | 43 ++ views/item/_form.php | 38 ++ views/item/_item.php | 11 + views/item/_search.php | 43 ++ views/item/create.php | 21 + views/item/find.php | 52 +++ views/item/index.php | 71 +++ views/item/info.php | 227 +++++++++ views/item/update.php | 23 + views/item/view.php | 42 ++ 56 files changed, 3425 insertions(+) create mode 100644 CONTRIBUTING.md create mode 100644 LICENSE create mode 100644 LICENSE.md create mode 100644 Module.php create mode 100644 README.md create mode 100644 components/EventBootstrap.php create mode 100644 components/EventManager.php create mode 100644 components/Shortcode.php create mode 100644 composer.json create mode 100644 controllers/EventController.php create mode 100644 controllers/ItemController.php create mode 100644 docs/create_plugin.md create mode 100644 docs/img/demo_events.jpg create mode 100644 docs/img/event_edit.jpg create mode 100644 docs/img/tab_events.jpg create mode 100644 docs/img/tab_info.jpg create mode 100644 docs/img/tab_install.jpg create mode 100644 docs/img/tab_plugins.jpg create mode 100644 docs/install_plugin.md create mode 100644 helpers/Crawler.php create mode 100644 helpers/JsonValidator.php create mode 100644 messages/en/plugin.php create mode 100644 messages/ru/plugin.php create mode 100644 migrations/m150720_090901_plugin_table.php create mode 100644 migrations/m150720_090905_app_table.php create mode 100644 migrations/m150720_091726_event_table.php create mode 100644 models/App.php create mode 100644 models/Event.php create mode 100644 models/EventQuery.php create mode 100644 models/EventSearch.php create mode 100644 models/Item.php create mode 100644 models/ItemQuery.php create mode 100644 models/ItemSearch.php create mode 100644 plugins/code/Code.php create mode 100644 plugins/code/CodeAsset.php create mode 100644 plugins/code/README.md create mode 100644 plugins/helloworld/Helloworld.php create mode 100644 plugins/helloworld/README.md create mode 100644 plugins/httpauth/Httpauth.php create mode 100644 plugins/httpauth/README.md create mode 100644 views/_menu.php create mode 100644 views/event/_form.php create mode 100644 views/event/_search.php create mode 100644 views/event/create.php create mode 100644 views/event/index.php create mode 100644 views/event/update.php create mode 100644 views/event/view.php create mode 100644 views/item/_form.php create mode 100644 views/item/_item.php create mode 100644 views/item/_search.php create mode 100644 views/item/create.php create mode 100644 views/item/find.php create mode 100644 views/item/index.php create mode 100644 views/item/info.php create mode 100644 views/item/update.php create mode 100644 views/item/view.php diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..c6a907a --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,140 @@ +# Contributing to this project + +Please take a moment to review this document in order to make the contribution +process easy and effective for everyone involved. + +Following these guidelines helps to communicate that you respect the time of +the developers managing and developing this open source project. In return, +they should reciprocate that respect in addressing your issue or assessing +patches and features. + +## Using the issue tracker + +The issue tracker is the preferred channel for [bug reports](#bugs), +[features requests](#features) and [submitting pull +requests](#pull-requests), but please respect the following restrictions: + +* Please **do not** use the issue tracker for personal support requests. + +* Please **do not** derail or troll issues. Keep the discussion on topic and + respect the opinions of others. + + + +## Bug reports + +A bug is a _demonstrable problem_ that is caused by the code in the repository. +Good bug reports are extremely helpful - thank you! + +Guidelines for bug reports: + +1. **Use the GitHub issue search** — check if the issue has already been + reported. + +2. **Check if the issue has been fixed** — try to reproduce it using the + latest `master` or development branch in the repository. + +3. **Isolate the problem** — create a [reduced test + case](http://css-tricks.com/reduced-test-cases/) and a live example. + +A good bug report shouldn't leave others needing to chase you up for more +information. Please try to be as detailed as possible in your report. What is +your environment? What steps will reproduce the issue? What browser(s) and OS +experience the problem? What would you expect to be the outcome? All these +details will help people to fix any potential bugs. + +Example: + +> Short and descriptive example bug report title +> +> A summary of the issue and the Yii2 and Yii2-plugins-system versions in which it occurs. If +> suitable, include the steps required to reproduce the bug. +> +> 1. This is the first step +> 2. This is the second step +> 3. Further steps, etc. +> +> `` - a link to the reduced test case +> +> Any other information you want to share that is relevant to the issue being +> reported. This might include the lines of code that you have identified as +> causing the bug, and potential solutions (and your opinions on their +> merits). + + + +## Feature requests + +Feature requests are welcome. But take a moment to find out whether your idea +fits with the scope and aims of the project. It's up to *you* to make a strong +case to convince the project's developers of the merits of this feature. Please +provide as much detail and context as possible. + + + +## Pull requests + +Good pull requests - patches, improvements, new features - are a fantastic +help. They should remain focused in scope and avoid containing unrelated +commits. + +**Please ask first** before embarking on any significant pull request (e.g. +implementing features, refactoring code, porting to a different language), +otherwise you risk spending a lot of time working on something that the +project's developers might not want to merge into the project. + +Please adhere to the coding conventions used throughout a project (indentation, +accurate comments, etc.) and any other requirements (such as test coverage). + +Follow this process if you'd like your work considered for inclusion in the +project: + +1. [Fork](http://help.github.com/fork-a-repo/) the project, clone your fork, + and configure the remotes: + + ```bash + # Clone your fork of the repo into the current directory + git clone https://github.com// + # Navigate to the newly cloned directory + cd + # Assign the original repo to a remote called "upstream" + git remote add upstream https://github.com// + ``` + +2. If you cloned a while ago, get the latest changes from upstream: + + ```bash + git checkout + git pull upstream + ``` + +3. Create a new topic branch (off the main project development branch) to + contain your feature, change, or fix: + + ```bash + git checkout -b + ``` + +4. Commit your changes in logical chunks. Please adhere to these [git commit + message guidelines](http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html) + or your code is unlikely be merged into the main project. Use Git's + [interactive rebase](https://help.github.com/articles/interactive-rebase) + feature to tidy up your commits before making them public. + +5. Locally merge (or rebase) the upstream development branch into your topic branch: + + ```bash + git pull [--rebase] upstream + ``` + +6. Push your topic branch up to your fork: + + ```bash + git push origin + ``` + +7. [Open a Pull Request](https://help.github.com/articles/using-pull-requests/) + with a clear title and description. + +**IMPORTANT**: By submitting a patch, you agree to allow the project owner to +license your work under the same license as that used by the project. diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..96e283b --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2015 LoveOrigami + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. \ No newline at end of file diff --git a/LICENSE.md b/LICENSE.md new file mode 100644 index 0000000..96e283b --- /dev/null +++ b/LICENSE.md @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2015 LoveOrigami + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. \ No newline at end of file diff --git a/Module.php b/Module.php new file mode 100644 index 0000000..594d3d5 --- /dev/null +++ b/Module.php @@ -0,0 +1,36 @@ +i18n->translations['plugin'])) { + \Yii::$app->i18n->translations['plugin'] = [ + 'class' => 'yii\i18n\PhpMessageSource', + 'sourceLanguage' => 'en', + 'basePath' => '@lo/plugins/messages' + ]; + } + + //user did not define the Navbar? + if (!$this->pluginsDir) { + $this->pluginsDir = [ + '@lo/plugins/plugins' + ]; + } + } +} diff --git a/README.md b/README.md new file mode 100644 index 0000000..d482ddb --- /dev/null +++ b/README.md @@ -0,0 +1,98 @@ +# Getting started with Yii2-plugins-system + +Yii2-plugins-system is designed to work out of the box. It means that installation requires +minimal steps. Only one configuration step should be taken and you are ready to +have plugin system on your Yii2 website. + +!["Plugins"](docs/img/tab_plugins.jpg) + +### 1. Download + +Yii2-plugins-system can be installed using composer. Run following command to download and +install Yii2-plugins-system: + +```bash +composer require "loveorigami/yii2-plugins-system": "*" +``` + +### 2. Update database schema + +The last thing you need to do is updating your database schema by applying the +migrations. Make sure that you have properly configured `db` application component +and run the following command: + +```bash +$ php yii migrate/up --migrationPath=@vendor/loveorigami/yii2-plugins-system/migrations +``` + +### 3. Configure application + +Let's start with defining module in `@backend/config/main.php`: + +```php +'modules' => [ + 'plugins' => [ + 'class' => 'lo\plugins\Module', + 'pluginsDir'=>[ + '@lo/plugins/plugins', // default dir with core plugins + // '@common/plugins', // dir with our plugins + ] + ], +], +``` +That's all, now you have module installed and configured in advanced template. + +Next, open `@frontend/config/main.php` and add following: + +``` +'bootstrap' => ['log', 'plugins'], +... +'components' => [ + 'plugins' => [ + 'class' => 'lo\plugins\components\EventBootstrap', + 'appId' => 'frontend' + ], + ... +] +``` + +Also do the same thing with `@backend/config/main.php`: + +``` +'bootstrap' => ['log', 'plugins'], +... +'components' => [ + 'plugins' => [ + 'class' => 'lo\plugins\components\EventBootstrap', + 'appId' => 'backend' + ], + ... +] +``` + +## Core plugins (examples) + +* [Hello world!] (plugins/helloworld) +* [Code Highlighting] (plugins/code) +* [Http Authentication] (plugins/httpauth) + +## Your plugins + +* [Create] (docs/create_plugin.md) +* [Install] (docs/install_plugin.md) + +## Contributing to this project + +Anyone and everyone is welcome to contribute. Please take a moment to +review the [guidelines for contributing](CONTRIBUTING.md). + +## License + +Yii2-plugins-system is released under the MIT License. See the bundled [LICENSE.md](LICENSE.md) +for details. + +## Thanks + +* Bariew for [event manager] (https://github.com/bariew/yii2-event-component) component +* Troxa for [yii2-shortcodes] (https://github.com/tpoxa/yii2-shortcodes) component +* ElisDn for great webinar about [yii2-events] (http://www.elisdn.ru/blog/74/events-on-yii2-and-javascript) (by ru) \ No newline at end of file diff --git a/components/EventBootstrap.php b/components/EventBootstrap.php new file mode 100644 index 0000000..3acd5f3 --- /dev/null +++ b/components/EventBootstrap.php @@ -0,0 +1,84 @@ +, modify Loveorigami + */ +class EventBootstrap implements BootstrapInterface +{ + /** + * Application id for category plugins. + * Support values: frontend, backend, common + * Default: frontend + * @var appId string + */ + public static $appId = 'frontend'; + + /** + * @var EventManager EventManager memory storage for getEventManager method + */ + protected static $_eventManager = []; + + /** + * @inheritdoc + */ + public function bootstrap($app) + { + self::getEventManager($app); + } + + /** + * finds and creates app event manager from its settings + * @param Application $app yii app + * @return EventManager app event manager component + * @throws Exception Define event manager + */ + public static function getEventManager($app) + { + if (self::$_eventManager) { + return self::$_eventManager; + } + + foreach ($app->components as $name => $config) { + $class = is_string($config) ? $config : @$config['class']; + + // if eventManager component in config + if ($class == str_replace('Bootstrap', 'Manager', get_called_class())) { + self::$_eventManager = $app->$name->events; + } + + // this class. set $appId from config + if ($class == str_replace('Manager', 'Bootstrap', get_called_class())) { + if($app->$name->appId){ + self::$appId = $app->$name->appId; + }; + } + } + + $events = ModelEvent::eventList(self::$appId); + + // merge config events with plugins + self::$_eventManager = array_merge_recursive($events, self::$_eventManager); + + $app->setComponents([ + 'eventManager' => [ + 'class' => 'lo\plugins\components\EventManager', + 'events' => self::$_eventManager + ], + ]); + + return self::$_eventManager = $app->eventManager; + } +} diff --git a/components/EventManager.php b/components/EventManager.php new file mode 100644 index 0000000..c186356 --- /dev/null +++ b/components/EventManager.php @@ -0,0 +1,67 @@ + [ + * $eventName => [ + * [$handlerClassName, $handlerMethodName] + * ] + * ] + * ] + * + * @since 1.3.0 handler can also keep additional data and $append boolean as for Event::on() method eg: + * ... [[$handlerClassName, $handlerMethodName], ['myData'], false] + * + * @var array events settings + */ + public $events = []; + + /** + * @inheritdoc + */ + public function init() + { + parent::init(); + // var_dump($this->events); + $this->attachEvents($this->events); + } + + /** + * attaches all events to all classNames + * @param array $eventConfig commonly $this->events config + */ + public function attachEvents($eventConfig) + { + foreach ($eventConfig as $className => $events) { + foreach ($events as $eventName => $handlers) { + foreach ($handlers as $handler) { + if (is_array($handler) && is_callable($handler[0])) { + $data = isset($handler[1]) ? array_pop($handler) : null; + $append = isset($handler[2]) ? array_pop($handler) : null; + Event::on($className, $eventName, $handler[0], $data, $append); + } else if (is_callable($handler)) { + Event::on($className, $eventName, $handler); + } + } + } + } + } + +} \ No newline at end of file diff --git a/components/Shortcode.php b/components/Shortcode.php new file mode 100644 index 0000000..74cbd10 --- /dev/null +++ b/components/Shortcode.php @@ -0,0 +1,12 @@ +=2.0.6", + "components/highlightjs":"*", + "loveorigami/yii2-jsoneditor": "*", + "tpoxa/shortcodes": "dev-master" + }, + "autoload": { + "psr-4": { + "lo\\plugins\\": "" + } + } +} diff --git a/controllers/EventController.php b/controllers/EventController.php new file mode 100644 index 0000000..fe2bc59 --- /dev/null +++ b/controllers/EventController.php @@ -0,0 +1,121 @@ + [ + 'class' => VerbFilter::className(), + 'actions' => [ + 'delete' => ['post'], + ], + ], + ]; + } + + /** + * Lists all Event models. + * @return mixed + */ + public function actionIndex() + { + $searchModel = new EventSearch(); + $dataProvider = $searchModel->search(Yii::$app->request->queryParams); + + return $this->render('index', [ + 'searchModel' => $searchModel, + 'dataProvider' => $dataProvider, + ]); + } + + /** + * Displays a single Event model. + * @param integer $id + * @return mixed + */ + public function actionView($id) + { + return $this->render('view', [ + 'model' => $this->findModel($id), + ]); + } + + /** + * Creates a new Event model. + * If creation is successful, the browser will be redirected to the 'view' page. + * @return mixed + */ + public function _actionCreate() + { + $model = new Event(); + + if ($model->load(Yii::$app->request->post()) && $model->save()) { + return $this->redirect(['view', 'id' => $model->id]); + } else { + return $this->render('create', [ + 'model' => $model, + ]); + } + } + + /** + * Updates an existing Event model. + * If update is successful, the browser will be redirected to the 'view' page. + * @param integer $id + * @return mixed + */ + public function actionUpdate($id) + { + $model = $this->findModel($id); + + if ($model->load(Yii::$app->request->post()) && $model->save()) { + return $this->redirect('index'); + } else { + return $this->render('update', [ + 'model' => $model, + ]); + } + } + + /** + * Deletes an existing Event model. + * If deletion is successful, the browser will be redirected to the 'index' page. + * @param integer $id + * @return mixed + */ + public function actionDelete($id) + { + $this->findModel($id)->delete(); + + return $this->redirect(['index']); + } + + /** + * Finds the Event model based on its primary key value. + * If the model is not found, a 404 HTTP exception will be thrown. + * @param integer $id + * @return Event the loaded model + * @throws NotFoundHttpException if the model cannot be found + */ + protected function findModel($id) + { + if (($model = Event::findOne($id)) !== null) { + return $model; + } else { + throw new NotFoundHttpException('The requested page does not exist.'); + } + } +} diff --git a/controllers/ItemController.php b/controllers/ItemController.php new file mode 100644 index 0000000..03e49bf --- /dev/null +++ b/controllers/ItemController.php @@ -0,0 +1,511 @@ + [ + 'class' => VerbFilter::className(), + 'actions' => [ + 'delete' => ['post'], + ], + ], + ]; + } + + /** + * Lists all Item models. + * @return mixed + */ + public function actionIndex() + { + $searchModel = new ItemSearch(); + $dataProvider = $searchModel->search(Yii::$app->request->queryParams); + + return $this->render('index', [ + 'searchModel' => $searchModel, + 'dataProvider' => $dataProvider, + ]); + } + + /** + * Displays a info page + * @return mixed + */ + public function actionFind() + { + // Find all plugins + $this->findPlugins(); + + // Get all activated plugins + $this->getActivatedPlugins(); + + // Include and update plugins + $this->includePlugins(); + + $data['plugins'] = self::$plugins_pool; + $data['active'] = self::$plugins_active; + + $dataProvider = new ArrayDataProvider([ + 'allModels' => array_diff_key(self::$plugins_pool, self::$plugins_active), + 'pagination' => [ + 'pageSize' => 20, + ], + ]); + + return $this->render('find', compact('data', 'dataProvider')); + } + + /** + * Displays a info page + * @return mixed + */ + public function actionInstall($id) + { + // Find all plugins + $this->findPlugins(); + if (self::$plugins_pool) { + foreach (self::$plugins_pool AS $handlerClass => $value) { + + if (md5($handlerClass) == $id) { + + // The plugin information being added to the database + $data['Item'] = [ + "handler_class" => $handlerClass, + "name" => trim(self::$plugins_pool[$handlerClass]['plugin_info']['name']), + "url" => trim(self::$plugins_pool[$handlerClass]['plugin_info']['url']), + "version" => trim(self::$plugins_pool[$handlerClass]['plugin_info']['version']), + "text" => trim(self::$plugins_pool[$handlerClass]['plugin_info']['text']), + "author" => trim(self::$plugins_pool[$handlerClass]['plugin_info']['author']), + "author_url" => trim(self::$plugins_pool[$handlerClass]['plugin_info']['author_url']), + "status" => Item::STATUS_ACTIVE + ]; + + $model = new Item(); + + if ($model->load($data) && $model->save()) { + // here install events to Event + $this->includeEvents($model->id, $handlerClass); + } else { + Yii::$app->session->setFlash('error', Yii::t('plugin', 'This plugin alredy installed')); + } + } + } + } + return $this->redirect(Yii::$app->request->referrer); + } + + /** + * Displays a info page + * @return mixed + */ + public function actionInfo() + { + return $this->render('info'); + } + + + /** + * Displays a single Item model. + * @param integer $id + * @return mixed + */ + public function actionView($id) + { + return $this->render('view', [ + 'model' => $this->findModel($id), + ]); + } + + /** + * Creates a new Item model. + * If creation is successful, the browser will be redirected to the 'view' page. + * @return mixed + */ + public function _actionCreate() + { + $model = new Item(); + + if ($model->load(Yii::$app->request->post()) && $model->save()) { + return $this->redirect(['view', 'id' => $model->id]); + } else { + return $this->render('create', [ + 'model' => $model, + ]); + } + } + + /** + * Updates an existing Item model. + * If update is successful, the browser will be redirected to the 'view' page. + * @param integer $id + * @return mixed + */ + public function actionUpdate($id) + { + $model = $this->findModel($id); + + if ($model->load(Yii::$app->request->post()) && $model->save()) { + return $this->redirect(['view', 'id' => $model->id]); + } else { + return $this->render('update', [ + 'model' => $model, + ]); + } + } + + /** + * Deletes an existing Item model. + * If deletion is successful, the browser will be redirected to the 'index' page. + * @param integer $id + * @return mixed + */ + public function actionDelete($id) + { + $this->findModel($id)->delete(); + + return $this->redirect(['index']); + } + + /** + * Finds the Item model based on its primary key value. + * If the model is not found, a 404 HTTP exception will be thrown. + * @param integer $id + * @return Item the loaded model + * @throws NotFoundHttpException if the model cannot be found + */ + protected function findModel($id) + { + if (($model = Item::findOne($id)) !== null) { + return $model; + } else { + throw new NotFoundHttpException('The requested page does not exist.'); + } + } + + /** + * Find all plugins from $plugins_dir + * @param var $plugin + * @return $plugins_pool + */ + protected function findPlugins() + { + if (!is_array($this->module->pluginsDir)) { + throw new \yii\base\InvalidConfigException("Plugins directory is not array."); + } + + foreach ($this->module->pluginsDir as $path) { + $dir = Yii::getAlias($path); + if (!file_exists($dir)) { + return $result; + } + $plugins = array_diff(scandir($dir), ['.', '..']); + + foreach ($plugins AS $key => $name) { + + $basePath = $dir . DIRECTORY_SEPARATOR . $name; + if (!is_dir($basePath)) { + continue; + } + + // Make sure a valid plugin file by the same name as the folder exists + $file = $basePath . DIRECTORY_SEPARATOR . ucfirst($name) . ".php"; + + if (file_exists($file)) { + + // Register the plugin + $handlerClass = Crawler::getNamespace($file) . '\\' . ucfirst($name); + + // If the plugin hasn't already been added and isn't a file + if (!isset(self::$plugins_pool[$handlerClass]) AND !stripos($name, ".")) { + + self::$plugins_pool[$handlerClass] = [ + 'plugin' => $name, + 'class' => $handlerClass + ]; + + // else may be plugin make as inactive + if (is_callable([$handlerClass, 'events'])) { + self::$plugins_pool[$handlerClass]['events'] = $handlerClass::events(); + } else { + self::$plugins_pool[$handlerClass]['events'] = []; + } + + // add info to pool + $this->getInfo($handlerClass); + } + + } else { + // self::$errors[$name][] = "Plugin file " . $name . ".php does not exist."; + } + } + } + } + + + /** + * Get Activated Plugins + * Get all activated plugins from the database + * + */ + protected function getActivatedPlugins() + { + // Only plugins in the database are active ones + $plugins = Item::find()->all(); + + if ($plugins) { + // For every plugin, store it + //var_dump($plugins); + foreach ($plugins AS $plugin) { + self::$plugins_active[$plugin->handler_class] = [ + 'plugin' => $plugin->name, + 'class' => $plugin->handler_class + ]; + + if ($plugin->events) { + foreach ($plugin->events AS $event) { + if ($event->data) { + self::$plugins_active[$plugin->handler_class]['events'][$event->trigger_class] = [ + $event->trigger_event => [$event->handler_method, json_decode($event->data, true)] + ]; + } else { + self::$plugins_active[$plugin->handler_class]['events'][$event->trigger_class] = [ + $event->trigger_event => $event->handler_method + ]; + } + } + } + } + } else { + return true; + } + } + + /** + * Include Plugins + * Include all active plugins that are in the database + * + */ + protected function includePlugins() + { + if (self::$plugins_active AND !empty(self::$plugins_active)) { + // Validate and include our found plugins + foreach (self::$plugins_active AS $handlerClass => $value) { + // The plugin information being added to the database + $data['Item'] = [ + "handler_class" => $handlerClass, + "name" => trim(self::$plugins_pool[$handlerClass]['plugin_info']['name']), + "url" => trim(self::$plugins_pool[$handlerClass]['plugin_info']['url']), + "version" => trim(self::$plugins_pool[$handlerClass]['plugin_info']['version']), + "text" => trim(self::$plugins_pool[$handlerClass]['plugin_info']['text']), + "author" => trim(self::$plugins_pool[$handlerClass]['plugin_info']['author']), + "author_url" => trim(self::$plugins_pool[$handlerClass]['plugin_info']['author_url']) + ]; + + $model = Item::findOne(['handler_class' => $handlerClass]); + + if ($model->load($data) && $model->save()) { + // here install events to Event + $this->includeEvents($model->id, $handlerClass); + } + } + } + } + + /** + * Include events from $handlerClass + * @param int $plugin_id + * @param var $handlerClass + * @return bool + */ + protected function includeEvents($plugin_id, $handlerClass) + { + if (isset(self::$plugins_active[$handlerClass]['events']) && isset(self::$plugins_pool[$handlerClass]['events'])) { + // here remove all active_events from db, if is not in $plugins_pool + foreach (self::$plugins_active[$handlerClass]['events'] as $className => $events) { + + foreach ($events as $eventName => $handler) { + + $data1['plugin_id'] = $plugin_id; + $data1['trigger_event'] = $eventName; + + if (isset(self::$plugins_pool[$handlerClass]['events'][$className][$eventName])) { + + $handlerPool = self::$plugins_pool[$handlerClass]['events'][$className][$eventName]; + $handlerMethodPool = is_array($handlerPool) ? $handlerPool[0] : $handlerPool; + $handlerMethodActive = is_array($handler) ? $handler[0] : $handler; + + $data2['plugin_id'] = $plugin_id; + $data2['trigger_event'] = $eventName; + $data2['trigger_class'] = $className; + $data2['handler_method'] = $handlerMethodActive; + + if ($handlerMethodPool == $handlerMethodActive) { + // plugin event is 'in pool' + return true; + } else { + $this->deleteEvent($data2); + } + } else { + $this->deleteEvent($data1); + } + } + } + } + if (isset(self::$plugins_pool[$handlerClass]['events'])) { + // get all events from plugin + foreach (self::$plugins_pool[$handlerClass]['events'] as $className => $events) { + foreach ($events as $eventName => $handler) { + + $handlerActive = self::$plugins_active[$handlerClass]['events'][$className][$eventName]; + $handlerMethodActive = is_array($handlerActive) ? $handlerActive[0] : $handlerActive; + $handlerMethodPool = is_array($handler) ? $handler[0] : $handler; + + $data['app_id'] = (int)$this->checkAppId($handlerClass); + $data['plugin_id'] = (int)$plugin_id; + $data['trigger_class'] = $className; + $data['trigger_event'] = $eventName; + $data['handler_method'] = $handlerMethodPool; + $data['data'] = isset($handler[1]) ? json_encode($handler[1]) : ''; + $data['status'] = Event::STATUS_INACTIVE; + + if ($handlerMethodPool != $handlerMethodActive) { + self::$plugins_active[$handlerClass]['install'][] = $data; + // echo 'install'; + // var_dump($data); + $this->installEvent($data); + } + } + } + } + } + + /** + * Convert var AppId to int app_id + * @param var $handlerClass + * @return int $app_id + */ + protected function checkAppId($handlerClass) + { + if (!isset($handlerClass::$appId)) return App::APP_FRONTEND; + switch ($handlerClass::$appId) { + case 'backend': + return App::APP_BACKEND; + break; + case 'common': + return App::APP_COMMON; + break; + default: + return App::APP_FRONTEND; + } + } + + /** + * Install event from config + * @param var $data + * @return bool + */ + protected function installEvent($event) + { + $data['Event'] = $event; + $model = new Event(); + if ($model->load($data) && $model->save()) { + Yii::$app->session->setFlash('success', Yii::t('plugin', 'New event installed')); + } else { + return ['error' => $model->errors]; + // var_dump($model->errors); + } + } + + /** + * Delete events + * @param array $data + * @return bool + */ + protected function deleteEvent($data) + { + foreach (Event::find()->where($data)->all() as $event) { + $event->delete(); + } + } + + /** + * Get info about plugin from Htdoc + * @param var $plugin + * @return $plugins_pool + */ + protected static function getInfo($handlerClass) + { + + $plugin_data = Crawler::getDoc($handlerClass); + + preg_match('|Plugin Name:(.*)$|mi', $plugin_data, $name); + preg_match('|Plugin URI:(.*)$|mi', $plugin_data, $uri); + preg_match('|Version:(.*)|i', $plugin_data, $version); + preg_match('|Description:(.*)$|mi', $plugin_data, $description); + preg_match('|Author:(.*)$|mi', $plugin_data, $author_name); + preg_match('|Author URI:(.*)$|mi', $plugin_data, $author_uri); + + if (isset($name[1])) { + $arr['name'] = trim($name[1]); + } + + if (isset($uri[1])) { + $arr['url'] = trim($uri[1]); + } + + if (isset($version[1])) { + $arr['version'] = trim($version[1]); + } + + if (isset($description[1])) { + $arr['text'] = trim($description[1]); + } + + if (isset($author_name[1])) { + $arr['author'] = trim($author_name[1]); + } + + if (isset($author_uri[1])) { + $arr['author_url'] = trim($author_uri[1]); + } + + $arr['handler_class'] = trim($handlerClass); + + // For every plugin header item + foreach ($arr AS $k => $v) { + // If the key doesn't exist or the value is not the same, update the array + if (!isset(self::$plugins_pool[$handlerClass]['plugin_info'][$k]) OR self::$plugins_pool[$handlerClass]['plugin_info'][$k] != $v) { + self::$plugins_pool[$handlerClass]['plugin_info'][$k] = trim($v); + } else { + return true; + } + } + + } + +} diff --git a/docs/create_plugin.md b/docs/create_plugin.md new file mode 100644 index 0000000..14b4baf --- /dev/null +++ b/docs/create_plugin.md @@ -0,0 +1,106 @@ +# Create your plugin + +To create your plugin you need to run the following required steps + +### 1. Create in dir with our plugins `@common\plugins` new folder: +* For example: `test` + +### 2. In this folder create: +* `README.md` with usage instruction for this plugin +* New named as folder class `Test`, with information about plugin + +```php + 'Hello, world!', + ]; +``` + +* Then, assign a template events + +```php + public static function events() + { + return [ + $eventSenderClassName => [ + $eventName => [$handlerMethodName, self::$config] + ], + ]; + } +``` + +for example: + +```php + public static function events() + { + return [ + 'yii\base\View' => [ + 'afterRender' => ['foo', self::$config] + ], + ]; + } +``` +more about `$eventSenderClassName` and `$eventName` you can be found on the info tab of this module + +!["Info tab"](img/tab_info.jpg) + +* Create a handler method `foo` with the necessary logic + +```php + /** + * handler method foo + */ + public function foo($event) + { + $term = ($event->data['term']) ? $event->data['term'] : self::$config['term']; + + if (isset($event->output)) { + $content = $event->output; + $event->output = str_replace($term,"

$term

", $content); + } + + return true; + } +``` + +* That's all. Then you have to [install](install_plugin.md) this plugin \ No newline at end of file diff --git a/docs/img/demo_events.jpg b/docs/img/demo_events.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0f8f1a3f876b97fbd565468633b54cf86e2cb517 GIT binary patch literal 78986 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 axb|N`_y1Yl`QKf}v@+!Xa~bi^#J>PC!9@H3 literal 0 HcmV?d00001 diff --git a/docs/img/event_edit.jpg b/docs/img/event_edit.jpg new file mode 100644 index 0000000000000000000000000000000000000000..ea03717a7bd91ad51e7fb69ce560a550cc12cea0 GIT binary patch literal 56165 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 bpw#pshjXi)< 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 literal 0 HcmV?d00001 diff --git a/docs/img/tab_events.jpg b/docs/img/tab_events.jpg new file mode 100644 index 0000000000000000000000000000000000000000..e40715aab559bdc4898163dba1ab4605823d508f GIT binary patch literal 72758 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 OKP$-plAlw*r~ezH&NKM{ literal 0 HcmV?d00001 diff --git a/docs/img/tab_info.jpg b/docs/img/tab_info.jpg new file mode 100644 index 0000000000000000000000000000000000000000..233c7e1aeb59254ca7f87bc3cb35d40ffb6d31ab GIT binary patch literal 62174 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 -UYJ)GZC{Uo*Z^T8Xxlq=PWvP_3LIL*KkXd_Ez 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 z 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 literal 0 HcmV?d00001 diff --git a/docs/img/tab_install.jpg b/docs/img/tab_install.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f8b081c01e1ae43d63e92914d9077d39e643fb2d GIT binary patch literal 30721 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 literal 0 HcmV?d00001 diff --git a/docs/img/tab_plugins.jpg b/docs/img/tab_plugins.jpg new file mode 100644 index 0000000000000000000000000000000000000000..ba0870a6cd066acd692dd5485c08d2695fe0e71b GIT binary patch literal 85150 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 Iu70uq3y&{fo&W#< literal 0 HcmV?d00001 diff --git a/docs/install_plugin.md b/docs/install_plugin.md new file mode 100644 index 0000000..7924719 --- /dev/null +++ b/docs/install_plugin.md @@ -0,0 +1,31 @@ +# Install plugin + +After [creating](create_plugin.md) your `Test` plugin first, you must make sure that the our directory plugins included in the module configuration + +```php +'modules' => [ + 'plugins' => [ + 'class' => 'lo\plugins\Module', + 'pluginsDir'=>[ + '@lo/plugins/plugins', // default dir with core plugins + '@common/plugins', // dir with our plugins + ] + ], +], +``` + +* Then go to the install tab and press button + +!["Install tab"](img/tab_install.jpg) + +* Go to the events tab for enabled and configure plugin event + +!["Events tab"](img/tab_events.jpg) + +* If you want, change configuration, update... + +!["Event edit"](img/event_edit.jpg) + +* Go to the website to see the result + +!["Result"](img/demo_events.jpg) \ No newline at end of file diff --git a/helpers/Crawler.php b/helpers/Crawler.php new file mode 100644 index 0000000..ae16aa7 --- /dev/null +++ b/helpers/Crawler.php @@ -0,0 +1,174 @@ +getConstants() as $name => $value) { + if (!preg_match('/^EVENT/', $name)) { + continue; + } + $result[$name] = $value; + } + } catch (\Exception $e) { + echo $className; + exit; + } + + + return $result; + } + + public static function getEventHandlerMethodNames($className) + { + $result = []; + if (!$reflection = self::getReflection($className)) { + return $result; + } + foreach ($reflection->getMethods(\ReflectionMethod::IS_STATIC) as $method) { + if (!$method->isPublic()) { + continue; + } + if ((!$params = $method->getParameters()) || ($params[0]->name != 'event')) { + continue; + } + $result[$method->name] = $method->name; + } + + return $result; + } + + public static function getMethodTriggeredEvents($className, $methodName) + { + $result = []; + if (!$reflection = self::getReflection($className)) { + return $result; + } + if (!$reflection->hasMethod($methodName)) { + return $result; + } + $method = $reflection->getMethod($methodName); + $body = self::getReflectionBody($method); + $events = array_flip(self::extractTriggeredEvents($body)); + foreach ($events as $name => $trash) { + $events[$name] = $reflection->getConstant($name); + } + return $events; + } + + public static function getAllClasses() + { + if (self::$_allClasses !== null) { + return self::$_allClasses; + } + $result = []; + foreach (self::getAllAliases() as $alias) { + $path = Yii::getAlias($alias); + if (!file_exists($path) || is_file($path)) { + continue; + } + $files = BaseFileHelper::findFiles($path, ['except' => ['/yii2-gii/', 'Yii.php']]); + foreach ($files as $filePath) { + if (!preg_match('/.*\/[A-Z]\w+\.php/', $filePath)) { + continue; + } + $className = str_replace([$path, '.php', '/', '@'], [$alias, '', '\\', ''], $filePath); + $result[] = $className; + } + } + + return self::$_allClasses = $result; + } + + public static function getAllAliases() + { + $result = []; + foreach (\Yii::$aliases as $aliases) { + foreach (array_keys((array)$aliases) as $alias) { + if (!$alias) { + continue; + } + $result[] = $alias; + } + } + return $result; + } + + protected static function getReflection($className) + { + try { + if (in_array($className, ['yii\requirements\YiiRequirementChecker', 'yii\helpers\Markdown'])) { + return false; + } + $reflection = new \ReflectionClass($className); + } catch (\Exception $e) { + return false; + } + return $reflection; + } + + protected static function extractTriggeredEvents($string) + { + $string = preg_replace('/\s/', '', $string); + return preg_match_all('/\-\>trigger\(self\:\:(EVENT_[\w\_]+)/', $string, $matches) + ? $matches[1] : []; + } + + public static function getDoc($className) + { + $result = ''; + + try { + if (!$reflection = self::getReflection($className)) { + return $result; + } + $result = $reflection->getDocComment(); + + } catch (\Exception $e) { + echo $className; + exit; + } + return $result; + + } + + + /** + * @param $reflection + * @return string + * @author http://stackoverflow.com/questions/7026690/reconstruct-get-code-of-php-function + */ + protected static function getReflectionBody($reflection) + { + $filename = $reflection->getFileName(); + $start_line = $reflection->getStartLine() - 1; // it's actually - 1, otherwise you wont get the function() block + $end_line = $reflection->getEndLine(); + $length = $end_line - $start_line; + $source = file($filename); + return implode("", array_slice($source, $start_line, $length)); + } + + // Makes many assumptions on file format: + // namespace is declared on its own line, starting with "namespace" (no spaces). + public static function getNamespace($filename) + { + $lines = file($filename); + $namespaceLine = array_shift(preg_grep('/^namespace /', $lines)); + $match = array(); + preg_match('/^namespace (.*);/', $namespaceLine, $match); + $fullNamespace = trim(array_pop($match)); + return $fullNamespace; + } +} \ No newline at end of file diff --git a/helpers/JsonValidator.php b/helpers/JsonValidator.php new file mode 100644 index 0000000..aa16604 --- /dev/null +++ b/helpers/JsonValidator.php @@ -0,0 +1,51 @@ + + */ +class JsonValidator extends Validator +{ + /** + * @inheritdoc + */ + public function init() + { + parent::init(); + if ($this->message === null) { + $this->message = Yii::t('common', '"{attribute}" must be a valid JSON'); + } + } + /** + * @inheritdoc + */ + public function validateValue($value) + { + if(!$value) return true; + + if (!@json_decode($value)) { + return [$this->message, []]; + } + } + + /** + * @inheritdoc + */ + public function clientValidateAttribute($model, $attribute, $view) + { + $message = Yii::$app->getI18n()->format($this->message, [ + 'attribute' => $model->getAttributeLabel($attribute) + ], Yii::$app->language); + return <<<"JS" + try { + if(value) JSON.parse(value); + } catch (e) { + messages.push('{$message}') + } +JS; + } +} diff --git a/messages/en/plugin.php b/messages/en/plugin.php new file mode 100644 index 0000000..2837d67 --- /dev/null +++ b/messages/en/plugin.php @@ -0,0 +1,61 @@ + 'Are you sure to delete this item?', + 'App' => 'App', + 'App Id' => 'App Id', + 'Author' => 'Author', + 'Author Url' => 'Author Url', + + 'Create' => 'Create', + 'Create Item' => 'Create Plugin', + + 'Data' => 'Data', + 'Delete' => 'Delete', + 'Disabled' => 'Disabled', + + 'Enabled' => 'Enabled', + 'Events' => 'Events', + + 'Handler Class' => 'Handler Class', + 'Handler Method' => 'Handler Method', + + 'ID' => 'ID', + 'Info' => 'Info', + 'Install' => 'Install', + 'Items' => 'Plugins', + + 'Name' => 'Name', + 'New event installed' => 'New event installed', + + 'Plugin ID' => 'Plugin ID', + 'Position' => 'Position', + + 'Status' => 'Status', + + 'Text' => 'Text', + 'This plugin alredy installed' => 'This plugin alredy installed', + 'Trigger Class' => 'Trigger Class', + 'Trigger Event' => 'Trigger Event', + + 'Update' => 'Update', + 'Url' => 'Url', + + 'Version' => 'Version', +]; diff --git a/messages/ru/plugin.php b/messages/ru/plugin.php new file mode 100644 index 0000000..138e6df --- /dev/null +++ b/messages/ru/plugin.php @@ -0,0 +1,36 @@ + 'Уверены, что хотите удалить эту запись?', + 'Author' => 'Автор', + 'Author Url' => 'Url автора', + 'Create' => 'Добавить', + 'Create Item' => 'Создать плагин', + 'Delete' => 'Удалить', + 'Events' => 'События', + 'ID' => 'ID', + 'Info' => 'Информация', + 'Install' => 'Установить', + 'Items' => 'Плагины', + 'Name' => 'Название', + 'Status' => 'Статус', + 'Text' => 'Описание', + 'Url' => 'Url', + 'Version' => 'Версия', +]; diff --git a/migrations/m150720_090901_plugin_table.php b/migrations/m150720_090901_plugin_table.php new file mode 100644 index 0000000..f959959 --- /dev/null +++ b/migrations/m150720_090901_plugin_table.php @@ -0,0 +1,45 @@ +db->driverName === 'mysql') { + $tableOptions = 'CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE=InnoDB'; + } + + $this->createTable("{{%plugins__item}}", [ + 'id' => Schema::TYPE_PK, + 'handler_class' => Schema::TYPE_STRING, + 'name' => Schema::TYPE_STRING, + 'url' => Schema::TYPE_STRING, + 'version' => Schema::TYPE_STRING, + 'text'=> Schema::TYPE_TEXT, + 'author'=> Schema::TYPE_STRING, + 'author_url'=> Schema::TYPE_STRING, + 'status' => Schema::TYPE_SMALLINT . ' NOT NULL DEFAULT 0', + ], $tableOptions); + } + + public function down() + { + echo "m150720_090901_plugin_table cannot be reverted.\n"; + + return false; + } + + /* + // Use safeUp/safeDown to run migration code within a transaction + public function safeUp() + { + } + + public function safeDown() + { + } + */ +} diff --git a/migrations/m150720_090905_app_table.php b/migrations/m150720_090905_app_table.php new file mode 100644 index 0000000..57b0e73 --- /dev/null +++ b/migrations/m150720_090905_app_table.php @@ -0,0 +1,55 @@ +db->driverName === 'mysql') { + $tableOptions = 'CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE=InnoDB'; + } + + $this->createTable("{{%plugins__app}}", [ + 'id' => Schema::TYPE_PK, + 'name' => Schema::TYPE_STRING, + ], $tableOptions); + + $this->insert('{{%plugins__app}}', [ + 'id' => 1, + 'name' => 'frontend', + ]); + + $this->insert('{{%plugins__app}}', [ + 'id' => 2, + 'name' => 'common', + ]); + + $this->insert('{{%plugins__app}}', [ + 'id' => 3, + 'name' => 'backend', + ]); + + + } + + public function down() + { + echo "m150720_090905_app_table cannot be reverted.\n"; + + return false; + } + + /* + // Use safeUp/safeDown to run migration code within a transaction + public function safeUp() + { + } + + public function safeDown() + { + } + */ +} diff --git a/migrations/m150720_091726_event_table.php b/migrations/m150720_091726_event_table.php new file mode 100644 index 0000000..d37463b --- /dev/null +++ b/migrations/m150720_091726_event_table.php @@ -0,0 +1,91 @@ +db->driverName === 'mysql') { + $tableOptions = 'CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE=InnoDB'; + } + + $this->createTable("{{%plugins__event}}", [ + 'id' => Schema::TYPE_PK, + 'app_id' => Schema::TYPE_INTEGER . ' NOT NULL DEFAULT 1', + 'plugin_id' => Schema::TYPE_INTEGER . ' NOT NULL', + 'trigger_class' => Schema::TYPE_STRING, + 'trigger_event' => Schema::TYPE_STRING, + 'handler_method'=> Schema::TYPE_STRING, + 'data'=> Schema::TYPE_TEXT, + 'pos'=> Schema::TYPE_INTEGER . ' NOT NULL DEFAULT 0', + 'status' => Schema::TYPE_SMALLINT . ' NOT NULL DEFAULT 0', + ], $tableOptions); + + $this->addForeignKey( + 'fk_plugins_event_plugins_item', + '{{%plugins__event}}', + 'plugin_id', + '{{%plugins__item}}', + 'id', + 'cascade', + 'cascade' + ); + + $this->addForeignKey( + 'fk_plugins_event_plugins_app', + '{{%plugins__event}}', + 'app_id', + '{{%plugins__app}}', + 'id', + 'cascade', + 'cascade' + ); + + $this->insert('{{%plugins__item}}', [ + 'id' => 1, + 'handler_class' => 'lo\plugins\plugins\code\Code', + 'name' => 'Code Highlighting plugin', + 'status' => 1, + ]); + + $this->insert('{{%plugins__event}}', [ + 'id' => 1, + 'app_id' => 1, // frontend + 'plugin_id' => 1, // Code Highlighting + 'trigger_class' => 'yii\base\View', + 'trigger_event' => 'afterRender', + 'handler_method' => 'shortCode', + 'data' => '{"style":"github","lang":"php"}', + 'status' => 1, + ]); + } + + public function down() + { + $this->dropForeignKey( + 'fk_plugins_event_plugins_item', + '{{%plugins__event}}' + ); + + $this->dropForeignKey( + 'fk_plugins_event_plugins_app', + '{{%plugins__event}}' + ); + + $this->dropTable('{{%plugins__event}}'); + } + + /* + // Use safeUp/safeDown to run migration code within a transaction + public function safeUp() + { + } + + public function safeDown() + { + } + */ +} diff --git a/models/App.php b/models/App.php new file mode 100644 index 0000000..0774171 --- /dev/null +++ b/models/App.php @@ -0,0 +1,56 @@ + 255], + ]; + } + + /** + * @inheritdoc + */ + public function attributeLabels() + { + return [ + 'id' => Yii::t('plugin', 'ID'), + 'name' => Yii::t('plugin', 'Name'), + ]; + } + + /** + * @return \yii\db\ActiveQuery + */ + public function getEvents() + { + return $this->hasMany(Event::className(), ['app_id' => 'id']); + } + +} diff --git a/models/Event.php b/models/Event.php new file mode 100644 index 0000000..3c0a4f4 --- /dev/null +++ b/models/Event.php @@ -0,0 +1,130 @@ + 255], + [['data'], JsonValidator::className()], + //[['plugin_id'], 'exist', 'skipOnError' => true, 'targetClass' => Item::className(), 'targetAttribute' => ['id']], + //[['app_id'], 'exist', 'skipOnError' => true, 'targetClass' => App::className(), 'targetAttribute' => ['id']], + ]; + + } + + /** + * @inheritdoc + */ + public function attributeLabels() + { + return [ + 'id' => Yii::t('plugin', 'ID'), + 'app_id' => Yii::t('plugin', 'App ID'), + 'plugin_id' => Yii::t('plugin', 'Plugin ID'), + 'trigger_class' => Yii::t('plugin', 'Trigger Class'), + 'trigger_event' => Yii::t('plugin', 'Trigger Event'), + 'handler_method' => Yii::t('plugin', 'Handler Method'), + 'data' => Yii::t('plugin', 'Data'), + 'pos' => Yii::t('plugin', 'Position'), + 'status' => Yii::t('plugin', 'Status'), + ]; + } + + /** + * @return \yii\db\ActiveQuery + */ + public function getApp() + { + return $this->hasOne(App::className(), ['id' => 'app_id']); + } + + /** + * @return \yii\db\ActiveQuery + */ + public function getPlugin() + { + return $this->hasOne(Item::className(), ['id' => 'plugin_id']); + } + + /** + * @inheritdoc + * @return EventQuery the active query used by this AR class. + */ + public static function find() + { + return new EventQuery(get_called_class()); + } + + /** + * eventList for BootstrapManager + * @return array + */ + public static function eventList($appId = 'frontend') + { + // (frontentd and common) or (backend and common) events + $cond = ($appId == 'backend') ? '>=' : '<='; + $attributes = ['trigger_class', 'trigger_event', 'plugin_id', 'pos', 'handler_method']; // handler_class + $order = array_combine($attributes, array_fill(0, count($attributes), SORT_ASC)); + + $allEvents = self::find() + ->select('t.*') + ->from(self::tableName() . 'AS t') + ->joinWith(['plugin']) + ->where([ + 't.status' => self::STATUS_ACTIVE, + Item::tableName() . '.status' => Item::STATUS_ACTIVE, + ]) + ->andWhere([$cond, 't.app_id', App::APP_COMMON]) + ->orderBy($order) + ->all(); + + $result = []; + + foreach ($allEvents as $data) { + if ($data->data) { + $handler = [[$data->plugin->handler_class, $data->handler_method], json_decode($data->data, true)]; + } else { + $handler = [$data->plugin->handler_class, $data->handler_method]; + } + $result[$data->trigger_class][$data->trigger_event][] = $handler; + } + + return $result; + } +} diff --git a/models/EventQuery.php b/models/EventQuery.php new file mode 100644 index 0000000..7c38530 --- /dev/null +++ b/models/EventQuery.php @@ -0,0 +1,35 @@ +andWhere('[[status]]=1'); + return $this; + }*/ + + /** + * @inheritdoc + * @return Event[]|array + */ + public function all($db = null) + { + return parent::all($db); + } + + /** + * @inheritdoc + * @return Event|array|null + */ + public function one($db = null) + { + return parent::one($db); + } +} \ No newline at end of file diff --git a/models/EventSearch.php b/models/EventSearch.php new file mode 100644 index 0000000..999e6ca --- /dev/null +++ b/models/EventSearch.php @@ -0,0 +1,71 @@ + $query, + ]); + + $this->load($params); + + if (!$this->validate()) { + // uncomment the following line if you do not want to return any records when validation fails + // $query->where('0=1'); + return $dataProvider; + } + + $query->andFilterWhere([ + 'id' => $this->id, + 'plugin_id' => $this->plugin_id, + 'app_id' => $this->app_id, + 'status' => $this->status, + ]); + + $query->andFilterWhere(['like', 'trigger_class', $this->trigger_class]) + ->andFilterWhere(['like', 'trigger_event', $this->trigger_event]) + ->andFilterWhere(['like', 'handler_method', $this->handler_method]); + + return $dataProvider; + } +} diff --git a/models/Item.php b/models/Item.php new file mode 100644 index 0000000..06c05ac --- /dev/null +++ b/models/Item.php @@ -0,0 +1,83 @@ + 255], + ]; + } + + /** + * @inheritdoc + */ + public function attributeLabels() + { + return [ + 'id' => Yii::t('plugin', 'ID'), + 'handler_class' => Yii::t('plugin', 'Handler Class'), + 'name' => Yii::t('plugin', 'Name'), + 'url' => Yii::t('plugin', 'Url'), + 'version' => Yii::t('plugin', 'Version'), + 'text' => Yii::t('plugin', 'Text'), + 'author' => Yii::t('plugin', 'Author'), + 'author_url' => Yii::t('plugin', 'Author Url'), + 'status' => Yii::t('plugin', 'Status'), + ]; + } + + /** + * @return \yii\db\ActiveQuery + */ + public function getEvents() + { + return $this->hasMany(Event::className(), ['plugin_id' => 'id']); + } + + /** + * @inheritdoc + * @return ItemQuery the active query used by this AR class. + */ + public static function find() + { + return new ItemQuery(get_called_class()); + } +} diff --git a/models/ItemQuery.php b/models/ItemQuery.php new file mode 100644 index 0000000..7de381c --- /dev/null +++ b/models/ItemQuery.php @@ -0,0 +1,35 @@ +andWhere('[[status]]=1'); + return $this; + }*/ + + /** + * @inheritdoc + * @return Item[]|array + */ + public function all($db = null) + { + return parent::all($db); + } + + /** + * @inheritdoc + * @return Item|array|null + */ + public function one($db = null) + { + return parent::one($db); + } +} \ No newline at end of file diff --git a/models/ItemSearch.php b/models/ItemSearch.php new file mode 100644 index 0000000..a72147b --- /dev/null +++ b/models/ItemSearch.php @@ -0,0 +1,73 @@ + $query, + ]); + + $this->load($params); + + if (!$this->validate()) { + // uncomment the following line if you do not want to return any records when validation fails + // $query->where('0=1'); + return $dataProvider; + } + + $query->andFilterWhere([ + 'id' => $this->id, + 'status' => $this->status, + ]); + + $query->andFilterWhere(['like', 'name', $this->name]) + ->andFilterWhere(['like', 'handler_class', $this->handler_class]) + ->andFilterWhere(['like', 'url', $this->url]) + ->andFilterWhere(['like', 'version', $this->version]) + ->andFilterWhere(['like', 'text', $this->text]) + ->andFilterWhere(['like', 'author', $this->author]) + ->andFilterWhere(['like', 'author_url', $this->author_url]); + + return $dataProvider; + } +} diff --git a/plugins/code/Code.php b/plugins/code/Code.php new file mode 100644 index 0000000..3ff0e47 --- /dev/null +++ b/plugins/code/Code.php @@ -0,0 +1,69 @@ + 'github', 'lang' => 'php']; + + public static function events() + { + return [ + 'yii\base\View' => [ + 'afterRender' => ['shortCode', self::$config] + ], + ]; + } + + /** + * Parse shortcode [code], more styles you can find in https://highlightjs.org + */ + public function shortCode($event) + { + $view = $event->sender; + + $style = ($event->data['style']) ? $event->data['style'] : self::$config['style']; + $lang = ($event->data['lang']) ? $event->data['lang'] : self::$config['lang']; + + CodeAsset::register($view, ['style' => $style]); + + $view->registerJs("hljs.initHighlightingOnLoad();"); + + if (isset($event->output)) { + + $shortcode = new Shortcode(); + + $shortcode->callbacks = [ + 'code' => function ($attrs, $content, $tag) use ($lang) { + $lg = isset($attrs['lang']) ? $attrs['lang'] : $lang; + return '

' . htmlspecialchars($content) . '
'; + }, + ]; + + $event->output = $shortcode->parse($event->output); + } + + return true; + } +} \ No newline at end of file diff --git a/plugins/code/CodeAsset.php b/plugins/code/CodeAsset.php new file mode 100644 index 0000000..02ce0cf --- /dev/null +++ b/plugins/code/CodeAsset.php @@ -0,0 +1,24 @@ +getAssetManager()->getBundle(__CLASS__); + + $thisBundle->css[] = sprintf('styles/%s.css', $config['style']); + + return parent::register($view); + } + +} \ No newline at end of file diff --git a/plugins/code/README.md b/plugins/code/README.md new file mode 100644 index 0000000..78fc92c --- /dev/null +++ b/plugins/code/README.md @@ -0,0 +1,29 @@ +# Code Highlighting + +### Config + +After installiation in plugins system, you can change default config + +```php + [ + 'style' => 'github', + 'lang' => 'php' + ]; +``` + +### Usage + +All the blocks of text enclosed in the shortcode [code], will be highlighted. +For example: + +```php + [code] ... our text ... [/code] +``` +or, if the language of highlighting is different from the by default `php` + ```php + [code lang="html"] ... our text ... [/code] + ``` + + ### Links + + * More langs and styles you can find in [https://highlightjs.org] (https://highlightjs.org) \ No newline at end of file diff --git a/plugins/helloworld/Helloworld.php b/plugins/helloworld/Helloworld.php new file mode 100644 index 0000000..9c6c4c4 --- /dev/null +++ b/plugins/helloworld/Helloworld.php @@ -0,0 +1,55 @@ + 'Hello, world!', + 'replace' => 'Hello, Yii!', + 'color' => '#FFDB51' + ]; + + public static function events() + { + return [ + 'yii\base\View' => [ + 'afterRender' => ['hello', self::$config] + ] + ]; + } + + /** + * Plugin action for event + */ + public static function hello($event) + { + $search = ($event->data['search']) ? $event->data['search'] : self::$config['search']; + $replace = ($event->data['replace']) ? $event->data['replace'] : self::$config['replace']; + $color = ($event->data['color']) ? $event->data['color'] : self::$config['color']; + + if (isset($event->output)) { + $content = $event->output; + $event->output = str_replace($search,"$replace", $content); + } + return true; + } +} \ No newline at end of file diff --git a/plugins/helloworld/README.md b/plugins/helloworld/README.md new file mode 100644 index 0000000..6ef6a08 --- /dev/null +++ b/plugins/helloworld/README.md @@ -0,0 +1,17 @@ +# Hello World plugin + +### Config + +After installiation in plugins system, you can change default config + +```php + [ + 'search' => 'Hello, world!', + 'replace' => 'Hello, Yii!', + 'color' => '#FFDB51' + ]; +``` + +### Usage + +After enabled this plugin, all phrases `search` will be replaced on `replace`, and highlighted `color` \ No newline at end of file diff --git a/plugins/httpauth/Httpauth.php b/plugins/httpauth/Httpauth.php new file mode 100644 index 0000000..3f21959 --- /dev/null +++ b/plugins/httpauth/Httpauth.php @@ -0,0 +1,100 @@ + ['127.0.0.1', '127.0.0.2'], + 'users' => [ + 'admin' => '123456', + ] + ]; + + public static function events() + { + return [ + 'yii\base\Application' => [ + 'beforeRequest' => ['login', self::$config] + ], + ]; + } + + /** + * @var array Username and password pairs. + */ + private static $_users = []; + + /** + * @var array the list of IPs that are allowed to access this application. + */ + private static $_allowedIps = []; + + /** + * Logining + */ + public static function login($event) + { + self::$_allowedIps = ($event->data['allowedIps']) ? $event->data['allowedIps'] : self::$config['allowedIps']; + self::$_users = ($event->data['users']) ? $event->data['users'] : self::$config['users']; + + if (Yii::$app->request->isConsoleRequest || self::_checkAllowedIps() || self::_checkHttpAuthentication()) { + return; + } + + Yii::$app->response->headers->add('WWW-Authenticate', 'Basic realm="HTTP authentication"'); + throw new UnauthorizedHttpException(Yii::t('yii', 'You are not allowed to perform this action.'), 401); + + return false; + } + + /** + * @return boolean Whether the application can be accessed by the current user. + */ + private function _checkAllowedIps() + { + if (in_array(Yii::$app->request->getUserIP(), self::$_allowedIps)) { + return true; + } + return false; + } + + /** + * @return boolean Whether the application can be accessed by the current user. + */ + private function _checkHttpAuthentication() + { + $username = Yii::$app->request->getAuthUser(); + $password = Yii::$app->request->getAuthPassword(); + if ( + isset(self::$_users[$username]) && + ( + $password == self::$_users[$username] || + md5($password) == self::$_users[$username]) + ) { + return true; + } + return false; + } +} \ No newline at end of file diff --git a/plugins/httpauth/README.md b/plugins/httpauth/README.md new file mode 100644 index 0000000..98496ac --- /dev/null +++ b/plugins/httpauth/README.md @@ -0,0 +1,18 @@ +# Http Authentication plugin + +### Config + +After installiation in plugins system, you can change default config + +```php + [ + 'allowedIps' => ['127.0.0.1', '127.0.0.2'], + 'users' => [ + 'admin' => '123456', + ] + ]; +``` + +### Thanks + +* Lajax for idea from [Yii2 Http Authentication] (https://github.com/lajax/yii2-http-auth) extension \ No newline at end of file diff --git a/views/_menu.php b/views/_menu.php new file mode 100644 index 0000000..ddc887a --- /dev/null +++ b/views/_menu.php @@ -0,0 +1,35 @@ + + + [ + 'class' => 'nav-tabs', + 'style' => 'margin-bottom: 15px' + ], + 'items' => [ + [ + 'label' => Yii::t('plugin', 'Items'), + 'url' => ['/plugins/item/index'], + ], + [ + 'label' => Yii::t('plugin', 'Events'), + 'url' => ['/plugins/event/index'], + ], + [ + 'label' => Yii::t('plugin', 'Install'), + 'url' => ['/plugins/item/find'], + ], + [ + 'label' => Yii::t('plugin', 'Info'), + 'url' => ['/plugins/item/info'], + ], + ] +]) +?> diff --git a/views/event/_form.php b/views/event/_form.php new file mode 100644 index 0000000..bc06581 --- /dev/null +++ b/views/event/_form.php @@ -0,0 +1,59 @@ + + +
+ + + +
+
+ field($model, 'data')->widget(Jsoneditor::className(), + [ + 'editorOptions' => [ + 'modes' => ['code', 'form', 'text', 'tree', 'view'], // available modes + 'mode' => 'form', // current mode + ], + 'options' => ['style' => 'height:225px'], // html options + ] + ); ?> +
+ +
+ +
+ field($model, 'trigger_class')->textInput(['disabled' => true, 'maxlength' => true]) ?> + field($model, 'handler_method')->textInput(['disabled' => true, 'maxlength' => true]) ?> + field($model, 'status')->dropDownList([ + $model::STATUS_INACTIVE => Yii::t('plugin', 'Disabled'), + $model::STATUS_ACTIVE => Yii::t('plugin', 'Enabled') + ]) ?> +
+ +
+ field($model, 'trigger_event')->textInput(['disabled' => true, 'maxlength' => true]) ?> + field($model, 'app_id')->dropDownList([ + 1=> Yii::t('plugin', 'Frontend'), + 2 => Yii::t('plugin', 'Common'), + 3 => Yii::t('plugin', 'Backend') + ]) ?> + field($model, 'pos')->textInput() ?> +
+ +
+
+ +
+ isNewRecord ? Yii::t('plugin', 'Create') : Yii::t('plugin', 'Update'), ['class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary']) ?> +
+ + + +
diff --git a/views/event/_search.php b/views/event/_search.php new file mode 100644 index 0000000..3cc3186 --- /dev/null +++ b/views/event/_search.php @@ -0,0 +1,39 @@ + + + diff --git a/views/event/create.php b/views/event/create.php new file mode 100644 index 0000000..77a6cee --- /dev/null +++ b/views/event/create.php @@ -0,0 +1,21 @@ +title = Yii::t('plugin', 'Create Event'); +$this->params['breadcrumbs'][] = ['label' => Yii::t('plugin', 'Events'), 'url' => ['index']]; +$this->params['breadcrumbs'][] = $this->title; +?> +
+ +

title) ?>

+ + render('_form', [ + 'model' => $model, + ]) ?> + +
diff --git a/views/event/index.php b/views/event/index.php new file mode 100644 index 0000000..0541f74 --- /dev/null +++ b/views/event/index.php @@ -0,0 +1,93 @@ +title = Yii::t('plugin', 'Events'); +$this->params['breadcrumbs'][] = $this->title; +?> +
+ +

title) ?>

+ render('/_menu') ?> + + $dataProvider, + 'filterModel' => $searchModel, + 'columns' => [ + ['class' => 'yii\grid\SerialColumn'], + [ + 'attribute' => 'app_id', + 'label' => Yii::t('plugin','App'), + 'options' => ['style' => 'width: 25px; align: center;'], + 'value' => function ($model, $key, $index, $column) { + switch ($model->app_id) { + case 1: + return 'F'; + break; + case 2: + return 'C'; + break; + case 3: + return 'B'; + break; + } + }, + 'filter' => [ + 1 => Yii::t('plugin', 'Frontend'), + 2 => Yii::t('plugin', 'Common'), + 3 => Yii::t('plugin', 'Backend') + ], + 'format' => "raw" + ], + 'trigger_class', + 'trigger_event', + 'plugin.handler_class', + 'handler_method', + [ + 'attribute' => 'status', + 'options' => ['style' => 'width: 75px; align: center;'], + 'value' => function ($model, $key, $index, $column) { + return $model->status == $model::STATUS_ACTIVE ? 'Enabled' : 'Disabled'; + }, + 'filter' => [ + 1 => Yii::t('plugin', 'Enabled'), + 0 => Yii::t('plugin', 'Disabled') + ], + 'format' => "raw" + ], + [ + 'class' => 'yii\grid\ActionColumn', + 'template' => '{update} {view} {delete}', + 'options' => ['style' => 'width: 100px;'], + 'buttons' => [ + 'update' => function ($url, $model) { + return Html::a('', $url, [ + 'class' => 'btn btn-xs btn-primary', + 'title' => Yii::t('plugin', 'Update'), + ]); + }, + 'view' => function ($url, $model) { + return Html::a('', $url, [ + 'class' => 'btn btn-xs btn-warning', + 'title' => Yii::t('plugin', 'View'), + ]); + }, + 'delete' => function ($url, $model) { + return Html::a('', $url, [ + 'class' => 'btn btn-xs btn-danger', + 'data-method' => 'post', + 'data-confirm' => Yii::t('plugin', 'Are you sure to delete this item?'), + 'title' => Yii::t('plugin', 'Delete'), + ]); + }, + ] + ], + ], + ]); ?> + +
diff --git a/views/event/update.php b/views/event/update.php new file mode 100644 index 0000000..d6ed727 --- /dev/null +++ b/views/event/update.php @@ -0,0 +1,23 @@ +title = Yii::t('plugin', 'Update {modelClass}: ', [ + 'modelClass' => 'Event', +]) . ' ' . $model->plugin->name; +$this->params['breadcrumbs'][] = ['label' => Yii::t('plugin', 'Events'), 'url' => ['index']]; +$this->params['breadcrumbs'][] = ['label' => $model->id, 'url' => ['view', 'id' => $model->id]]; +$this->params['breadcrumbs'][] = Yii::t('plugin', 'Update'); +?> +
+ +

title) ?>

+ + render('_form', [ + 'model' => $model, + ]) ?> + +
diff --git a/views/event/view.php b/views/event/view.php new file mode 100644 index 0000000..ddd976b --- /dev/null +++ b/views/event/view.php @@ -0,0 +1,43 @@ +title = $model->id; +$this->params['breadcrumbs'][] = ['label' => Yii::t('plugin', 'Events'), 'url' => ['index']]; +$this->params['breadcrumbs'][] = $this->title; +?> +
+ +

title) ?>

+ +

+ $model->id], ['class' => 'btn btn-primary']) ?> + $model->id], [ + 'class' => 'btn btn-danger', + 'data' => [ + 'confirm' => Yii::t('plugin', 'Are you sure you want to delete this item?'), + 'method' => 'post', + ], + ]) ?> +

+ + $model, + 'attributes' => [ + 'id', + 'plugin_id', + 'trigger_class', + 'trigger_event', + 'plugin.handler_class', + 'handler_method', + 'data', + 'pos', + 'status', + ], + ]) ?> + +
diff --git a/views/item/_form.php b/views/item/_form.php new file mode 100644 index 0000000..1ccdb5d --- /dev/null +++ b/views/item/_form.php @@ -0,0 +1,38 @@ + + +
+ + + + field($model, 'name')->textInput(['maxlength' => true]) ?> + + field($model, 'url')->textInput(['maxlength' => true]) ?> + + field($model, 'version')->textInput(['maxlength' => true]) ?> + + field($model, 'text')->textarea(['rows' => 6]) ?> + + field($model, 'author')->textInput(['maxlength' => true]) ?> + + field($model, 'author_url')->textInput(['maxlength' => true]) ?> + + field($model, 'status')->dropDownList([ + $model::STATUS_INACTIVE => Yii::t('plugin', 'Disabled'), + $model::STATUS_ACTIVE => Yii::t('plugin', 'Enabled') + ]) ?> + +
+ isNewRecord ? Yii::t('plugin', 'Create') : Yii::t('plugin', 'Update'), ['class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary']) ?> +
+ + + +
diff --git a/views/item/_item.php b/views/item/_item.php new file mode 100644 index 0000000..e5ec2f5 --- /dev/null +++ b/views/item/_item.php @@ -0,0 +1,11 @@ + + + + + + + + md5($key)], ['class' => 'btn btn-primary']);?> + \ No newline at end of file diff --git a/views/item/_search.php b/views/item/_search.php new file mode 100644 index 0000000..65d6fb8 --- /dev/null +++ b/views/item/_search.php @@ -0,0 +1,43 @@ + + + diff --git a/views/item/create.php b/views/item/create.php new file mode 100644 index 0000000..6148a47 --- /dev/null +++ b/views/item/create.php @@ -0,0 +1,21 @@ +title = Yii::t('plugin', 'Create Item'); +$this->params['breadcrumbs'][] = ['label' => Yii::t('plugin', 'Items'), 'url' => ['index']]; +$this->params['breadcrumbs'][] = $this->title; +?> +
+ +

title) ?>

+ + render('_form', [ + 'model' => $model, + ]) ?> + +
diff --git a/views/item/find.php b/views/item/find.php new file mode 100644 index 0000000..da10a7b --- /dev/null +++ b/views/item/find.php @@ -0,0 +1,52 @@ +title = Yii::t('plugin', 'Install'); +$this->params['breadcrumbs'][] = ['label' => Yii::t('plugin', 'Items'), 'url' => ['info']]; +$this->params['breadcrumbs'][] = $this->title; +?> +
+ +

title) ?>

+ render('/_menu') ?> + + + Plugin name + Ver. + Author + Plugin description + + + '; + ?> + $dataProvider, + 'layout' => "$thead{items}", + 'options' => [ + 'tag' => 'table', + 'class' => 'table table-bordered table-striped', + ], + 'itemOptions' => [ + 'tag' => false, + ], + 'itemOptions' => ['class' => 'item'], + 'itemView' => '_item', + /*'itemView' => function ($model, $key, $index, $widget) use ($transportRun) { + // return print_r($model, true); + return $key; + },*/ + ]) ?> + + $dataProvider->pagination, + ]); ?> + + + +
diff --git a/views/item/index.php b/views/item/index.php new file mode 100644 index 0000000..7546469 --- /dev/null +++ b/views/item/index.php @@ -0,0 +1,71 @@ +title = Yii::t('plugin', 'Items'); +$this->params['breadcrumbs'][] = $this->title; +?> +
+ +

title) ?>

+ render('/_menu') ?> + + $dataProvider, + 'filterModel' => $searchModel, + 'columns' => [ + ['class' => 'yii\grid\SerialColumn'], + 'handler_class', + 'name', + 'url:url', + 'version', + 'text:ntext', + [ + 'attribute' => 'status', + 'options' => ['style'=>'width: 75px; align: center;'], + 'value' => function ($model, $key, $index, $column) { + return $model->status == $model::STATUS_ACTIVE ? 'Enabled' : 'Disabled'; + }, + 'filter' => [ + 1 => Yii::t('plugin', 'Enabled'), + 0 => Yii::t('plugin', 'Disabled') + ], + 'format'=>"raw" + ], + + [ + 'class' => 'yii\grid\ActionColumn', + 'template' => '{update} {view} {delete}', + 'options' => ['style'=>'width: 100px;'], + 'buttons' => [ + 'update' => function ($url, $model) { + return Html::a('', $url, [ + 'class' => 'btn btn-xs btn-primary', + 'title' => Yii::t('plugin', 'Update'), + ]); + }, + 'view' => function ($url, $model) { + return Html::a('', $url, [ + 'class' => 'btn btn-xs btn-warning', + 'title' => Yii::t('plugin', 'View'), + ]); + }, + 'delete' => function ($url, $model) { + return Html::a('', $url, [ + 'class' => 'btn btn-xs btn-danger', + 'data-method' => 'post', + 'data-confirm' => Yii::t('plugin', 'Are you sure to delete this item?'), + 'title' => Yii::t('plugin', 'Delete'), + ]); + }, + ] + ], + ], + ]); ?> + +
diff --git a/views/item/info.php b/views/item/info.php new file mode 100644 index 0000000..73dfe1c --- /dev/null +++ b/views/item/info.php @@ -0,0 +1,227 @@ +title = Yii::t('plugin', 'Info'); +$this->params['breadcrumbs'][] = ['label' => Yii::t('plugin', 'Items'), 'url' => ['info']]; +$this->params['breadcrumbs'][] = $this->title; +?> + +
+ +

title) ?>

+ render('/_menu') ?> + + +
+
+

MVC

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Controller or Module
EVENT_BEFORE_ACTIONbeforeAction
EVENT_AFTER_ACTIONafterAction
Model
EVENT_BEFORE_VALIDATEbeforeValidate
EVENT_AFTER_VALIDATEafterValidate
yii\base\View
EVENT_BEGIN_PAGEbeginPage
EVENT_END_PAGEendPage
EVENT_BEFORE_RENDERbeforeRender
EVENT_AFTER_RENDERafterRender
yii\web\View
EVENT_BEGIN_BODYbeginBody
EVENT_END_BODYendBody
+ +

Components

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
MessageSource
EVENT_MISSING_TRANSLATIONmissingTranslation
BaseMailer
EVENT_BEFORE_SENDbeforeSend
EVENT_AFTER_SENDafterSend
User
EVENT_BEFORE_LOGINbeforeLogin
EVENT_AFTER_LOGINafterLogin
EVENT_BEFORE_LOGOUTbeforeLogout
EVENT_AFTER_LOGOUTafterLogout
+
+ +
+

Database

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
BaseActiveRecord
EVENT_INIT + + init
EVENT_AFTER_FINDafterFind
EVENT_BEFORE_INSERTbeforeInsert
EVENT_AFTER_INSERTafterInsert
EVENT_BEFORE_UPDATEbeforeUpdate
EVENT_AFTER_UPDATEafterUpdate
EVENT_BEFORE_DELETEbeforeDelete
EVENT_AFTER_DELETEafterDelete
ActiveQuery
EVENT_INITinit
Connection
EVENT_AFTER_OPENafterOpen
EVENT_BEGIN_TRANSACTIONbeginTransaction
EVENT_COMMIT_TRANSACTIONcommitTransaction
EVENT_ROLLBACK_TRANSACTIONrollbackTransaction
+ +

Request

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
yii\base\Application
EVENT_BEFORE_REQUESTbeforeRequest
EVENT_AFTER_REQUESTafterRequest
Response
EVENT_BEFORE_SENDbeforeSend
EVENT_AFTER_SENDafterSend
EVENT_AFTER_PREPAREafterPrepare
+
+ +
+ + + +
diff --git a/views/item/update.php b/views/item/update.php new file mode 100644 index 0000000..a541381 --- /dev/null +++ b/views/item/update.php @@ -0,0 +1,23 @@ +title = Yii::t('plugin', 'Update {modelClass}: ', [ + 'modelClass' => 'Item', +]) . ' ' . $model->name; +$this->params['breadcrumbs'][] = ['label' => Yii::t('plugin', 'Items'), 'url' => ['index']]; +$this->params['breadcrumbs'][] = ['label' => $model->name, 'url' => ['view', 'id' => $model->id]]; +$this->params['breadcrumbs'][] = Yii::t('plugin', 'Update'); +?> +
+ +

title) ?>

+ + render('_form', [ + 'model' => $model, + ]) ?> + +
diff --git a/views/item/view.php b/views/item/view.php new file mode 100644 index 0000000..03b1e2b --- /dev/null +++ b/views/item/view.php @@ -0,0 +1,42 @@ +title = $model->name; +$this->params['breadcrumbs'][] = ['label' => Yii::t('plugin', 'Items'), 'url' => ['index']]; +$this->params['breadcrumbs'][] = $this->title; +?> +
+ +

title) ?>

+ +

+ $model->id], ['class' => 'btn btn-primary']) ?> + $model->id], [ + 'class' => 'btn btn-danger', + 'data' => [ + 'confirm' => Yii::t('plugin', 'Are you sure you want to delete this item?'), + 'method' => 'post', + ], + ]) ?> +

+ + $model, + 'attributes' => [ + 'id', + 'name', + 'url:url', + 'version', + 'text:ntext', + 'author', + 'author_url:url', + 'status', + ], + ]) ?> + +