/** * fetch import definition data * * @return array */ protected function _getImportDefinitionRegistryData() { $definitionConverter = new Tinebase_Convert_ImportExportDefinition_Json(); $importDefinitions = $this->_getImportDefinitions(); $defaultDefinition = $this->_getDefaultImportDefinition($importDefinitions); try { $defaultDefinitionArray = $definitionConverter->fromTine20Model($defaultDefinition); } catch (Exception $e) { Tinebase_Exception::log($e); $defaultDefinitionArray = array(); } try { $definitionsArray = $definitionConverter->fromTine20RecordSet($importDefinitions); } catch (Exception $e) { Tinebase_Exception::log($e); $definitionsArray = array(); } $definitionData = array('defaultImportDefinition' => $defaultDefinitionArray, 'importDefinitions' => array('results' => $definitionsArray, 'totalcount' => count($definitionsArray))); return $definitionData; }
/** * get addressbook import definitions * * @return array * * @todo generalize this */ protected function _getImportDefinitions() { $filter = new Tinebase_Model_ImportExportDefinitionFilter(array(array('field' => 'application_id', 'operator' => 'equals', 'value' => Tinebase_Application::getInstance()->getApplicationByName('Calendar')->getId()), array('field' => 'type', 'operator' => 'equals', 'value' => 'import'))); $definitionConverter = new Tinebase_Convert_ImportExportDefinition_Json(); try { $importDefinitions = Tinebase_ImportExportDefinition::getInstance()->search($filter); $defaultDefinition = $this->_getDefaultImportDefinition($importDefinitions); $result = array('results' => $definitionConverter->fromTine20RecordSet($importDefinitions), 'totalcount' => count($importDefinitions), 'default' => $defaultDefinition ? $definitionConverter->fromTine20Model($defaultDefinition) : array()); } catch (Exception $e) { Tinebase_Exception::log($e); $result = array(array('results' => array(), 'totalcount' => 0, 'default' => array())); } return $result; }
/** * Returns registry data of addressbook. * @see Tinebase_Application_Json_Abstract * * @return mixed array 'variable name' => 'data' */ public function getRegistryData() { $definitionConverter = new Tinebase_Convert_ImportExportDefinition_Json(); $importDefinitions = $this->_getImportDefinitions(); $defaultDefinition = $this->_getDefaultImportDefinition($importDefinitions); $registryData = array('defaultAddressbook' => $this->getDefaultAddressbook(), 'defaultImportDefinition' => $definitionConverter->fromTine20Model($defaultDefinition), 'importDefinitions' => array('results' => $definitionConverter->fromTine20RecordSet($importDefinitions), 'totalcount' => count($importDefinitions))); return $registryData; }
/** * Returns registry data of the inventory. * @see Tinebase_Application_Json_Abstract * * @return mixed array 'variable name' => 'data' */ public function getRegistryData() { $definitionConverter = new Tinebase_Convert_ImportExportDefinition_Json(); $importDefinitions = $this->_getImportDefinitions(); $defaultDefinition = $this->_getDefaultImportDefinition($importDefinitions); $defaultContainerArray = Tinebase_Container::getInstance()->getDefaultContainer('Inventory_Model_InventoryItem', NULL, 'defaultInventoryItemContainer')->toArray(); $defaultContainerArray['account_grants'] = Tinebase_Container::getInstance()->getGrantsOfAccount(Tinebase_Core::getUser(), $defaultContainerArray['id'])->toArray(); $registryData = array('defaultInventoryItemContainer' => $defaultContainerArray, 'defaultImportDefinition' => $definitionConverter->fromTine20Model($defaultDefinition), 'importDefinitions' => array('results' => $definitionConverter->fromTine20RecordSet($importDefinitions), 'totalcount' => count($importDefinitions))); return $registryData; }