/** * @todo need create typical interface */ public function import($filePath) { $content = file_get_contents($filePath); $xml = new Varien_Simplexml_Element($content); $template = $xml->asArray(); $model = $this->getCollection()->addFieldToFilter('name', $template['name'])->getFirstItem(); $model->addData($template)->save(); return $model; }
public function import($path) { $content = file_get_contents($path); $xml = new Varien_Simplexml_Element($content); $design = $xml->asArray(); if (isset($design['styles64'])) { $design['styles'] = base64_decode($design['styles64']); } if (isset($design['template64'])) { $design['template'] = base64_decode($design['template64']); } $model = $this->getCollection()->addFieldToFilter('title', $design['title'])->getFirstItem(); $model->addData($design)->save(); return $model; }
/** * Covers Magento bug in 1.3.2.4 * * @param Varien_Simplexml_Element $element * @return array */ protected function _varienSimpleXMLElementAsArray($element) { if (Mage::helper('awfeatured')->checkVersion('1.4')) { return $element->asArray(); } $result = array(); foreach ($element as $key => $value) { if (get_class($value) == 'Varien_Simplexml_Element' && count($value) > 0) { $result[$key] = $this->_varienSimpleXMLElementAsArray($value); } else { $result[$key] = (string) $value; } } return $result; }
/** * Get list availabel apps * * @return array */ public function getAvailableApps() { $apps = array(); try { $appXML = new Varien_Simplexml_Element($this->getProductFeed()); $apps = $appXML->asArray(); /* remove CDATA, group by category */ if (count($apps)) { foreach ($apps as $key => $app) { foreach ($app as $attribute => $value) { $apps[$key][$attribute] = str_replace('<![CDATA[', '', str_replace(']]>', '', $value)); } } } } catch (Exception $e) { $this->getProductFeed(true); } return $apps; }
/** * Convert attributes xml to array * * @param string $xmlString * @return array */ public function processXml($xmlString = '') { if ($xmlString) { $xmlObj = new Varien_Simplexml_Element($xmlString); $attributes = $xmlObj->asArray(); if (isset($attributes[self::XML_PROTOTYPE_NODE])) { return $attributes[self::XML_PROTOTYPE_NODE]; } } return array(); }
public function getSagePayUrlsAsArray() { //$cache = Mage::getSingleton('core/cache')->load('sagepayurls'); $cache = Mage::app()->loadCache('sagepayurls'); if (false === $cache) { $file = Mage::getModuleDir('etc', 'Ebizmarts_SagePaySuite') . DS . 'sagepayurls.xml'; $element = new Varien_Simplexml_Element(file_get_contents($file)); $data = $element->asArray(); $data['sagepayserver_moto'] = $data['sagepayserver']; $data['sagepaydirectpro_moto'] = $data['sagepaydirectpro']; //Mage::getSingleton('core/cache')->save(serialize($data), 'sagepayurls'); Mage::app()->saveCache(serialize($data), 'sagepayurls'); return $data; } return unserialize($cache); }
public function import($path) { $content = file_get_contents($path); $xml = new Varien_Simplexml_Element($content); $template = $xml->asArray(); $template['areas_content'] = base64_decode($template['areas_content64']); $model = $this->getCollection()->addFieldToFilter('title', $template['title'])->getFirstItem(); $model->addData($template); $design = Mage::getModel('emaildesign/design')->getCollection()->addFieldToFilter('title', $template['design_title'])->getFirstItem(); $model->setDesignId($design->getId())->save(); return $model; }