/** * Render layout update for single layout change * * @param DOMDocument $dom * @param Mage_DesignEditor_Model_Change_LayoutAbstract $item * @return DOMElement */ protected function _render(DOMDocument $dom, $item) { $handle = $this->_getHandleNode($dom, $item->getData('handle')); $directive = $dom->createElement($item->getLayoutDirective()); $handle->appendChild($directive); foreach ($item->getLayoutUpdateData() as $attribute => $value) { $directive->setAttribute($attribute, $value); } return $handle; }
/** * Render layout update for single layout change * * @param SimpleXMLElement $element * @param Mage_DesignEditor_Model_Change_LayoutAbstract $item * @return DOMElement */ protected function _render(SimpleXMLElement $element, $item) { $handleName = $item->getData('handle') ?: self::DEFAULT_HANDLE; $handle = $this->_getHandleNode($element, $handleName); $directive = $handle->addChild($item->getLayoutDirective()); foreach ($item->getLayoutUpdateData() as $attribute => $value) { $directive->addAttribute($attribute, $value); } return $handle; }
/** * Get required data fields for move layout change * * @return array */ protected function _getRequiredFields() { $requiredFields = parent::_getRequiredFields(); $requiredFields[] = 'destination_container'; $requiredFields[] = 'destination_order'; $requiredFields[] = 'origin_container'; $requiredFields[] = 'origin_order'; return $requiredFields; }
/** * Get attributes from XML layout update * * @param Varien_Simplexml_Element $layoutUpdate * @return array */ protected function _getAttributes(Varien_Simplexml_Element $layoutUpdate) { $attributes = array(); if ($layoutUpdate->getAttribute('name') !== null) { $attributes['element_name'] = $layoutUpdate->getAttribute('name'); } $attributes = array_merge($attributes, parent::_getAttributes($layoutUpdate)); return $attributes; }
/** * Get attributes from XML layout update * * @param Varien_Simplexml_Element $layoutUpdate * @return array */ protected function _getAttributes(Varien_Simplexml_Element $layoutUpdate) { $attributes = array(); if ($layoutUpdate->getAttribute('element') !== null) { $attributes['element_name'] = $layoutUpdate->getAttribute('element'); } if ($layoutUpdate->getAttribute('after') !== null) { $attributes['origin_order'] = $attributes['destination_order'] = $layoutUpdate->getAttribute('after'); } if ($layoutUpdate->getAttribute('destination') !== null) { $attributes['origin_container'] = $attributes['destination_container'] = $layoutUpdate->getAttribute('destination'); } $attributes = array_merge($attributes, parent::_getAttributes($layoutUpdate)); return $attributes; }