hasConditions($data) ? 'has-conditions ' : ''; @$data['attributes']['class'] .= ' ' . $this->wrapperClass . ' ' . $hasConditions.' '.ArrayHelper::get($data, 'settings.container_class'); $data['attributes']['class'] = trim($data['attributes']['class']); $data['attributes']['data-max_repeat'] = ArrayHelper::get($data, 'settings.max_repeat_field'); if($labelPlacement = ArrayHelper::get($data, 'settings.label_placement')) { $data['attributes']['class'] .= ' ff-el-form-'.$labelPlacement; } $atts = $this->buildAttributes( \FluentForm\Framework\Helpers\ArrayHelper::except($data['attributes'], 'name') ); ob_start(); echo "
"; $first = $data['fields'][0]['settings']; if (count($data['fields']) == 1 && $first['validation_rules']['required']['value']) { echo "
"; } else { echo "
"; } echo ""; echo "
"; echo "
"; foreach ($data['fields'] as $key => $item) { if (count($data['fields']) == 1) { $item['settings']['label'] = ''; } $item['attributes']['name'] = $rootName.'['.$key.'][]'; $item = $this->app->applyFilters('fluentform/before_render_item', $item, $form); echo "
"; $this->app->doAction('fluentform/render_item_' . $item['element'], $item, $form); echo "
"; } echo "
"; echo $this->getRepeater($data['element']); echo "
"; echo "
"; $html = ob_get_clean(); $html = apply_filters_deprecated( 'fluentform_rendering_field_html_' . $elementName, [ $html, $data, $form ], FLUENTFORM_FRAMEWORK_UPGRADE, 'fluentform/rendering_field_html_' . $elementName, 'Use fluentform/rendering_field_html_' . $elementName . ' instead of fluentform_rendering_field_html_' . $elementName ); echo apply_filters('fluentform/rendering_field_html_'.$elementName, $html, $data, $form); \FluentForm\App\Helpers\Helper::getNextTabIndex(50); } /** * Compile repeater buttons * @param string $el [element name] * @return string */ protected function getRepeater($el) { if ($el == 'input_repeat') { $div = '
'; $div .= '
'; $div .= ''; $div .= ''; $div .= '
'; $div .= '
'; return $div; } return ''; } }