/** * Defines files to load * * @return $this */ protected function _beforeToHtml() { parent::_beforeToHtml(); $helper = Mage::helper('oro_asset'); if ($helper->isEnabled() && $helper->getStyle() != Oro_Asset_Helper_Data::STYLE_DEFAULT) { $config = Mage::getSingleton('oro_asset/merge'); $cssFiles = $config->getCssFiles(); $jsFiles = $config->getJsFiles(); $fileKey = $helper->getStyle() == Oro_Asset_Helper_Data::STYLE_MERGE_MIN ? 'file_min' : 'file'; $allItems = array(); foreach ($cssFiles as $item) { $removed = 0; foreach ($item['remove'] as $entity) { list($type, $file) = $entity; $removed += $this->isItemExists($type, $file) ? 1 : 0; $this->removeItem($type, $file); } if ($removed == 0 && $item['behavior'] == 'replace') { continue; } $allItems['skin_css/' . $item[$fileKey]] = array('type' => 'skin_css', 'name' => $item[$fileKey], 'params' => !empty($item['params']) ? $item['params'] : 'media="all"', 'if' => $item['if'], 'cond' => null); } foreach ($jsFiles as $item) { $removed = 0; foreach ($item['remove'] as $entity) { list($type, $file) = $entity; $removed += $this->isItemExists($type, $file) ? 1 : 0; $this->removeItem($type, $file); } if ($removed == 0 && $item['behavior'] == 'replace') { continue; } $allItems['skin_js/' . $item[$fileKey]] = array('type' => 'skin_js', 'name' => $item[$fileKey], 'params' => $item['params'], 'if' => $item['if'], 'cond' => null); } // reset sorting $this->_data['items'] = $this->_data['items'] + $allItems; } return $this; }