예제 #1
0
파일: Index.php 프로젝트: bwgraves/forkcms
 /**
  * Loads the dataGrids
  */
 private function loadDatagrids()
 {
     // load all categories
     $categories = BackendFaqModel::getCategories(true);
     // loop categories and create a dataGrid for each one
     foreach ($categories as $categoryId => $categoryTitle) {
         $dataGrid = new BackendDataGridDB(BackendFaqModel::QRY_DATAGRID_BROWSE, array(BL::getWorkingLanguage(), $categoryId));
         $dataGrid->setAttributes(array('class' => 'dataGrid sequenceByDragAndDrop'));
         $dataGrid->setColumnsHidden(array('category_id', 'sequence'));
         $dataGrid->addColumn('dragAndDropHandle', null, '<span>' . BL::lbl('Move') . '</span>');
         $dataGrid->setColumnsSequence('dragAndDropHandle');
         $dataGrid->setColumnAttributes('question', array('class' => 'title'));
         $dataGrid->setColumnAttributes('dragAndDropHandle', array('class' => 'dragAndDropHandle'));
         $dataGrid->setRowAttributes(array('id' => '[id]'));
         // check if this action is allowed
         if (BackendAuthentication::isAllowedAction('Edit')) {
             $dataGrid->setColumnURL('question', BackendModel::createURLForAction('Edit') . '&amp;id=[id]');
             $dataGrid->addColumn('edit', null, BL::lbl('Edit'), BackendModel::createURLForAction('Edit') . '&amp;id=[id]', BL::lbl('Edit'));
         }
         // add dataGrid to list
         $this->dataGrids[] = array('id' => $categoryId, 'title' => $categoryTitle, 'content' => $dataGrid->getContent());
     }
     // set empty datagrid
     $this->emptyDatagrid = new BackendDataGridArray(array(array('dragAndDropHandle' => '', 'question' => BL::msg('NoQuestionInCategory'), 'edit' => '')));
     $this->emptyDatagrid->setAttributes(array('class' => 'dataGrid sequenceByDragAndDrop emptyGrid'));
     $this->emptyDatagrid->setHeaderLabels(array('edit' => null, 'dragAndDropHandle' => null));
 }
예제 #2
0
파일: Index.php 프로젝트: bwgraves/forkcms
 /**
  * Loads the datagrid with the unsent mailings
  */
 private function loadDataGridUnsentMailings()
 {
     // set query & parameters
     $query = BackendMailmotorModel::QRY_DATAGRID_BROWSE_UNSENT;
     $parameters = array('concept');
     // campaign is set
     if (!empty($this->campaign)) {
         // reset query, add to parameters
         $query = BackendMailmotorModel::QRY_DATAGRID_BROWSE_UNSENT_FOR_CAMPAIGN;
         $parameters[] = $this->campaign['id'];
     }
     // create datagrid
     $this->dgUnsentMailings = new BackendDataGridDB($query, $parameters);
     $this->dgUnsentMailings->setColumnsHidden(array('campaign_id', 'status'));
     // if a campaign is set, hide the campaign name in the datagrid
     if (!empty($this->campaign)) {
         $this->dgUnsentMailings->setColumnHidden('campaign_name');
     }
     // sorting columns
     $this->dgUnsentMailings->setSortingColumns(array('name', 'campaign_name', 'created_on', 'language'), 'created_on');
     $this->dgUnsentMailings->setSortParameter('desc');
     // check if this action is allowed
     if (BackendAuthentication::isAllowedAction('Edit')) {
         // set colum URLs
         $this->dgUnsentMailings->setColumnURL('name', BackendModel::createURLForAction('Edit') . '&amp;id=[id]');
         // add edit column
         $this->dgUnsentMailings->addColumn('edit', null, BL::lbl('Edit'), BackendModel::createURLForAction('Edit') . '&amp;id=[id]', BL::lbl('Edit'));
     }
     // add the multicheckbox column
     $this->dgUnsentMailings->addColumn('checkbox', '<span class="checkboxHolder"><input type="checkbox" name="toggleChecks" value="toggleChecks" /></span>', '<span><input type="checkbox" name="id[]" value="[id]" class="inputCheckbox" /></span>');
     $this->dgUnsentMailings->setColumnsSequence('checkbox');
     // add mass action dropdown
     $ddmMassAction = new \SpoonFormDropdown('action', array('delete' => BL::lbl('Delete')), 'delete');
     $this->dgUnsentMailings->setMassAction($ddmMassAction);
     // set column functions
     $this->dgUnsentMailings->setColumnFunction(array(__CLASS__, 'setCampaignLink'), array('[campaign_id]', '[campaign_name]'), 'campaign_name', true);
     $this->dgUnsentMailings->setColumnFunction(array(new BackendDataGridFunctions(), 'getTimeAgo'), array('[created_on]'), 'created_on', true);
     // add styles
     $this->dgUnsentMailings->setColumnAttributes('name', array('class' => 'title'));
     // set paging limit
     $this->dgUnsentMailings->setPagingLimit(self::UNSENT_MAILINGS_PAGING_LIMIT);
 }