/** * Get title and required attributes for a field * * @param Mage_XmlConnect_Model_Simplexml_Form_Abstract $fieldsetXmlObj * @param Enterprise_Customer_Block_Form_Renderer_Abstract $blockObject * @return array */ public function addTitleAndRequiredAttr(Mage_XmlConnect_Model_Simplexml_Form_Abstract $fieldsetXmlObj, Enterprise_Customer_Block_Form_Renderer_Abstract $blockObject) { $attributes = array(); if ($blockObject->isRequired()) { $attributes += $fieldsetXmlObj->checkAttribute('required', (int) $blockObject->isRequired()); } if ($blockObject->getAdditionalDescription()) { $attributes += $fieldsetXmlObj->checkAttribute('title', $blockObject->getAdditionalDescription()); } return $attributes; }
/** * Add element to collection * * @param Mage_XmlConnect_Model_Simplexml_Form_Abstract $element * @param bool|string $after * @return Mage_XmlConnect_Model_Simplexml_Form_Abstract */ public function add(Mage_XmlConnect_Model_Simplexml_Form_Abstract $element, $after = false) { // Set the Form for the node if ($this->_container->getForm() instanceof Mage_XmlConnect_Model_Simplexml_Form) { $element->setContainer($this->_container); $element->setForm($this->_container->getForm()); } if ($after === false) { $this->_elements[] = $element; } elseif ($after === '^') { array_unshift($this->_elements, $element); } elseif (is_string($after)) { $newOrderElements = array(); foreach ($this->_elements as $index => $currElement) { if ($currElement->getId() == $after) { $newOrderElements[] = $currElement; $newOrderElements[] = $element; $this->_elements = array_merge($newOrderElements, array_slice($this->_elements, ++$index)); return $element; } $newOrderElements[] = $currElement; } $this->_elements[] = $element; } return $element; }
/** * Add form element * * @param Mage_XmlConnect_Model_Simplexml_Form_Element_Abstract $element * @param bool $after * @return Mage_XmlConnect_Model_Simplexml_Form */ public function addElement(Mage_XmlConnect_Model_Simplexml_Form_Element_Abstract $element, $after = false) { $this->checkElementId($element->getId()); parent::addElement($element, $after); $this->addElementToCollection($element); return $this; }
/** * Remove field from a form * * @param $elementId * @return Mage_XmlConnect_Model_Simplexml_Form_Abstract */ public function removeField($elementId) { $this->getForm()->removeField($elementId); return parent::removeField($elementId); }
/** * Check weather is element a fieldset * * @param Mage_XmlConnect_Model_Simplexml_Form_Abstract $element * @param bool $equal * @return bool */ protected function _checkFieldset($element, $equal = true) { if ($equal) { return $element->getType() == 'fieldset'; } else { return $element->getType() != 'fieldset'; } }