Example #1
0
 /**
  * Render filter form field
  *
  * @param \Engine\Crud\Form\Field $field
  * @return string
  */
 public function renderField(\Engine\Crud\Grid\Filter\Field $field)
 {
     $helpers = $field->getHelpers();
     foreach ($helpers as $i => $helper) {
         $helpers[$i] = Helper::factory($helper, $field);
     }
     $sections = [];
     foreach ($helpers as $helper) {
         call_user_func_array([$helper['helper'], 'init'], [$helper['element']]);
         $sections[] = call_user_func_array([$helper['helper'], '_'], [$helper['element']]);
     }
     $separator = $this->getSeparator();
     $elementContent = implode($separator, $sections);
     foreach (array_reverse($helpers) as $helper) {
         $elementContent .= $sections[] = call_user_func([$helper['helper'], 'endTag']);
     }
     return $elementContent;
 }