diff options
author | Frédéric Guillot <fred@kanboard.net> | 2014-12-28 11:28:50 -0500 |
---|---|---|
committer | Frédéric Guillot <fred@kanboard.net> | 2014-12-28 11:28:50 -0500 |
commit | 34d7450d3c13342715e90ec21bceaa13e1baa876 (patch) | |
tree | a2d8f2f22ad3fe9b56f01fe2db0357f9b963e660 /app/ServiceProvider | |
parent | 88d84073aecbe8bdc5f10825b6d7ca6b81c5f7b1 (diff) |
Template helpers refactoring
Diffstat (limited to 'app/ServiceProvider')
-rw-r--r-- | app/ServiceProvider/ClassProvider.php | 72 | ||||
-rw-r--r-- | app/ServiceProvider/ModelProvider.php | 63 |
2 files changed, 72 insertions, 63 deletions
diff --git a/app/ServiceProvider/ClassProvider.php b/app/ServiceProvider/ClassProvider.php new file mode 100644 index 00000000..02e5004e --- /dev/null +++ b/app/ServiceProvider/ClassProvider.php @@ -0,0 +1,72 @@ +<?php + +namespace ServiceProvider; + +use Model\Config; +use Model\Project; +use Model\Webhook; +use Pimple\Container; +use Pimple\ServiceProviderInterface; + +class ClassProvider implements ServiceProviderInterface +{ + private $classes = array( + 'Model' => array( + 'Acl', + 'Action', + 'Authentication', + 'Board', + 'Category', + 'Color', + 'Comment', + 'Config', + 'DateParser', + 'File', + 'GithubWebhook', + 'LastLogin', + 'Notification', + 'Project', + 'ProjectActivity', + 'ProjectAnalytics', + 'ProjectDailySummary', + 'ProjectPaginator', + 'ProjectPermission', + 'SubTask', + 'SubtaskPaginator', + 'Swimlane', + 'Task', + 'TaskCreation', + 'TaskDuplication', + 'TaskExport', + 'TaskFinder', + 'TaskModification', + 'TaskPaginator', + 'TaskPermission', + 'TaskPosition', + 'TaskStatus', + 'TaskValidator', + 'TimeTracking', + 'User', + 'Webhook', + ), + 'Core' => array( + 'Template', + 'Session', + ), + ); + + public function register(Container $container) + { + foreach ($this->classes as $namespace => $classes) { + + foreach ($classes as $name) { + + $class = '\\'.$namespace.'\\'.$name; + + $container[lcfirst($name)] = function ($c) use ($class) { + return new $class($c); + }; + } + } + } +} diff --git a/app/ServiceProvider/ModelProvider.php b/app/ServiceProvider/ModelProvider.php deleted file mode 100644 index 1a940058..00000000 --- a/app/ServiceProvider/ModelProvider.php +++ /dev/null @@ -1,63 +0,0 @@ -<?php - -namespace ServiceProvider; - -use Model\Config; -use Model\Project; -use Model\Webhook; -use Pimple\Container; -use Pimple\ServiceProviderInterface; - -class ModelProvider implements ServiceProviderInterface -{ - private $models = array( - 'Acl', - 'Action', - 'Authentication', - 'Board', - 'Category', - 'Color', - 'Comment', - 'Config', - 'DateParser', - 'File', - 'GithubWebhook', - 'LastLogin', - 'Notification', - 'Project', - 'ProjectActivity', - 'ProjectAnalytics', - 'ProjectDailySummary', - 'ProjectPaginator', - 'ProjectPermission', - 'SubTask', - 'SubtaskPaginator', - 'Swimlane', - 'Task', - 'TaskCreation', - 'TaskDuplication', - 'TaskExport', - 'TaskFinder', - 'TaskModification', - 'TaskPaginator', - 'TaskPermission', - 'TaskPosition', - 'TaskStatus', - 'TaskValidator', - 'TimeTracking', - 'User', - 'Webhook', - ); - - public function register(Container $container) - { - foreach ($this->models as $model) { - - $class = '\Model\\'.$model; - - $container[lcfirst($model)] = function ($c) use ($class) { - return new $class($c); - }; - } - } -} |