コード例 #1
0
 /**
  * Outputs message depending on flag
  *
  * @param FormInterface $form
  * @param array         $staticElements
  * @param null          $formClass
  *
  * @return string
  */
 public function __invoke(FormInterface $form, array $staticElements = [], $formClass = null)
 {
     $submitElements = [];
     /** @var Form $form */
     $form->setAttribute('role', 'form');
     if ($formClass == 'form-inline') {
         $form->setAttribute('class', $formClass . ' pull-right');
     } elseif ($formClass) {
         $form->setAttribute('class', $formClass);
     } else {
         $formClass = $form->getAttribute('class');
     }
     $form->prepare();
     $output = $this->getView()->form()->openTag($form);
     foreach ($staticElements as $element) {
         $viewModel = new ViewModel();
         $viewModel->setVariable('label', $element['label']);
         $viewModel->setVariable('value', $element['value']);
         $viewModel->setTemplate('travello-view-helper/widget/bootstrap-form-static');
         $output .= $this->getView()->render($viewModel);
     }
     list($output, $submitElements) = $this->renderElements($form, $formClass, $output, $submitElements);
     if ($formClass == 'form-inline') {
         $template = 'bootstrap-form-submit-inline';
     } else {
         $template = 'bootstrap-form-submit';
     }
     $viewModel = new ViewModel();
     $viewModel->setVariable('submitElements', $submitElements);
     $viewModel->setTemplate('travello-view-helper/widget/' . $template);
     $output .= $this->getView()->render($viewModel);
     $output .= $this->getView()->form()->closeTag();
     return $output;
 }
コード例 #2
0
ファイル: Form.php プロジェクト: hanif/stokq
 /**
  * @param FormInterface $form
  * @param RendererInterface $renderer
  */
 public function __construct(FormInterface $form, RendererInterface $renderer)
 {
     $this->form = $form;
     if ($form instanceof ZendForm) {
         $form->prepare();
     }
     $this->renderer = $renderer;
 }
コード例 #3
0
 /**
  * Outputs message depending on flag
  *
  * @return string
  */
 public function __invoke(FormInterface $form, $class = 'form-horizontal')
 {
     $submitElements = [];
     $form->setAttribute('class', $class . ' well');
     $form->setAttribute('role', 'form');
     $form->prepare();
     $output = $this->getView()->form()->openTag($form);
     foreach ($form as $element) {
         if ($element instanceof Submit || $element instanceof Button) {
             $submitElements[] = $element;
         } elseif ($element instanceof Csrf || $element instanceof Hidden) {
             $output .= $this->getView()->formElement($element);
         } elseif ($element instanceof Collection) {
             $output .= $this->getView()->formCollection($element);
         } elseif ($element instanceof Checkbox) {
             // setup view model
             $viewModel = new ViewModel();
             $viewModel->setVariable('element', $element);
             $viewModel->setTemplate('zf2rapid-library/widget/bootstrap-form-checkbox');
             // render form element
             $output .= $this->getView()->render($viewModel);
         } else {
             $element->setAttributes(['class' => 'form-control']);
             $element->setLabelAttributes(['class' => 'col-sm-2 control-label']);
             // setup view model
             $viewModel = new ViewModel();
             $viewModel->setVariable('element', $element);
             $viewModel->setTemplate('zf2rapid-library/widget/bootstrap-form-group');
             // render form element
             $output .= $this->getView()->render($viewModel);
         }
     }
     // setup view model
     $viewModel = new ViewModel();
     $viewModel->setVariable('submitElements', $submitElements);
     $viewModel->setTemplate('zf2rapid-library/widget/bootstrap-form-submit');
     // render submit elements
     $output .= $this->getView()->render($viewModel);
     $output .= $this->getView()->form()->closeTag();
     return $output;
 }