protected function createComponentGrid($name)
 {
     $grid = new Gridito\Grid($this, $name);
     $db = $this->context->dibiConnection;
     $grid->setModel(new Gridito\DibiFluentModel($db->select('*')->from('users')));
     $grid->setItemsPerPage(5);
     // columns
     $grid->addColumn('id', 'ID')->setSortable(true);
     $grid->addColumn('name', 'Name')->setSortable(true);
     $grid->addColumn('surname', 'Surname')->setSortable(true);
     $grid->addColumn('mail', 'E-mail', array('renderer' => function ($row) {
         echo Nette\Utils\Html::el('a')->href("mailto:{$row->mail}")->setText($row->mail);
     }, 'sortable' => true));
     $grid->addColumn('active', 'Active', array('renderer' => function ($row) {
         Gridito\Column::renderBoolean($row->active);
     }, 'sortable' => true));
 }
 protected function createComponentGrid($name)
 {
     $grid = new Gridito\Grid($this, $name);
     $db = $this->context->dibiConnection;
     $model = new Model\UsersGriditoDibiModel($db);
     if ($this->getParam('activeOnly')) {
         $model->filterActiveOnly();
     }
     $search = $this->getParam('search', false);
     if ($search) {
         $model->filterSearch($search);
     }
     $grid->setModel($model);
     // columns
     $grid->addColumn('id', 'ID')->setSortable(true);
     $grid->addColumn('name', 'Name')->setSortable(true);
     $grid->addColumn('surname', 'Surname')->setSortable(true);
     $grid->addColumn('mail', 'E-mail', array('renderer' => function ($row) {
         echo Nette\Utils\Html::el('a')->href("mailto:{$row->mail}")->setText($row->mail);
     }, 'sortable' => true));
     $grid->addColumn('active', 'Active', array('renderer' => function ($row) {
         Gridito\Column::renderBoolean($row->active);
     }, 'sortable' => true));
 }