/** * Get the record of the totalized values * * @return array */ public function getTotals() { if (empty($this->totalizeColumns)) { return false; } $record = array(); $columns = $this->store->getColumnModel()->getColumns(); foreach ($columns as $column) { $record[$column->getDataIndex()] = isset($this->totals[$column->getDataIndex()]) ? \GO\Base\Util\Number::localize($this->totals[$column->getDataIndex()]) : ''; } return $record; }
/** * Set the title for the store. This will be outputted in the JSON response. * * Should be called in \GO\Base\Controller\AbstractModelController::beforeStoreStatement * * @param \GO\Base\Data\AbstractStore $store * @param string $titleAttribute */ public function setStoreTitle($titleAttribute = 'name') { // $titleArray = array(); // $models = $this->_getSelectedModels(); // foreach ($models as $model) // $titleArray[] = $model->$titleAttribute; // // if(count($titleArray)) // $this->_store->setTitle(implode(', ',$titleArray)); $count = count($this->selectedIds); if ($count == 1) { $model = \GO::getModel($this->_modelName)->findByPk($this->selectedIds[0]); if (isset($model->name)) { $this->_store->setTitle($model->name); } } else { $this->_store->setTitle($count . ' ' . \GO::t('multiselectSelected')); } }
/** * * @param \GO\Base\Data\AbstractStore $store * @param type $params */ protected function renderExport(\GO\Base\Data\AbstractStore $store, $params) { //define('EXPORTING', true); //used by custom fields to format diffently if (\GO::modules()->customfields) { \GO\Customfields\Model\AbstractCustomFieldsRecord::$formatForExport = true; } $checkboxSettings = array('export_include_headers' => !empty($params['includeHeaders']), 'export_human_headers' => empty($params['humanHeaders']), 'export_include_hidden' => !empty($params['includeHidden'])); $settings = \GO\Base\Export\Settings::load(); $settings->saveFromArray($checkboxSettings); if (!empty($params['exportOrientation']) && $params['exportOrientation'] == "H") { $orientation = 'L'; } else { $orientation = 'P'; } // Set the orientation to Portrait if (!empty($params['columns'])) { $columnModel = $store->getColumnModel(); $includeColumns = explode(',', $params['columns']); foreach ($includeColumns as $incColumn) { if (!$columnModel->getColumn($incColumn)) { $columnModel->addColumn(new \GO\Base\Data\Column($incColumn, $incColumn)); } } $columnModel->sort($includeColumns); foreach ($columnModel->getColumns() as $c) { if (!in_array($c->getDataIndex(), $includeColumns)) { $columnModel->removeColumn($c->getDataIndex()); } } } if (!empty($params['type'])) { //temporary fix for compatibility with AbsractModelController $params['type'] = str_replace('GO\\Base\\Export', 'GO\\Base\\Storeexport', $params['type']); $export = new $params['type']($store, $settings->export_include_headers, $settings->export_human_headers, $params['documentTitle'], $orientation); } else { $export = new \GO\Base\Storeexport\ExportCSV($store, $settings->export_include_headers, $settings->export_human_headers, $params['documentTitle'], $orientation); } // The default Export is the CSV outputter. if (isset($params['extraLines'])) { $export->addLines($params['extraLines']); } $export->output(); }