/** * @return void */ public function setMetaData() { // Set metadata to configure grid properties $metaData['metaData']['idProperty'] = 'RecordId'; $metaData['metaData']['root'] = 'LabelRows'; // Set field for totalcounts -> paging $metaData['metaData']['totalProperty'] = 'ResultCount'; // Set standard sorting $metaData['metaData']['sortInfo']['field'] = $this->Sort ? $this->Sort : 'LabelName'; $metaData['metaData']['sortInfo']['direction'] = $this->Dir ? $this->Dir : 'ASC'; // Set fields $metaData['metaData']['fields'] = array(); array_push($metaData['metaData']['fields'], 'LabelId'); array_push($metaData['metaData']['fields'], 'LabelName'); array_push($metaData['metaData']['fields'], 'LabelDefault'); // Add fields for selected languages if (is_array($this->languages)) { foreach ($this->languages as $language) { if ($language['LanguageSelected']) { array_push($metaData['metaData']['fields'], 'TranslationId_' . $language['LanguageKey']); array_push($metaData['metaData']['fields'], 'TranslationValue_' . $language['LanguageKey']); } } } // Set columns $metaData['columns'] = array(array('header' => 'LabelId', 'dataIndex' => 'LabelId', 'hidden' => TRUE), array('header' => $this->confObj->getLocallang('translation_listview_GridHeaderLabel'), 'dataIndex' => 'LabelName', 'sortable' => TRUE, 'hidden' => !$this->showColumnLabel), array('header' => $this->confObj->getLocallang('translation_listview_GridHeaderDefault'), 'dataIndex' => 'LabelDefault', 'sortable' => TRUE, 'hidden' => !$this->showColumnDefault)); // Add Columns For Selected Languages if (is_array($this->languages)) { foreach ($this->languages as $language) { if ($language['LanguageSelected']) { // Translation Id $addColumn = array('header' => 'TranslationId_' . $language['LanguageKey'], 'dataIndex' => 'TranslationId_' . $language['LanguageKey'], 'hidden' => TRUE); array_push($metaData['columns'], $addColumn); // Translation Value $addColumn = array('header' => $language['LanguageName'], 'dataIndex' => 'TranslationValue_' . $language['LanguageKey'], 'sortable' => TRUE, 'editor' => array('xtype' => 'textarea', 'multiline' => TRUE, 'grow' => TRUE, 'growMin' => 30, 'growMax' => 200), 'renderer' => 'CellPreRenderer'); array_push($metaData['columns'], $addColumn); } } } // Add MetaData $this->labels = $metaData; // Add Data Array $this->labels['LabelRows'] = array(); }
/** * @param $id * @return string */ private function getColumnLabel($id) { $labelName = 'translation_columnselection_' . $id; $label = $this->confObj->getLocallang($labelName); return $label; }