Ejemplo n.º 1
0
 /**
  * Get Layout update out of collection of changes
  *
  * @param Mage_DesignEditor_Model_Change_Collection $collection
  * @param string|null $handle
  * @return string
  */
 public function render(Mage_DesignEditor_Model_Change_Collection $collection, $handle = null)
 {
     $element = new Varien_Simplexml_Element($this->_getInitialXml());
     foreach ($collection as $item) {
         if ($item instanceof Mage_DesignEditor_Model_Change_LayoutAbstract) {
             $this->_render($element, $item);
         }
     }
     if ($handle && $collection->count() > 0) {
         $layoutUpdate = '';
         $element = $element->{$handle};
         /** @var $node Varien_Simplexml_Element */
         foreach ($element->children() as $node) {
             $layoutUpdate .= $node->asNiceXml();
         }
     } else {
         $layoutUpdate = $element->asNiceXml();
     }
     return $layoutUpdate;
 }