/**
  * Register the service provider.
  *
  * @return void
  */
 public function register()
 {
     $this->app->singleton('todoform', function ($app) {
         $form = new TodoFormBuilder($app['html'], $app['url'], $app['session.store']->getToken());
         return $form->setSessionStore($app['session.store']);
     });
     $this->app->singleton('todofilterform', function ($app) {
         $form = new TodoFilterFormBuilder($app['html'], $app['url'], $app['session.store']->getToken());
         return $form->setSessionStore($app['session.store']);
     });
     $this->app->alias('todoform', TodoFormBuilder::class);
     $this->app->alias('todofilterform', TodoFilterFormBuilder::class);
 }
Example #2
0
 public static function getFiltered($filter = array())
 {
     $orderBy = TodoFilterFormBuilder::getOrderByList();
     $res = self::join('todo_status', 'todo.todo_status_id', '=', 'todo_status.id')->select('todo.*', 'todo_status.name AS status');
     if (!empty($filter)) {
         if (!empty($filter['order_by'])) {
             $res->orderBy(isset($orderBy[$filter['order_by']]) ? $filter['order_by'] : key($orderBy), !empty($filter['order_dir']) && $filter['order_dir'] === 'asc' ? $filter['order_dir'] : 'desc');
         }
         if (!empty($filter['project_id'])) {
             $res->where('todo.project_id', '=', (int) $filter['project_id']);
         }
         if (!empty($filter['todo_status_id'])) {
             $res->where('todo.todo_status_id', '=', (int) $filter['todo_status_id']);
         }
     }
     return $res->get();
 }