Ejemplo n.º 1
0
 /**
  *  @throws \Ip\Exception\Db
  */
 public function activate()
 {
     $savedTableTypes = ipGetOption(TableType::OPTION);
     if (empty($savedTableTypes)) {
         ipSetOption(TableType::OPTION, array());
         TableType::create(array('name' => 'default', 'language' => ipContent()->getLanguages()[0]->getId(), 'columnOption' => TableType::SHOW_ALL_COLUMNS, 'specificColumns' => array()))->save();
     }
     $this->createDataTableRepository();
 }
Ejemplo n.º 2
0
 private static function createBaseForm($isSpecificColumnRequired)
 {
     $form = new \Ip\Form();
     $form->setEnvironment(\Ip\Form::ENVIRONMENT_ADMIN);
     // GENERAL
     $form->addFieldset(new \Ip\Form\Fieldset(__('General', 'Ip-admin', false)));
     $field = new \Ip\Form\Field\Text(array('name' => 'name', 'label' => __('Name', 'Ip-admin', false)));
     $field->addValidator("Required");
     $field->addAttribute('ng-model', 'editTableType.name');
     $form->addField($field);
     $languages = array();
     foreach (ipContent()->getLanguages() as $language) {
         $languages[] = array(intval($language->getId()), $language->getTitle());
     }
     $field = new \Ip\Form\Field\Select(array('name' => 'language', 'label' => __('Target language', 'DataTableWidget-admin', false), 'values' => $languages));
     $field->addValidator("Required");
     $form->addField($field);
     // DISPLAY OPTIONS
     $form->addFieldset(new \Ip\Form\Fieldset(__('Display options', 'DataTableWidget-admin', false)));
     $columnOptionsValues = array();
     foreach (TableType::getColumnOptions() as $key => $tableOption) {
         $columnOptionsValues[] = array($key, $tableOption['name']);
     }
     $field = new \Ip\Form\Field\Radio(array('name' => 'columnOption', 'label' => __('Columns and headings', 'DataTableWidget-admin', false), 'values' => $columnOptionsValues));
     $field->addAttribute('ng-model', 'editTableType.columnOption');
     $field->addAttribute('ng-change', 'selectedColumnOptionChanged()');
     $form->addField($field);
     $field = new SpecificColumn();
     $field->removeAttribute('id');
     if ($isSpecificColumnRequired) {
         $field->addValidator("Required");
     }
     $field->setLayout(\Ip\Form\Field::LAYOUT_NO_LABEL);
     $form->addField($field);
     return $form;
 }
Ejemplo n.º 3
0
 private static function convertPostToTableTypeData($postData)
 {
     $columnOptions = TableType::getColumnOptions();
     $columnOption = $columnOptions[$postData['columnOption']];
     if (!isset($postData['specificColumns']) || !$columnOption['isColumnFilter']) {
         $postData['specificColumns'] = array();
     }
     return $postData;
 }