extractValueFromAttributes($data); if($dynamicDefaultValue = ArrayHelper::get($data, 'settings.dynamic_default_value')) { $parseValue = $this->parseEditorSmartCode($dynamicDefaultValue, $form); if($parseValue) { $defaultValues = (array) $parseValue; } } $elMarkup = ''; $firstTabIndex = \FluentForm\App\Helpers\Helper::getNextTabIndex(); if(!$formattedOptions = ArrayHelper::get($data, 'settings.advanced_options')) { $options = ArrayHelper::get($data, 'options', []); $formattedOptions = []; foreach($options as $value => $label) { $formattedOptions[] = [ 'label' => $label, 'value' => $value, 'calc_value' => '', 'image' => '' ]; } } $hasImageOption = ArrayHelper::get($data, 'settings.enable_image_input'); if($hasImageOption) { $data['settings']['container_class'] .= ''; $elMarkup .= '
'; } $data['settings']['container_class'] .= ' '.ArrayHelper::get($data, 'settings.layout_class'); foreach ($formattedOptions as $option) { $displayType = isset($data['settings']['display_type']) ? ' ff-el-form-check-' . $data['settings']['display_type'] : ''; $parentClass = "ff-el-form-check{$displayType}"; if (in_array($option['value'], $defaultValues)) { $data['attributes']['checked'] = true; $parentClass .= ' ff_item_selected'; } else { $data['attributes']['checked'] = false; } if($firstTabIndex) { $data['attributes']['tabindex'] = $firstTabIndex; $firstTabIndex = '-1'; } $data['attributes']['value'] = $option['value']; $data['attributes']['data-calc_value'] = ArrayHelper::get($option,'calc_value'); $atts = $this->buildAttributes($data['attributes']); $id = $this->getUniqueid(str_replace(['[', ']'], ['', ''], $data['attributes']['name'])); if($hasImageOption) { $parentClass .= ' ff-el-image-holder'; } $elMarkup .= "
"; // Here we can push the visual items if($hasImageOption) { $elMarkup .= ""; } $elMarkup .= ""; $elMarkup .= "
"; } if($hasImageOption) { $elMarkup .= '
'; } $html = $this->buildElementMarkup($elMarkup, $data, $form); echo apply_filters('fluenform_rendering_field_html_'.$elementName, $html, $data, $form); } }