public function __construct($options = array()) { $this->_options = $options; /** * @see Conjoon_Util_Array */ require_once 'Conjoon/Util/Array.php'; Conjoon_Util_Array::applyIf($this->_options, array('addSlashes' => true, 'useQuoting' => true)); $this->_addSlashes = $this->_options['addSlashes']; $this->_useQuoting = $this->_options['useQuoting']; }
/** * Adds a feed account to the data storage for the specified * user in $userId. * * Fields required in $data: * - deleteInterval * - name * - requestTimeout * - updateInterval * - uri * * @param Array $data * @param intteger $userId * * @throws Exception */ public function addAccountAndImport(array $data, $userId) { $userId = (int) $userId; if ($userId <= 0) { throw new InvalidArgumentException("Invalid argument supplied, userId was \"{$userId}\""); } /** * @see Conjoon_Modules_Groupware_Feeds_ImportHelper */ require_once 'Conjoon/Modules/Groupware/Feeds/ImportHelper.php'; $data['lastUpdated'] = time(); // get the feeds metadata $metaData = Conjoon_Modules_Groupware_Feeds_ImportHelper::getFeedMetaData($data['uri'], $data['requestTimeout'], true, true); /** * @see Conjoon_Util_Array */ require_once 'Conjoon/Util/Array.php'; Conjoon_Util_Array::applyIf($data, $metaData); $addedAcount = $this->addAccount($data, $userId, true); // something failed. Return. if ($addedAcount == null) { return array(); } // get the feed items now and insert them! $items = $this->_getItemFacade()->importAndAddFeedItems($addedAcount->id, $userId, true, false); return array('account' => $addedAcount, 'items' => $items); }