File "OxyFluentFormWidget.php"
Full Path: /home/romayxjt/public_html/wp-content/plugins/fluentform/app/Modules/Widgets/OxyFluentFormWidget.php
File size: 35.27 KB
MIME-type: text/x-php
Charset: utf-8
<?php
namespace FluentForm\App\Modules\Widgets;
use FluentForm\App\Helpers\Helper;
class OxyFluentFormWidget extends OxygenEl
{
public $css_added = false;
public function name()
{
return __('Fluent Form', 'fluentform');
}
public function slug()
{
return 'form_widget';
}
public function accordion_button_place()
{
return 'form';
}
public function icon()
{
return '';
}
public function controls()
{
$templates_control = $this->addOptionControl(
[
'type' => 'dropdown',
'name' => __('Select a Form', 'fluentform'),
'slug' => 'ff_form',
'value' => Helper::getForms(),
'default' => 'no',
'css' => false,
]
);
$templates_control->rebuildElementOnChange();
$this->formContainerStyleControls();
$this->formInputLabelsStyle();
$this->formInputsStyle();
$this->checkboxAndRadioStyle();
$this->gdprAndTermsConditionStyle();
$this->sectionBreakStyle();
$this->checkboxGridStyle();
$this->fileUploadStyle();
$this->progressBarStyle();
$this->submitBtnStyle();
$this->stepButtonStyle();
$this->successMessageStyle();
$this->errorMessageStyle();
}
public function formContainerStyleControls()
{
$section_container = $this->addControlSection(
'fluentform_container',
__('Form Container', 'fluentform'),
'assets/icon.png',
$this
);
$selector = '.fluentform';
$section_container->addStyleControls(
[
[
'name' => __('Background Color', 'fluentform'),
'selector' => $selector,
'property' => 'background-color',
],
[
'name' => __('Max Width', 'fluentform'),
'selector' => $selector,
'property' => 'width',
],
]
);
$section_container->addPreset(
'padding',
'fluentform_container_padding',
__('Padding', 'fluentform'),
$selector
)->whiteList();
$section_container->addPreset(
'margin',
'fluentform_container_margin',
__('Margin', 'fluentform'),
$selector
)->whiteList();
$section_container->addPreset(
'border',
'fluentform_container_border',
__('Border', 'fluentform'),
$selector
)->whiteList();
$section_container->addPreset(
'border-radius',
'fluentform_container_radius',
__('Border Radius', 'fluentform'),
$selector
)->whiteList();
$section_container->boxShadowSection(
__('Box Shadow', 'fluentform'),
$selector,
$this
);
}
public function formInputLabelsStyle()
{
$section_label = $this->addControlSection(
'fluentform_label',
__('Labels', 'fluentform'),
'assets/icon.png',
$this
);
$selector = '.fluentform .ff-el-input--label label';
$section_label->typographySection(__('Typography'), $selector, $this);
$section_label->addStyleControls(
[
[
'name' => __('Text Color', 'fluentform'),
'selector' => $selector,
'property' => 'color',
],
]
);
$section_label->addStyleControl(
[
'name' => __('Asterisk Color', 'fluentform'),
'selector' => '.ff-el-input--label.ff-el-is-required.asterisk-right label:after ,.ff-el-input--label.ff-el-is-required.asterisk-left label:before',
'property' => 'color',
]
);
}
public function formInputsStyle()
{
$selector = '.ff-el-form-control';
$section_input = $this->addControlSection(
'fluentform_input',
__('Input & Textara', 'fluentform'),
'assets/icon.png',
$this
);
$section_input->addStyleControls(
[
[
'name' => __('Text Indent', 'fluentform'),
'selector' => $selector,
'property' => 'padding-left',
'control_type' => 'slider-measurebox',
'unit' => 'px',
],
[
'name' => __('Margin Bottom'),
'selector' => '.ff-el-group',
'property' => 'margin-bottom',
],
[
'name' => __('Input Width', 'fluentform'),
'selector' => $selector,
'property' => 'width',
'control_type' => 'slider-measurebox',
'unit' => 'px',
],
[
'name' => __('Input Height', 'fluentform'),
'selector' => $selector,
'property' => 'height',
'control_type' => 'slider-measurebox',
'unit' => 'px',
],
[
'name' => __('Textarea Width', 'fluentform'),
'selector' => '.ff-el-group textarea',
'property' => 'width',
'control_type' => 'slider-measurebox',
'unit' => 'px',
],
[
'name' => __('Textarea Height', 'fluentform'),
'selector' => '.ff-el-group textarea',
'property' => 'height',
'control_type' => 'slider-measurebox',
'unit' => 'px',
],
]
);
$section_input_normal = $section_input->addControlSection(
'fluentform_input_normal_section',
__('Normal', 'fluentform'),
'assets/icon.png',
$this
);
$section_input_normal->addStyleControls(
[
[
'name' => __('Color'),
'selector' => '.ff-el-form-control',
'property' => 'color',
],
[
'name' => __('Background Color'),
'selector' => '.ff-el-form-control',
'property' => 'background-color',
],
[
'name' => __('Placeholder Color'),
'slug' => 'fluentform_input_placeholder',
'selector' => '::placeholder',
'property' => 'color',
],
]
);
$section_input_hover = $section_input->addControlSection(
'fluentform_input_hover_section',
__('Hover', 'fluentform'),
'assets/icon.png',
$this
);
$section_input_hover->addStyleControls(
[
[
'name' => __('Background Color'),
'selector' => '.ff-el-form-control:focus',
'property' => 'background-color',
],
[
'name' => __('Text Color'),
'selector' => '.ff-el-form-control:focus',
'property' => 'color',
],
[
'name' => __('Border Color'),
'selector' => '.ff-el-form-control:focus',
'property' => 'border-color',
'control_type' => 'colorpicker',
],
]
);
$section_input->addPreset(
'padding',
'fluentform_input_spacing',
__('Padding', 'fluentform'),
$selector
)->whiteList();
$section_input->boxShadowSection(
__('Box Shadow', 'fluentform'),
$selector,
$this
);
$section_input->typographySection(
__('Typography'),
$selector,
$this
);
$section_input->addPreset(
'border',
'fluentform_input_border',
__('Border', 'fluentform'),
$selector
)->whiteList();
$section_input->addPreset(
'border-radius',
'fluentform_input_border_radius',
__('Border Radius', 'fluentform'),
$selector
)->whiteList();
}
public function checkboxGridStyle()
{
$section_checkbox_grid = $this->addControlSection(
'fluentform_checkbox_grid',
__('Checkable Grid Field', 'fluentform'),
'assets/icon.png',
$this
);
$section_checkbox_grid_spacing = $section_checkbox_grid->addControlSection(
'fluentform_checkbox_grid_sp',
__('Spacing', 'fluentform'),
'assets/icon.png',
$this
);
$section_checkbox_grid_width = $section_checkbox_grid_spacing->addStyleControl(
[
'selector' => '.fluentform .ff-checkable-grids',
'property' => 'width',
'control_type' => 'slider-measurebox',
]
);
$section_checkbox_grid_width->setRange('0', '100', '1');
$section_checkbox_grid_width->setUnits('%', 'px,%,em');
$section_checkbox_grid_width->setDefaultValue('100');
$section_checkbox_grid_spacing->addPreset(
'padding',
'fluentform_checkbox_grid_padding',
__('Table Head Cell Padding'),
'.fluentform .ff-checkable-grids thead>tr>th'
)->whiteList();
$section_checkbox_grid_spacing->addPreset(
'padding',
'fluentform_checkbox_grid_padding_tb',
__('Table Body Cell Padding'),
'.fluentform .ff-checkable-grids tbody>tr>td'
)->whiteList();
$section_checkbox_grid_color = $section_checkbox_grid->addControlSection(
'fluentform_checkbox_grid_color',
__('Color', 'fluentform'),
'assets/icon.png',
$this
);
$section_checkbox_grid_color->addStyleControls([
[
'name' => __('Table Outer Border Width', 'fluentform'),
'selector' => '.fluentform .ff-checkable-grids',
'property' => 'border-width',
],
[
'name' => __('Table Outer Border Color', 'fluentform'),
'selector' => '.fluentform .ff-checkable-grids',
'property' => 'border-color',
],
[
'name' => __('Table Head Background', 'fluentform'),
'selector' => '.fluentform .ff-checkable-grids thead>tr>th',
'property' => 'background-color',
],
[
'name' => __('Table Body Background', 'fluentform'),
'selector' => '.fluentform .ff-checkable-grids tbody>tr>td',
'property' => 'background-color',
],
[
'name' => __('Table Body Alt Background', 'fluentform'),
'selector' => '.fluentform .ff-checkable-grids tbody>tr:nth-child(2n)>td',
'property' => 'background-color',
],
[
'name' => __('Table Body Alt Text Color', 'fluentform'),
'selector' => '.fluentform .ff-checkable-grids tbody>tr:nth-child(2n)>td',
'property' => 'color',
],
]);
$section_checkbox_grid->typographySection(
__('Heading Typography', 'fluentform'),
'.fluentform .ff-checkable-grids thead>tr>th',
$this
);
$section_checkbox_grid->typographySection(
__('Cell Typography', 'fluentform'),
'.fluentform .ff-checkable-grids tbody>tr>td',
$this
);
}
public function gdprAndTermsConditionStyle()
{
$section_gdpr_terms = $this->addControlSection(
'fluentform_gdpr_terms_section',
__('GDPR, Terms & Condition', 'fluentform'),
'assets/icon.png',
$this
);
$section_gdpr_terms->typographySection(__('Typography'), '.ff-el-tc , .ff_t_c', $this);
$section_gdpr_terms->addStyleControls(
[
[
'name' => __('Text Color', 'fluentform'),
'selector' => '.ff-el-tc , .ff_t_c',
'property' => 'color',
],
[
'name' => __('Link Color', 'fluentform'),
'selector' => '.ff-el-tc a, .ff_t_c a',
'property' => 'color',
],
]
);
}
public function sectionBreakStyle()
{
$section_section_break = $this->addControlSection(
'fluentform_section_break_section',
__('Section Break', 'fluentform'),
'assets/icon.png',
$this
);
$selector = '.ff-el-section-break';
$section_section_break->typographySection(__('Typography', 'fluentform'), $selector, $this);
$section_section_break->addStyleControls(
[
[
'name' => __('Text Color', 'fluentform'),
'selector' => $selector,
'property' => 'color',
],
[
'selector' => $selector,
'slug' => 'ff_section_break_section_bg_color',
'property' => 'background-color',
],
]
);
$section_section_break->addPreset(
'padding',
'ff_section_break_section_padding',
__('Padding', 'fluentform'),
$selector
)->whiteList();
$section_section_break->addPreset(
'margin',
'ff_section_break_section_margin',
__('Margin', 'fluentform'),
$selector
)->whiteList();
$section_section_break->addStyleControl(
[
'selector' => $selector . ' hr',
'slug' => 'ffsb_line',
'property' => 'border-color',
]
)->setParam('hide_wrapper_end', true);
$section_section_break->addStyleControl(
[
'selector' => $selector . ' hr',
'slug' => 'ffsb_linew',
'property' => 'border-width',
]
)->setParam('hide_wrapper_start', true);
}
public function render($options, $defaults, $content)
{
if ('no' == $options['ff_form']) {
echo '<h5 class="ff-template-missing">' . __('Select a Form', 'fluentform') . '</h5>';
return;
}
if (function_exists('do_oxygen_elements')) {
echo do_oxygen_elements('[fluentform id="' . (int) $options['ff_form'] . '"]'); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
} else {
if (Helper::isConversionForm($options['ff_form'])) {
_e('This is a Conversational Form. You must use the default Design tab for this type of forms.', 'fluentform');
return;
}
echo do_shortcode('[fluentform id="' . (int) $options['ff_form'] . '"]'); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
}
}
public function init()
{
$this->El->useAJAXControls();
$app = wpFluentForm();
if ($app->request->get('ct_builder')) {
wp_enqueue_style(
'fluent-form-styles',
fluentFormMix('css/fluent-forms-public.css'),
[],
FLUENTFORM_VERSION
);
wp_enqueue_style(
'fluentform-public-default',
fluentFormMix('css/fluentform-public-default.css'),
[],
FLUENTFORM_VERSION
);
if (!wp_script_is('flatpickr', 'registered')) {
wp_enqueue_style(
'flatpickr',
fluentFormMix('libs/flatpickr/flatpickr.min.css'),
[],
FLUENTFORM_VERSION
);
}
wp_enqueue_style(
'ff_choices',
fluentFormMix('css/choices.css'),
[],
FLUENTFORM_VERSION
);
}
}
public function enablePresets()
{
return true;
}
public function enableFullPresets()
{
return true;
}
public function customCSS($options, $selector)
{
$css = $defaultCSS = '';
$prefix = 'oxy-' . $this->slug();
if (isset($options[$prefix . '_ff_inp_placeholder'])) {
$css .= '.fluent_form_' . $options['fluentform'] . ' .ff-el-form-control::-webkit-input-placeholder,.fluent_form_' . $options['fluentform'] . ' .ff-el-form-control::-moz-input-placeholder,.fluent_form_' . $options['fluentform'] . ' .ff-el-form-control:-ms-input-placeholder,.fluent_form_' . $options['fluentform'] . ' .ff-el-form-control::placeholder{color:' . $options['ff_inp_placeholder'] . ';}';
}
if (isset($options[$prefix . '_rc_smart_ui']) && 'yes' == $options[$prefix . '_rc_smart_ui']) {
$css .= $selector . ' .ff-el-group input[type=checkbox]:after, ' . $selector . ' .ff-el-group input[type=radio]:after {content: " "!important;display: inline-block!important;border-style: solid}';
$css .= $selector . ' .ff-el-group input[type=checkbox], ' . $selector . ' .ff-el-group input[type=radio]{width: 1px;}';
} else {
$css .= $selector . ' .ff-el-group input[type=checkbox]:after, ' . $selector . ' .ff-el-group input[type=radio]:after {content: none;}';
}
return $defaultCSS . $css;
}
public function checkboxAndRadioStyle()
{
$input_section_radio_checkbox = $this->addControlSection(
'fluentform_checkbox_radio_style',
__('Checkbox & Radio', 'fluentform'),
'assets/icon.png',
$this
);
$selector_after = '.ff-el-group input[type=checkbox]:after,.ff-el-group input[type=radio]:after';
$selector = '.ff-el-group input[type=checkbox],.ff-el-group input[type=radio]';
$text = $input_section_radio_checkbox->addControlSection(
'fluentform_radio_checkbox_text',
__('Text Style', 'fluentform'),
'assets/icon.png',
$this
);
$text->addStyleControls(
[
[
'selector' => '.ff-el-form-check-label, .ff_t_c',
'property' => 'color',
'name' => __('Text Color', 'fluentform'),
],
[
'selector' => '.ff_t_c a',
'property' => 'color',
'name' => __('Link Color', 'fluentform'),
],
[
'selector' => '.ff_t_c a:hover',
'property' => 'color',
'name' => __('Link Hover Color', 'fluentform'),
],
[
'selector' => '.ff-el-form-check-label, .ff_t_c',
'property' => 'font-size',
'control_type' => 'slider-measurebox',
'name' => __('Text Font Size', 'fluentform'),
'unit' => 'px',
],
]
);
$smart_ui = $input_section_radio_checkbox->addControlSection(
'fluentform_radio_checkbox_smart_ui',
__('Checkbox/Radio Smart UI', 'fluentform'),
'assets/icon.png',
$this
);
$smart_ui->addOptionControl(
[
'type' => 'radio',
'name' => __('Enable Smart UI', 'fluentform'),
'slug' => 'rc_smart_ui',
'value' => ['yes' => __('Yes'), 'no' => __('No')],
'default' => 'no',
'css' => false,
]
)->rebuildElementOnChange();
$smart_ui->addStyleControl(
[
'selector' => $selector_after,
'name' => __('Width'),
'property' => 'width|height',
'control_type' => 'slider-measurebox',
'unit' => 'px',
'condition' => 'rc_smart_ui=yes',
]
);
$smart_ui->addStyleControl(
[
'selector' => $selector,
'name' => __('Text Indent'),
'property' => 'margin-right',
'control_type' => 'slider-measurebox',
'unit' => 'px',
'condition' => 'rc_smart_ui=yes',
]
);
$smart_ui->addStyleControls(
[
[
'selector' => $selector_after,
'property' => 'background-color',
'slug' => 'cr_bg_color',
'condition' => 'rc_smart_ui=yes',
],
[
'selector' => $selector_after,
'property' => 'border-color',
'slug' => 'cr_brd_color',
'condition' => 'rc_smart_ui=yes',
'value' => '#333',
],
[
'selector' => $selector_after . ', .ff-el-group input[type=checkbox]:checked:after, .ff-el-group input[type=radio]:checked:after',
'property' => 'border-width',
'condition' => 'rc_smart_ui=yes',
],
[
'name' => __('Border Radius for Checkbox', 'fluentform'),
'selector' => '.ff-el-group input[type=checkbox]:after, .ff-el-group input[type=checkbox]:checked:after',
'property' => 'border-radius',
'condition' => 'rc_smart_ui=yes',
],
]
);
$smart_ui->addStyleControls(
[
[
'name' => __('Background Color - Selected State', 'fluentform'),
'selector' => '.ff-el-group input[type=checkbox]:checked:after, .ff-el-group input[type=radio]:checked:after',
'property' => 'background-color',
'control_type' => 'colorpicker',
'condition' => 'rc_smart_ui=yes',
],
[
'name' => __('Border Size - Selected State', 'fluentform'),
'selector' => '.ff-el-group input[type=checkbox]:checked:after, .ff-el-group input[type=radio]:checked:after',
'property' => 'border-width',
'control_type' => 'slider-measurebox',
'unit' => 'px',
'condition' => 'rc_smart_ui=yes',
],
[
'name' => __('Border Color - Selected State', 'fluentform'),
'selector' => '.ff-el-group input[type=checkbox]:checked:after, .ff-el-group input[type=radio]:checked:after',
'property' => 'border-color',
'slug' => 'crc_bg_color',
'control_type' => 'colorpicker',
'condition' => 'rc_smart_ui=yes',
],
]
);
$input_section_radio_checkbox_space = $input_section_radio_checkbox->addControlSection(
'fluentform_radio_checkbox_sp',
__('Spacing', 'fluentform'),
'assets/icon.png',
$this
);
$input_section_radio_checkbox_space->addPreset(
'margin',
'fluentform_radio_checkbox_margin',
__('Checkbox/Radio Margin'),
'.fluentform input[type=checkbox], .ff-el-group input[type=radio]'
)->whiteList();
$input_section_radio_checkbox_space->addPreset(
'padding',
'fluentform_radio_checkbox_padding',
__('Label Spacing'),
'.ff-el-form-check-label, .ff_t_c'
)->whiteList();
}
public function fileUploadStyle()
{
$section_file_upload = $this->addControlSection(
'fluentform_file_upload',
__('File Upload Field', 'fluentform'),
'assets/icon.png',
$this
);
$selector = '.ff_upload_btn';
$section_file_upload->typographySection(__('Button Typography', 'fluentform'), $selector, $this);
$section_file_upload->borderSection(__('Button Border', 'fluentform'), $selector, $this);
$section_file_upload->boxShadowSection(__('Button Box Shadow', 'fluentform'), $selector, $this);
$section_file_upload->boxShadowSection(__('Button Hover Box Shadow', 'fluentform'), $selector . ':hover', $this);
$section_file_upload->borderSection(__('Button Hover Border', 'fluentform'), $selector . ':hover', $this);
$button = $section_file_upload->addControlSection(
'fluentform_file_upload_bttn',
__('Button Style', 'fluentform'),
'assets/icon.png',
$this
);
$button->addPreset(
'padding',
'fluentform_file_upload_bttn_padding',
__('Padding', 'fluentform'),
$selector
)->whiteList();
$button->addStyleControls(
[
[
'name' => __('Text Hover Color', 'fluentform'),
'selector' => $selector . ':hover',
'property' => 'color',
],
[
'selector' => $selector,
'property' => 'background-color',
],
[
'name' => __('Background Hover Color', 'fluentform'),
'selector' => $selector . ':Hover',
'property' => 'background-color',
'control_type' => 'colorpicker',
],
[
'name' => __('Width', 'fluentform'),
'selector' => $selector,
'property' => 'width',
],
]
);
}
public function progressBarStyle()
{
$section_progressbar = $this->addControlSection(
'fluentform_progress_bar',
__('Progress Bar', 'fluentform'),
'assets/icon.png',
$this
);
$section_progressbar->typographySection(__('Typography', 'fluentform'), '.ff-el-progress-status', $this);
$section_progressbar->addStyleControls(
[
[
'name' => __('Text Color', 'fluentform'),
'selector' => '.ff-el-progress-status',
'property' => 'color',
],
]
);
$section_progressbar->addStyleControls(
[
[
'name' => __('Bar Color', 'fluentform'),
'selector' => '.ff-el-progress-bar',
'property' => 'background-color',
],
]
);
$section_progressbar->addPreset(
'padding',
'fluentform_progress_bar_padding',
__('Label Spacing', 'fluentform'),
'.ff-el-progress-status'
)->whiteList();
}
public function submitBtnStyle()
{
$section_submit_btn = $this->addControlSection(
'fluentform_submit_bttn',
__('Submit Button', 'fluentform'),
'assets/icon.png',
$this
);
$selector_submit_bttn = '.ff-btn-submit';
$section_submit_btn->addStyleControls(
[
[
'name' => __('Color', 'fluentform'),
'selector' => $selector_submit_bttn,
'property' => 'color',
],
[
'name' => __('Background Color', 'fluentform'),
'selector' => $selector_submit_bttn,
'property' => 'background-color',
],
[
'name' => __('Hover Color', 'fluentform'),
'selector' => '.ff-btn-submit:hover',
'property' => 'background-color',
],
[
'name' => __('Width', 'fluentform'),
'selector' => $selector_submit_bttn,
'property' => 'width',
'control_type' => 'slider-measurebox',
'unit' => 'px',
],
[
'name' => __('Margin Top', 'fluentform'),
'selector' => $selector_submit_bttn,
'property' => 'margin-top',
'control_type' => 'slider-measurebox',
'unit' => 'px',
],
]
);
$section_submit_btn->addPreset(
'padding',
'fluentform_submit_bttn_padding',
__('Padding', 'fluentform'),
$selector_submit_bttn
)->whiteList();
$section_submit_btn->addPreset(
'margin',
'fluentform_submit_bttn_margin',
__('Margin', 'fluentform'),
$selector_submit_bttn
)->whiteList();
$section_submit_btn->typographySection(__('Typography', 'fluentform'), $selector_submit_bttn, $this);
$section_submit_btn->borderSection(__('Border', 'fluentform'), $selector_submit_bttn, $this);
$section_submit_btn->borderSection(__('Hover Border', 'fluentform'), $selector_submit_bttn . ':hover', $this);
$section_submit_btn->boxShadowSection(__('Box Shadow', 'fluentform'), $selector_submit_bttn, $this);
$section_submit_btn->boxShadowSection(__('Hover Box Shadow', 'fluentform'), $selector_submit_bttn . ':hover', $this);
}
public function stepButtonStyle()
{
$section_step_button = $this->addControlSection(
'section_step_button',
__('Step Button', 'fluentform'),
'assets/icon.png',
$this
);
$section_step_button->addPreset(
'padding',
'section_step_button_padding',
__('Padding', 'fluentform'),
'.step-nav button'
)->whiteList();
$section_step_button->addStyleControl(
[
'name' => __('Width'),
'selector' => '.step-nav .ff-btn',
'property' => 'width',
]
);
$section_step_button_color = $section_step_button->addControlSection(
'ffsfnb_clr',
__('Color', 'fluentform'),
'assets/icon.png',
$this
);
$section_step_button_color->addStyleControls(
[
[
'name' => __('Text Color', 'fluentform'),
'selector' => '.step-nav .ff-btn',
'property' => 'color',
],
[
'name' => __('Text Hover Color', 'fluentform'),
'selector' => '.step-nav .ff-btn:hover',
'property' => 'color',
],
[
'name' => __('Background Color', 'fluentform'),
'selector' => '.step-nav .ff-btn',
'property' => 'background-color',
'control_type' => 'colorpicker',
],
[
'name' => __('Background Hover Color', 'fluentform'),
'selector' => '.step-nav .ff-btn:hover',
'property' => 'background-color',
'control_type' => 'colorpicker',
],
]
);
$section_step_button->typographySection(__('Typography', 'fluentform'), '.step-nav .ff-btn', $this);
$section_step_button->borderSection(__('Border', 'fluentform'), '.step-nav .ff-btn', $this);
$section_step_button->borderSection(__('Hover Border', 'fluentform'), '.step-nav .ff-btn:hover', $this);
$section_step_button->boxShadowSection(__('Box Shadow', 'fluentform'), '.step-nav .ff-btn', $this);
$section_step_button->boxShadowSection(__('Hover Box Shadow', 'fluentform'), '.step-nav .ff-btn:hover', $this);
}
public function successMessageStyle()
{
$section_success_message = $this->addControlSection(
'fluentform_success_message',
__('Success Message', 'fluentform'),
'assets/icon.png',
$this
);
$section_success_message->addStyleControl(
[
'selector' => '.ff-message-success',
'value' => 100,
'property' => 'width',
]
)->setUnits('%', 'px,%');
$section_success_message->addStyleControl(
[
'selector' => '.ff-message-success',
'property' => 'background-color',
]
);
$section_success_message->typographySection(
__('Typography', 'fluentform'),
'.ff-message-success, .ff-message-success p',
$this
);
$section_success_message->borderSection(__('Border', 'fluentform'), '.ff-message-success', $this);
$section_success_message->boxShadowSection(__('Box Shadow', 'fluentform'), '.ff-message-success', $this);
$section_success_message->addPreset(
'padding',
'fluentform_success_message_padding',
__('Padding', 'fluentform'),
'.ff-message-success'
)->whiteList();
}
public function errorMessageStyle()
{
$section_error_message = $this->addControlSection(
'fluentform_error_message',
__('Validation Error', 'fluentform'),
'assets/icon.png',
$this
);
$section_error_message->addStyleControls(
[
[
'name' => __('Text Color', 'fluentform'),
'selector' => '.ff-el-is-error .text-danger',
'property' => 'color',
'value' => '#f56c6c',
],
[
'selector' => '.ff-el-is-error .text-danger',
'property' => 'font-size',
'value' => 14,
],
[
'selector' => '.ff-el-is-error .text-danger',
'property' => 'font-weight',
],
[
'selector' => '.ff-el-is-error .text-danger',
'property' => 'margin-top',
'value' => 4,
],
]
);
}
}
new OxyFluentFormWidget();