public function __construct(ActiveGrid $grid, $params = array()) { $this->grid = $grid; $this->params = $params; $this->request = $grid->getApplication()->getRequest(); $this->pid = uniqid(); }
public static function getSchemaColumns($schemaName, LiveCart $application, $customColumns = array()) { $productSchema = ActiveRecordModel::getSchemaInstance($schemaName); $availableColumns = array(); foreach ($productSchema->getFieldList() as $field) { $type = ActiveGrid::getFieldType($field); if (!$type && 'ID' != $field->getName()) { continue; } $availableColumns[$schemaName . '.' . $field->getName()] = $type; } $availableColumns = array_merge($availableColumns, $customColumns); foreach ($availableColumns as $column => $type) { $availableColumns[$column] = array('name' => $application->translate($column), 'type' => $type); } // specField columns if (self::isEav($schemaName)) { $fields = EavFieldManager::getClassFieldSet($schemaName); foreach ($fields as $field) { $fieldArray = $field->toArray(); if ($field->isDate()) { $type = 'date'; } else { $type = $field->isSimpleNumbers() ? 'numeric' : 'text'; } $availableColumns['eavField.' . $field->getID()] = array('name' => $fieldArray['name_lang'], 'type' => $type); } } return $availableColumns; }