Inheritance: extends Gpf_Object
Ejemplo n.º 1
0
 private function getHeaders(Gpf_Data_RecordHeader $header)
 {
     $headers = $header->toArray();
     $output = array();
     foreach ($headers as $item) {
         if ($item != 'code' && $item != 'depth') {
             $output[] = $item;
         }
     }
     return $output;
 }
 /**
  * Returns row data for grid
  *
  * @service language read
  *
  * @param $filters
  * @param $limit
  * @param $offset
  * @param $sort_col
  * @param $sort_asc
  * @param Gpf_Data_RecordSet $columns
  * @return Gpf_Rpc_Serializable
  */
 public function getRows(Gpf_Rpc_Params $params)
 {
     $this->_params = $params;
     $this->_sortColumn = $params->get('sort_col');
     $this->_sortAsc = $params->get('sort_asc');
     $this->_requiredColumns = new Gpf_Data_IndexedRecordSet('id');
     $this->_requiredColumns->loadFromArray($params->get('columns'));
     $response = new Gpf_Rpc_Object();
     $recordHeader = new Gpf_Data_RecordHeader();
     $result = new Gpf_Data_RecordSet();
     foreach ($this->getAllViewColumns() as $column) {
         $result->addColumn($column->get('id'));
         $recordHeader->add($column->get('id'));
     }
     $result->addColumn('id');
     $recordHeader->add('id');
     $languagesIterator = new Gpf_Io_DirectoryIterator(Gpf_Paths::getInstance()->getLanguageInstallDirectory(), 'csv', false);
     $languagesCount = 0;
     foreach ($languagesIterator as $fullName => $file) {
         if (preg_match('/^' . Gpf_Application::getInstance()->getCode() . '_(.+)\\.csv$/', $file, $matches)) {
             $file = new Gpf_Io_Csv_Reader($fullName, ';', '"', array('source', 'translation', 'type', 'module', 'status', 'customer'));
             $language = new Gpf_Lang_CsvLanguage();
             $language->loadFromCsvFile($file, true);
             $languagesCount++;
             $record = new Gpf_Data_Record($recordHeader);
             $record->set('id', $fullName);
             $record->set(Gpf_Db_Table_Languages::CODE, $language->getMetaValue(Gpf_Lang_CsvLanguage::LANG_CODE));
             $record->set(Gpf_Db_Table_Languages::NAME, $language->getMetaValue(Gpf_Lang_CsvLanguage::LANG_NAME));
             $record->set(Gpf_Db_Table_Languages::ENGLISH_NAME, $language->getMetaValue(Gpf_Lang_CsvLanguage::LANG_ENG_NAME));
             $record->set(Gpf_Db_Table_Languages::TRANSLATED_PERCENTAGE, $language->getMetaValue(Gpf_Lang_CsvLanguage::LANG_TRANSLATION_PERCENTAGE));
             $record->set(Gpf_Db_Table_Languages::AUTHOR, $language->getMetaValue(Gpf_Lang_CsvLanguage::LANG_AUTHOR));
             $record->set(Gpf_Db_Table_Languages::VERSION, $language->getMetaValue(Gpf_Lang_CsvLanguage::LANG_VERSION));
             $result->addRecord($record);
         }
     }
     $response->rows = $result->toObject();
     $response->count = $languagesCount;
     return $response;
 }
Ejemplo n.º 3
0
    public function __construct(Gpf_Api_Session $session) {
        $this->session = $session;
        $this->fields = new Gpf_Data_IndexedRecordSet(self::FIELD_NAME);

        $header = new Gpf_Data_RecordHeader();
        $header->add(self::FIELD_NAME);
        $header->add(self::FIELD_VALUE);
        $header->add(self::FIELD_VALUES);
        $header->add(self::FIELD_ERROR);

        $this->fields->setHeader($header);
    }
Ejemplo n.º 4
0
 public function __construct(Gpf_Rpc_Params $params = null)
 {
     $this->fields = new Gpf_Data_IndexedRecordSet(self::FIELD_NAME);
     $header = new Gpf_Data_RecordHeader();
     $header->add(self::FIELD_NAME);
     $header->add(self::FIELD_VALUE);
     $header->add(self::FIELD_VALUES);
     $header->add(self::FIELD_ERROR);
     $this->fields->setHeader($header);
     $this->validator = new Gpf_Rpc_Form_Validator_FormValidatorCollection($this);
     if ($params) {
         $this->loadFieldsFromArray($params->get("fields"));
     }
 }
Ejemplo n.º 5
0
 /**
  * Read header of csv file.
  * File pointer has to be rewinded before calling this method !
  */
 private function readHeader()
 {
     if ($this->defaultHeaders === false) {
         // No default header defined, use first row from csv as header
         $this->headers = new Gpf_Data_RecordHeader($this->getNextRow());
         if ($this->headers->getSize() == 0) {
             throw new Gpf_Exception($this->_("Failed to read headers of CSF file %s", $this->getFileName()));
         }
     } else {
         //compare default header with first row from csv file
         $row = $this->getNextRow();
         foreach ($this->defaultHeaders as $id => $headerName) {
             if ($headerName != $row[$id]) {
                 //This is value, headers are missing in this csv file, as headers will be used default headers
                 $this->rewind(false);
                 return;
             }
         }
         //first row was header (same as default header), skip it
     }
     $this->getNextRow();
 }
 /**
  * @param array<Gpf_SqlBuilder_Operator> $operators
  * @return Gpf_Data_RecordSet
  */
 private function createOperatorsRecordSet($operators) {
     $recordSet = new Gpf_Data_RecordSet();
     $header = new Gpf_Data_RecordHeader();
     $header->add(self::OPERATOR_CODE);
     $header->add(self::OPERATOR_NAME);
     $recordSet->setHeader($header);
     foreach ($operators as $operator) {
         $record = $recordSet->createRecord();
         $record->set(self::OPERATOR_CODE, $operator->getCode());
         $record->set(self::OPERATOR_NAME, $operator->getName());
         $recordSet->addRecord($record);
     }
     return $recordSet;
 }
Ejemplo n.º 7
0
 public function valid()
 {
     return $this->position < $this->header->getSize();
 }
Ejemplo n.º 8
0
 /**
  * Creates shalow copy of recordset containing only headers
  *
  * @return Gpf_Data_RecordSet
  */
 public function toShalowRecordSet()
 {
     $copy = new Gpf_Data_RecordSet();
     $copy->setHeader($this->_header->toArray());
     return $copy;
 }