public function compile(JsUtils $js = NULL, &$view = NULL) { if (isset($js)) { $this->formElementsPrefix = $js->config()->getVar("formElementsPrefix"); foreach ($this->futureElements as $futureElement) { $futureElementValue = $this->getPrefix($futureElement); $futureElementValues = explode("_", $futureElementValue); switch ($futureElementValues[0]) { case "input": $control = new HtmlInput($futureElement); $control->setClass("form-control"); $control->setLabel($this->getPart($futureElement)); break; case "checkbox": $control = new HtmlInputCheckbox($futureElement); $control->setLabel($this->getPart($futureElement), false); break; case "radio": $name = $this->getPart($futureElement); $label = $this->getPart($futureElement, 2); $control = new HtmlInputRadio($futureElement); $control->setProperty("name", strtolower($name)); $control->setLabel($label, false); break; case "select": $control = new HtmlSelect($futureElement); $control->setProperty("size", $futureElementValues[1]); $control->setClass("form-control"); $control->setLabel($this->getPart($futureElement)); break; default: $control = new HtmlInput($futureElement); $control->setClass("form-control"); $control->setLabel($this->getPart($futureElement)); break; } $this->addElement($control); } } foreach ($this->formGroups as $group) { $this->addContent($group); } return parent::compile($js, $view); }
public function run(JsUtils $js) { parent::run($js); if (isset($this->addonLeft)) { $this->addonLeft->run($js); } if (isset($this->addonRight)) { $this->addonRight->run($js); } }