failed_validation && ! empty($this->validation_message) ) ? sprintf("
%s
", $this->validation_message) : ''; $is_form_editor = $this->is_form_editor(); $is_entry_detail = $this->is_entry_detail(); $is_admin = $is_form_editor || $is_entry_detail; $admin_buttons = $this->get_admin_buttons(); $description = $this->get_description($this->description, 'gfield_description'); if ($this->is_description_above($form)) { $clear = $is_admin ? "
" : ''; $field_content = sprintf("%s%s{FIELD}%s$clear", $admin_buttons, $description, $validation_message); } else { $field_content = sprintf('%s{FIELD}%s%s', $admin_buttons, $description, $validation_message); } return $field_content; } public function get_form_editor_field_title() { return esc_attr__('Mailchimp for WordPress', 'mailchimp-for-wp'); } public function get_form_editor_field_settings() { return array( 'label_setting', 'description_setting', 'css_class_setting', 'mailchimp_list_setting', 'mailchimp_double_optin', 'mailchimp_precheck', 'rules_setting', ); } public function get_field_input($form, $value = '', $entry = null) { $form_id = absint($form['id']); $is_entry_detail = $this->is_entry_detail(); $is_form_editor = $this->is_form_editor(); $id = $this->id; $field_id = $is_entry_detail || $is_form_editor || 0 === (int) $form_id ? "input_$id" : 'input_' . $form_id . "_$id"; $disabled_text = $is_form_editor ? 'disabled="disabled"' : ''; return sprintf("
", esc_attr($field_id), $this->get_checkbox_choices($value, $disabled_text, $form_id)); } private function apply_mc4wp_options_filters($options) { $options = apply_filters('mc4wp_gravity-forms_integration_options', $options); $options = apply_filters('mc4wp_integration_gravity-forms_options', $options); return $options; } public function get_checkbox_choices($value, $disabled_text, $form_id = 0) { $choices = ''; $is_entry_detail = $this->is_entry_detail(); $is_form_editor = $this->is_form_editor(); $options = array( 'label' => $this->get_field_label(false, $value), 'precheck' => isset($this->mailchimp_precheck) ? $this->mailchimp_precheck : false, ); $options = $this->apply_mc4wp_options_filters($options); // generate html $choice = array( 'text' => $options['label'], 'value' => '1', 'isSelected' => $options['precheck'], ); $input_id = $this->id; if ($is_entry_detail || $is_form_editor || 0 === (int) $form_id) { $id = $this->id; } else { $id = $form_id . '_' . $this->id; } if (! isset($_GET['gf_token']) && empty($_POST) && rgar($choice, 'isSelected')) { $checked = "checked='checked'"; } elseif (is_array($value) && RGFormsModel::choice_value_match($this, $choice, rgget($input_id, $value))) { $checked = "checked='checked'"; } elseif (! is_array($value) && RGFormsModel::choice_value_match($this, $choice, $value)) { $checked = "checked='checked'"; } else { $checked = ''; } $tabindex = $this->get_tabindex(); $choice_value = $choice['value']; $choice_value = esc_attr($choice_value); $choice_markup = "
  • "; $choices .= gf_apply_filters( array( 'gform_field_choice_markup_pre_render', $this->formId, $this->id, ), $choice_markup, $choice, $this, $value ); return gf_apply_filters(array( 'gform_field_choices', $this->formId, $this->id ), $choices, $this); } }