public static function enqueue_admin_scripts($hook) { $scripts = array(); $page = self::get_page(); switch ($page) { case 'new_form': case 'form_list': $scripts = array('gform_gravityforms', 'gform_json', 'gform_form_admin', 'thickbox', 'sack'); break; case 'form_settings': $scripts = array('gform_gravityforms', 'gform_forms', 'gform_json', 'gform_form_admin', 'gform_placeholder', 'jquery-ui-datepicker', 'gform_masked_input', 'jquery-ui-sortable', 'sack'); break; case 'form_editor': $thickbox = !GFCommon::is_wp_version('3.3') ? 'gf_thickbox' : 'thickbox'; $scripts = array($thickbox, 'jquery-ui-core', 'jquery-ui-sortable', 'jquery-ui-draggable', 'jquery-ui-droppable', 'jquery-ui-tabs', 'gform_gravityforms', 'gform_forms', 'gform_json', 'gform_form_admin', 'gform_floatmenu', 'gform_menu', 'gform_placeholder', 'jquery-ui-autocomplete', 'sack'); if (wp_is_mobile()) { $scripts[] = 'jquery-touch-punch'; } break; case 'entry_detail': $scripts = array('gform_json', 'sack'); break; case 'entry_detail_edit': $scripts = array('gform_gravityforms', 'plupload-all', 'sack'); break; case 'entry_list': $scripts = array('wp-lists', 'wp-ajax-response', 'thickbox', 'gform_json', 'thickbox', 'gform_field_filter', 'sack'); break; case 'notification_list': $scripts = array('gform_forms', 'gform_json', 'gform_form_admin', 'sack'); break; case 'notification_new': case 'notification_edit': $scripts = array('jquery-ui-autocomplete', 'gform_gravityforms', 'gform_placeholder', 'gform_form_admin', 'gform_forms', 'gform_json', 'sack'); break; case 'confirmation': $scripts = array('gform_form_admin', 'gform_forms', 'gform_gravityforms', 'gform_placeholder', 'gform_json', 'wp-pointer', 'sack'); break; case 'addons': $scripts = array('thickbox', 'sack'); break; case 'export_entry': $scripts = array('jquery-ui-datepicker', 'gform_form_admin', 'gform_field_filter', 'sack'); break; case 'updates': $scripts = array('thickbox', 'sack'); } if (self::page_supports_add_form_button()) { require_once GFCommon::get_base_path() . '/tooltips.php'; wp_enqueue_script('gform_shortcode_ui'); wp_enqueue_style('gform_shortcode_ui'); wp_localize_script('gform_shortcode_ui', 'gfShortcodeUIData', array('shortcodes' => self::get_shortcodes(), 'previewNonce' => wp_create_nonce('gf-shortcode-ui-preview'), 'previewDisabled' => apply_filters('gform_shortcode_preview_disabled', true), 'strings' => array('pleaseSelectAForm' => esc_html__('Please select a form.', 'gravityforms'), 'errorLoadingPreview' => esc_html__('Failed to load the preview for this form.', 'gravityforms')))); } if (empty($scripts)) { return; } foreach ($scripts as $script) { wp_enqueue_script($script); } GFCommon::localize_gform_gravityforms_multifile(); }
public static function get_confirmation_ui_settings($confirmation) { /** * These variables are used to convenient "wrap" child form settings in the appropriate HTML. */ $subsetting_open = ' <td colspan="2" class="gf_sub_settings_cell"> <div class="gf_animate_sub_settings"> <table style="width:100%"> <tr>'; $subsetting_close = ' </tr> </table> </div> </td>'; $ui_settings = array(); $confirmation_type = rgar($confirmation, 'type') ? rgar($confirmation, 'type') : 'message'; $is_valid = !empty(GFCommon::$errors); $is_default = rgar($confirmation, 'isDefault'); $form_id = rgget('id'); $form = RGFormsModel::get_form_meta($form_id); ob_start(); ?> <?php $class = !$is_default && !$is_valid && $confirmation_type == 'page' && !rgar($confirmation, 'name') ? 'gfield_error' : ''; ?> <tr <?php echo $is_default ? 'style="display:none;"' : ''; ?> class="<?php echo $class; ?> "> <th><?php _e('Confirmation Name', 'gravityforms'); ?> </th> <td> <input type="text" id="form_confirmation_name" name="form_confirmation_name" value="<?php echo rgar($confirmation, 'name'); ?> " /> </td> </tr> <!-- / confirmation name --> <?php $ui_settings['confirmation_name'] = ob_get_contents(); ob_clean(); ?> <tr> <th><?php _e('Confirmation Type', 'gravityforms'); ?> </th> <td> <input type="radio" id="form_confirmation_show_message" name="form_confirmation" <?php checked('message', $confirmation_type); ?> value="message" onclick="ToggleConfirmation();" /> <label for="form_confirmation_show_message" class="inline"> <?php _e('Text', 'gravityforms'); ?> <?php gform_tooltip('form_confirmation_message'); ?> </label> <input type="radio" id="form_confirmation_show_page" name="form_confirmation" <?php checked('page', $confirmation_type); ?> value="page" onclick="ToggleConfirmation();" /> <label for="form_confirmation_show_page" class="inline"> <?php _e('Page', 'gravityforms'); ?> <?php gform_tooltip('form_redirect_to_webpage'); ?> </label> <input type="radio" id="form_confirmation_redirect" name="form_confirmation" <?php checked('redirect', $confirmation_type); ?> value="redirect" onclick="ToggleConfirmation();" /> <label for="form_confirmation_redirect" class="inline"> <?php _e('Redirect', 'gravityforms'); ?> <?php gform_tooltip('form_redirect_to_url'); ?> </label> </td> </tr> <!-- / confirmation type --> <?php $ui_settings['confirmation_type'] = ob_get_contents(); ob_clean(); ?> <tr id="form_confirmation_message_container" <?php echo $confirmation_type != 'message' ? 'style="display:none;"' : ''; ?> > <?php echo $subsetting_open; ?> <th><?php _e('Message', 'gravityforms'); ?> </th> <td> <span class="mt-form_confirmation_message"></span> <?php if (GFCommon::is_wp_version('3.3')) { wp_editor(rgar($confirmation, 'message'), 'form_confirmation_message', array('autop' => false, 'editor_class' => 'merge-tag-support mt-wp_editor mt-manual_position mt-position-right')); } else { ?> <textarea name="form_confirmation_message" id="form_confirmation_message" class="fieldwidth-1 fieldheight-1"><?php echo esc_html($confirmation['message']); ?> </textarea><?php } ?> <div style="margin-top:5px;"> <input type="checkbox" id="form_disable_autoformatting" name="form_disable_autoformatting" value="1" <?php echo empty($confirmation['disableAutoformat']) ? '' : "checked='checked'"; ?> /> <label for="form_disable_autoformatting"><?php _e('Disable Auto-formatting', 'gravityforms'); ?> <?php gform_tooltip('form_confirmation_autoformat'); ?> </label> </div> </td> <?php echo $subsetting_close; ?> </tr> <!-- / confirmation message --> <?php $ui_settings['confirmation_message'] = ob_get_contents(); ob_clean(); ?> <?php $class = !$is_valid && $confirmation_type == 'page' && !rgar($confirmation, 'pageId') ? 'gfield_error' : ''; ?> <tr class="form_confirmation_page_container" <?php echo $confirmation_type != 'page' ? 'style="display:none;"' : ''; ?> class="<?php echo $class; ?> "> <?php echo $subsetting_open; ?> <th><?php _e('Page', 'gravityforms'); ?> </th> <td> <?php wp_dropdown_pages(array('name' => 'form_confirmation_page', 'selected' => rgar($confirmation, 'pageId'), 'show_option_none' => __('Select a page', 'gravityforms'))); ?> </td> <?php echo $subsetting_close; ?> </tr> <!-- / confirmation page --> <?php $ui_settings['confirmation_page'] = ob_get_contents(); ob_clean(); ?> <tr class="form_confirmation_page_container" <?php echo $confirmation_type != 'page' ? 'style="display:none;"' : ''; ?> class="<?php echo $class; ?> "> <?php echo $subsetting_open; ?> <th><?php _e('Redirect Query String', 'gravityforms'); ?> <?php gform_tooltip('form_redirect_querystring'); ?> </th> <td> <input type="checkbox" id="form_page_use_querystring" name="form_page_use_querystring" <?php echo empty($confirmation['queryString']) ? '' : "checked='checked'"; ?> onclick="TogglePageQueryString()" /> <label for="form_page_use_querystring"><?php _e('Pass Field Data Via Query String', 'gravityforms'); ?> </label> <div id="form_page_querystring_container" <?php echo empty($confirmation['queryString']) ? 'style="display:none;"' : ''; ?> > <?php $query_string = rgget('queryString', $confirmation); ?> <textarea name="form_page_querystring" id="form_page_querystring" class="merge-tag-support mt-position-right mt-hide_all_fields mt-option-url" style="width:98%; height:100px;"><?php echo esc_html($query_string); ?> </textarea><br /> <div class="instruction"><?php _e('Sample: phone={Phone:1}&email={Email:2}', 'gravityforms'); ?> </div> </div> </td> <?php echo $subsetting_close; ?> </tr> <!-- / confirmation page use querystring --> <?php $ui_settings['confirmation_page_querystring'] = ob_get_contents(); ob_clean(); ?> <?php $class = !$is_valid && $confirmation_type == 'redirect' && !rgar($confirmation, 'url') ? 'gfield_error' : ''; ?> <tr class="form_confirmation_redirect_container <?php echo $class; ?> " <?php echo $confirmation_type != 'redirect' ? 'style="display:none;"' : ''; ?> > <?php echo $subsetting_open; ?> <th><?php _e('Redirect URL', 'gravityforms'); ?> </th> <td> <input type="text" id="form_confirmation_url" name="form_confirmation_url" value="<?php echo esc_attr(rgget('url', $confirmation)); ?> " style="width:98%;" /> </td> <?php echo $subsetting_close; ?> </tr> <!-- / confirmation url --> <?php $ui_settings['confirmation_url'] = ob_get_contents(); ob_clean(); ?> <tr class="form_confirmation_redirect_container" <?php echo $confirmation_type != 'redirect' ? 'style="display:none;"' : ''; ?> > <?php echo $subsetting_open; ?> <th><?php _e('Redirect Query String', 'gravityforms'); ?> <?php gform_tooltip('form_redirect_querystring'); ?> </th> <td> <input type="checkbox" id="form_redirect_use_querystring" name="form_redirect_use_querystring" <?php echo empty($confirmation['queryString']) ? '' : "checked='checked'"; ?> onclick="ToggleQueryString()" /> <label for="form_redirect_use_querystring"><?php _e('Pass Field Data Via Query String', 'gravityforms'); ?> </label> <div id="form_redirect_querystring_container" <?php echo empty($confirmation['queryString']) ? 'style="display:none;"' : ''; ?> > <?php $query_string = rgget('queryString', $confirmation); ?> <textarea name="form_redirect_querystring" id="form_redirect_querystring" class="merge-tag-support mt-position-right mt-hide_all_fields mt-option-url" style="width:98%; height:100px;"><?php echo esc_html($query_string); ?> </textarea><br /> <div class="instruction"><?php _e('Sample: phone={Phone:1}&email={Email:2}', 'gravityforms'); ?> </div> </div> </td> <?php echo $subsetting_close; ?> </tr> <!-- / confirmation use querystring --> <?php $ui_settings['confirmation_querystring'] = ob_get_contents(); ob_clean(); ?> <tr <?php echo rgget('isDefault', $confirmation) ? 'style="display:none;"' : ''; ?> > <th><?php _e('Conditional Logic', 'gravityforms'); ?> </th> <td> <input type="checkbox" id="confirmation_conditional_logic" name="confirmation_conditional_logic" style="display:none;" checked="checked" /> <div id="confirmation_conditional_logic_container"> <!-- content populated dynamically by form_admin.js --> </div> </td> </tr> <!-- conditional logic --> <?php $ui_settings['confirmation_conditional_logic'] = ob_get_contents(); ob_clean(); ?> <?php ob_end_clean(); $ui_settings = gf_apply_filters('gform_confirmation_ui_settings', $form_id, $ui_settings, $confirmation, $form); return $ui_settings; }
private static function get_notification_ui_settings($notification) { /** * These variables are used to convenient "wrap" child form settings in the appropriate HTML. */ $subsetting_open = ' <td colspan="2" class="gf_sub_settings_cell"> <div class="gf_animate_sub_settings"> <table> <tr>'; $subsetting_close = ' </tr> </table> </div> </td>'; $ui_settings = array(); $form_id = rgget('id'); $form = RGFormsModel::get_form_meta($form_id); $form = apply_filters("gform_admin_pre_render_" . $form_id, apply_filters("gform_admin_pre_render", $form)); $is_valid = empty(GFCommon::$errors); ob_start(); ?> <tr valign="top"> <th scope="row"> <label for="gform_notification_name"> <?php _e("Name", "gravityforms"); ?> <?php gform_tooltip("notification_name"); ?> </label> </th> <td> <input type="text" class="fieldwidth-2" name="gform_notification_name" id="gform_notification_name" value="<?php echo esc_attr(rgget("name", $notification)); ?> "/> </td> </tr> <!-- / name --> <?php $ui_settings['notification_name'] = ob_get_contents(); ob_clean(); ?> <?php $notification_events = apply_filters("gform_notification_events", array("form_submission" => __("Form is submitted", "gravityforms"))); $event_style = count($notification_events) == 1 ? "style='display:none'" : ""; ?> <tr valign="top" <?php echo $event_style; ?> > <th scope="row"> <label for="gform_notification_event"> <?php _e("Event", "gravityforms"); ?> <?php gform_tooltip("notification_event"); ?> </label> </th> <td> <select name="gform_notification_event" id="gform_notification_event"> <?php foreach ($notification_events as $code => $label) { ?> <option value="<?php echo esc_attr($code); ?> " <?php selected(rgar($notification, 'event'), $code); ?> ><?php echo esc_html($label); ?> </option> <?php } ?> </select> </td> </tr> <!-- / event --> <?php $ui_settings['notification_event'] = ob_get_contents(); ob_clean(); ?> <?php $notification_to_type = !rgempty("gform_notification_to_type") ? rgpost("gform_notification_to_type") : rgar($notification, "toType"); if (empty($notification_to_type)) { $notification_to_type = "email"; } $is_invalid_email_to = !$is_valid && !self::is_valid_notification_to(); $send_to_class = $is_invalid_email_to ? "gfield_error" : ""; ?> <tr valign="top" class='<?php echo $send_to_class; ?> '> <th scope="row"> <label for="gform_notification_to_email"> <?php _e("Send To", "gravityforms"); ?> <span class="gfield_required">*</span> <?php gform_tooltip("notification_send_to_email"); ?> </label> </th> <td> <input type="radio" id="gform_notification_to_type_email" name="gform_notification_to_type" <?php checked("email", $notification_to_type); ?> value="email" onclick="jQuery('.notification_to_container').hide(); jQuery('#gform_notification_to_email_container').show('slow');"/> <label for="gform_notification_to_type_email" class="inline"> <?php _e("Enter Email", "gravityforms"); ?> </label> <input type="radio" id="gform_notification_to_type_field" name="gform_notification_to_type" <?php checked("field", $notification_to_type); ?> value="field" onclick="jQuery('.notification_to_container').hide(); jQuery('#gform_notification_to_field_container').show('slow');"/> <label for="gform_notification_to_type_field" class="inline"> <?php _e("Select a Field", "gravityforms"); ?> </label> <input type="radio" id="gform_notification_to_type_routing" name="gform_notification_to_type" <?php checked("routing", $notification_to_type); ?> value="routing" onclick="jQuery('.notification_to_container').hide(); jQuery('#gform_notification_to_routing_container').show('slow');"/> <label for="gform_notification_to_type_routing" class="inline"> <?php _e("Configure Routing", "gravityforms"); ?> <?php gform_tooltip("notification_send_to_routing"); ?> </label> </td> </tr> <!-- / to email type --> <?php $ui_settings['notification_to_email_type'] = ob_get_contents(); ob_clean(); ?> <tr id="gform_notification_to_email_container" class="notification_to_container <?php echo $send_to_class; ?> " <?php echo $notification_to_type != "email" ? "style='display:none';" : ""; ?> > <?php echo $subsetting_open; ?> <th scope="row"><?php _e("Send to Email", "gravityforms"); ?> </th> <td> <?php $to_email = rgget("toType", $notification) == "email" ? rgget("to", $notification) : ""; ?> <input type="text" name="gform_notification_to_email" id="gform_notification_to_email" value="<?php echo esc_attr($to_email); ?> " class="fieldwidth-1" /> <?php if (rgpost("gform_notification_to_type") == "email" && $is_invalid_email_to) { ?> <span class="validation_message"><?php _e("Please enter a valid email address", "gravityforms"); ?> </span> <?php } ?> </td> <?php echo $subsetting_close; ?> </tr> <!-- / to email --> <?php $ui_settings['notification_to_email'] = ob_get_contents(); ob_clean(); ?> <?php $email_fields = apply_filters("gform_email_fields_notification_admin_{$form["id"]}", apply_filters("gform_email_fields_notification_admin", GFCommon::get_email_fields($form), $form), $form); ?> <tr id="gform_notification_to_field_container" class="notification_to_container <?php echo $send_to_class; ?> " <?php echo $notification_to_type != "field" ? "style='display:none';" : ""; ?> > <?php echo $subsetting_open; ?> <th scope="row"><?php _e("Send to Field", "gravityforms"); ?> </th> <td> <?php if (!empty($email_fields)) { ?> <select name="gform_notification_to_field" id="gform_notification_to_field"> <option value=""><?php _e("Select an email field", "gravityforms"); ?> </option> <?php $to_field = rgget("toType", $notification) == "field" ? rgget("to", $notification) : ""; foreach ($email_fields as $field) { ?> <option value="<?php echo $field["id"]; ?> " <?php echo selected($field["id"], $to_field); ?> ><?php echo GFCommon::get_label($field); ?> </option> <?php } ?> </select> <?php } else { ?> <div class="error_base"><p><?php _e("Your form does not have an email field. Add an email field to your form and try again.", "gravityforms"); ?> </p></div> <?php } ?> </td> <?php echo $subsetting_close; ?> </tr> <!-- / to email field --> <?php $ui_settings['notification_to_email_field'] = ob_get_contents(); ob_clean(); ?> <tr id="gform_notification_to_routing_container" class="notification_to_container <?php echo $send_to_class; ?> " <?php echo $notification_to_type != "routing" ? "style='display:none';" : ""; ?> > <?php echo $subsetting_open; ?> <td colspan="2"> <div id="gform_notification_to_routing_rules"> <?php $routing_fields = self::get_routing_fields($form, "0"); if (empty($routing_fields)) { //if(empty(){ ?> <div class="gold_notice"> <p><?php _e("To use notification routing, your form must have a field supported by conditional logic.", "gravityforms"); ?> </p> </div> <?php } else { if (empty($notification["routing"])) { $notification["routing"] = array(array()); } $count = sizeof($notification["routing"]); $routing_list = ","; for ($i = 0; $i < $count; $i++) { $routing_list .= $i . ","; $routing = $notification["routing"][$i]; $is_invalid_rule = !$is_valid && $_POST["gform_notification_to_type"] == "routing" && !self::is_valid_notification_email(rgar($routing, 'email')); $class = $is_invalid_rule ? "class='grouting_rule_error'" : ""; ?> <div style='width:99%' <?php echo $class; ?> > <?php _e("Send to", "gravityforms"); ?> <input type="text" id="routing_email_<?php echo $i; ?> " value="<?php echo rgar($routing, "email"); ?> " onkeyup="SetRouting(<?php echo $i; ?> );"/> <?php _e("if", "gravityforms"); ?> <select id="routing_field_id_<?php echo $i; ?> " class='gfield_routing_select' onchange='jQuery("#routing_value_<?php echo $i; ?> ").replaceWith(GetRoutingValues(<?php echo $i; ?> , jQuery(this).val())); SetRouting(<?php echo $i; ?> ); '><?php echo self::get_routing_fields($form, rgar($routing, "fieldId")); ?> </select> <select id="routing_operator_<?php echo $i; ?> " onchange="SetRouting(<?php echo $i; ?> )" class="gform_routing_operator"> <option value="is" <?php echo rgar($routing, "operator") == "is" ? "selected='selected'" : ""; ?> ><?php _e("is", "gravityforms"); ?> </option> <option value="isnot" <?php echo rgar($routing, "operator") == "isnot" ? "selected='selected'" : ""; ?> ><?php _e("is not", "gravityforms"); ?> </option> <option value=">" <?php echo rgar($routing, "operator") == ">" ? "selected='selected'" : ""; ?> ><?php _e("greater than", "gravityforms"); ?> </option> <option value="<" <?php echo rgar($routing, "operator") == "<" ? "selected='selected'" : ""; ?> ><?php _e("less than", "gravityforms"); ?> </option> <option value="contains" <?php echo rgar($routing, "operator") == "contains" ? "selected='selected'" : ""; ?> ><?php _e("contains", "gravityforms"); ?> </option> <option value="starts_with" <?php echo rgar($routing, "operator") == "starts_with" ? "selected='selected'" : ""; ?> ><?php _e("starts with", "gravityforms"); ?> </option> <option value="ends_with" <?php echo rgar($routing, "operator") == "ends_with" ? "selected='selected'" : ""; ?> ><?php _e("ends with", "gravityforms"); ?> </option> </select> <?php echo self::get_field_values($i, $form, rgar($routing, "fieldId"), rgar($routing, "value")); ?> <a class='gf_insert_field_choice' title='add another rule' onclick='SetRouting(<?php echo $i; ?> ); InsertRouting(<?php echo $i + 1; ?> );'><i class='fa fa-plus-square'></i></a> <?php if ($count > 1) { ?> <img src='<?php echo GFCommon::get_base_url(); ?> /images/remove.png' id='routing_delete_<?php echo $i; ?> ' title='remove this email routing' alt='remove this email routing' class='delete_field_choice' style='cursor:pointer;' onclick='DeleteRouting(<?php echo $i; ?> );' /> <?php } ?> </div> <?php } if ($is_invalid_rule) { ?> <span class="validation_message"><?php _e("Please enter a valid email address for all highlighted routing rules above.", "gravityforms"); ?> </span> <?php } ?> <input type="hidden" name="routing_count" id="routing_count" value="<?php echo $routing_list; ?> "/> <?php } ?> </div> </td> <?php echo $subsetting_close; ?> </tr> <!-- / to routing --> <?php $ui_settings['notification_to_routing'] = ob_get_contents(); ob_clean(); ?> <tr valign="top"> <th scope="row"> <label for="gform_notification_from_name"> <?php _e("From Name", "gravityforms"); ?> <?php gform_tooltip("notification_from_name"); ?> </label> </th> <td> <input type="text" class="fieldwidth-2 merge-tag-support mt-position-right mt-hide_all_fields" name="gform_notification_from_name" id="gform_notification_from_name" value="<?php echo esc_attr(rgget("fromName", $notification)); ?> "/> </td> </tr> <!-- / from name --> <?php $ui_settings['notification_from_name'] = ob_get_contents(); ob_clean(); ?> <tr valign="top"> <th scope="row"> <label for="gform_notification_from"> <?php _e("From Email", "gravityforms"); ?> <?php gform_tooltip("notification_from_email"); ?> </label> </th> <td> <input type="text" class="fieldwidth-2 merge-tag-support mt-position-right mt-hide_all_fields" name="gform_notification_from" id="gform_notification_from" value="<?php echo rgempty("from", $notification) ? "{admin_email}" : esc_attr(rgget("from", $notification)); ?> "/> </td> </tr> <!-- / to from email --> <?php $ui_settings['notification_from'] = ob_get_contents(); ob_clean(); ?> <tr valign="top"> <th scope="row"> <label for="gform_notification_reply_to"> <?php _e("Reply To", "gravityforms"); ?> <?php gform_tooltip("notification_reply_to"); ?> </label> </th> <td> <input type="text" name="gform_notification_reply_to" id="gform_notification_reply_to" class="merge-tag-support mt-hide_all_fields" value="<?php echo esc_attr(rgget("replyTo", $notification)); ?> " class="fieldwidth-2" /> </td> </tr> <!-- / reply to --> <?php $ui_settings['notification_reply_to'] = ob_get_contents(); ob_clean(); ?> <tr valign="top"> <th scope="row"> <label for="gform_notification_bcc"> <?php _e("BCC", "gravityforms"); ?> <?php gform_tooltip("notification_bcc"); ?> </label> </th> <td> <input type="text" name="gform_notification_bcc" id="gform_notification_bcc" value="<?php echo esc_attr(rgget("bcc", $notification)); ?> " class="fieldwidth-1" /> </td> </tr> <!-- / bcc --> <?php $ui_settings['notification_bcc'] = ob_get_contents(); ob_clean(); ?> <?php $is_invalid_subject = !$is_valid && empty($_POST["gform_notification_subject"]); $subject_class = $is_invalid_subject ? "class='gfield_error'" : ""; ?> <tr valign="top" <?php echo $subject_class; ?> > <th scope="row"> <label for="gform_notification_subject"> <?php _e("Subject", "gravityforms"); ?> <span class="gfield_required">*</span> </label> </th> <td> <input type="text" name="gform_notification_subject" id="gform_notification_subject" class="fieldwidth-1 merge-tag-support mt-hide_all_fields mt-position-right" value="<?php echo esc_attr(rgar($notification, "subject")); ?> " /> <?php if ($is_invalid_subject) { ?> <span class="validation_message"><?php _e("Please enter a subject for the notification email", "gravityforms"); ?> </span><?php } ?> </td> </tr> <!-- / subject --> <?php $ui_settings['notification_subject'] = ob_get_contents(); ob_clean(); ?> <?php $is_invalid_message = !$is_valid && empty($_POST["gform_notification_message"]); $message_class = $is_invalid_message ? "class='gfield_error'" : ""; ?> <tr valign="top" <?php echo $message_class; ?> > <th scope="row"> <label for="gform_notification_message"> <?php _e("Message", "gravityforms"); ?> <span class="gfield_required">*</span> </label> </th> <td> <span class="mt-gform_notification_message"></span> <?php if (GFCommon::is_wp_version("3.3")) { wp_editor(rgar($notification, "message"), "gform_notification_message", array("autop" => false, "editor_class" => "merge-tag-support mt-wp_editor mt-manual_position mt-position-right")); } else { ?> <textarea name="gform_notification_message" id="gform_notification_message" class="fieldwidth-1 fieldheight-1" ><?php echo esc_html($notification["message"]); ?> </textarea><?php } if ($is_invalid_message) { ?> <span class="validation_message"><?php _e("Please enter a message for the notification email", "gravityforms"); ?> </span><?php } ?> </td> </tr> <!-- / message --> <?php $ui_settings['notification_message'] = ob_get_contents(); ob_clean(); ?> <tr valign="top"> <th scope="row"> <label for="gform_notification_disable_autoformat"> <?php _e("Auto-formatting", "gravityforms"); ?> <?php gform_tooltip("notification_autoformat"); ?> </label> </th> <td> <input type="checkbox" name="gform_notification_disable_autoformat" id="gform_notification_disable_autoformat" value="1" <?php echo empty($notification["disableAutoformat"]) ? "" : "checked='checked'"; ?> /> <label for="form_notification_disable_autoformat" class="inline"> <?php _e("Disable auto-formatting", "gravityforms"); ?> <?php gform_tooltip("notification_autoformat"); ?> </label> </td> </tr> <!-- / disable autoformat --> <?php $ui_settings['notification_disable_autoformat'] = ob_get_contents(); ob_clean(); ?> <tr valign="top"> <th scope="row"> <label for="gform_notification_conditional_logic"> <?php _e("Conditional Logic", "gravityforms"); gform_tooltip("notification_conditional_logic"); ?> </label> </th> <td> <input type="checkbox" id="notification_conditional_logic" onclick="SetConditionalLogic(this.checked); ToggleConditionalLogic(false, 'notification');" <?php checked(is_array(rgar($notification, "conditionalLogic")), true); ?> /> <label for="notification_conditional_logic" class="inline"><?php _e("Enable conditional logic", "gravityforms"); gform_tooltip("notification_conditional_logic"); ?> </label> <br/> </td> </tr> <!-- / conditional logic --> <tr> <td colspan="2"> <div id="notification_conditional_logic_container" class="gf_animate_sub_settings" style="padding-left:10px;"> <!-- content dynamically created from form_admin.js --> </div> </td> </tr> <?php $ui_settings['notification_conditional_logic'] = ob_get_contents(); ob_clean(); ?> <?php ob_end_clean(); $ui_settings = apply_filters("gform_notification_ui_settings_{$form_id}", apply_filters('gform_notification_ui_settings', $ui_settings, $notification, $form), $notification, $form); return $ui_settings; }
protected function settings_textarea($field, $echo = true) { $field['type'] = 'textarea'; //making sure type is set to textarea $attributes = $this->get_field_attributes($field); $default_value = rgar($field, 'value') ? rgar($field, 'value') : rgar($field, 'default_value'); $value = $this->get_setting($field['name'], $default_value); $name = '' . esc_attr($field['name']); $html = ''; if (rgar($field, 'use_editor') && GFCommon::is_wp_version('3.3')) { $html .= '<span class="mt-gaddon-editor mt-_gaddon_setting_' . $field['name'] . '"></span>'; ob_start(); wp_editor($value, '_gaddon_setting_' . $field['name'], array('autop' => false, 'editor_class' => 'merge-tag-support mt-wp_editor mt-manual_position mt-position-right')); $html .= ob_get_contents(); ob_end_clean(); } else { $html .= '<textarea name="_gaddon_setting_' . $name . '" ' . implode(' ', $attributes) . '>' . esc_html($value) . '</textarea>'; } if ($this->field_failed_validation($field)) { $html .= $this->get_error_icon($field); } if ($echo) { echo $html; } return $html; }
private static function get_notification_ui_settings($notification) { /** * These variables are used to convenient "wrap" child form settings in the appropriate HTML. */ $subsetting_open = ' <td colspan="2" class="gf_sub_settings_cell"> <div class="gf_animate_sub_settings"> <table> <tr>'; $subsetting_close = ' </tr> </table> </div> </td>'; $ui_settings = array(); $form_id = rgget('id'); $form = RGFormsModel::get_form_meta($form_id); $form = apply_filters('gform_admin_pre_render_' . $form_id, apply_filters('gform_admin_pre_render', $form)); $is_valid = empty(GFCommon::$errors); ob_start(); ?> <tr valign="top" <?php echo rgar($notification, 'isDefault') ? "style='display:none'" : ''; ?> > <th scope="row"> <label for="gform_notification_name"> <?php esc_html_e('Name', 'gravityforms'); ?> <?php gform_tooltip('notification_name'); ?> </label> </th> <td> <input type="text" class="fieldwidth-2" name="gform_notification_name" id="gform_notification_name" value="<?php echo esc_attr(rgget('name', $notification)); ?> " /> </td> </tr> <!-- / name --> <?php $ui_settings['notification_name'] = ob_get_contents(); ob_clean(); ?> <?php $notification_events = array('form_submission' => esc_html__('Form is submitted', 'gravityforms')); if (rgars($form, 'save/enabled')) { $notification_events['form_saved'] = esc_html__('Form is saved', 'gravityforms'); $notification_events['form_save_email_requested'] = esc_html__('Save and continue email is requested', 'gravityforms'); } $notification_events = apply_filters('gform_notification_events', $notification_events, $form); $event_style = count($notification_events) == 1 || rgar($notification, 'isDefault') ? "style='display:none'" : ''; ?> <tr valign="top" <?php echo $event_style; ?> > <th scope="row"> <label for="gform_notification_event"> <?php esc_html_e('Event', 'gravityforms'); ?> <?php gform_tooltip('notification_event'); ?> </label> </th> <td> <select name="gform_notification_event" id="gform_notification_event"> <?php foreach ($notification_events as $code => $label) { ?> <option value="<?php echo esc_attr($code); ?> " <?php selected(rgar($notification, 'event'), $code); ?> ><?php echo esc_html($label); ?> </option> <?php } ?> </select> </td> </tr> <!-- / event --> <?php $ui_settings['notification_event'] = ob_get_contents(); ob_clean(); ?> <?php $notification_to_type = !rgempty('gform_notification_to_type') ? rgpost('gform_notification_to_type') : rgar($notification, 'toType'); if (empty($notification_to_type)) { $notification_to_type = 'email'; } $is_invalid_email_to = !$is_valid && !self::is_valid_notification_to(); $send_to_class = $is_invalid_email_to ? 'gfield_error' : ''; ?> <tr valign="top" class='<?php echo esc_attr($send_to_class); ?> ' <?php echo $notification_to_type == 'hidden' ? 'style="display:none;"' : ''; ?> > <th scope="row"> <label for="gform_notification_to_email"> <?php esc_html_e('Send To', 'gravityforms'); ?> <span class="gfield_required">*</span> <?php gform_tooltip('notification_send_to_email'); ?> </label> </th> <td> <input type="radio" id="gform_notification_to_type_email" name="gform_notification_to_type" <?php checked('email', $notification_to_type); ?> value="email" onclick="jQuery('.notification_to_container').hide(); jQuery('#gform_notification_to_email_container').show('slow');" /> <label for="gform_notification_to_type_email" class="inline"> <?php esc_html_e('Enter Email', 'gravityforms'); ?> </label> <input type="radio" id="gform_notification_to_type_field" name="gform_notification_to_type" <?php checked('field', $notification_to_type); ?> value="field" onclick="jQuery('.notification_to_container').hide(); jQuery('#gform_notification_to_field_container').show('slow');" /> <label for="gform_notification_to_type_field" class="inline"> <?php esc_html_e('Select a Field', 'gravityforms'); ?> </label> <input type="radio" id="gform_notification_to_type_routing" name="gform_notification_to_type" <?php checked('routing', $notification_to_type); ?> value="routing" onclick="jQuery('.notification_to_container').hide(); jQuery('#gform_notification_to_routing_container').show('slow');" /> <label for="gform_notification_to_type_routing" class="inline"> <?php esc_html_e('Configure Routing', 'gravityforms'); ?> <?php gform_tooltip('notification_send_to_routing'); ?> </label> </td> </tr> <!-- / to email type --> <?php $ui_settings['notification_to_email_type'] = ob_get_contents(); ob_clean(); if ($notification_to_type == 'hidden') { $ui_settings['notification_to_email_type'] = '<input type="hidden" name="gform_notification_to_type" value="hidden" />'; } ?> <tr id="gform_notification_to_email_container" class="notification_to_container <?php echo esc_attr($send_to_class); ?> " <?php echo $notification_to_type != 'email' ? "style='display:none';" : ''; ?> > <?php echo $subsetting_open; ?> <th scope="row"><?php esc_html_e('Send to Email', 'gravityforms'); ?> </th> <td> <?php $to_email = rgget('toType', $notification) == 'email' ? rgget('to', $notification) : ''; ?> <input type="text" name="gform_notification_to_email" id="gform_notification_to_email" value="<?php echo esc_attr($to_email); ?> " class="fieldwidth-1" /> <?php if (rgpost('gform_notification_to_type') == 'email' && $is_invalid_email_to) { ?> <span class="validation_message"><?php esc_html_e('Please enter a valid email address', 'gravityforms'); ?> .</span> <?php } ?> </td> <?php echo $subsetting_close; ?> </tr> <!-- / to email --> <?php $ui_settings['notification_to_email'] = ob_get_contents(); ob_clean(); ?> <?php $email_fields = apply_filters("gform_email_fields_notification_admin_{$form['id']}", apply_filters('gform_email_fields_notification_admin', GFCommon::get_email_fields($form), $form), $form); ?> <tr id="gform_notification_to_field_container" class="notification_to_container <?php echo esc_attr($send_to_class); ?> " <?php echo $notification_to_type != 'field' ? "style='display:none';" : ''; ?> > <?php echo $subsetting_open; ?> <th scope="row"><?php esc_html_e('Send to Field', 'gravityforms'); ?> </th> <td> <?php if (!empty($email_fields)) { ?> <select name="gform_notification_to_field" id="gform_notification_to_field"> <option value=""><?php esc_html_e('Select an email field', 'gravityforms'); ?> </option> <?php $to_field = rgget('toType', $notification) == 'field' ? rgget('to', $notification) : ''; foreach ($email_fields as $field) { ?> <option value="<?php echo esc_attr($field->id); ?> " <?php echo selected($field->id, $to_field); ?> ><?php echo GFCommon::get_label($field); ?> </option> <?php } ?> </select> <?php } else { ?> <div class="error_base"> <p><?php esc_html_e('Your form does not have an email field. Add an email field to your form and try again.', 'gravityforms'); ?> </p> </div> <?php } ?> </td> <?php echo $subsetting_close; ?> </tr> <!-- / to email field --> <?php $ui_settings['notification_to_email_field'] = ob_get_contents(); ob_clean(); ?> <tr id="gform_notification_to_routing_container" class="notification_to_container <?php echo esc_attr($send_to_class); ?> " <?php echo $notification_to_type != 'routing' ? "style='display:none';" : ''; ?> > <?php echo $subsetting_open; ?> <td colspan="2"> <div id="gform_notification_to_routing_rules"> <?php $routing_fields = self::get_routing_fields($form, '0'); if (empty($routing_fields)) { ?> <div class="gold_notice"> <p><?php esc_html_e('To use notification routing, your form must have a field supported by conditional logic.', 'gravityforms'); ?> </p> </div> <?php } else { if (empty($notification['routing'])) { $notification['routing'] = array(array()); } $count = sizeof($notification['routing']); $routing_list = ','; for ($i = 0; $i < $count; $i++) { $routing_list .= $i . ','; $routing = $notification['routing'][$i]; $is_invalid_rule = !$is_valid && $_POST['gform_notification_to_type'] == 'routing' && !self::is_valid_notification_email(rgar($routing, 'email')); $class = $is_invalid_rule ? "class='grouting_rule_error'" : ''; ?> <div style='width:99%' <?php echo $class; ?> > <?php esc_html_e('Send to', 'gravityforms'); ?> <input type="text" id="routing_email_<?php echo $i; ?> " value="<?php echo esc_attr(rgar($routing, 'email')); ?> " onkeyup="SetRouting(<?php echo $i; ?> );" /> <?php esc_html_e('if', 'gravityforms'); ?> <select id="routing_field_id_<?php echo $i; ?> " class='gfield_routing_select' onchange='jQuery("#routing_value_<?php echo $i; ?> ").replaceWith(GetRoutingValues(<?php echo $i; ?> , jQuery(this).val())); SetRouting(<?php echo $i; ?> ); '><?php echo self::get_routing_fields($form, rgar($routing, 'fieldId')); ?> </select> <select id="routing_operator_<?php echo $i; ?> " onchange="SetRouting(<?php echo $i; ?> )" class="gform_routing_operator"> <option value="is" <?php echo rgar($routing, 'operator') == 'is' ? "selected='selected'" : ''; ?> ><?php esc_html_e('is', 'gravityforms'); ?> </option> <option value="isnot" <?php echo rgar($routing, 'operator') == 'isnot' ? "selected='selected'" : ''; ?> ><?php esc_html_e('is not', 'gravityforms'); ?> </option> <option value=">" <?php echo rgar($routing, 'operator') == '>' ? "selected='selected'" : ''; ?> ><?php esc_html_e('greater than', 'gravityforms'); ?> </option> <option value="<" <?php echo rgar($routing, 'operator') == '<' ? "selected='selected'" : ''; ?> ><?php esc_html_e('less than', 'gravityforms'); ?> </option> <option value="contains" <?php echo rgar($routing, 'operator') == 'contains' ? "selected='selected'" : ''; ?> ><?php esc_html_e('contains', 'gravityforms'); ?> </option> <option value="starts_with" <?php echo rgar($routing, 'operator') == 'starts_with' ? "selected='selected'" : ''; ?> ><?php esc_html_e('starts with', 'gravityforms'); ?> </option> <option value="ends_with" <?php echo rgar($routing, 'operator') == 'ends_with' ? "selected='selected'" : ''; ?> ><?php esc_html_e('ends with', 'gravityforms'); ?> </option> </select> <?php echo self::get_field_values($i, $form, rgar($routing, 'fieldId'), rgar($routing, 'value')); ?> <a class='gf_insert_field_choice' title='add another rule' onclick='SetRouting(<?php echo $i; ?> ); InsertRouting(<?php echo $i + 1; ?> );'><i class='gficon-add'></i></a> <?php if ($count > 1) { ?> <img src='<?php echo GFCommon::get_base_url(); ?> /images/remove.png' id='routing_delete_<?php echo $i; ?> ' title='remove this email routing' alt='remove this email routing' class='delete_field_choice' style='cursor:pointer;' onclick='DeleteRouting(<?php echo $i; ?> );' /> <?php } ?> </div> <?php } if ($is_invalid_rule) { ?> <span class="validation_message"><?php esc_html_e('Please enter a valid email address for all highlighted routing rules above.', 'gravityforms'); ?> </span> <?php } ?> <input type="hidden" name="routing_count" id="routing_count" value="<?php echo $routing_list; ?> " /> <?php } ?> </div> </td> <?php echo $subsetting_close; ?> </tr> <!-- / to routing --> <?php $ui_settings['notification_to_routing'] = ob_get_contents(); ob_clean(); ?> <tr valign="top"> <th scope="row"> <label for="gform_notification_from_name"> <?php esc_html_e('From Name', 'gravityforms'); ?> <?php gform_tooltip('notification_from_name'); ?> </label> </th> <td> <input type="text" class="fieldwidth-2 merge-tag-support mt-position-right mt-hide_all_fields" name="gform_notification_from_name" id="gform_notification_from_name" value="<?php echo esc_attr(rgget('fromName', $notification)); ?> " /> </td> </tr> <!-- / from name --> <?php $ui_settings['notification_from_name'] = ob_get_contents(); ob_clean(); ?> <tr valign="top"> <th scope="row"> <label for="gform_notification_from"> <?php esc_html_e('From Email', 'gravityforms'); ?> <?php gform_tooltip('notification_from_email'); ?> </label> </th> <td> <input type="text" class="fieldwidth-2 merge-tag-support mt-position-right mt-hide_all_fields" name="gform_notification_from" id="gform_notification_from" value="<?php echo rgempty('from', $notification) ? '{admin_email}' : esc_attr(rgget('from', $notification)); ?> " /> </td> </tr> <!-- / to from email --> <?php $ui_settings['notification_from'] = ob_get_contents(); ob_clean(); ?> <tr valign="top"> <th scope="row"> <label for="gform_notification_reply_to"> <?php $is_invalid_reply_to = !$is_valid && !self::is_valid_notification_email(rgar($notification, 'replyTo')); $class = $is_invalid_reply_to ? ' gfield_error' : ''; ?> <?php esc_html_e('Reply To', 'gravityforms'); ?> <?php gform_tooltip('notification_reply_to'); ?> </label> </th> <td> <input type="text" name="gform_notification_reply_to" id="gform_notification_reply_to" class="merge-tag-support mt-hide_all_fields fieldwidth-2<?php echo $class; ?> " value="<?php echo esc_attr(rgget('replyTo', $notification)); ?> " /> </td> </tr> <!-- / reply to --> <?php $ui_settings['notification_reply_to'] = ob_get_contents(); ob_clean(); ?> <tr valign="top"> <th scope="row"> <label for="gform_notification_bcc"> <?php esc_html_e('BCC', 'gravityforms'); ?> <?php gform_tooltip('notification_bcc'); ?> </label> </th> <td> <?php $is_invalid_bcc = !$is_valid && !self::is_valid_notification_email(rgar($notification, 'bcc')); $class = $is_invalid_bcc ? ' gfield_error' : ''; ?> <input type="text" name="gform_notification_bcc" id="gform_notification_bcc" value="<?php echo esc_attr(rgget('bcc', $notification)); ?> " class="merge-tag-support mt-hide_all_fields fieldwidth-2<?php echo $class; ?> " /> </td> </tr> <!-- / bcc --> <?php $ui_settings['notification_bcc'] = ob_get_contents(); ob_clean(); ?> <?php $is_invalid_subject = !$is_valid && empty($_POST['gform_notification_subject']); $subject_class = $is_invalid_subject ? "class='gfield_error'" : ''; ?> <tr valign="top" <?php echo $subject_class; ?> > <th scope="row"> <label for="gform_notification_subject"> <?php esc_html_e('Subject', 'gravityforms'); ?> <span class="gfield_required">*</span> </label> </th> <td> <input type="text" name="gform_notification_subject" id="gform_notification_subject" class="fieldwidth-1 merge-tag-support mt-hide_all_fields mt-position-right" value="<?php echo esc_attr(rgar($notification, 'subject')); ?> " /> <?php if ($is_invalid_subject) { ?> <span class="validation_message"><?php esc_html_e('Please enter a subject for the notification email', 'gravityforms'); ?> </span><?php } ?> </td> </tr> <!-- / subject --> <?php $ui_settings['notification_subject'] = ob_get_contents(); ob_clean(); ?> <?php $is_invalid_message = !$is_valid && empty($_POST['gform_notification_message']); $message_class = $is_invalid_message ? "class='gfield_error'" : ''; ?> <tr valign="top" <?php echo $message_class; ?> > <th scope="row"> <label for="gform_notification_message"> <?php esc_html_e('Message', 'gravityforms'); ?> <span class="gfield_required">*</span> </label> </th> <td> <span class="mt-gform_notification_message"></span> <?php if (GFCommon::is_wp_version('3.3')) { wp_editor(rgar($notification, 'message'), 'gform_notification_message', array('autop' => false, 'editor_class' => 'merge-tag-support mt-wp_editor mt-manual_position mt-position-right')); } else { ?> <textarea name="gform_notification_message" id="gform_notification_message" class="fieldwidth-1 fieldheight-1"><?php echo esc_html($notification['message']); ?> </textarea><?php } if ($is_invalid_message) { ?> <span class="validation_message"><?php esc_html_e('Please enter a message for the notification email', 'gravityforms'); ?> </span><?php } ?> </td> </tr> <!-- / message --> <?php $ui_settings['notification_message'] = ob_get_contents(); ob_clean(); ?> <tr valign="top"> <th scope="row"> <label for="gform_notification_disable_autoformat"> <?php esc_html_e('Auto-formatting', 'gravityforms'); ?> <?php gform_tooltip('notification_autoformat'); ?> </label> </th> <td> <input type="checkbox" name="gform_notification_disable_autoformat" id="gform_notification_disable_autoformat" value="1" <?php echo empty($notification['disableAutoformat']) ? '' : "checked='checked'"; ?> /> <label for="form_notification_disable_autoformat" class="inline"> <?php esc_html_e('Disable auto-formatting', 'gravityforms'); ?> <?php gform_tooltip('notification_autoformat'); ?> </label> </td> </tr> <!-- / disable autoformat --> <?php $ui_settings['notification_disable_autoformat'] = ob_get_contents(); ob_clean(); ?> <tr valign="top" <?php echo rgar($notification, 'isDefault') ? 'style=display:none;' : ''; ?> > <th scope="row"> <label for="gform_notification_conditional_logic"> <?php esc_html_e('Conditional Logic', 'gravityforms'); gform_tooltip('notification_conditional_logic'); ?> </label> </th> <td> <input type="checkbox" id="notification_conditional_logic" onclick="SetConditionalLogic(this.checked); ToggleConditionalLogic(false, 'notification');" <?php checked(is_array(rgar($notification, 'conditionalLogic')), true); ?> /> <label for="notification_conditional_logic" class="inline"><?php esc_html_e('Enable conditional logic', 'gravityforms'); gform_tooltip('notification_conditional_logic'); ?> </label> <br /> </td> </tr> <!-- / conditional logic --> <tr> <td colspan="2"> <div id="notification_conditional_logic_container" class="gf_animate_sub_settings" style="padding-left:10px;"> <!-- content dynamically created from form_admin.js --> </div> </td> </tr> <?php $ui_settings['notification_conditional_logic'] = ob_get_contents(); ob_clean(); ?> <?php ob_end_clean(); $ui_settings = apply_filters("gform_notification_ui_settings_{$form_id}", apply_filters('gform_notification_ui_settings', $ui_settings, $notification, $form), $notification, $form); return $ui_settings; }
public static function enqueue_admin_scripts() { $scripts = array(); $page = self::get_page(); switch ($page) { case 'new_form': case 'form_list': $scripts = array('gform_gravityforms', 'gform_json', 'gform_form_admin', 'thickbox'); break; case 'form_settings': $scripts = array('gform_gravityforms', 'gform_forms', 'gform_json', 'gform_form_admin', 'gform_placeholder', 'jquery-ui-datepicker', 'gform_masked_input', 'jquery-ui-sortable'); break; case 'form_editor': $thickbox = !GFCommon::is_wp_version("3.3") ? 'gf_thickbox' : 'thickbox'; $scripts = array($thickbox, 'jquery-ui-core', 'jquery-ui-sortable', 'jquery-ui-tabs', 'sack', 'gform_gravityforms', 'gform_forms', 'gform_json', 'gform_form_admin', 'gform_floatmenu', 'gform_menu', 'gform_placeholder', 'jquery-ui-autocomplete'); if (wp_is_mobile()) { $scripts[] = 'jquery-touch-punch'; } break; case 'entry_detail': $scripts = array('gform_json'); break; case 'entry_detail_edit': $scripts = array('gform_gravityforms', 'plupload-all'); break; case 'entry_list': $scripts = array('wp-lists', 'wp-ajax-response', 'thickbox', 'gform_json', 'thickbox', 'gform_field_filter'); break; case 'notification_list': $scripts = array('gform_forms', 'gform_json', 'gform_form_admin'); break; case 'notification_new': case 'notification_edit': $scripts = array('jquery-ui-autocomplete', 'gform_gravityforms', 'gform_placeholder', 'gform_form_admin', 'gform_forms', 'gform_json'); break; case 'confirmation': $scripts = array('gform_form_admin', 'gform_forms', 'gform_gravityforms', 'gform_placeholder', 'gform_json', 'wp-pointer'); break; case 'addons': $scripts = array('thickbox'); break; case 'export_entry': $scripts = array('jquery-ui-datepicker', 'gform_form_admin', 'gform_field_filter'); break; } if (empty($scripts)) { return; } foreach ($scripts as $script) { wp_enqueue_script($script); } GFCommon::localize_gform_gravityforms_multifile(); }
public static function forms_page($form_id) { global $wpdb; if (!GFCommon::ensure_wp_version()) { return; } $update_result = ""; if (rgpost("operation") == "delete") { check_admin_referer('gforms_delete_form', 'gforms_delete_form'); RGFormsModel::delete_form($form_id); ?> <script type="text/javascript"> jQuery(document).ready( function(){document.location.href="?page=gf_edit_forms";} ); </script> <?php exit; } else { if (!rgempty("gform_meta")) { check_admin_referer("gforms_update_form_{$form_id}", 'gforms_update_form'); $update_result = self::save_form_info($form_id, rgpost("gform_meta", false)); } } if (!GFCommon::is_wp_version("3.3")) { ?> <script type='text/javascript'> /* <![CDATA[ *Needed for custom version of thickbox */ var thickboxL10n = { loadingAnimation: "<?php echo includes_url(); ?> js/thickbox/loadingAnimation.gif", closeImage: "<?php echo includes_url(); ?> js/thickbox/tb-close.png" }; try{convertEntities(thickboxL10n);}catch(e){}; /* ]]> */ </script> <?php wp_register_script("gf_thickbox", GFCommon::get_base_url() . "/js/thickbox.js", null, GFCommon::$version); wp_register_style("gf_thickbox", GFCommon::get_base_url() . "/js/thickbox.css", null, GFCommon::$version); wp_print_scripts(array("gf_thickbox")); wp_print_styles(array("gf_thickbox")); } else { wp_print_scripts(array("thickbox")); wp_print_styles(array("thickbox")); } wp_register_script("gforms_gravityforms", GFCommon::get_base_url() . "/js/gravityforms.js", null, GFCommon::$version); wp_print_scripts(array("jquery-ui-core", "jquery-ui-sortable", "jquery-ui-tabs", "sack", "gforms_gravityforms")); require_once GFCommon::get_base_path() . '/currency.php'; ?> <script type="text/javascript"> var gf_global = { "gf_currency_config" : <?php echo json_encode(RGCurrency::get_currency(GFCommon::get_currency())); ?> }; var gf_vars = { "save": "<?php _e("Save", "gravityforms"); ?> ", "update": "<?php _e("Update", "gravityforms"); ?> ", "baseUrl": "<?php echo GFCommon::get_base_url(); ?> ", "previousLabel" : "<?php _e("Previous", "gravityforms"); ?> ", "selectFormat" : "<?php _e("Select a format", "gravityforms"); ?> ", "otherChoiceValue" : "<?php echo GFCommon::get_other_choice_value(); ?> ", "editToViewAll" : "<?php _e("5 of %d items shown. Edit field to view all", "gravityforms"); ?> ", "enterValue" : "<?php _e("Enter a value", "gravityforms"); ?> ", "formTitle" : "<?php _e("Untitled Form", "gravityforms"); ?> ", "formDescription" : "<?php _e("We would love to hear from you! Please fill out this form and we will get in touch with you shortly.", "gravityforms"); ?> ", "formConfirmationMessage" : "<?php _e("Thanks for contacting us! We will get in touch with you shortly.", "gravityforms"); ?> ", "buttonText" : "<?php _e("Submit", "gravityforms"); ?> ", /*"showValues" : "<?php _e("show values", "gravityforms"); ?> ", "hideValues" : "<?php _e(" hide values", "gravityforms"); ?> ",*/ "loading" : "<?php _e("Loading...", "gravityforms"); ?> " }; </script> <script src="<?php echo GFCommon::get_base_url(); ?> /js/floatmenu_init.js?ver=<?php echo GFCommon::$version; ?> "></script> <script src="<?php echo GFCommon::get_base_url(); ?> /js/menu.js?ver=<?php echo GFCommon::$version; ?> "></script> <script src="<?php echo GFCommon::get_base_url(); ?> /js/jquery.json-1.3.js?ver=<?php echo GFCommon::$version; ?> "></script> <script src="<?php echo GFCommon::get_base_url(); ?> /js/jquery.simplemodal-1.3.min.js?ver=<?php echo GFCommon::$version; ?> "></script> <script src="<?php echo GFCommon::get_base_url(); ?> /js/forms.js?ver=<?php echo GFCommon::$version; ?> "></script> <script src="<?php echo GFCommon::get_base_url(); ?> /js/jquery-ui/ui.datepicker.js?ver=<?php echo GFCommon::$version; ?> "></script> <script src="<?php echo GFCommon::get_base_url(); ?> /js/jquery.placeholder.1.2.min.js?ver=<?php echo GFCommon::$version; ?> "></script> <link rel="stylesheet" href="<?php echo GFCommon::get_base_url(); ?> /css/jquery-ui-1.7.2.custom.css?ver=<?php echo GFCommon::$version; ?> " type="text/css" /> <link rel="stylesheet" href="<?php echo GFCommon::get_base_url(); ?> /css/admin.css?ver=<?php echo GFCommon::$version; ?> " type="text/css" /> <script type="text/javascript"> jQuery(document).ready( function() { jQuery('.datepicker').datepicker({showOn: "both", buttonImage: "<?php echo GFCommon::get_base_url(); ?> /images/calendar.png", buttonImageOnly: true} ); } ); function has_entry(fieldNumber){ var submitted_fields = new Array(<?php echo RGFormsModel::get_submitted_fields($form_id); ?> ); for(var i=0; i<submitted_fields.length; i++){ if(submitted_fields[i] == fieldNumber) return true; } return false; } function InsertVariable(element_id, callback, variable){ if(!variable) variable = jQuery('#' + element_id + '_variable_select').val(); var messageElement = jQuery("#" + element_id); if(document.selection) { // Go the IE way messageElement[0].focus(); document.selection.createRange().text=variable; } else if(messageElement[0].selectionStart) { // Go the Gecko way obj = messageElement[0] obj.value = obj.value.substr(0, obj.selectionStart) + variable + obj.value.substr(obj.selectionEnd, obj.value.length); } else { messageElement.val(variable + messageElement.val()); } jQuery('#' + element_id + '_variable_select')[0].selectedIndex = 0; if(callback && window[callback]){ window[callback].call(); } } function InsertPostImageVariable(element_id, callback){ var variable = jQuery('#' + element_id + '_image_size_select').attr("variable"); var size = jQuery('#' + element_id + '_image_size_select').val(); if(size){ variable = "{" + variable + ":" + size + "}"; InsertVariable(element_id, callback, variable); jQuery('#' + element_id + '_image_size_select').hide(); jQuery('#' + element_id + '_image_size_select')[0].selectedIndex = 0; } } function InsertPostContentVariable(element_id, callback){ var variable = jQuery('#' + element_id + '_variable_select').val(); var regex=/{([^{]*?: *(\d+\.?\d*).*?)}/; matches = regex.exec(variable); if(!matches){ InsertVariable(element_id, callback); return; } variable = matches[1]; field_id = matches[2]; for(var i=0; i<form["fields"].length; i++){ if(form["fields"][i]["id"] == field_id){ if(form["fields"][i]["type"] == "post_image"){ jQuery('#' + element_id + '_image_size_select').attr("variable", variable); jQuery('#' + element_id + '_image_size_select').show(); return; } } } InsertVariable(element_id, callback); } </script> <style> .field_type li { float:left; width:50%; } .field_type input { width: 120px; padding: 0 10px 2px !important; } .description-list { margin: 10px 0; padding: 0 20px; } .description-list li { padding: 0; list-style: disc; overflow: visible; } .custom_mask_instructions h5 { margin: 0 0 4px; font-size: 11px; } .custom_mask_instructions span.label { font-size: 11px; display: -moz-inline-stack; display: inline-block; zoom: 1; *display: inline; width: 80px; } .custom_mask_instructions li { margin: 0 0 14px; } .gf_calculation_buttons { float: right; margin-right: 55px; } .gf_calculation_buttons input[type=button]{ width: 22px; float: left; } #field_calculation_formula_variable_select { width: 150px; } #calculation_options p { margin: 0 0 14px; padding: 0; } </style> <?php $form = !rgempty("meta", $update_result) ? rgar($update_result, "meta") : RGFormsModel::get_form_meta($form_id); $form = RGFormsModel::add_default_properties($form); if ($form == null) { $form = array("fields" => array()); } $form = apply_filters("gform_admin_pre_render_" . $form_id, apply_filters("gform_admin_pre_render", $form)); if (isset($form['id'])) { echo "<script type=\"text/javascript\">var form = " . GFCommon::json_encode($form) . ";</script>"; } else { echo "<script type=\"text/javascript\">var form = new Form();</script>"; } ?> <?php echo GFCommon::get_remote_message(); ?> <div class="wrap gforms_edit_form <?php echo GFCommon::get_browser_class(); ?> "> <div class="icon32" id="gravity-edit-icon"><br></div> <h2><?php echo empty($form_id) ? __("New Form", "gravityforms") : __("Form Editor :", "gravityforms") . " " . esc_html($form["title"]); ?> </h2> <?php RGForms::top_toolbar(); ?> <?php switch (rgar($update_result, "status")) { case "invalid_json": ?> <div class="error_base gform_editor_status" id="after_update_error_dialog"> <?php _e("There was an error while saving your form.", "gravityforms"); ?> <?php printf(__("Please %scontact our support team%s.", "gravityforms"), '<a href="http://www.gravityhelp.com">', '</a>'); ?> </div> <?php break; case "duplicate_title": ?> <div class="error_base gform_editor_status" id="after_update_error_dialog"> <?php _e("The form title you have entered is already taken. Please enter an unique form title.", "gravityforms"); ?> </div> <?php break; default: if (!empty($update_result)) { ?> <div class="updated_base gform_editor_status" id="after_update_dialog"> <strong><?php _e("Form updated successfully.", "gravityforms"); ?> </strong> </div> <?php } break; } ?> <table width="100%"> <tr> <td class="pad_top" valign="top"> <div id="gform_heading" class="selectable"> <form method="post" id="form_delete"> <?php wp_nonce_field('gforms_delete_form', 'gforms_delete_form'); ?> <div class="gform_admin_icons"> <div class="gform_admin_header_title"><?php _e("Form Settings", "gravityforms"); if (!rgempty("id", $_GET)) { echo " : " . __("Form ID", "gravityforms") . " " . rgget("id"); } ?> </div> <a href="javascript:void(0);" class="form_edit_icon edit_icon_collapsed" title="<?php _e("Edit Form's properties", "gravityforms"); ?> "><?php _e("Edit", "gravityforms"); ?> </a> </div> <input type="hidden" value="delete" name="operation"/> </form> <h3 id="gform_title"></h3> <span id="gform_description"> </span> <div id="form_settings" style="display:none;"> <ul> <li style="width:100px; padding:0px;"><a href="#gform_settings_tab_1"><?php _e("Properties", "gravityforms"); ?> </a></li> <li style="width:100px; padding:0px; "><a href="#gform_settings_tab_2"><?php _e("Advanced", "gravityforms"); ?> </a></li> <li style="width:120px; padding:0px; "><a href="#gform_settings_tab_3"><?php _e("Confirmation", "gravityforms"); ?> </a></li> </ul> <div id="gform_settings_tab_1"> <ul class="gforms_form_settings"> <?php do_action("gform_properties_settings", 100, $form_id); ?> <li> <label for="form_title_input" style="display:block;"> <?php _e("Title", "gravityforms"); ?> <?php gform_tooltip("form_tile"); ?> </label> <input type="text" id="form_title_input" class="fieldwidth-3" onkeyup="UpdateFormProperty('title', this.value);" /> </li> <?php do_action("gform_properties_settings", 200, $form_id); ?> <li> <label for="form_description_input" style="display:block;"> <?php _e("Description", "gravityforms"); ?> <?php gform_tooltip("form_description"); ?> </label> <textarea id="form_description_input" class="fieldwidth-3 fieldheight-2" onkeyup="UpdateFormProperty('description', this.value);"></textarea> </li> <?php do_action("gform_properties_settings", 300, $form_id); ?> <li class="gform_setting_left_half"> <label for="form_label_placement" style="display:block;"> <?php _e("Label Placement", "gravityforms"); ?> <?php gform_tooltip("form_label_placement"); ?> </label> <select id="form_label_placement" onchange="UpdateLabelPlacement();"> <option value="top_label"><?php _e("Top aligned", "gravityforms"); ?> </option> <option value="left_label"><?php _e("Left aligned", "gravityforms"); ?> </option> <option value="right_label"><?php _e("Right aligned", "gravityforms"); ?> </option> </select> </li> <?php do_action("gform_properties_settings", 400, $form_id); ?> <li id='description_placement_setting' class="gform_setting_right_half"> <label for="form_description_placement" style="display:block;"> <?php _e("Description Placement", "gravityforms"); ?> <?php gform_tooltip("form_description_placement"); ?> </label> <select id="form_description_placement" onchange="UpdateDescriptionPlacement();"> <option value="below"><?php _e("Below inputs", "gravityforms"); ?> </option> <option value="above"><?php _e("Above inputs", "gravityforms"); ?> </option> </select> </li> <?php do_action("gform_properties_settings", 500, $form_id); ?> </ul> </div> <div id="gform_settings_tab_2"> <ul class="gforms_form_settings"> <?php do_action("gform_advanced_settings", 100, $form_id); ?> <li> <label><?php _e("Form Button", "gravityforms"); ?> </label> <div class="form_button_options"> <input type="radio" id="form_button_text" name="form_button" value="text" onclick="ToggleButton();"/> <label for="form_button_text" class="inline"> <?php _e("Default", "gravityforms"); ?> <?php gform_tooltip("form_button_text"); ?> </label> <input type="radio" id="form_button_image" name="form_button" value="image" onclick="ToggleButton();"/> <label for="form_button_image" class="inline"> <?php _e("Image", "gravityforms"); ?> <?php gform_tooltip("form_button_image"); ?> </label> <div id="form_button_text_container" style="margin-top:5px;"> <label for="form_button_text_input" class="float_label"> <?php _e("Text:", "gravityforms"); ?> </label> <input type="text" id="form_button_text_input" class="input_size_b" size="40" /> </div> <div id="form_button_image_container" style="margin-top:5px;"> <label for="form_button_image_url" class="inline"> <?php _e("Image Path:", "gravityforms"); ?> </label> <input type="text" id="form_button_image_url" size="45"/> </div> <div style="margin-top:9px;"> <input type="checkbox" id="form_button_conditional_logic" onclick="SetButtonConditionalLogic(this.checked); ToggleConditionalLogic(false, 'form_button');"/> <label for="form_button_conditional_logic" class="inline"><?php _e("Enable Conditional Logic", "gravityforms"); gform_tooltip("form_button_conditional_logic"); ?> </label> <br/> <div id="form_button_conditional_logic_container" style="display:none; padding-top:10px;"> <!-- content dynamically created from js.php --> </div> </div> </div> </li> <?php do_action("gform_advanced_settings", 200, $form_id); ?> <li> <label for="form_css_class" style="display:block;"> <?php _e("CSS Class Name", "gravityforms"); ?> <?php gform_tooltip("form_css_class"); ?> </label> <input type="text" id="form_css_class" class="fieldwidth-3"/> </li> <?php do_action("gform_advanced_settings", 300, $form_id); ?> <li> <input type="checkbox" id="gform_limit_entries" onclick="ToggleLimitEntry();"/> <label for="gform_limit_entries"><?php _e("Limit number of entries", "gravityforms"); ?> <?php gform_tooltip("form_limit_entries"); ?> </label> <br/> <div id="gform_limit_entries_container" style="display:none;"> <br/> <label for="gform_limit_entries_count" style="display:block;"> <?php _e("Number of Entries", "gravityforms"); ?> </label> <input type="text" id="gform_limit_entries_count" style="width:70px;"/> <select id="gform_limit_entries_period" style="height:22px;"> <option value=""><?php _e("total entries", "gravityforms"); ?> </option> <option value="day"><?php _e("per day", "gravityforms"); ?> </option> <option value="week"><?php _e("per week", "gravityforms"); ?> </option> <option value="month"><?php _e("per month", "gravityforms"); ?> </option> <option value="year"><?php _e("per year", "gravityforms"); ?> </option> </select> <br/><br/> <label for="form_limit_entries_message" style="display:block;"> <?php _e("Entry Limit Reached Message", "gravityforms"); ?> </label> <textarea id="form_limit_entries_message" class="fieldwidth-3"></textarea> </div> </li> <?php do_action("gform_advanced_settings", 400, $form_id); ?> <li> <input type="checkbox" id="gform_schedule_form" onclick="ToggleSchedule();"/> <label for="gform_schedule_form"><?php _e("Schedule form", "gravityforms"); ?> <?php gform_tooltip("form_schedule_form"); ?> </label> <br/> <div id="gform_schedule_form_container" style="display:none;"> <br/> <label for="gform_schedule_start" style="display:block;"> <?php _e("Start Date/Time", "gravityforms"); ?> </label> <input type="text" id="gform_schedule_start" name="gform_schedule_start" class="datepicker"/> <select id="gform_schedule_start_hour"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> <option value="6">6</option> <option value="7">7</option> <option value="8">8</option> <option value="9">9</option> <option value="10">10</option> <option value="11">11</option> <option value="12">12</option> </select> : <select id="gform_schedule_start_minute"> <option value="00">00</option> <option value="15">15</option> <option value="30">30</option> <option value="45">45</option> </select> <select id="gform_schedule_start_ampm"> <option value="am">AM</option> <option value="pm">PM</option> </select> <br/><br/> <label for="gform_schedule_end" style="display:block;"> <?php _e("End Date/Time", "gravityforms"); ?> </label> <input type="text" id="gform_schedule_end" class="datepicker"/> <select id="gform_schedule_end_hour"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> <option value="6">6</option> <option value="7">7</option> <option value="8">8</option> <option value="9">9</option> <option value="10">10</option> <option value="11">11</option> <option value="12">12</option> </select> : <select id="gform_schedule_end_minute"> <option value="00">00</option> <option value="15">15</option> <option value="30">30</option> <option value="45">45</option> </select> <select id="gform_schedule_end_ampm"> <option value="am">AM</option> <option value="pm">PM</option> </select> <br/><br/> <label for="gform_schedule_message" style="display:block;"> <?php _e("Form Expired Message", "gravityforms"); ?> </label> <textarea id="gform_schedule_message" class="fieldwidth-3"></textarea> </div> </li> <?php do_action("gform_advanced_settings", 500, $form_id); ?> <li> <input type="checkbox" id="gform_enable_honeypot" /> <label for="gform_enable_honeypot"><?php _e("Enable anti-spam honeypot", "gravityforms"); ?> <?php gform_tooltip("form_honeypot"); ?> </label> </li> <?php do_action("gform_advanced_settings", 600, $form_id); ?> <li> <input type="checkbox" id="gform_enable_animation" /> <label for="gform_enable_animation"><?php _e("Enable animation", "gravityforms"); ?> <?php gform_tooltip("form_animation"); ?> </label> </li> <?php do_action("gform_advanced_settings", 700, $form_id); ?> <li> <input type="checkbox" id="gform_require_login" onclick="ToggleRequireLogin();"/> <label for="gform_require_login"><?php _e("Require user to be logged in", "gravityforms"); ?> <?php gform_tooltip("form_require_login"); ?> </label> <br/> <div id="gform_require_login_container" style="display:none;"> <br/> <label for="gform_require_login_message" style="display:block;"> <?php _e("Require Login Message", "gravityforms"); ?> <?php gform_tooltip("form_require_login_message"); ?> </label> <textarea id="gform_require_login_message" class="fieldwidth-3"></textarea> </div> </li> <?php do_action("gform_advanced_settings", 800, $form_id); ?> </ul> </div> <div id="gform_settings_tab_3"> <ul class="gforms_form_settings"> <?php do_action("gform_confirmation_settings", 100, $form_id); ?> <li> <label><?php _e("Confirmation Message", "gravityforms"); ?> </label> <div style="margin:4px 0;"> <input type="radio" id="form_confirmation_show_message" name="form_confirmation" value="message" onclick="ToggleConfirmation();" /> <label for="form_confirmation_show_message" class="inline"> <?php _e("Text", "gravityforms"); ?> <?php gform_tooltip("form_confirmation_message"); ?> </label> <input type="radio" id="form_confirmation_show_page" name="form_confirmation" value="page" onclick="ToggleConfirmation();" /> <label for="form_confirmation_show_page" class="inline"> <?php _e("Page", "gravityforms"); ?> <?php gform_tooltip("form_redirect_to_webpage"); ?> </label> <input type="radio" id="form_confirmation_redirect" name="form_confirmation" value="redirect" onclick="ToggleConfirmation();" /> <label for="form_confirmation_redirect" class="inline"> <?php _e("Redirect", "gravityforms"); ?> <?php gform_tooltip("form_redirect_to_url"); ?> </label> <div id="form_confirmation_message_container" style="padding-top:10px;"> <div> <?php GFCommon::insert_variables($form["fields"], "form_confirmation_message"); ?> </div> <textarea id="form_confirmation_message" style="width:400px; height:300px;" ></textarea> <div style="margin-top:5px;"> <input type="checkbox" id="form_disable_autoformatting" /> <label for="form_disable_autoformatting"><?php _e("Disable Auto-formatting", "gravityforms"); ?> <?php gform_tooltip("form_confirmation_autoformat"); ?> </label> </div> </div> <div id="form_confirmation_page_container" style="margin-top:5px;"> <div> <?php wp_dropdown_pages(array("name" => "form_confirmation_page", "show_option_none" => __("Select a page", "gravityforms"))); ?> </div> </div> <div id="form_confirmation_redirect_container" style="margin-top:5px;"> <div> <input type="text" id="form_confirmation_url" style="width:98%;"/> </div> <div style="margin-top:15px;"> <input type="checkbox" id="form_redirect_use_querystring" onclick="ToggleQueryString()"/> <label for="form_redirect_use_querystring"><?php _e("Pass Field Data Via Query String", "gravityforms"); ?> <?php gform_tooltip("form_redirect_querystring"); ?> </label> <br/> <div id="form_redirect_querystring_container" style="display:none;"> <div style="margin-top:6px;"> <?php GFCommon::insert_variables($form["fields"], "form_redirect_querystring", true, "", "", 40, null, "url"); ?> </div> <textarea name="form_redirect_querystring" id="form_redirect_querystring" style="width:98%; height:100px;"></textarea><br/> <div class="instruction"><?php _e("Sample: phone={Phone:1}&email{Email:2}", "gravityforms"); ?> </div> </div> </div> </div> </div> </li> <?php do_action("gform_confirmation_settings", 200, $form_id); ?> </ul> </div> </div> </div> <?php $has_pages = GFCommon::has_pages($form); ?> <div id="gform_pagination" class="selectable gform_settings_container" style="display:<?php echo $has_pages ? "block" : "none"; ?> ;"> <div class="settings_control_container"> <a href="javascript:void(0);" class="form_edit_icon edit_icon_collapsed" title="<?php _e("Edit Last Page", "gravityforms"); ?> "><?php _e("Edit", "gravityforms"); ?> </a> </div> <img src="<?php echo GFCommon::get_base_url() . "/images/gf_pagebreak_first.png"; ?> " alt="<?php __("First Page Options", "gravityforms"); ?> " title="<?php __("First Page Options", "gravityforms"); ?> " /> <div id="pagination_settings" style="display: none;"> <ul> <li style="width:100px; padding:0px;"><a href="#gform_pagination_settings_tab_1"><?php _e("Properties", "gravityforms"); ?> </a></li> <li style="width:100px; padding:0px;"><a href="#gform_pagination_settings_tab_2"><?php _e("Advanced", "gravityforms"); ?> </a></li> </ul> <div id="gform_pagination_settings_tab_1"> <ul class="gforms_form_settings"> <li> <label for="pagination_type_container"> <?php _e("Progress Indicator", "gravityforms"); ?> <?php gform_tooltip("form_progress_indicator"); ?> </label> <div id="pagination_type_container" class="pagination_container" > <input type="radio" id="pagination_type_percentage" name="pagination_type" value="percentage" onclick='InitPaginationOptions();'/> <label for="pagination_type_percentage" class="inline"> <?php _e("Progress Bar", "gravityforms"); ?> </label> <input type="radio" id="pagination_type_steps" name="pagination_type" value="steps" onclick='InitPaginationOptions();'/> <label for="pagination_type_steps" class="inline"> <?php _e("Steps", "gravityforms"); ?> </label> <input type="radio" id="pagination_type_none" name="pagination_type" value="none" onclick='InitPaginationOptions();'/> <label for="pagination_type_none" class="inline"> <?php _e("None", "gravityforms"); ?> </label> </div> </li> <li id="percentage_style_setting"> <div class="percentage_style_setting" style="float:left; z-index: 99;"> <label for="percentage_style" style="display:block;"> <?php _e("Style", "gravityforms"); ?> <?php gform_tooltip("form_percentage_style"); ?> </label> <select id="percentage_style" onchange="TogglePercentageStyle();"> <option value="blue"> <?php _e("Blue", "gravityforms"); ?> </option> <option value="gray"> <?php _e("Gray", "gravityforms"); ?> </option> <option value="green"> <?php _e("Green", "gravityforms"); ?> </option> <option value="orange"> <?php _e("Orange", "gravityforms"); ?> </option> <option value="red"> <?php _e("Red", "gravityforms"); ?> </option> <option value="custom"> <?php _e("Custom", "gravityforms"); ?> </option> </select> </div> <div class="percentage_custom_container" style="float:left; padding-left:20px;"> <label for="percentage_background_color" style="display:block;"> <?php _e("Text Color", "gravityforms"); ?> </label> <?php self::color_picker("percentage_style_custom_color", ""); ?> </div> <div class="percentage_custom_container" style="float:left; padding-left:20px;"> <label for="percentage_background_bgcolor" style="display:block;"> <?php _e("Background Color", "gravityforms"); ?> </label> <?php self::color_picker("percentage_style_custom_bgcolor", ""); ?> </div> </li> <li id="page_names_setting"> <label for="page_names_container"> <?php _e("Page Names", "gravityforms"); ?> <?php gform_tooltip("form_page_names"); ?> </label> <div id="page_names_container" style="margin-top:5px;"> <!-- Populated dynamically from js.php --> </div> </li> <li id="percentage_confirmation_display_setting"> <div class="percentage_confirmation_display_setting"> <input type="checkbox" id="percentage_confirmation_display" onclick="TogglePercentageConfirmationText()"> <label for="percentage_confirmation_display" class="inline"> <?php _e("Display completed progress bar on confirmation", "gravityforms"); ?> <?php gform_tooltip("form_percentage_confirmation_display"); ?> </label> </div> </li> <li id="percentage_confirmation_page_name_setting"> <div class="percentage_confirmation_page_name_setting"> <label for="percentage_confirmation_page_name" style="display:block;"> <?php _e("Completion Text", "gravityforms"); ?> <?php gform_tooltip("percentage_confirmation_page_name"); ?> </label> <input type="text" id="percentage_confirmation_page_name" class="fieldwidth-3"/> </div> </li> </ul> </div> <div id="gform_pagination_settings_tab_2"> <ul class="gforms_form_settings"> <li> <label for="first_page_css_class" style="display:block;"> <?php _e("CSS Class Name", "gravityforms"); ?> <?php gform_tooltip("form_field_css_class"); ?> </label> <input type="text" id="first_page_css_class" size="30"/> </li> </ul> </div> </div> </div> <?php $description_class = rgar($form, "descriptionPlacement") == "above" ? "description_above" : "description_below"; ?> <ul id="gform_fields" class="<?php echo rgar($form, "labelPlacement") . " " . $description_class; ?> " style="position: relative;"> <?php if (is_array($form["fields"])) { require_once GFCommon::get_base_path() . "/form_display.php"; foreach ($form["fields"] as $field) { echo GFFormDisplay::get_field($field, "", true); } } ?> </ul> <div id="gform_last_page_settings" class="selectable gform_settings_container" style="display:<?php echo $has_pages ? "block" : "none"; ?> ;"> <div class="settings_control_container"> <a href="javascript:void(0);" class="form_edit_icon edit_icon_collapsed" title="<?php _e("Edit Last Page", "gravityforms"); ?> "><?php _e("Edit", "gravityforms"); ?> </a> </div> <img src="<?php echo GFCommon::get_base_url() . "/images/gf_pagebreak_end.png"; ?> " alt="<?php __("Last Page Options", "gravityforms"); ?> " title="<?php __("Last Page Options", "gravityforms"); ?> " /> <div id="last_page_settings" style="display:none;"> <ul> <li style="width:100px; padding:0px;"><a href="#gform_last_page_settings_tab_1"><?php _e("Properties", "gravityforms"); ?> </a></li> </ul> <div id="gform_last_page_settings_tab_1"> <ul class="gforms_form_settings"> <li> <label for="last_page_button_container"> <?php _e("Previous Button", "gravityforms"); ?> <?php gform_tooltip("form_field_last_page_button"); ?> </label> <div class="last_page_button_options" id="last_page_button_container"> <input type="radio" id="last_page_button_text" name="last_page_button" value="text" onclick="TogglePageButton('last_page');"/> <label for="last_page_button_text" class="inline"> <?php _e("Default", "gravityforms"); ?> <?php gform_tooltip("previous_button_text"); ?> </label> <input type="radio" id="last_page_button_image" name="last_page_button" value="image" onclick="TogglePageButton('last_page');"/> <label for="last_page_button_image" class="inline"> <?php _e("Image", "gravityforms"); ?> <?php gform_tooltip("previous_button_image"); ?> </label> <div id="last_page_button_text_container" style="margin-top:5px;"> <label for="last_page_button_text_input" class="inline"> <?php _e("Text:", "gravityforms"); ?> </label> <input type="text" id="last_page_button_text_input" class="input_size_b" size="40" /> </div> <div id="last_page_button_image_container" style="margin-top:5px;"> <label for="last_page_button_image_url" class="inline"> <?php _e("Image Path:", "gravityforms"); ?> </label> <input type="text" id="last_page_button_image_url" size="45"/> </div> </div> </li> </ul> </div> </div> </div> <div> <div id="after_insert_dialog" style="display:none;"> <h3><?php _e("You have successfully saved your form!", "gravityforms"); ?> </h3> <p><?php _e("What would you like to do next?", "gravityforms"); ?> </p> <div class="new-form-option"><a title="<?php _e("Preview this form", "gravityforms"); ?> " id="preview_form_link" href="<?php echo site_url(); ?> /?gf_page=preview&id={formid}" target="_blank"><?php _e("Preview this Form", "gravityforms"); ?> </a></div> <?php if (GFCommon::current_user_can_any("gravityforms_edit_forms")) { ?> <div class="new-form-option"><a title="<?php _e("Setup email notifications for this form", "gravityforms"); ?> " id="notification_form_link" href="#"><?php _e("Setup Email Notifications for this Form", "gravityforms"); ?> </a></div> <?php } ?> <div class="new-form-option"><a title="<?php _e("Continue editing this form", "gravityforms"); ?> " id="edit_form_link" href="#"><?php _e("Continue Editing this Form", "gravityforms"); ?> </a></div> <div class="new-form-option"><a title="<?php _e("I am done. Take me back to form list", "gravityforms"); ?> " href="?page=gf_edit_forms"><?php _e("Return to Form List", "gravityforms"); ?> </a></div> </div> </div> <div id="field_settings" style="display: none;"> <ul> <li style="width:100px; padding:0px;"><a href="#gform_tab_1"><?php _e("Properties", "gravityforms"); ?> </a></li> <li style="width:100px; padding:0px; "><a href="#gform_tab_2"><?php _e("Advanced", "gravityforms"); ?> </a></li> </ul> <div id="gform_tab_1"> <ul> <?php do_action("gform_field_standard_settings", 0, $form_id); ?> <li class="label_setting field_setting"> <label for="field_label"> <?php _e("Field Label", "gravityforms"); ?> <?php gform_tooltip("form_field_label"); ?> <?php gform_tooltip("form_field_label_html"); ?> </label> <input type="text" id="field_label" class="fieldwidth-3" onkeyup="SetFieldLabel(this.value)" size="35"/> </li> <li class="product_field_setting field_setting"> <label for="product_field"> <?php _e("Product Field", "gravityforms"); ?> <?php gform_tooltip("form_field_product"); ?> </label> <select id="product_field" onchange="SetFieldProperty('productField', jQuery(this).val());"> <!-- will be populated when field is selected (js.php) --> </select> </li> <?php do_action("gform_field_standard_settings", 25, $form_id); ?> <li class="product_field_type_setting field_setting"> <label for="product_field_type"> <?php _e("Field Type", "gravityforms"); ?> <?php gform_tooltip("form_field_type"); ?> </label> <select id="product_field_type" onchange="if(jQuery(this).val() == '') return; jQuery('#field_settings').slideUp(function(){StartChangeProductType(jQuery('#product_field_type').val());});"> <option value="singleproduct"><?php _e("Single Product", "gravityforms"); ?> </option> <option value="select"><?php _e("Drop Down", "gravityforms"); ?> </option> <option value="radio"><?php _e("Radio Buttons", "gravityforms"); ?> </option> <option value="price"><?php _e("User Defined Price", "gravityforms"); ?> </option> <option value="hiddenproduct"><?php _e("Hidden", "gravityforms"); ?> </option> <option value="calculation"><?php _e("Calculation", "gravityforms"); ?> </option> </select> </li> <?php do_action("gform_field_standard_settings", 37, $form_id); ?> <li class="shipping_field_type_setting field_setting"> <label for="shipping_field_type"> <?php _e("Field Type", "gravityforms"); ?> <?php gform_tooltip("form_field_type"); ?> </label> <select id="shipping_field_type" onchange="if(jQuery(this).val() == '') return; jQuery('#field_settings').slideUp(function(){StartChangeShippingType(jQuery('#shipping_field_type').val());});"> <option value="singleshipping"><?php _e("Single Method", "gravityforms"); ?> </option> <option value="select"><?php _e("Drop Down", "gravityforms"); ?> </option> <option value="radio"><?php _e("Radio Buttons", "gravityforms"); ?> </option> </select> </li> <?php do_action("gform_field_standard_settings", 50, $form_id); ?> <li class="base_price_setting field_setting"> <label for="field_base_price"> <?php _e("Price", "gravityforms"); ?> <?php gform_tooltip("form_field_base_price"); ?> </label> <input type="text" id="field_base_price" onchange="SetBasePrice(this.value)"/> </li> <?php do_action("gform_field_standard_settings", 75, $form_id); ?> <li class="disable_quantity_setting field_setting"> <input type="checkbox" name="field_disable_quantity" id="field_disable_quantity" onclick="SetDisableQuantity(jQuery(this).is(':checked'));"/> <label for="field_disable_quantity" class="inline"> <?php _e("Disable quantity field", "gravityforms"); ?> <?php gform_tooltip("form_field_disable_quantity"); ?> </label> </li> <?php do_action("gform_field_standard_settings", 100, $form_id); ?> <li class="option_field_type_setting field_setting"> <label for="option_field_type"> <?php _e("Field Type", "gravityforms"); ?> <?php gform_tooltip("form_field_type"); ?> </label> <select id="option_field_type" onchange="if(jQuery(this).val() == '') return; jQuery('#field_settings').slideUp(function(){StartChangeInputType(jQuery('#option_field_type').val());});"> <option value="select"><?php _e("Drop Down", "gravityforms"); ?> </option> <option value="checkbox"><?php _e("Checkboxes", "gravityforms"); ?> </option> <option value="radio"><?php _e("Radio Buttons", "gravityforms"); ?> </option> </select> </li> <?php do_action("gform_field_standard_settings", 125, $form_id); ?> <li class="donation_field_type_setting field_setting"> <label for="donation_field_type"> <?php _e("Field Type", "gravityforms"); ?> <?php gform_tooltip("form_field_type"); ?> </label> <select id="donation_field_type" onchange="if(jQuery(this).val() == '') return; jQuery('#field_settings').slideUp(function(){StartChangeDonationType(jQuery('#donation_field_type').val());});"> <option value="select"><?php _e("Drop Down", "gravityforms"); ?> </option> <option value="donation"><?php _e("User Defined Price", "gravityforms"); ?> </option> <option value="radio"><?php _e("Radio Buttons", "gravityforms"); ?> </option> </select> </li> <?php do_action("gform_field_standard_settings", 150, $form_id); ?> <li class="quantity_field_type_setting field_setting"> <label for="quantity_field_type"> <?php _e("Field Type", "gravityforms"); ?> <?php gform_tooltip("form_field_type"); ?> </label> <select id="quantity_field_type" onchange="if(jQuery(this).val() == '') return; jQuery('#field_settings').slideUp(function(){StartChangeInputType(jQuery('#quantity_field_type').val());});"> <option value="number"><?php _e("Number", "gravityforms"); ?> </option> <option value="select"><?php _e("Drop Down", "gravityforms"); ?> </option> <option value="hidden"><?php _e("Hidden", "gravityforms"); ?> </option> </select> </li> <?php do_action("gform_field_standard_settings", 200, $form_id); ?> <li class="content_setting field_setting"> <label for="field_content"> <?php _e("Content", "gravityforms"); ?> <?php gform_tooltip("form_field_content"); ?> </label> <?php self::insert_variable_prepopulate("field_content", "HtmlContentCallback"); ?> <br/> <textarea id="field_content" class="fieldwidth-3 fieldheight-1" onkeyup="SetFieldProperty('content', this.value);"></textarea> </li> <?php do_action("gform_field_standard_settings", 225, $form_id); ?> <li class="next_button_setting field_setting"> <label for="next_button_container"> <?php _e("Next Button", "gravityforms"); ?> </label> <div class="next_button_options" id="next_button_container"> <input type="radio" id="next_button_text" name="next_button" value="text" onclick="TogglePageButton('next'); SetPageButton('next');"/> <label for="next_button_text" class="inline"> <?php _e("Default", "gravityforms"); ?> <?php gform_tooltip("next_button_text"); ?> </label> <input type="radio" id="next_button_image" name="next_button" value="image" onclick="TogglePageButton('next'); SetPageButton('next');"/> <label for="next_button_image" class="inline"> <?php _e("Image", "gravityforms"); ?> <?php gform_tooltip("next_button_image"); ?> </label> <div id="next_button_text_container" style="margin-top:5px;"> <label for="next_button_text_input" class="inline"> <?php _e("Text:", "gravityforms"); ?> </label> <input type="text" id="next_button_text_input" class="input_size_b" size="40" onkeyup="SetPageButton('next');"/> </div> <div id="next_button_image_container" style="margin-top:5px;"> <label for="next_button_image_url" class="inline"> <?php _e("Image Path:", "gravityforms"); ?> </label> <input type="text" id="next_button_image_url" size="45" onkeyup="SetPageButton('next');"/> </div> </div> </li> <?php do_action("gform_field_standard_settings", 237, $form_id); ?> <li class="previous_button_setting field_setting"> <label for="previous_button_container"> <?php _e("Previous Button", "gravityforms"); ?> <?php gform_tooltip("form_field_previous_button"); ?> </label> <div class="previous_button_options" id="previous_button_container"> <input type="radio" id="previous_button_text" name="previous_button" value="text" onclick="TogglePageButton('previous'); SetPageButton('previous');"/> <label for="previous_button_text" class="inline"> <?php _e("Default", "gravityforms"); ?> <?php gform_tooltip("previous_button_text"); ?> </label> <input type="radio" id="previous_button_image" name="previous_button" value="image" onclick="TogglePageButton('previous'); SetPageButton('previous');"/> <label for="previous_button_image" class="inline"> <?php _e("Image", "gravityforms"); ?> <?php gform_tooltip("previous_button_image"); ?> </label> <div id="previous_button_text_container" style="margin-top:5px;"> <label for="previous_button_text_input" class="inline"> <?php _e("Text:", "gravityforms"); ?> </label> <input type="text" id="previous_button_text_input" class="input_size_b" size="40" onkeyup="SetPageButton('previous');" /> </div> <div id="previous_button_image_container" style="margin-top:5px;"> <label for="previous_button_image_url" class="inline"> <?php _e("Image Path:", "gravityforms"); ?> </label> <input type="text" id="previous_button_image_url" size="45" onkeyup="SetPageButton('previous');"/> </div> </div> </li> <?php do_action("gform_field_standard_settings", 250, $form_id); ?> <li class="disable_margins_setting field_setting"> <input type="checkbox" id="field_margins" onclick="SetFieldProperty('disableMargins', this.checked);"/> <label for="field_disable_margins" class="inline"> <?php _e("Disable default margins", "gravityforms"); ?> <?php gform_tooltip("form_field_disable_margins"); ?> </label><br/> </li> <?php do_action("gform_field_standard_settings", 300, $form_id); ?> <li class="post_custom_field_type_setting field_setting"> <label for="post_custom_field_type"> <?php _e("Field Type", "gravityforms"); ?> <?php gform_tooltip("form_field_type"); ?> </label> <select id="post_custom_field_type" onchange="if(jQuery(this).val() == '') return; jQuery('#field_settings').slideUp(function(){StartChangeInputType(jQuery('#post_custom_field_type').val());});"> <option value="" class="option_header"><?php _e("Standard Fields", "gravityforms"); ?> </option> <option value="text"><?php _e("Single line text", "gravityforms"); ?> </option> <option value="textarea"><?php _e("Paragraph Text", "gravityforms"); ?> </option> <option value="select"><?php _e("Drop Down", "gravityforms"); ?> </option> <option value="multiselect"><?php _e("Multi Select", "gravityforms"); ?> </option> <option value="number"><?php _e("Number", "gravityforms"); ?> </option> <option value="checkbox"><?php _e("Checkboxes", "gravityforms"); ?> </option> <option value="radio"><?php _e("Radio Buttons", "gravityforms"); ?> </option> <option value="hidden"><?php _e("Hidden", "gravityforms"); ?> </option> <option value="" class="option_header"><?php _e("Advanced Fields", "gravityforms"); ?> </option> <option value="date"><?php _e("Date", "gravityforms"); ?> </option> <option value="time"><?php _e("Time", "gravityforms"); ?> </option> <option value="phone"><?php _e("Phone", "gravityforms"); ?> </option> <option value="website"><?php _e("Website", "gravityforms"); ?> </option> <option value="email"><?php _e("Email", "gravityforms"); ?> </option> <option value="fileupload"><?php _e("File Upload", "gravityforms"); ?> </option> <option value="list"><?php _e("List", "gravityforms"); ?> </option> </select> </li> <?php do_action("gform_field_standard_settings", 350, $form_id); ?> <li class="post_tag_type_setting field_setting"> <label for="post_tag_type"> <?php _e("Field Type", "gravityforms"); ?> <?php gform_tooltip("form_field_type"); ?> </label> <select id="post_tag_type" onchange="if(jQuery(this).val() == '') return; jQuery('#field_settings').slideUp(function(){StartChangeInputType(jQuery('#post_tag_type').val());});"> <option value="text"><?php _e("Single line text", "gravityforms"); ?> </option> <option value="select"><?php _e("Drop Down", "gravityforms"); ?> </option> <option value="multiselect"><?php _e("Multi Select", "gravityforms"); ?> </option> <option value="checkbox"><?php _e("Checkboxes", "gravityforms"); ?> </option> <option value="radio"><?php _e("Radio Buttons", "gravityforms"); ?> </option> </select> </li> <?php do_action("gform_field_standard_settings", 400, $form_id); ?> <?php if (class_exists("ReallySimpleCaptcha")) { ?> <li class="captcha_type_setting field_setting"> <label for="field_captcha_type"> <?php _e("Type", "gravityforms"); ?> <?php gform_tooltip("form_field_captcha_type"); ?> </label> <select id="field_captcha_type" onchange="StartChangeCaptchaType(jQuery(this).val())"> <option value="captcha"><?php _e("reCAPTCHA", "gravityforms"); ?> </option> <option value="simple_captcha"><?php _e("Really Simple CAPTCHA", "gravityforms"); ?> </option> <option value="math"><?php _e("Math Challenge", "gravityforms"); ?> </option> </select> </li> <?php do_action("gform_field_standard_settings", 450, $form_id); ?> <li class="captcha_size_setting field_setting"> <label for="field_captcha_size"> <?php _e("Size", "gravityforms"); ?> </label> <select id="field_captcha_size" onchange="SetCaptchaSize(jQuery(this).val());"> <option value="small"><?php _e("Small", "gravityforms"); ?> </option> <option value="medium"><?php _e("Medium", "gravityforms"); ?> </option> <option value="large"><?php _e("Large", "gravityforms"); ?> </option> </select> </li> <?php do_action("gform_field_standard_settings", 500, $form_id); ?> <li class="captcha_fg_setting field_setting"> <label for="field_captcha_fg"> <?php _e("Font Color", "gravityforms"); ?> </label> <?php self::color_picker("field_captcha_fg", "SetCaptchaFontColor"); ?> </li> <?php do_action("gform_field_standard_settings", 550, $form_id); ?> <li class="captcha_bg_setting field_setting"> <label for="field_captcha_bg"> <?php _e("Background Color", "gravityforms"); ?> </label> <?php self::color_picker("field_captcha_bg", "SetCaptchaBackgroundColor"); ?> </li> <?php } do_action("gform_field_standard_settings", 600, $form_id); ?> <li class="captcha_theme_setting field_setting"> <label for="field_captcha_theme"> <?php _e("Theme", "gravityforms"); ?> <?php gform_tooltip("form_field_recaptcha_theme"); ?> </label> <select id="field_captcha_theme" onchange="SetCaptchaTheme(this.value, '<?php echo GFCommon::get_base_url(); ?> /images/captcha_' + this.value + '.jpg')"> <option value="red"><?php _e("Red", "gravityforms"); ?> </option> <option value="white"><?php _e("White", "gravityforms"); ?> </option> <option value="blackglass"><?php _e("Black Glass", "gravityforms"); ?> </option> <option value="clean"><?php _e("Clean", "gravityforms"); ?> </option> </select> </li> <?php do_action("gform_field_standard_settings", 650, $form_id); ?> <li class="post_custom_field_setting field_setting"> <label for="field_custom_field_name"> <?php _e("Custom Field Name", "gravityforms"); ?> <?php gform_tooltip("form_field_custom_field_name"); ?> </label> <div style="width:100px; float:left;"> <input type="radio" name="field_custom" id="field_custom_existing" size="10" onclick="ToggleCustomField();" /> <label for="field_custom_existing" class="inline"> <?php _e("Existing", "gravityforms"); ?> </label> </div> <div style="width:100px; float:left;"> <input type="radio" name="field_custom" id="field_custom_new" size="10" onclick="ToggleCustomField();" /> <label for="field_custom_new" class="inline"> <?php _e("New", "gravityforms"); ?> </label> </div> <div class="clear"> <input type="text" id="field_custom_field_name_text" size="35" onkeyup="SetFieldProperty('postCustomFieldName', this.value);"/> <select id="field_custom_field_name_select" onchange="SetFieldProperty('postCustomFieldName', jQuery(this).val());"> <option value=""><?php _e("Select an existing custom field", "gravityforms"); ?> </option> <?php $custom_field_names = RGFormsModel::get_custom_field_names(); foreach ($custom_field_names as $name) { ?> <option value="<?php echo $name; ?> "><?php echo $name; ?> </option> <?php } ?> </select> </div> </li> <?php do_action("gform_field_standard_settings", 700, $form_id); ?> <li class="post_status_setting field_setting"> <label for="field_post_status"> <?php _e("Post Status", "gravityforms"); ?> <?php gform_tooltip("form_field_post_status"); ?> </label> <select id="field_post_status" name="field_post_status"> <option value="draft"><?php _e("Draft", "gravityforms"); ?> </option> <option value="pending"><?php _e("Pending Review", "gravityforms"); ?> </option> <option value="publish"><?php _e("Published", "gravityforms"); ?> </option> </select> </li> <?php do_action("gform_field_standard_settings", 750, $form_id); ?> <li class="post_author_setting field_setting"> <label for="field_post_author"> <?php _e("Default Post Author", "gravityforms"); ?> <?php gform_tooltip("form_field_post_author"); ?> </label> <?php $args = array('name' => 'field_post_author'); $args = apply_filters("gform_author_dropdown_args_" . rgar($form, "id"), apply_filters("gform_author_dropdown_args", $args)); wp_dropdown_users($args); ?> <div> <input type="checkbox" id="gfield_current_user_as_author"/> <label for="gfield_current_user_as_author" class="inline"><?php _e("Use logged in user as author", "gravityforms"); ?> <?php gform_tooltip("form_field_current_user_as_author"); ?> </label> </div> </li> <?php do_action("gform_field_standard_settings", 775, $form_id); ?> <?php if (current_theme_supports('post-formats')) { ?> <li class="post_format_setting field_setting"> <label for="field_post_format"> <?php _e("Post Format", "gravityforms"); ?> <?php gform_tooltip("form_field_post_format"); ?> </label> <?php $post_formats = get_theme_support('post-formats'); $post_formats_dropdown = '<option value="0">Standard</option>'; foreach ($post_formats[0] as $post_format) { $post_formats_dropdown .= "<option value='{$post_format}'>" . ucfirst($post_format) . "</option>"; } echo '<select name="field_post_format" id="field_post_format">' . $post_formats_dropdown . '</select>'; ?> </li> <?php } // if theme supports post formats ?> <?php do_action("gform_field_standard_settings", 800, $form_id); ?> <li class="post_category_setting field_setting"> <label for="field_post_category"> <?php _e("Post Category", "gravityforms"); ?> <?php gform_tooltip("form_field_post_category"); ?> </label> <?php wp_dropdown_categories(array('selected' => get_option('default_category'), 'hide_empty' => 0, 'id' => 'field_post_category', 'name' => 'field_post_category', 'orderby' => 'name', 'selected' => 'field_post_category', 'hierarchical' => true)); ?> </li> <?php do_action("gform_field_standard_settings", 825, $form_id); ?> <li class="post_category_field_type_setting field_setting"> <label for="post_category_field_type"> <?php _e("Field Type", "gravityforms"); ?> <?php gform_tooltip("form_field_type"); ?> </label> <select id="post_category_field_type" onchange="jQuery('#field_settings').slideUp(function(){StartChangeInputType( jQuery('#post_category_field_type').val() );});"> <option value="select"><?php _e("Drop Down", "gravityforms"); ?> </option> <option value="checkbox"><?php _e("Checkboxes", "gravityforms"); ?> </option> <option value="radio"><?php _e("Radio Buttons", "gravityforms"); ?> </option> <option value="multiselect"><?php _e("Multi Select", "gravityforms"); ?> </option> </select> </li> <?php do_action("gform_field_standard_settings", 850, $form_id); ?> <li class="post_category_checkbox_setting field_setting"> <label for="field_post_category"> <?php _e("Category", "gravityforms"); ?> <?php gform_tooltip("form_field_post_category_selection"); ?> </label> <input type="radio" id="gfield_category_all" name="gfield_category" value="all" onclick="ToggleCategory();"/> <label for="gfield_category_all" class="inline"> <?php _e("All Categories", "gravityforms"); ?> </label> <input type="radio" id="gfield_category_select" name="gfield_category" value="select" onclick="ToggleCategory();"/> <label for="form_button_image" class="inline"> <?php _e("Select Categories", "gravityforms"); ?> </label> <div id="gfield_settings_category_container"> <table cellpadding="0" cellspacing="5"> <?php $categories = get_categories(array('hide_empty' => 0)); $count = 0; $category_rows = ''; self::_cat_rows($categories, $count, $category_rows); echo $category_rows; ?> </table> </div> </li> <?php do_action("gform_field_standard_settings", 875, $form_id); ?> <li class="post_category_initial_item_setting field_setting"> <input type="checkbox" id="gfield_post_category_initial_item_enabled" onclick="TogglePostCategoryInitialItem(); SetCategoryInitialItem();"/> <label for="gfield_post_category_initial_item_enabled" class="inline"> <?php _e("Display placeholder", "gravityforms"); ?> <?php gform_tooltip("form_field_post_category_initial_item"); ?> </label> </li> <li id="gfield_post_category_initial_item_container"> <label for="field_post_category_initial_item"> <?php _e("Placeholder Label", "gravityforms"); ?> </label> <input type="text" id="field_post_category_initial_item" onchange="SetCategoryInitialItem();" class="fieldwidth-3" size="35"/> </li> <?php do_action("gform_field_standard_settings", 900, $form_id); ?> <li class="post_content_template_setting field_setting"> <input type="checkbox" id="gfield_post_content_enabled" onclick="TogglePostContentTemplate();"/> <label for="gfield_post_content_enabled" class="inline"> <?php _e("Create content template", "gravityforms"); ?> <?php gform_tooltip("form_field_post_content_template_enable"); ?> </label> <div id="gfield_post_content_container"> <div> <?php GFCommon::insert_post_content_variables($form["fields"], "field_post_content_template", '', 25); ?> </div> <textarea id="field_post_content_template" class="fieldwidth-3 fieldheight-1"></textarea> </div> </li> <?php do_action("gform_field_standard_settings", 950, $form_id); ?> <li class="post_title_template_setting field_setting"> <input type="checkbox" id="gfield_post_title_enabled" onclick="TogglePostTitleTemplate();" /> <label for="gfield_post_title_enabled" class="inline"> <?php _e("Create content template", "gravityforms"); ?> <?php gform_tooltip("form_field_post_title_template_enable"); ?> </label> <div id="gfield_post_title_container"> <div> <?php GFCommon::insert_variables($form["fields"], "field_post_title_template", true, '', '', 25, array("post_image", "fileupload")); ?> </div> <input type="text" id="field_post_title_template" class="fieldwidth-3"/> </div> </li> <?php do_action("gform_field_standard_settings", 975, $form_id); ?> <li class="customfield_content_template_setting field_setting"> <input type="checkbox" id="gfield_customfield_content_enabled" onclick="ToggleCustomFieldTemplate(); SetCustomFieldTemplate();"/> <label for="gfield_customfield_content_enabled" class="inline"> <?php _e("Create content template", "gravityforms"); ?> <?php gform_tooltip("form_field_customfield_content_template_enable"); ?> </label> <div id="gfield_customfield_content_container"> <div> <?php GFCommon::insert_post_content_variables($form["fields"], "field_customfield_content_template", 'SetCustomFieldTemplate', 25); ?> </div> <textarea id="field_customfield_content_template" class="fieldwidth-3 fieldheight-1" onkeyup="SetCustomFieldTemplate();"></textarea> </div> </li> <?php do_action("gform_field_standard_settings", 1000, $form_id); ?> <li class="post_image_setting field_setting"> <label><?php _e("Image Metadata", "gravityforms"); ?> <?php gform_tooltip("form_field_image_meta"); ?> </label> <input type="checkbox" id="gfield_display_title" onclick="SetPostImageMeta();" /> <label for="gfield_display_title" class="inline"> <?php _e("Title", "gravityforms"); ?> </label> <br/> <input type="checkbox" id="gfield_display_caption" onclick="SetPostImageMeta();" /> <label for="gfield_display_caption" class="inline"> <?php _e("Caption", "gravityforms"); ?> </label> <br/> <input type="checkbox" id="gfield_display_description" onclick="SetPostImageMeta();"/> <label for="gfield_display_description" class="inline"> <?php _e("Description", "gravityforms"); ?> </label> </li> <?php do_action("gform_field_standard_settings", 1025, $form_id); ?> <li class="post_image_featured_image field_setting"> <input type="checkbox" id="gfield_featured_image" onclick="SetFeaturedImage();" /> <label for="gfield_featured_image" class="inline"><?php _e('Set as Featured Image', 'gravityforms'); ?> <?php gform_tooltip("form_field_featured_image"); ?> </label> </li> <?php do_action("gform_field_standard_settings", 1050, $form_id); ?> <li class="address_setting field_setting"> <?php $addressTypes = GFCommon::get_address_types(rgar($form, "id")); ?> <label for="field_address_type"> <?php _e("Address Type", "gravityforms"); ?> <?php gform_tooltip("form_field_address_type"); ?> </label> <select id="field_address_type" onchange="SetAddressType();"> <?php foreach ($addressTypes as $key => $addressType) { ?> <option value="<?php echo $key; ?> "><?php echo $addressType["label"]; ?> </option> <?php } ?> </select> <?php foreach ($addressTypes as $key => $addressType) { $state_label = isset($addressType["state_label"]) ? $addressType["state_label"] : __("State", "gravityforms"); ?> <div id="address_type_container_<?php echo $key; ?> " class="gfield_sub_setting gfield_address_type_container"> <input type="hidden" id="field_address_country_<?php echo $key; ?> " value="<?php echo isset($addressType["country"]) ? $addressType["country"] : ""; ?> " /> <input type="hidden" id="field_address_zip_label_<?php echo $key; ?> " value="<?php echo isset($addressType["zip_label"]) ? $addressType["zip_label"] : __("Postal Code", "gravityforms"); ?> " /> <input type="hidden" id="field_address_state_label_<?php echo $key; ?> " value="<?php echo $state_label; ?> " /> <input type="hidden" id="field_address_has_states_<?php echo $key; ?> " value="<?php echo is_array(rgget("states", $addressType)) ? "1" : ""; ?> " /> <?php if (isset($addressType["states"]) && is_array($addressType["states"])) { ?> <label for="field_address_default_state_<?php echo $key; ?> "> <?php echo sprintf(__("Default %s", "gravityforms"), $state_label); ?> <?php gform_tooltip("form_field_address_default_state_{$key}"); ?> </label> <select id="field_address_default_state_<?php echo $key; ?> " class="field_address_default_state" onchange="SetAddressProperties();"> <?php echo GFCommon::get_state_dropdown($addressType["states"]); ?> </select> <?php } ?> <?php if (!isset($addressType["country"])) { ?> <label for="field_address_default_country_<?php echo $key; ?> "> <?php _e("Default Country", "gravityforms"); ?> <?php gform_tooltip("form_field_address_default_country"); ?> </label> <select id="field_address_default_country_<?php echo $key; ?> " class="field_address_default_country" onchange="SetAddressProperties();"> <?php echo GFCommon::get_country_dropdown(); ?> </select> <div class="gfield_sub_setting"> <input type="checkbox" id="field_address_hide_country_<?php echo $key; ?> " onclick="SetAddressProperties();"/> <label for="field_address_hide_country" class="inline"> <?php _e("Hide Country Field", "gravityforms"); ?> <?php gform_tooltip("form_field_address_hide_country"); ?> </label> </div> <?php } ?> <div class="gfield_sub_setting"> <input type="checkbox" id="field_address_hide_state_<?php echo $key; ?> " onclick="SetAddressProperties();"/> <label for="field_address_hide_state_<?php echo $key; ?> " class="inline"> <?php echo sprintf(__("Hide %s Field", "gravityforms"), $addressType["state_label"]); ?> <?php gform_tooltip("form_field_address_hide_state_{$key}"); ?> </label> </div> </div> <?php } ?> <div class="gfield_sub_setting"> <input type="checkbox" id="field_address_hide_address2" onclick="SetAddressProperties();"/> <label for="field_address_hide_address2" class="inline"> <?php _e("Hide Address Line 2 Field", "gravityforms"); ?> <?php gform_tooltip("form_field_address_hide_address2"); ?> </label> </div> </li> <?php do_action("gform_field_standard_settings", 1100, $form_id); ?> <li class="name_format_setting field_setting"> <label for="field_name_format"> <?php _e("Name Format", "gravityforms"); ?> <?php gform_tooltip("form_field_name_format"); ?> </label> <select id="field_name_format" onchange="StartChangeNameFormat(jQuery(this).val());"> <option value="normal"><?php _e("Normal", "gravityforms"); ?> </option> <option value="extended"><?php _e("Extended", "gravityforms"); ?> </option> <option value="simple"><?php _e("Simple", "gravityforms"); ?> </option> </select> </li> <?php do_action("gform_field_standard_settings", 1150, $form_id); ?> <li class="date_input_type_setting field_setting"> <label for="field_date_input_type"> <?php _e("Date Input Type", "gravityforms"); ?> <?php gform_tooltip("form_field_date_input_type"); ?> </label> <select id="field_date_input_type" onchange="SetDateInputType(jQuery(this).val());"> <option value="datefield"><?php _e("Date Field", "gravityforms"); ?> </option> <option value="datepicker"><?php _e("Date Picker", "gravityforms"); ?> </option> <option value="datedropdown"><?php _e("Date Drop Down", "gravityforms"); ?> </option> </select> <div id="date_picker_container"> <input type="radio" id="gsetting_icon_none" name="gsetting_icon" value="none" onclick="SetCalendarIconType(this.value);"/> <label for="gsetting_icon_none" class="inline"> <?php _e("No Icon", "gravityforms"); ?> </label> <input type="radio" id="gsetting_icon_calendar" name="gsetting_icon" value="calendar" onclick="SetCalendarIconType(this.value);"/> <label for="gsetting_icon_calendar" class="inline"> <?php _e("Calendar Icon", "gravityforms"); ?> </label> <input type="radio" id="gsetting_icon_custom" name="gsetting_icon" value="custom" onclick="SetCalendarIconType(this.value);"/> <label for="gsetting_icon_custom" class="inline"> <?php _e("Custom Icon", "gravityforms"); ?> </label> <div id="gfield_icon_url_container"> <label for="gfield_calendar_icon_url" class="inline"> <?php _e("Image Path: ", "gravityforms"); ?> </label> <input type="text" id="gfield_calendar_icon_url" size="45" onkeyup="SetFieldProperty('calendarIconUrl', this.value);"/> <div class="instruction"><?php _e("Preview this form to see your custom icon.", "gravityforms"); ?> </div> </div> </div> </li> <?php do_action("gform_field_standard_settings", 1200, $form_id); ?> <li class="date_format_setting field_setting"> <label for="field_date_format"> <?php _e("Date Format", "gravityforms"); ?> <?php gform_tooltip("form_field_date_format"); ?> </label> <select id="field_date_format" onchange="SetDateFormat(jQuery(this).val());"> <option value="mdy">mm/dd/yyyy</option> <option value="dmy">dd/mm/yyyy</option> <option value="dmy_dash">dd-mm-yyyy</option> <option value="dmy_dot">dd.mm.yyyy</option> <option value="ymd_slash">yyyy/mm/dd</option> <option value="ymd_dash">yyyy-mm-dd</option> <option value="ymd_dot">yyyy.mm.dd</option> </select> </li> <?php do_action("gform_field_standard_settings", 1250, $form_id); ?> <li class="file_extensions_setting field_setting"> <label for="field_file_extension"> <?php _e("Allowed file extensions", "gravityforms"); ?> <?php gform_tooltip("form_field_fileupload_allowed_extensions"); ?> </label> <input type="text" id="field_file_extension" size="40" onkeyup="SetFieldProperty('allowedExtensions', this.value);"/> <div><small><?php _e("Separated with commas (i.e. jpg, gif, png, pdf)", "gravityforms"); ?> </small></div> </li> <?php do_action("gform_field_standard_settings", 1275, $form_id); ?> <li class="columns_setting field_setting"> <input type="checkbox" id="field_columns_enabled" onclick="SetFieldProperty('enableColumns', this.checked); ToggleColumns();"/> <label for="field_columns_enabled" class="inline"><?php _e("Enable multiple columns", "gravityforms"); gform_tooltip("form_field_columns"); ?> </label> <br /> <div id="gfield_settings_columns_container"> <ul id="field_columns"></ul> </div> </li> <?php do_action("gform_field_standard_settings", 1287, $form_id); ?> <li class="maxrows_setting field_setting"> <label for="field_maxrows"> <?php _e("Maximum Rows", "gravityforms"); ?> <?php gform_tooltip("form_field_maxrows"); ?> </label> <input type="text" id="field_maxrows" onkeyup="SetFieldProperty('maxRows', this.value);"/></input> </li> <?php do_action("gform_field_standard_settings", 1300, $form_id); ?> <li class="time_format_setting field_setting"> <label for="field_time_format"> <?php _e("Time Format", "gravityforms"); ?> <?php gform_tooltip("form_field_time_format"); ?> </label> <select id="field_time_format" onchange="SetTimeFormat(this.value);"> <option value="12"><?php _e("12 hour", "gravityforms"); ?> </option> <option value="24"><?php _e("24 hour", "gravityforms"); ?> </option> </select> </li> <?php do_action("gform_field_standard_settings", 1325, $form_id); ?> <li class="phone_format_setting field_setting"> <label for="field_phone_format"> <?php _e("Phone Format", "gravityforms"); ?> <?php gform_tooltip("form_field_phone_format"); ?> </label> <select id="field_phone_format" onchange="SetFieldPhoneFormat(jQuery(this).val());"> <option value="standard">(###)### - ####</option> <option value="international"><?php _e("International", "gravityforms"); ?> </option> </select> </li> <?php do_action("gform_field_standard_settings", 1350, $form_id); ?> <li class="choices_setting field_setting"> <div style="float:right;"> <input type="checkbox" id="field_choice_values_enabled" onclick="SetFieldProperty('enableChoiceValue', this.checked); ToggleChoiceValue(); SetFieldChoices();"/> <label for="field_choice_values_enabled" class="inline gfield_value_label"><?php _e("show values", "gravityforms"); ?> </label> </div> <?php $field_title = __("Choices", "gravityforms"); echo apply_filters("gform_choices_setting_title", $field_title); ?> <?php gform_tooltip("form_field_choices"); ?> <br /> <div id="gfield_settings_choices_container"> <label class="gfield_choice_header_label"><?php _e("Label", "gravityforms"); ?> </label><label class="gfield_choice_header_value"><?php _e("Value", "gravityforms"); ?> </label><label class="gfield_choice_header_price"><?php _e("Price", "gravityforms"); ?> </label> <ul id="field_choices"></ul> </div> <?php $window_title = __("Bulk Add / Predefined Choices", "gravityforms"); ?> <input type='button' value='<?php echo esc_attr($window_title); ?> ' onclick="tb_show('<?php echo esc_js($window_title); ?> ', '#TB_inline?height=500&width=600&inlineId=gfield_bulk_add', '');" class="button"/> <div id="gfield_bulk_add" style="display:none;"> <div> <?php $predefined_choices = array(__("Countries", "gravityforms") => GFCommon::get_countries(), __("U.S. States", "gravityforms") => GFCommon::get_us_states(), __("Canadian Province/Territory", "gravityforms") => GFCommon::get_canadian_provinces(), __("Continents", "gravityforms") => array(__("Africa", "gravityforms"), __("Antarctica", "gravityforms"), __("Asia", "gravityforms"), __("Australia", "gravityforms"), __("Europe", "gravityforms"), __("North America", "gravityforms"), __("South America", "gravityforms")), __("Gender", "gravityforms") => array(__("Male", "gravityforms"), __("Female", "gravityforms"), __("Prefer Not to Answer", "gravityforms")), __("Age", "gravityforms") => array(__("Under 18", "gravityforms"), __("18-24", "gravityforms"), __("25-34", "gravityforms"), __("35-44", "gravityforms"), __("45-54", "gravityforms"), __("55-64", "gravityforms"), __("65 or Above", "gravityforms"), __("Prefer Not to Answer", "gravityforms")), __("Marital Status", "gravityforms") => array(__("Single", "gravityforms"), __("Married", "gravityforms"), __("Divorced", "gravityforms"), __("Widowed", "gravityforms")), __("Employment", "gravityforms") => array(__("Employed Full-Time", "gravityforms"), __("Employed Part-Time", "gravityforms"), __("Self-employed", "gravityforms"), __("Not employed", "gravityforms"), __(" but looking for work", "gravityforms"), __("Not employed and not looking for work", "gravityforms"), __("Homemaker", "gravityforms"), __("Retired", "gravityforms"), __("Student", "gravityforms"), __("Prefer Not to Answer", "gravityforms")), __("Job Type", "gravityforms") => array(__("Full-Time", "gravityforms"), __("Part-Time", "gravityforms"), __("Per Diem", "gravityforms"), __("Employee", "gravityforms"), __("Temporary", "gravityforms"), __("Contract", "gravityforms"), __("Intern", "gravityforms"), __("Seasonal", "gravityforms")), __("Industry", "gravityforms") => array(__("Accounting/Finance", "gravityforms"), __("Advertising/Public Relations", "gravityforms"), __("Aerospace/Aviation", "gravityforms"), __("Arts/Entertainment/Publishing", "gravityforms"), __("Automotive", "gravityforms"), __("Banking/Mortgage", "gravityforms"), __("Business Development", "gravityforms"), __("Business Opportunity", "gravityforms"), __("Clerical/Administrative", "gravityforms"), __("Construction/Facilities", "gravityforms"), __("Consumer Goods", "gravityforms"), __("Customer Service", "gravityforms"), __("Education/Training", "gravityforms"), __("Energy/Utilities", "gravityforms"), __("Engineering", "gravityforms"), __("Government/Military", "gravityforms"), __("Green", "gravityforms"), __("Healthcare", "gravityforms"), __("Hospitality/Travel", "gravityforms"), __("Human Resources", "gravityforms"), __("Installation/Maintenance", "gravityforms"), __("Insurance", "gravityforms"), __("Internet", "gravityforms"), __("Job Search Aids", "gravityforms"), __("Law Enforcement/Security", "gravityforms"), __("Legal", "gravityforms"), __("Management/Executive", "gravityforms"), __("Manufacturing/Operations", "gravityforms"), __("Marketing", "gravityforms"), __("Non-Profit/Volunteer", "gravityforms"), __("Pharmaceutical/Biotech", "gravityforms"), __("Professional Services", "gravityforms"), __("QA/Quality Control", "gravityforms"), __("Real Estate", "gravityforms"), __("Restaurant/Food Service", "gravityforms"), __("Retail", "gravityforms"), __("Sales", "gravityforms"), __("Science/Research", "gravityforms"), __("Skilled Labor", "gravityforms"), __("Technology", "gravityforms"), __("Telecommunications", "gravityforms"), __("Transportation/Logistics", "gravityforms"), __("Other", "gravityforms")), __("Income", "gravityforms") => array(__("Under \$20,000", "gravityforms"), __("\$20,000 - \$30,000", "gravityforms"), __("\$30,000 - \$40,000", "gravityforms"), __("\$40,000 - \$50,000", "gravityforms"), __("\$50,000 - \$75,000", "gravityforms"), __("\$75,000 - \$100,000", "gravityforms"), __("\$100,000 - \$150,000", "gravityforms"), __("\$150,000 or more", "gravityforms"), __("Prefer Not to Answer", "gravityforms")), __("Education", "gravityforms") => array(__("High School", "gravityforms"), __("Associate Degree", "gravityforms"), __("Bachelor's Degree", "gravityforms"), __("Graduate of Professional Degree", "gravityforms"), __("Some College", "gravityforms"), __("Other", "gravityforms"), __("Prefer Not to Answer", "gravityforms")), __("Days of the Week", "gravityforms") => array(__("Sunday", "gravityforms"), __("Monday", "gravityforms"), __("Tuesday", "gravityforms"), __("Wednesday", "gravityforms"), __("Thursday", "gravityforms"), __("Friday", "gravityforms"), __("Saturday", "gravityforms")), __("Months of the Year", "gravityforms") => array(__("January", "gravityforms"), __("February", "gravityforms"), __("March", "gravityforms"), __("April", "gravityforms"), __("May", "gravityforms"), __("June", "gravityforms"), __("July", "gravityforms"), __("August", "gravityforms"), __("September", "gravityforms"), __("October", "gravityforms"), __("November", "gravityforms"), __("December", "gravityforms")), __("How Often", "gravityforms") => array(__("Everyday", "gravityforms"), __("Once a week", "gravityforms"), __("2 to 3 times a week", "gravityforms"), __("Once a month", "gravityforms"), __(" 2 to 3 times a month", "gravityforms"), __("Less than once a month", "gravityforms")), __("How Long", "gravityforms") => array(__("Less than a month", "gravityforms"), __("1-6 months", "gravityforms"), __("1-3 years", "gravityforms"), __("Over 3 Years", "gravityforms"), __("Never used", "gravityforms")), __("Satisfaction", "gravityforms") => array(__("Very Satisfied", "gravityforms"), __("Satisfied", "gravityforms"), __("Neutral", "gravityforms"), __("Unsatisfied", "gravityforms"), __("Very Unsatisfied", "gravityforms")), __("Importance", "gravityforms") => array(__("Very Important", "gravityforms"), __("Important", "gravityforms"), __("Somewhat Important", "gravityforms"), __("Not Important", "gravityforms")), __("Agreement", "gravityforms") => array(__("Strongly Agree", "gravityforms"), __("Agree", "gravityforms"), __("Disagree", "gravityforms"), __("Strongly Disagree", "gravityforms")), __("Comparison", "gravityforms") => array(__("Much Better", "gravityforms"), __("Somewhat Better", "gravityforms"), __("About the Same", "gravityforms"), __("Somewhat Worse", "gravityforms"), __("Much Worse", "gravityforms")), __("Would You", "gravityforms") => array(__("Definitely", "gravityforms"), __("Probably", "gravityforms"), __("Not Sure", "gravityforms"), __("Probably Not", "gravityforms"), __("Definitely Not", "gravityforms")), __("Size", "gravityforms") => array(__("Extra Small", "gravityforms"), __("Small", "gravityforms"), __("Medium", "gravityforms"), __("Large", "gravityforms"), __("Extra Large", "gravityforms"))); $predefined_choices = apply_filters("gform_predefined_choices_" . rgar($form, "id"), apply_filters("gform_predefined_choices", $predefined_choices)); $custom_choices = RGFormsModel::get_custom_choices(); ?> <div class="panel-instructions"><?php _e("Select a category and customize the predefined choices or paste your own list to bulk add choices.", "gravityforms"); ?> </div> <div class="bulk-left-panel"> <ul id="bulk_items"> <?php foreach (array_keys($predefined_choices) as $name) { $key = str_replace("'", "\\'", $name); ?> <li><a href="#" onclick="SelectPredefinedChoice('<?php echo $key; ?> ');" class="bulk-choice"><?php echo $name; ?> </a> <?php } ?> </ul> </div> <div class="bulk-arrow-mid"></div> <textarea id="gfield_bulk_add_input"></textarea> <br style="clear:both;"/> <div class="panel-buttons" style=""> <input type="button" onclick="InsertBulkChoices(jQuery('#gfield_bulk_add_input').val().split('\n')); tb_remove();" class="button-primary" value="<?php _e("Insert Choices", "gravityforms"); ?> " /> <input type="button" onclick="tb_remove();" class="button" value="Cancel" /> </div> <div class="panel-custom" style=""> <a href="#" onclick="LoadCustomChoicesPanel(true, 'slow');" id="bulk_save_as"><?php _e("Save as new custom choice", "gravityforms"); ?> </a> <div id="bulk_custom_edit" style="display:none;"> <?php _e("Save as", "gravityforms"); ?> <input type="text" id="custom_choice_name" value="<?php _e("Enter name", "gravityforms"); ?> " onfocus="if(this.value == '<?php _e("enter name", "gravityforms"); ?> ') this.value='';"> <a href="#" onclick="SaveCustomChoices();" class="button" id="bulk_save_button"><?php _e("Save", "gravityforms"); ?> </a> <a href="#" onclick="CloseCustomChoicesPanel('slow');" id="bulk_cancel_link"><?php _e("Cancel", "gravityforms"); ?> </a> <a href="#" onclick="DeleteCustomChoice();" id="bulk_delete_link"><?php _e("Delete", "gravityforms"); ?> </a> </div> <div id="bulk_custom_message" class="alert_yellow" style="display:none; margin-top:8px; padding: 8px;"> <!--Message will be added via javascript--> </div> </div> <script type="text/javascript"> var gform_selected_custom_choice = ""; var gform_custom_choices = <?php echo GFCommon::json_encode($custom_choices); ?> ; var gform_predefined_choices = <?php echo GFCommon::json_encode($predefined_choices); ?> ; </script> </div> </div> </li> <?php do_action("gform_field_standard_settings", 1362, $form_id); ?> <li class="other_choice_setting field_setting"> <input type="checkbox" id="field_other_choice" onclick="var value = jQuery(this).is(':checked'); SetFieldProperty('enableOtherChoice', value); UpdateFieldChoices(GetInputType(field));" /> <label for="field_other_choice" class="inline"> <?php _e('Enable "other" choice', "gravityforms"); ?> <?php gform_tooltip("form_field_other_choice"); ?> </label> </li> <?php do_action("gform_field_standard_settings", 1368, $form_id); ?> <li class="email_confirm_setting field_setting"> <input type="checkbox" id="gfield_email_confirm_enabled" onclick="SetEmailConfirmation(this.checked);"/> <label for="gfield_email_confirm_enabled" class="inline"> <?php _e("Enable Email Confirmation", "gravityforms"); ?> <?php gform_tooltip("form_field_email_confirm_enable"); ?> </label> </li> <?php do_action("gform_field_standard_settings", 1375, $form_id); ?> <li class="password_strength_setting field_setting"> <input type="checkbox" id="gfield_password_strength_enabled" onclick="TogglePasswordStrength(); SetPasswordStrength(this.checked);"/> <label for="gfield_password_strength_enabled" class="inline"> <?php _e("Enable Password Strength", "gravityforms"); ?> <?php gform_tooltip("form_field_password_strength_enable"); ?> </label> </li> <?php do_action("gform_field_standard_settings", 1387, $form_id); ?> <li class="enable_enhanced_ui_setting field_setting"> <input type="checkbox" id="gfield_enable_enhanced_ui" onclick="SetFieldProperty('enableEnhancedUI', jQuery(this).is(':checked') ? 1 : 0);"/> <label for="gfield_enable_enhanced_ui" class="inline"> <?php _e("Enable enhanced user interface", "gravityforms"); ?> <?php gform_tooltip("form_field_enable_enhanced_ui"); ?> </label> </li> <li id="gfield_min_strength_container"> <label for="gfield_min_strength"> <?php _e("Minimum Strength", "gravityforms"); ?> <?php gform_tooltip("form_field_password_strength_enable"); ?> </label> <select id="gfield_min_strength" onchange="SetFieldProperty('minPasswordStrength', jQuery(this).val());"> <option value=""><?php _e("None", "gravityforms"); ?> </option> <option value="short"><?php _e("Short", "gravityforms"); ?> </option> <option value="bad"><?php _e("Bad", "gravityforms"); ?> </option> <option value="good"><?php _e("Good", "gravityforms"); ?> </option> <option value="strong"><?php _e("Strong", "gravityforms"); ?> </option> </select> </li> <?php do_action("gform_field_standard_settings", 1400, $form_id); ?> <li class="number_format_setting field_setting"> <label for="field_number_format"> <?php _e("Number Format", "gravityforms"); ?> <?php gform_tooltip("form_field_number_format"); ?> </label> <select id="field_number_format" onchange="SetFieldProperty('numberFormat', this.value);"> <option value="decimal_dot">9,999.99</option> <option value="decimal_comma">9.999,99</option> </select> </li> <?php do_action("gform_field_standard_settings", 1425, $form_id); ?> <li class="description_setting field_setting"> <label for="field_description"> <?php _e("Description", "gravityforms"); ?> <?php gform_tooltip("form_field_description"); ?> </label> <textarea id="field_description" class="fieldwidth-3 fieldheight-2" onkeyup="SetFieldDescription(this.value);"></textarea> </li> <?php do_action("gform_field_standard_settings", 1430, $form_id); ?> <li class="credit_card_setting field_setting"> <label> <?php _e("Supported Credit Cards", "gravityforms"); ?> <?php gform_tooltip("form_field_credit_cards"); ?> </label> <ul> <?php $cards = GFCommon::get_card_types(); foreach ($cards as $card) { ?> <li> <input type="checkbox" id="field_credit_card_<?php echo $card['slug']; ?> " value="<?php echo $card['slug']; ?> " onclick="SetCardType(this, this.value);" /> <label for="field_credit_card_<?php echo $card['slug']; ?> " class="inline"><?php echo $card['name']; ?> </label> </li> <?php } ?> </ul> </li> <?php do_action("gform_field_standard_settings", 1435, $form_id); ?> <li class="credit_card_style_setting field_setting"> <label for="credit_card_style"> <?php _e("Card Icon Style", "gravityforms"); ?> <?php gform_tooltip("form_field_card_style"); ?> </label> <select id="credit_card_style" onchange="SetFieldProperty('creditCardStyle', this.value);"> <option value="style1"><?php _e("Standard", "gravityforms"); ?> </option> <option value="style2"><?php _e("3D", "gravityforms"); ?> </option> </select> </li> <?php do_action("gform_field_standard_settings", 1440, $form_id); ?> <li class="input_mask_setting field_setting"> <input type="checkbox" id="field_input_mask" onclick="ToggleInputMask();"/> <label for="field_input_mask" class="inline"> <?php _e("Input Mask", "gravityforms"); ?> <?php gform_tooltip("form_field_mask"); ?> </label><br /> <div id="gform_input_mask"> <br /> <div style="width:100px; float:left;"> <input type="radio" name="field_mask_option" id="field_mask_standard" size="10" onclick="ToggleInputMaskOptions();" /> <label for="field_mask_standard" class="inline"> <?php _e("Standard", "gravityforms"); ?> </label> </div> <div style="width:100px; float:left;"> <input type="radio" name="field_mask_option" id="field_mask_custom" size="10" onclick="ToggleInputMaskOptions();" /> <label for="field_mask_custom" class="inline"> <?php _e("Custom", "gravityforms"); ?> </label> </div> <div class="clear"></div> <input type="text" id="field_mask_text" size="35" onkeyup="SetFieldProperty('inputMaskValue', this.value);" /> <p class="mask_text_description" style="margin:5px 0 0;"> <?php _e("Enter a custom mask", "gravityforms"); ?> . <a href="#" onclick="tb_show('<?php _e("Custom Mask Instructions", "gravityforms"); ?> ', '#TB_inline?width=350&inlineId=custom_mask_instructions', '');"><?php _e("Help", "gravityhelp"); ?> </a> </p> <div id="custom_mask_instructions" style="display:none;"> <div class="custom_mask_instructions"> <h4><?php _e("Usage", "gravityforms"); ?> </h4> <ul class="description-list"> <li><?php _e("Use a <em>'9'</em> to indicate a numerical character.", "gravityforms"); ?> </li> <li><?php _e("Use a lower case <em>'a'</em> to indicate an alphabetical character.", "gravityforms"); ?> </li> <li><?php _e("Use an asterick <em>'*'</em> to indicate any alphanumeric character.", "gravityforms"); ?> </li> <li><?php _e("Use a question mark <em>'?'</em> to indicate optional characters. <em>Note:</em> All characters after the question mark will be optional.", "gravityforms"); ?> </li> <li><?php _e("All other characters are literal values and will be displayed automatically.", "gravityforms"); ?> </li> </ul> <h4><?php _e("Examples", "gravityforms"); ?> </h4> <ul class="examples-list"> <li> <h5><?php _e("Date", "gravityforms"); ?> </h5> <span class="label"><?php _e("Mask", "gravityforms"); ?> </span> <code>99/99/9999</code><br /> <span class="label"><?php _e("Valid Input", "gravityforms"); ?> </span> <code>10/21/2011</code> </li> <li> <h5><?php _e("Social Security Number", "gravityforms"); ?> </h5> <span class="label"><?php _e("Mask", "gravityforms"); ?> </span> <code>999-99-9999</code><br /> <span class="label"><?php _e("Valid Input", "gravityforms"); ?> </span> <code>987-65-4329</code> </li> <li> <h5><?php _e("Course Code", "gravityforms"); ?> </h5> <span class="label"><?php _e("Mask", "gravityforms"); ?> </span> <code>aaa 999</code><br /> <span class="label"><?php _e("Valid Input", "gravityforms"); ?> </span> <code>BIO 101</code> </li> <li> <h5><?php _e("License Key", "gravityforms"); ?> </h5> <span class="label"><?php _e("Mask", "gravityforms"); ?> </span> <code>***-***-***</code><br /> <span class="label"><?php _e("Valid Input", "gravityforms"); ?> </span> <code>a9a-f0c-28Q</code> </li> <li> <h5><?php _e("Zip Code w/ Optional Plus Four", "gravityforms"); ?> </h5> <span class="label"><?php _e("Mask", "gravityforms"); ?> </span> <code>99999?-9999</code><br /> <span class="label"><?php _e("Valid Input", "gravityforms"); ?> </span> <code>23462</code> or <code>23462-4062</code> </li> </ul> </div> </div> <select id="field_mask_select" onchange="SetFieldProperty('inputMaskValue', jQuery(this).val());"> <option value=""><?php _e("Select a Mask", "gravityforms"); ?> </option> <?php $masks = RGFormsModel::get_input_masks(); foreach ($masks as $mask_name => $mask_value) { ?> <option value="<?php echo $mask_value; ?> "><?php echo $mask_name; ?> </option> <?php } ?> </select> </div> </li> <?php do_action("gform_field_standard_settings", 1450, $form_id); ?> <li class="maxlen_setting field_setting"> <label for="field_maxlen"> <?php _e("Maximum Characters", "gravityforms"); ?> <?php gform_tooltip("form_field_maxlength"); ?> </label> <input type="text" id="field_maxlen" onkeyup="SetFieldProperty('maxLength', this.value);"/></input> </li> <?php do_action("gform_field_standard_settings", 1500, $form_id); ?> <li class="range_setting field_setting"> <div style="clear:both;"><?php _e("Range", "gravityforms"); ?> <?php gform_tooltip("form_field_number_range"); ?> </div> <div style="width:90px; float:left;"> <input type="text" id="field_range_min" size="10" onkeyup="SetFieldProperty('rangeMin', this.value);" /> <label for="field_range_min" > <?php _e("Min", "gravityforms"); ?> </label> </div> <div style="width:90px; float:left;"> <input type="text" id="field_range_max" size="10" onkeyup="SetFieldProperty('rangeMax', this.value);" /> <label for="field_range_max"> <?php _e("Max", "gravityforms"); ?> </label> </div> <br class="clear" /> </li> <?php do_action("gform_field_standard_settings", 1550, $form_id); ?> <li class="calculation_setting field_setting"> <div class="field_enable_calculation"> <input type="checkbox" id="field_enable_calculation" onclick="ToggleCalculationOptions(this.checked, field);" /> <label for="field_enable_calculation" class="inline"> <?php _e("Enable Calculation", "gravityforms"); ?> <?php gform_tooltip("form_field_enable_calculation"); ?> </label> </div> <div id="calculation_options" style="display:none;margin-top:10px;"> <label for="field_calculation_formula"> <?php _e("Formula", "gravityforms"); ?> <?php gform_tooltip("form_field_calculation_formula"); ?> </label> <div> <?php GFCommon::insert_calculation_variables($form["fields"], "field_calculation_formula", '', 'FormulaContentCallback', 40); ?> <div class="gf_calculation_buttons"> <?php foreach (array('+', '-', '/', '*', '(', ')', '.') as $button) { ?> <input type="button" value="<?php echo in_array($button, array('.')) ? $button : " {$button} "; ?> " onclick="InsertVariable('field_calculation_formula', 'FormulaContentCallback', this.value);" /> <?php } ?> </div> </div> <textarea id="field_calculation_formula" onkeyup="SetFieldProperty('calculationFormula', this.value);" class="fieldwidth-3 fieldheight-2"></textarea> <div id="forumla_instructions" style="display:none;"> <div class="forumla_instructions"> <h4><?php _e("Usage", "gravityforms"); ?> </h4> <ul class="description-list"> <li><?php _e("Use a <em>'9'</em> to indicate a numerical character.", "gravityforms"); ?> </li> <li><?php _e("Use a lower case <em>'a'</em> to indicate an alphabetical character.", "gravityforms"); ?> </li> <li><?php _e("Use an asterick <em>'*'</em> to indicate any alphanumeric character.", "gravityforms"); ?> </li> <li><?php _e("Use a question mark <em>'?'</em> to indicate optional characters. <em>Note:</em> All characters after the question mark will be optional.", "gravityforms"); ?> </li> <li><?php _e("All other characters are literal values and will be displayed automatically.", "gravityforms"); ?> </li> </ul> </div> </div> <div class="field_calculation_rounding"> <label for="field_calculation_rounding" style="margin-top:10px;"> <?php _e("Rounding", "gravityforms"); ?> <?php gform_tooltip("form_field_calculation_rounding"); ?> </label> <select id="field_calculation_rounding" onchange="SetFieldProperty('calculationRounding', this.value);"> <option value="0">0</option> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="norounding">Do not round</option> </select> </div> </div> <br class="clear" /> </li> <?php do_action("gform_field_standard_settings", 1600, $form_id); ?> <li class="rules_setting field_setting"> <?php _e("Rules", "gravityforms"); ?> <br/> <input type="checkbox" id="field_required" onclick="SetFieldRequired(this.checked);"/> <label for="field_required" class="inline"> <?php _e("Required", "gravityforms"); ?> <?php gform_tooltip("form_field_required"); ?> </label><br/> <div class="duplicate_setting field_setting"> <input type="checkbox" id="field_no_duplicates" onclick="SetFieldProperty('noDuplicates', this.checked);"/> <label for="field_no_duplicates" class="inline"> <?php _e("No Duplicates", "gravityforms"); ?> <?php gform_tooltip("form_field_no_duplicate"); ?> </label> </div> </li> <?php do_action("gform_field_standard_settings", -1, $form_id); ?> </ul> </div> <div id="gform_tab_2"> <ul> <?php do_action("gform_field_advanced_settings", 0, $form_id); ?> <li class="admin_label_setting field_setting"> <label for="field_admin_label"> <?php _e("Admin Label", "gravityforms"); ?> <?php gform_tooltip("form_field_admin_label"); ?> </label> <input type="text" id="field_admin_label" size="35" onkeyup="SetFieldProperty('adminLabel', this.value);"/> </li> <?php do_action("gform_field_advanced_settings", 50, $form_id); ?> <li class="size_setting field_setting"> <label for="field_size"> <?php _e("Field Size", "gravityforms"); ?> <?php gform_tooltip("form_field_size"); ?> </label> <select id="field_size" onchange="SetFieldSize(jQuery(this).val());"> <option value="small"><?php _e("Small", "gravityforms"); ?> </option> <option value="medium"><?php _e("Medium", "gravityforms"); ?> </option> <option value="large"><?php _e("Large", "gravityforms"); ?> </option> </select> </li> <?php do_action("gform_field_advanced_settings", 100, $form_id); ?> <li class="default_value_setting field_setting"> <label for="field_default_value"> <?php _e("Default Value", "gravityforms"); ?> <?php gform_tooltip("form_field_default_value"); ?> </label> <?php self::insert_variable_prepopulate("field_default_value", "DefaultValueCallback"); ?> <br/> <input type="text" id="field_default_value" class="fieldwidth-2" onkeyup="SetFieldDefaultValue(this.value);"/> </li> <?php do_action("gform_field_advanced_settings", 150, $form_id); ?> <li class="default_value_textarea_setting field_setting"> <label for="field_default_value_textarea"> <?php _e("Default Value", "gravityforms"); ?> <?php gform_tooltip("form_field_default_value"); ?> </label> <textarea id="field_default_value_textarea" onkeyup="SetFieldDefaultValue(this.value);" class="fieldwidth-3"></textarea> </li> <?php do_action("gform_field_advanced_settings", 200, $form_id); ?> <li class="error_message_setting field_setting"> <label for="field_error_message"> <?php _e("Validation Message", "gravityforms"); ?> <?php gform_tooltip("form_field_validation_message"); ?> </label> <input type="text" id="field_error_message" class="fieldwidth-2" onkeyup="SetFieldProperty('errorMessage', this.value);"/> </li> <?php do_action("gform_field_advanced_settings", 225, $form_id); ?> <li class="credit_card_icon_style_setting field_setting"> <label> <?php _e("Credit Card Icon Style", "gravityforms"); ?> <?php gform_tooltip("form_field_credit_card_icon_style"); ?> </label> <ul> <?php $cards = GFCommon::get_card_types(); foreach ($cards as $card) { ?> <li> <input type="checkbox" id="field_credit_card_<?php echo $card['slug']; ?> " value="<?php echo $card['slug']; ?> " onclick="SetCardType(this, this.value);" /> <label for="field_credit_card_<?php echo $card['slug']; ?> " class="inline"><?php echo $card['name']; ?> </label> </li> <?php } ?> </ul> </li> <?php do_action("gform_field_advanced_settings", 250, $form_id); ?> <li class="captcha_language_setting field_setting"> <label for="field_captcha_language"> <?php _e("Language", "gravityforms"); ?> <?php gform_tooltip("form_field_recaptcha_language"); ?> </label> <select id="field_captcha_language" onchange="SetFieldProperty('captchaLanguage', this.value);"> <option value="en"><?php _e("English", "gravityforms"); ?> </option> <option value="nl"><?php _e("Dutch", "gravityforms"); ?> </option> <option value="fr"><?php _e("French", "gravityforms"); ?> </option> <option value="de"><?php _e("German", "gravityforms"); ?> </option> <option value="pt"><?php _e("Portuguese", "gravityforms"); ?> </option> <option value="ru"><?php _e("Russian", "gravityforms"); ?> </option> <option value="es"><?php _e("Spanish", "gravityforms"); ?> </option> <option value="tr"><?php _e("Turkish", "gravityforms"); ?> </option> </select> </li> <?php do_action("gform_field_advanced_settings", 300, $form_id); ?> <li class="css_class_setting field_setting"> <label for="field_css_class"> <?php _e("CSS Class Name", "gravityforms"); ?> <?php gform_tooltip("form_field_css_class"); ?> </label> <input type="text" id="field_css_class" size="30" onkeyup="SetFieldProperty('cssClass', this.value);"/> </li> <?php do_action("gform_field_advanced_settings", 325, $form_id); ?> <li class="add_icon_url_setting field_setting"> <label for="field_add_icon_url"> <?php _e("Add Icon URL", "gravityforms"); ?> <?php gform_tooltip("form_field_add_icon_url"); ?> </label> <input type="text" id="field_add_icon_url" class="fieldwidth-2" onkeyup="SetFieldProperty('addIconUrl', this.value);"/> </li> <?php do_action("gform_field_advanced_settings", 337, $form_id); ?> <li class="delete_icon_url_setting field_setting"> <label for="field_delete_icon_url"> <?php _e("Delete Icon URL", "gravityforms"); ?> <?php gform_tooltip("form_field_delete_icon_url"); ?> </label> <input type="text" id="field_delete_icon_url" class="fieldwidth-2" onkeyup="SetFieldProperty('deleteIconUrl', this.value);"/> </li> <?php do_action("gform_field_advanced_settings", 350, $form_id); ?> <li class="password_field_setting field_setting"> <input type="checkbox" id="field_password" onclick="SetPasswordProperty(this.checked);"/> <label for="field_password" class="inline"><?php _e("Enable Password Input", "gravityforms"); gform_tooltip("form_field_password"); ?> </label> </li> <?php do_action("gform_field_advanced_settings", 375, $form_id); ?> <li class="force_ssl_field_setting field_setting"> <input type="checkbox" id="field_force_ssl" onclick="SetFieldProperty('forceSSL', this.checked);"/> <label for="field_force_ssl" class="inline"><?php _e("Force SSL", "gravityforms"); gform_tooltip("form_field_force_ssl"); ?> </label> </li> <?php do_action("gform_field_advanced_settings", 400, $form_id); ?> <li class="visibility_setting field_setting"> <label><?php _e("Visibility", "gravityforms"); ?> <?php gform_tooltip("form_field_visibility"); ?> </label> <div> <input type="radio" name="field_visibility" id="field_visibility_everyone" size="10" onclick="SetFieldAdminOnly(!this.checked);" /> <label for="field_visibility_everyone" class="inline"> <?php _e("Everyone", "gravityforms"); ?> </label> <input type="radio" name="field_visibility" id="field_visibility_admin" size="10" onclick="SetFieldAdminOnly(this.checked);" /> <label for="field_visibility_admin" class="inline"> <?php _e("Admin Only", "gravityforms"); ?> </label> </div> <br class="clear" /> </li> <?php do_action("gform_field_advanced_settings", 450, $form_id); ?> <li class="prepopulate_field_setting field_setting"> <input type="checkbox" id="field_prepopulate" onclick="SetFieldProperty('allowsPrepopulate', this.checked); ToggleInputName()"/> <label for="field_prepopulate" class="inline"><?php _e("Allow field to be populated dynamically", "gravityforms"); gform_tooltip("form_field_prepopulate"); ?> </label> <br/> <div id="field_input_name_container" style="display:none; padding-top:10px;"> <!-- content dynamically created from js.php --> </div> </li> <?php do_action("gform_field_advanced_settings", 500, $form_id); ?> <li class="conditional_logic_field_setting field_setting"> <input type="checkbox" id="field_conditional_logic" onclick="SetFieldProperty('conditionalLogic', this.checked ? new ConditionalLogic() : null); ToggleConditionalLogic(false, 'field');"/> <label for="field_conditional_logic" class="inline"><?php _e("Enable Conditional Logic", "gravityforms"); gform_tooltip("form_field_conditional_logic"); ?> </label> <br/> <div id="field_conditional_logic_container" style="display:none; padding-top:10px;"> <!-- content dynamically created from js.php --> </div> </li> <?php do_action("gform_field_advanced_settings", 525, $form_id); ?> <li class="conditional_logic_page_setting field_setting"> <input type="checkbox" id="page_conditional_logic" onclick="SetFieldProperty('conditionalLogic', this.checked ? new ConditionalLogic() : null); ToggleConditionalLogic(false, 'page');"/> <label for="page_conditional_logic" class="inline"><?php _e("Enable Page Conditional Logic", "gravityforms"); gform_tooltip("form_page_conditional_logic"); ?> </label> <br/> <div id="page_conditional_logic_container" style="display:none; padding-top:10px;"> <!-- content dynamically created from js.php --> </div> </li> <?php do_action("gform_field_advanced_settings", 550, $form_id); ?> <li class="conditional_logic_nextbutton_setting field_setting"> <input type="checkbox" id="next_button_conditional_logic" onclick="SetNextButtonConditionalLogic(this.checked); ToggleConditionalLogic(false, 'next_button');"/> <label for="next_button_conditional_logic" class="inline"><?php _e("Enable Next Button Conditional Logic", "gravityforms"); gform_tooltip("form_nextbutton_conditional_logic"); ?> </label> <br/> <div id="next_button_conditional_logic_container" style="display:none; padding-top:10px;"> <!-- content dynamically created from js.php --> </div> </li> <?php do_action("gform_field_advanced_settings", -1, $form_id); ?> </ul> </div> </div> </td> <td valign="top" align="right"> <div id="add_fields"> <div id="floatMenu"> <!-- begin add button boxes --> <ul id="sidebarmenu1" class="menu collapsible expandfirst"> <?php $standard_fields = array(array("class" => "button", "value" => GFCommon::get_field_type_title("text"), "onclick" => "StartAddField('text');"), array("class" => "button", "value" => GFCommon::get_field_type_title("textarea"), "onclick" => "StartAddField('textarea');"), array("class" => "button", "value" => GFCommon::get_field_type_title("select"), "onclick" => "StartAddField('select');"), array("class" => "button", "value" => GFCommon::get_field_type_title("multiselect"), "onclick" => "StartAddField('multiselect');"), array("class" => "button", "value" => GFCommon::get_field_type_title("number"), "onclick" => "StartAddField('number');"), array("class" => "button", "value" => GFCommon::get_field_type_title("checkbox"), "onclick" => "StartAddField('checkbox');"), array("class" => "button", "value" => GFCommon::get_field_type_title("radio"), "onclick" => "StartAddField('radio');"), array("class" => "button", "value" => GFCommon::get_field_type_title("hidden"), "onclick" => "StartAddField('hidden');"), array("class" => "button", "value" => GFCommon::get_field_type_title("html"), "onclick" => "StartAddField('html');"), array("class" => "button", "value" => GFCommon::get_field_type_title("section"), "onclick" => "StartAddField('section');"), array("class" => "button", "value" => GFCommon::get_field_type_title("page"), "onclick" => "StartAddField('page');")); $advanced_fields = array(array("class" => "button", "value" => GFCommon::get_field_type_title("name"), "onclick" => "StartAddField('name');"), array("class" => "button", "value" => GFCommon::get_field_type_title("date"), "onclick" => "StartAddField('date');"), array("class" => "button", "value" => GFCommon::get_field_type_title("time"), "onclick" => "StartAddField('time');"), array("class" => "button", "value" => GFCommon::get_field_type_title("phone"), "onclick" => "StartAddField('phone');"), array("class" => "button", "value" => GFCommon::get_field_type_title("address"), "onclick" => "StartAddField('address');"), array("class" => "button", "value" => GFCommon::get_field_type_title("website"), "onclick" => "StartAddField('website');"), array("class" => "button", "value" => GFCommon::get_field_type_title("email"), "onclick" => "StartAddField('email');")); if (apply_filters("gform_enable_password_field", false)) { $advanced_fields[] = array("class" => "button", "value" => GFCommon::get_field_type_title("password"), "onclick" => "StartAddField('password');"); } $advanced_fields[] = array("class" => "button", "value" => GFCommon::get_field_type_title("fileupload"), "onclick" => "StartAddField('fileupload');"); $advanced_fields[] = array("class" => "button", "value" => GFCommon::get_field_type_title("captcha"), "onclick" => "AddCaptchaField();"); $advanced_fields[] = array("class" => "button", "value" => GFCommon::get_field_type_title("list"), "onclick" => "StartAddField('list');"); $post_fields = array(array("class" => "button", "value" => GFCommon::get_field_type_title("post_title"), "onclick" => "StartAddField('post_title');"), array("class" => "button", "value" => GFCommon::get_field_type_title("post_content"), "onclick" => "StartAddField('post_content');"), array("class" => "button", "value" => GFCommon::get_field_type_title("post_excerpt"), "onclick" => "StartAddField('post_excerpt');"), array("class" => "button", "value" => GFCommon::get_field_type_title("post_tags"), "onclick" => "StartAddField('post_tags');"), array("class" => "button", "value" => GFCommon::get_field_type_title("post_category"), "onclick" => "StartAddField('post_category');"), array("class" => "button", "value" => GFCommon::get_field_type_title("post_image"), "onclick" => "StartAddField('post_image');"), array("class" => "button", "value" => GFCommon::get_field_type_title("post_custom_field"), "onclick" => "StartAddField('post_custom_field');")); $pricing_fields = array(array("class" => "button", "value" => GFCommon::get_field_type_title("product"), "onclick" => "StartAddField('product');"), array("class" => "button", "value" => GFCommon::get_field_type_title("quantity"), "onclick" => "StartAddField('quantity');"), array("class" => "button", "value" => GFCommon::get_field_type_title("option"), "onclick" => "StartAddField('option');"), array("class" => "button", "value" => GFCommon::get_field_type_title("shipping"), "onclick" => "StartAddField('shipping');"), array("class" => "button", "value" => GFCommon::get_field_type_title("total"), "onclick" => "StartAddField('total');")); if (apply_filters("gform_enable_credit_card_field", false)) { $pricing_fields[] = array("class" => "button", "value" => GFCommon::get_field_type_title("creditcard"), "onclick" => "StartAddField('creditcard');"); } $field_groups = array(array("name" => "standard_fields", "label" => __("Standard Fields", "gravityforms"), "fields" => $standard_fields, "tooltip_class" => "tooltip_bottomleft"), array("name" => "advanced_fields", "label" => __("Advanced Fields", "gravityforms"), "fields" => $advanced_fields), array("name" => "post_fields", "label" => __("Post Fields", "gravityforms"), "fields" => $post_fields)); $field_groups[] = array("name" => "pricing_fields", "label" => __("Pricing Fields", "gravityforms"), "fields" => $pricing_fields); $field_groups = apply_filters("gform_add_field_buttons", $field_groups); foreach ($field_groups as $group) { $tooltip_class = empty($group["tooltip_class"]) ? "tooltip_left" : $group["tooltip_class"]; ?> <li id="add_<?php echo $group["name"]; ?> " class="add_field_button_container"> <div class="button-title-link <?php echo $group["name"] == "standard_fields" ? "gf_button_title_active" : ""; ?> "><div class="add-buttons-title"><?php echo $group["label"]; ?> <?php gform_tooltip("form_{$group["name"]}", $tooltip_class); ?> </div></div> <ul> <li class="add-buttons"> <ol class="field_type"> <?php echo self::display_buttons($group["fields"]); ?> </ol> </li> </ul> </li> <?php } ?> </ul> <br style="clear:both;"/> <!--end add button boxes --> <?php if (GFCommon::current_user_can_any("gravityforms_delete_forms")) { $delete_link = '<a class="submitdelete" title="' . __("Delete this Form", "gravityforms") . '" onclick="if(confirm(\'' . __("Would you like to delete this form and ALL entries associated with it? \\'Cancel\\' to stop. \\'OK\\' to delete", "gravityforms") . '\')){jQuery(\'#form_delete\')[0].submit();} else{return false;}">' . __("Delete Form", "gravityforms") . '</a>'; echo apply_filters("gform_form_delete_link", $delete_link); } $button_text = rgar($form, "id") > 0 ? __("Update Form", "gravityforms") : __("Save Form", "gravityforms"); $isNew = rgar($form, "id") > 0 ? 0 : 1; $save_button = '<input type="button" class="button button-primary button-large update-form" value="' . $button_text . '" onclick="SaveForm(' . $isNew . ');" />'; $save_button = apply_filters("gform_save_form_button", $save_button); echo $save_button; ?> <span id="please_wait_container" style="display:none;"><img src="<?php echo GFCommon::get_base_url(); ?> /images/loading.gif"></span> <div class="updated_base" id="after_update_dialog" style="display:none;"> <strong><?php _e("Form updated successfully.", "gravityforms"); ?> <a title="<?php _e("Preview this form", "gravityforms"); ?> " href="<?php echo site_url(); ?> /?gf_page=preview&id=<?php echo absint(rgar($form, "id")); ?> " target="_blank"><?php _e("Preview", "gravityforms"); ?> </a></strong> </div> <div class="error_base" id="after_update_error_dialog" style="padding:10px 10px 16px 10px; display:none;"> <?php _e("There was an error while saving your form.", "gravityforms"); ?> <?php printf(__("Please %scontact our support team%s.", "gravityforms"), '<a href="http://www.gravityhelp.com">', '</a>'); ?> </div> <form method="post" id="gform_update"> <?php wp_nonce_field("gforms_update_form_{$form_id}", "gforms_update_form"); ?> <input type="hidden" id="gform_meta" name="gform_meta" /> </form> </div> </div> </td> </tr> </table> </div> <?php require_once GFCommon::get_base_path() . "/js.php"; }
public static function notification_page($form_id) { add_action('media_buttons', array('GFNotification', 'media_buttons'), 40); $form = RGFormsModel::get_form_meta($form_id); $invalid_tab = ""; if (rgpost("save")) { check_admin_referer('gforms_save_notification', 'gforms_save_notification'); $form["notification"]["to"] = rgpost("form_notification_to"); $form["notification"]["bcc"] = rgpost("form_notification_bcc"); $form["notification"]["subject"] = rgpost("form_notification_subject"); $form["notification"]["message"] = rgpost("form_notification_message"); $form["notification"]["from"] = rgempty("form_notification_from_field") ? rgpost("form_notification_from") : ""; $form["notification"]["fromField"] = rgpost("form_notification_from_field"); $form["notification"]["fromName"] = rgempty("form_notification_from_name_field") ? rgpost("form_notification_from_name") : ""; $form["notification"]["fromNameField"] = rgpost("form_notification_from_name_field"); $form["notification"]["replyTo"] = rgempty("form_notification_reply_to_field") ? rgpost("form_notification_reply_to") : ""; $form["notification"]["replyToField"] = rgpost("form_notification_reply_to_field"); $form["notification"]["routing"] = !rgempty("gform_routing_meta") ? GFCommon::json_decode(rgpost("gform_routing_meta"), true) : null; $form["notification"]["disableAutoformat"] = rgpost("form_notification_disable_autoformat"); $form["autoResponder"]["toField"] = rgpost("form_autoresponder_to"); $form["autoResponder"]["bcc"] = rgpost("form_autoresponder_bcc"); $form["autoResponder"]["fromName"] = rgpost("form_autoresponder_from_name"); $form["autoResponder"]["from"] = rgpost("form_autoresponder_from"); $form["autoResponder"]["replyTo"] = rgpost("form_autoresponder_reply_to"); $form["autoResponder"]["subject"] = rgpost("form_autoresponder_subject"); $form["autoResponder"]["message"] = rgpost("form_autoresponder_message"); $form["autoResponder"]["disableAutoformat"] = rgpost("form_autoresponder_disable_autoformat"); //validating input... $invalid_tab = self::validate_notification(); if ($invalid_tab == 0) { //input valid, updating... //emptying notification email if it is supposed to be disabled if (empty($_POST["form_notification_enable_admin"]) || $_POST["notification_to"] == "routing") { $form["notification"]["to"] = ""; } //emptying notification routing if it is supposed to be disabled if (empty($_POST["form_notification_enable_admin"]) || $_POST["notification_to"] == "email") { $form["notification"]["routing"] = null; } //emptying autoResponder settings if it is supposed to be disabled if (empty($_POST["form_notification_enable_user"])) { $form["autoResponder"]["toField"] = ""; } RGFormsModel::update_form_meta($form_id, $form); } } $wp_email = "{admin_email}"; $email_fields = GFCommon::get_email_fields($form); $name_fields = GFCommon::get_fields_by_type($form, array("name")); $has_admin_notification_fields = GFCommon::has_admin_notification($form); $has_user_notification_fields = GFCommon::has_user_notification($form); $is_admin_notification_enabled = $has_admin_notification_fields && empty($_POST["save"]) || !empty($_POST["form_notification_enable_admin"]); $is_user_notification_enabled = $has_user_notification_fields && empty($_POST["save"]) || !empty($_POST["form_notification_enable_user"]); $is_routing_enabled = !empty($form["notification"]["routing"]) && rgpost("notification_to") != "email"; ?> <link rel="stylesheet" href="<?php echo GFCommon::get_base_url(); ?> /css/admin.css?ver=<?php echo GFCommon::$version; ?> " /> <script type="text/javascript" src="<?php echo GFCommon::get_base_url(); ?> /js/forms.js?ver=<?php echo GFCommon::$version; ?> "></script> <script src="<?php echo GFCommon::get_base_url(); ?> /js/jquery.json-1.3.js?ver=<?php echo GFCommon::$version; ?> "></script> <script type="text/javascript"> var gform_has_unsaved_changes = false; jQuery(document).ready(function(){ jQuery("#entry_form input, #entry_form textarea, #entry_form select").change(function(){ gform_has_unsaved_changes = true; }); window.onbeforeunload = function(){ if (gform_has_unsaved_changes){ return "You have unsaved changes."; } } if(jQuery(document).on){ jQuery(document).on('change', '.gfield_routing_value_dropdown', function(){ SetRoutingValueDropDown(jQuery(this)); }); } else{ jQuery('.gfield_routing_value_dropdown').live('change', function(){ SetRoutingValueDropDown(jQuery(this)); }); } }); <?php if (empty($form["notification"])) { $form["notification"] = array(); } ?> var form = <?php echo GFCommon::json_encode($form); ?> ; function SetRoutingValueDropDown(element){ //parsing ID to get routing Index var index = element.attr("id").replace("routing_value_", ""); SetRouting(index); } function InsertVariable(element_id, callback, variable){ if(!variable) variable = jQuery('#' + element_id + '_variable_select').val(); var messageElement = jQuery("#" + element_id); if(document.selection) { // Go the IE way messageElement[0].focus(); document.selection.createRange().text=variable; } else if(messageElement[0].selectionStart) { // Go the Gecko way obj = messageElement[0] obj.value = obj.value.substr(0, obj.selectionStart) + variable + obj.value.substr(obj.selectionEnd, obj.value.length); } else { messageElement.val(variable + messageElement.val()); } jQuery('#' + element_id + '_variable_select')[0].selectedIndex = 0; if(callback && window[callback]){ window[callback].call(null, element_id, variable); } } function InsertEditorVariable(elementId){ var select = jQuery("#" + elementId + "_variable_select"); var variable = select.val(); select[0].selectedIndex = 0; wpActiveEditor = elementId; window.send_to_editor(variable); } function CreateRouting(routings){ var str = ""; for(var i=0; i< routings.length; i++){ var isSelected = routings[i].operator == "is" ? "selected='selected'" :""; var isNotSelected = routings[i].operator == "isnot" ? "selected='selected'" :""; var greaterThanSelected = routings[i].operator == ">" ? "selected='selected'" :""; var lessThanSelected = routings[i].operator == "<" ? "selected='selected'" :""; var containsSelected = routings[i].operator == "contains" ? "selected='selected'" :""; var startsWithSelected = routings[i].operator == "starts_with" ? "selected='selected'" :""; var endsWithSelected = routings[i].operator == "ends_with" ? "selected='selected'" :""; var email = routings[i]["email"] ? routings[i]["email"] : ''; str += "<div style='width:99%'><?php _e("Send to", "gravityforms"); ?> <input type='text' id='routing_email_" + i +"' value='" + email + "' onkeyup='SetRouting(" + i + ");'/>"; str += " <?php _e("if", "gravityforms"); ?> " + GetRoutingFields(i, routings[i].fieldId); str += "<select id='routing_operator_" + i + "' onchange='SetRouting(" + i + ");'>"; str += "<option value='is' " + isSelected + "><?php _e("is", "gravityforms"); ?> </option>"; str += "<option value='isnot' " + isNotSelected + "><?php _e("is not", "gravityforms"); ?> </option>"; str += "<option value='>' " + greaterThanSelected + "><?php _e("greater than", "gravityforms"); ?> </option>"; str += "<option value='<' " + lessThanSelected + "><?php _e("less than", "gravityforms"); ?> </option>"; str += "<option value='contains' " + containsSelected + "><?php _e("contains", "gravityforms"); ?> </option>"; str += "<option value='starts_with' " + startsWithSelected + "><?php _e("starts with", "gravityforms"); ?> </option>"; str += "<option value='ends_with' " + endsWithSelected + "><?php _e("ends with", "gravityforms"); ?> </option>"; str += "</select>"; str += GetRoutingValues(i, routings[i].fieldId, routings[i].value); str += "<img src='<?php echo GFCommon::get_base_url(); ?> /images/add.png' class='add_field_choice' title='add another rule' alt='add another rule' style='cursor:pointer; margin:0 3px;' onclick=\"InsertRouting(" + (i+1) + ");\" />"; if(routings.length > 1 ) str += "<img src='<?php echo GFCommon::get_base_url(); ?> /images/remove.png' title='remove this rule' alt='remove this rule' class='delete_field_choice' style='cursor:pointer;' onclick=\"DeleteRouting(" + i + ");\" /></li>"; str += "</div>"; } jQuery("#notification_to_routing_container").html(str); } function GetRoutingValues(index, fieldId, selectedValue){ str = GetFieldValues(index, fieldId, selectedValue, 16); return str; } function GetRoutingFields(index, selectedItem){ var str = "<select id='routing_field_id_" + index + "' class='gfield_routing_select' onchange='jQuery(\"#routing_value_" + index + "\").replaceWith(GetRoutingValues(" + index + ", jQuery(this).val())); SetRouting(" + index + "); '>"; str += GetSelectableFields(selectedItem, 16); str += "</select>"; return str; } //---------------------- generic --------------- function GetSelectableFields(selectedFieldId, labelMaxCharacters){ var str = ""; var inputType; for(var i=0; i<form.fields.length; i++){ inputType = form.fields[i].inputType ? form.fields[i].inputType : form.fields[i].type; //see if this field type can be used for conditionals if (IsNotificationConditionalLogicField(form.fields[i])) { var selected = form.fields[i].id == selectedFieldId ? "selected='selected'" : ""; str += "<option value='" + form.fields[i].id + "' " + selected + ">" + form.fields[i].label + "</option>"; } } return str; } function IsNotificationConditionalLogicField(field){ //this function is a duplicate of IsConditionalLogicField from form_editor.js inputType = field.inputType ? field.inputType : field.type; var supported_fields = ["checkbox", "radio", "select", "text", "website", "textarea", "email", "hidden", "number", "phone", "multiselect", "post_title", "post_tags", "post_custom_field", "post_content", "post_excerpt"]; var index = jQuery.inArray(inputType, supported_fields); return index >= 0; } function GetFirstSelectableField(){ var inputType; for(var i=0; i<form.fields.length; i++){ inputType = form.fields[i].inputType ? form.fields[i].inputType : form.fields[i].type; if (IsNotificationConditionalLogicField(form.fields[i])){ return form.fields[i].id; } } return 0; } function TruncateMiddle(text, maxCharacters){ if(!text) return ""; if(text.length <= maxCharacters) return text; var middle = parseInt(maxCharacters / 2); return text.substr(0, middle) + "..." + text.substr(text.length - middle, middle); } function GetFieldValues(index, fieldId, selectedValue, labelMaxCharacters){ if(!fieldId) fieldId = GetFirstSelectableField(); if(!fieldId) return ""; var str = ""; var field = GetFieldById(fieldId); var isAnySelected = false; if(!field) return ""; if(field["type"] == "post_category" && field["displayAllCategories"]){ var dropdown_id = "routing_value_" + index; var dropdown = jQuery('#' + dropdown_id + ".gfield_category_dropdown"); //don't load category drop down if it already exists (to avoid unecessary ajax requests) if(dropdown.length > 0){ var options = dropdown.html(); options = options.replace("value=\"" + selectedValue + "\"", "value=\"" + selectedValue + "\" selected=\"selected\""); str = "<select id='" + dropdown_id + "' class='gfield_routing_select gfield_category_dropdown gfield_routing_value_dropdown'>" + options + "</select>"; } else{ //loading categories via AJAX jQuery.post(ajaxurl,{ action:"gf_get_notification_post_categories", ruleIndex: index, selectedValue: selectedValue}, function(dropdown_string){ if(dropdown_string){ jQuery('#gfield_ajax_placeholder_' + index).replaceWith(dropdown_string.trim()); } } ); //will be replaced by real drop down during the ajax callback str = "<select id='gfield_ajax_placeholder_" + index + "' class='gfield_routing_select'><option><?php _e("Loading...", "gravityforms"); ?> </option></select>"; } } else if(field.choices){ //create a drop down for fields that have choices (i.e. drop down, radio, checkboxes, etc...) str = "<select class='gfield_routing_select gfield_routing_value_dropdown' id='routing_value_" + index + "'>"; for(var i=0; i<field.choices.length; i++){ var choiceValue = field.choices[i].value ? field.choices[i].value : field.choices[i].text; var isSelected = choiceValue == selectedValue; var selected = isSelected ? "selected='selected'" : ""; if(isSelected) isAnySelected = true; str += "<option value='" + choiceValue.replace(/'/g, "'") + "' " + selected + ">" + field.choices[i].text + "</option>"; } if(!isAnySelected && selectedValue){ str += "<option value='" + selectedValue.replace(/'/g, "'") + "' selected='selected'>" + selectedValue + "</option>"; } str += "</select>"; } else { selectedValue = selectedValue ? selectedValue.replace(/'/g, "'") : ""; //create a text field for fields that don't have choices (i.e text, textarea, number, email, etc...) str = "<input type='text' placeholder='<?php _e("Enter value", "gravityforms"); ?> ' class='gfield_routing_select' id='routing_value_" + index + "' value='" + selectedValue.replace(/'/g, "'") + "' onchange='SetRouting(" + index + ");' onkeyup='SetRouting(" + index + ");'>"; } return str; } function GetFieldById(fieldId){ for(var i=0; i<form.fields.length; i++){ if(form.fields[i].id == fieldId) return form.fields[i]; } return null; } //--------------------------------------------------------------------------------- function InsertRouting(index){ var routings = form.notification.routing; routings.splice(index, 0, new ConditionalRule()); CreateRouting(routings); SetRouting(index); } function SetRouting(ruleIndex){ if(!form.notification.routing && ruleIndex == 0) form.notification.routing = [new ConditionalRule()]; form.notification.routing[ruleIndex]["email"] = jQuery("#routing_email_" + ruleIndex).val(); form.notification.routing[ruleIndex]["fieldId"] = jQuery("#routing_field_id_" + ruleIndex).val(); form.notification.routing[ruleIndex]["operator"] = jQuery("#routing_operator_" + ruleIndex).val(); form.notification.routing[ruleIndex]["value"] =jQuery("#routing_value_" + ruleIndex).val(); var json = jQuery.toJSON(form.notification.routing); jQuery('#gform_routing_meta').val(json); } function DeleteRouting(ruleIndex){ form.notification.routing.splice(ruleIndex, 1); CreateRouting(form.notification.routing); } </script> <?php echo GFCommon::get_remote_message(); ?> <form method="post" id="entry_form" onsubmit="gform_has_unsaved_changes = false; jQuery('#gform_routing_meta').val(jQuery.toJSON(form.notification.routing));"> <?php wp_nonce_field('gforms_save_notification', 'gforms_save_notification'); ?> <input type="hidden" id="gform_routing_meta" name="gform_routing_meta" /> <div class="wrap"> <div class="icon32" id="gravity-notification-icon"><br></div> <h2><?php _e("Notifications", "gravityforms"); ?> : <?php echo esc_html($form["title"]); ?> </h2> <?php RGForms::top_toolbar(); ?> <div id="poststuff" class="metabox-holder"> <div id="submitdiv" class="stuffbox"> <h3><span class="hndle"><?php _e("Notification to Administrator", "gravityforms"); ?> </span></h3> <div class="inside"> <div id="submitcomment" class="submitbox"> <div id="minor-publishingx" style="padding:10px;"> <input type="checkbox" name="form_notification_enable_admin" id="form_notification_enable_admin" value="1" <?php echo $is_admin_notification_enabled ? "checked='checked'" : ""; ?> onclick="if(this.checked) {jQuery('#form_notification_admin_container').show('slow');} else {jQuery('#form_notification_to').val(''); jQuery('#form_notification_admin_container').hide('slow');}"/> <label for="form_notification_enable_admin"><?php _e("Enable email notification to administrators", "gravityforms"); ?> </label> <div id="form_notification_admin_container" style="display:<?php echo $is_admin_notification_enabled ? "block" : "none"; ?> ;"> <br/> <?php _e("Enter a message below to receive a notification email when users submit this form.", "gravityforms"); ?> <br/><br/><br/> <ul id="form_notification_container"> <?php $is_invalid_email_to = $invalid_tab == 1 && !self::is_valid_admin_to(); $class = $is_invalid_email_to ? "class='gfield_error'" : ""; ?> <li <?php echo $class; ?> > <label for="notification_to_email"> <?php _e("Send To Email", "gravityforms"); ?> <span class="gfield_required">*</span> <?php gform_tooltip("notification_send_to_email"); ?> </label> <input type="radio" id="notification_to_email" name="notification_to" <?php echo !$is_routing_enabled ? "checked='checked'" : ""; ?> value="email" onclick="jQuery('#notification_to_routing_container').hide(); jQuery('#notification_to_email_container').show('slow');"/> <label for="notification_to_email" class="inline"> <?php _e("Email", "gravityforms"); ?> </label> <input type="radio" id="notification_to_routing" name="notification_to" <?php echo $is_routing_enabled ? "checked='checked'" : ""; ?> value="routing" onclick="jQuery('#notification_to_email_container').hide(); jQuery('#notification_to_routing_container').show('slow');"/> <label for="form_button_image" class="inline"> <?php _e("Routing", "gravityforms"); ?> <?php gform_tooltip("notification_send_to_routing"); ?> </label> <div id="notification_to_email_container" style="margin-top:5px; display:<?php echo $is_routing_enabled ? "none" : "block"; ?> ;"> <input type="text" name="form_notification_to" id="form_notification_to" value="<?php echo esc_attr($form["notification"]["to"]); ?> " class="fieldwidth-1" /> <?php if (rgpost("notification_to") == "email" && $is_invalid_email_to) { ?> <span class="validation_message"><?php _e("Please enter a valid email address"); ?> </span> <?php } ?> </div> <div id="notification_to_routing_container" style="margin-top:5px; display:<?php echo $is_routing_enabled ? "block" : "none"; ?> ;"> <div> <?php $routing_fields = self::get_routing_fields($form, "0"); if (empty($routing_fields)) { //if(empty(){ ?> <div class="gold_notice"> <p><?php _e("To use notification routing, your form must have a field supported by conditional logic.", "gravityforms"); ?> </p> </div> <?php } else { if (empty($form["notification"]["routing"])) { $form["notification"]["routing"] = array(array()); } $count = sizeof($form["notification"]["routing"]); $routing_list = ","; for ($i = 0; $i < $count; $i++) { $routing_list .= $i . ","; $routing = $form["notification"]["routing"][$i]; $is_invalid_rule = $invalid_tab == 1 && $_POST["notification_to"] == "routing" && !self::is_valid_notification_email($routing["email"]); $class = $is_invalid_rule ? "class='grouting_rule_error'" : ""; ?> <div style='width:99%' <?php echo $class; ?> > <?php _e("Send to", "gravityforms"); ?> <input type="text" id="routing_email_<?php echo $i; ?> " value="<?php echo rgar($routing, "email"); ?> " onkeyup="SetRouting(<?php echo $i; ?> );"/> <?php _e("if", "gravityforms"); ?> <select id="routing_field_id_<?php echo $i; ?> " class='gfield_routing_select' onchange='jQuery("#routing_value_<?php echo $i; ?> ").replaceWith(GetRoutingValues(<?php echo $i; ?> , jQuery(this).val())); SetRouting(<?php echo $i; ?> ); '><?php echo self::get_routing_fields($form, rgar($routing, "fieldId")); ?> </select> <select id="routing_operator_<?php echo $i; ?> " onchange="SetRouting(<?php echo $i; ?> )" > <option value="is" <?php echo rgar($routing, "operator") == "is" ? "selected='selected'" : ""; ?> ><?php _e("is", "gravityforms"); ?> </option> <option value="isnot" <?php echo rgar($routing, "operator") == "isnot" ? "selected='selected'" : ""; ?> ><?php _e("is not", "gravityforms"); ?> </option> <option value=">" <?php echo rgar($routing, "operator") == ">" ? "selected='selected'" : ""; ?> ><?php _e("greater than", "gravityforms"); ?> </option> <option value="<" <?php echo rgar($routing, "operator") == "<" ? "selected='selected'" : ""; ?> ><?php _e("less than", "gravityforms"); ?> </option> <option value="contains" <?php echo rgar($routing, "operator") == "contains" ? "selected='selected'" : ""; ?> ><?php _e("contains", "gravityforms"); ?> </option> <option value="starts_with" <?php echo rgar($routing, "operator") == "starts_with" ? "selected='selected'" : ""; ?> ><?php _e("starts with", "gravityforms"); ?> </option> <option value="ends_with" <?php echo rgar($routing, "operator") == "ends_with" ? "selected='selected'" : ""; ?> ><?php _e("ends with", "gravityforms"); ?> </option> </select> <?php echo self::get_field_values($i, $form, rgar($routing, "fieldId"), rgar($routing, "value")); ?> <img src='<?php echo GFCommon::get_base_url(); ?> /images/add.png' class='add_field_choice' title='add another email routing' alt='add another email routing' style='cursor:pointer; margin:0 3px;' onclick='SetRouting(<?php echo $i; ?> ); InsertRouting(<?php echo $i + 1; ?> );' /> <?php if ($count > 1) { ?> <img src='<?php echo GFCommon::get_base_url(); ?> /images/remove.png' id='routing_delete_<?php echo $i; ?> ' title='remove this email routing' alt='remove this email routing' class='delete_field_choice' style='cursor:pointer;' onclick='DeleteRouting(<?php echo $i; ?> );' /> <?php } ?> </div> <?php } if ($is_invalid_rule) { ?> <span class="validation_message"><?php _e("Please enter a valid email address for all highlighted routing rules above."); ?> </span> <?php } ?> <input type="hidden" name="routing_count" id="routing_count" value="<?php echo $routing_list; ?> "/> <?php } ?> </div> </div> </li> <li> <label for="form_notification_from"> <?php _e("From Name", "gravityforms"); ?> <?php gform_tooltip("notification_from_name"); ?> </label> <input type="text" class="fieldwidth-2" name="form_notification_from_name" id="form_notification_from_name" onkeydown="jQuery('#form_notification_from_name_field').val('');" onchange="jQuery('#form_notification_from_name_field').val('');" value="<?php echo esc_attr(rgget("fromName", $form["notification"])); ?> "/> <?php if (!empty($name_fields)) { ?> <?php _e("OR", "gravityforms"); ?> <select name="form_notification_from_name_field" id="form_notification_from_name_field" onchange="if(jQuery(this).val().length > 0 ) jQuery('#form_notification_from_name').val('');"> <option value=""><?php _e("Select a name field", "gravityforms"); ?> </option> <?php foreach ($name_fields as $field) { $selected = rgget("fromNameField", $form["notification"]) == $field["id"] ? "selected='selected'" : ""; ?> <option value="<?php echo $field["id"]; ?> " <?php echo $selected; ?> ><?php echo GFCommon::get_label($field); ?> </option> <?php } ?> </select> <?php } ?> </li> <li> <label for="form_notification_from"> <?php _e("From Email", "gravityforms"); ?> <?php gform_tooltip("notification_from_email"); ?> </label> <input type="text" class="fieldwidth-2" name="form_notification_from" id="form_notification_from" onkeydown="jQuery('#form_notification_from_field').val('');" onchange="jQuery('#form_notification_from_field').val('');" value="<?php echo rgempty("from", $form["notification"]) && rgempty("fromField", $form["notification"]) ? esc_attr($wp_email) : esc_attr(rgget("from", $form["notification"])); ?> "/> <?php if (!empty($email_fields)) { ?> <?php _e("OR", "gravityforms"); ?> <select name="form_notification_from_field" id="form_notification_from_field" onchange="if(jQuery(this).val().length > 0 ) jQuery('#form_notification_from').val('');"> <option value=""><?php _e("Select an email field", "gravityforms"); ?> </option> <?php foreach ($email_fields as $field) { $selected = rgget("fromField", $form["notification"]) == $field["id"] ? "selected='selected'" : ""; ?> <option value="<?php echo $field["id"]; ?> " <?php echo $selected; ?> ><?php echo GFCommon::get_label($field); ?> </option> <?php } ?> </select> <?php } ?> </li> <li> <label for="form_notification_reply_to"> <?php _e("Reply To", "gravityforms"); ?> <?php gform_tooltip("notification_reply_to"); ?> </label> <input type="text" name="form_notification_reply_to" id="form_notification_reply_to" onkeydown="jQuery('#form_notification_reply_to_field').val('');" onchange="jQuery('#form_notification_reply_to_field').val('');" value="<?php echo esc_attr(rgget("replyTo", $form["notification"])); ?> " class="fieldwidth-2" /> <?php if (!empty($email_fields)) { ?> <?php _e("OR", "gravityforms"); ?> <select name="form_notification_reply_to_field" id="form_notification_reply_to_field" onchange="if(jQuery(this).val().length > 0 ) jQuery('#form_notification_reply_to').val('');"> <option value=""><?php _e("Select an email field", "gravityforms"); ?> </option> <?php foreach ($email_fields as $field) { $selected = rgar($form["notification"], "replyToField") == $field["id"] ? "selected='selected'" : ""; ?> <option value="<?php echo $field["id"]; ?> " <?php echo $selected; ?> ><?php echo GFCommon::get_label($field); ?> </option> <?php } ?> </select> <?php } ?> </li> <li> <label for="form_notification_bcc"> <?php _e("BCC", "gravityforms"); ?> <?php gform_tooltip("notification_bcc"); ?> </label> <input type="text" name="form_notification_bcc" id="form_notification_bcc" value="<?php echo esc_attr(rgget("bcc", $form["notification"])); ?> " class="fieldwidth-1" /> </li> <?php $is_invalid_subject = $invalid_tab == 1 && empty($_POST["form_notification_subject"]); $class = $is_invalid_subject ? "class='gfield_error'" : ""; ?> <li <?php echo $class; ?> > <div> <label for="form_notification_subject"> <?php _e("Subject", "gravityforms"); ?> <span class="gfield_required">*</span> </label> <div> <?php GFCommon::insert_variables($form["fields"], "form_notification_subject", true); ?> </div> <input type="text" name="form_notification_subject" id="form_notification_subject" value="<?php echo esc_attr($form["notification"]["subject"]); ?> " class="fieldwidth-1" /> <?php if ($is_invalid_subject) { ?> <span class="validation_message"><?php _e("Please enter a subject for the notification email"); ?> </span> <?php } ?> </div> </li> <?php $is_invalid_message = $invalid_tab == 1 && empty($_POST["form_notification_message"]); $class = $is_invalid_message ? "class='gfield_error'" : ""; ?> <li <?php echo $class; ?> > <div> <label for="form_notification_message"> <?php _e("Message", "gravityforms"); ?> <span class="gfield_required">*</span> </label> <?php if (GFCommon::is_wp_version("3.3")) { wp_editor($form["notification"]["message"], "form_notification_message", array("autop" => false)); } else { ?> <textarea name="form_notification_message" id="form_notification_message" class="fieldwidth-1 fieldheight-1" ><?php echo esc_html($form["notification"]["message"]); ?> </textarea> <?php } if ($is_invalid_message) { ?> <span class="validation_message"><?php _e("Please enter a message for the notification email"); ?> </span> <?php } ?> </div> </li> <li> <div> <input type="checkbox" name="form_notification_disable_autoformat" id="form_notification_disable_autoformat" value="1" <?php echo empty($form["notification"]["disableAutoformat"]) ? "" : "checked='checked'"; ?> /> <label for="form_notification_disable_autoformat" class="inline"> <?php _e("Disable Auto-formatting", "gravityforms"); ?> <?php gform_tooltip("notification_autoformat"); ?> </label> </div> </li> </ul> </div> </div> </div> </div> </div> <div id="submitdiv" class="stuffbox"> <h3><span class="hndle"><?php _e("Notification to User", "gravityforms"); ?> </span></h3> <div class="inside"> <div id="submitcomment" class="submitbox"> <div id="minor-publishingx" style="padding:10px;"> <?php if (!isset($form["autoResponder"])) { $form["autoResponder"] = array(); } if (empty($email_fields)) { ?> <div class="gold_notice"> <p><?php echo sprintf(__("Your form does not have any %semail%s field.", "gravityforms"), "<strong>", "</strong>"); ?> </p> <p> <?php echo sprintf(__("Sending notifications to users require that the form has at least one email field. %sEdit your form%s", "gravityforms"), '<a href="?page=gf_edit_forms&id=' . absint($form_id) . '">', '</a>'); ?> </p> </div> <?php } else { ?> <input type="checkbox" name="form_notification_enable_user" id="form_notification_enable_user" value="1" <?php echo $is_user_notification_enabled ? "checked='checked'" : ""; ?> onclick="if(this.checked) {jQuery('#form_notification_user_container').show('slow');} else {jQuery('#form_notification_user_container').hide('slow');}"/> <label for="form_notification_enable_user"><?php _e("Enable email notification to users", "gravityforms"); ?> </label> <div id="form_notification_user_container" style="display:<?php echo $is_user_notification_enabled ? "block" : "none"; ?> ;"> <br/> <?php _e("Enter a message below to send users an automatic response when they submit this form.", "gravityforms"); ?> <br/><br/><br/> <ul id="form_autoresponder_container"> <li> <label for="form_autoresponder_to"> <?php _e("Send To Field", "gravityforms"); ?> <span class="gfield_required">*</span> <?php gform_tooltip("autoresponder_send_to_email"); ?> </label> <select name="form_autoresponder_to" id="form_autoresponder_to"> <?php foreach ($email_fields as $field) { $selected = rgget("toField", $form["autoResponder"]) == $field["id"] ? "selected='selected'" : ""; ?> <option value="<?php echo $field["id"]; ?> " <?php echo $selected; ?> ><?php echo esc_html(GFCommon::get_label($field)); ?> </option> <?php } ?> </select> </li> <li> <label for="form_autoresponder_from_name"> <?php _e("From Name", "gravityforms"); ?> <?php gform_tooltip("autoresponder_from_name"); ?> </label> <input type="text" name="form_autoresponder_from_name" id="form_autoresponder_from_name" value="<?php echo esc_attr(rgget("fromName", $form["autoResponder"])); ?> " class="fieldwidth-2" /> </li> <li> <label for="form_autoresponder_from"> <?php _e("From Email", "gravityforms"); ?> <?php gform_tooltip("autoresponder_from"); ?> </label> <input type="text" name="form_autoresponder_from" id="form_autoresponder_from" value="<?php echo rgempty("from", $form["autoResponder"]) ? esc_attr($wp_email) : esc_attr(rgget("from", $form["autoResponder"])); ?> " class="fieldwidth-2" /> </li> <li> <label for="form_autoresponder_reply_to" style="display:block;"> <?php _e("Reply To (optional)", "gravityforms"); ?> <?php gform_tooltip("autoresponder_reply_to"); ?> </label> <input type="text" name="form_autoresponder_reply_to" id="form_autoresponder_reply_to" value="<?php echo esc_attr(rgget("replyTo", $form["autoResponder"])); ?> " class="fieldwidth-2" /> </li> <li> <label for="form_autoresponder_bcc"> <?php _e("BCC", "gravityforms"); ?> <?php gform_tooltip("autoresponder_bcc"); ?> </label> <input type="text" name="form_autoresponder_bcc" id="form_autoresponder_bcc" value="<?php echo esc_attr(rgget("bcc", $form["autoResponder"])); ?> " class="fieldwidth-1" /> </li> <?php $is_invalid_subject = $invalid_tab == 2 && rgempty("form_autoresponder_subject"); $class = $is_invalid_subject ? "class='gfield_error'" : ""; ?> <li <?php echo $class; ?> > <label for="form_autoresponder_subject"> <?php _e("Subject", "gravityforms"); ?> <span class="gfield_required">*</span> </label> <div> <?php GFCommon::insert_variables($form["fields"], "form_autoresponder_subject", true); ?> </div> <input type="text" name="form_autoresponder_subject" id="form_autoresponder_subject" value="<?php echo esc_attr(rgget("subject", $form["autoResponder"])); ?> " class="fieldwidth-1" /> <?php if ($is_invalid_subject) { ?> <span class="validation_message"><?php _e("Please enter a subject for the user notification email"); ?> </span> <?php } ?> </li> <?php $is_invalid_message = $invalid_tab == 2 && rgempty("form_autoresponder_message"); $class = $is_invalid_message ? "class='gfield_error'" : ""; ?> <li <?php echo $class; ?> > <div> <label for="form_autoresponder_message"> <?php _e("Message", "gravityforms"); ?> <span class="gfield_required">*</span> </label> <?php if (GFCommon::is_wp_version("3.3")) { wp_editor(rgget("message", $form["autoResponder"]), "form_autoresponder_message", array("autop" => false)); } else { ?> <textarea name="form_autoresponder_message" id="form_autoresponder_message" class="fieldwidth-1 fieldheight-1"><?php echo esc_html(rgget("message", $form["autoResponder"])); ?> </textarea> <?php } if ($is_invalid_message) { ?> <span class="validation_message"><?php _e("Please enter a message for the user notification email"); ?> </span> <?php } ?> </div> </li> <li> <div> <input type="checkbox" name="form_autoresponder_disable_autoformat" id="form_autoresponder_disable_autoformat" value="1" <?php echo rgempty("disableAutoformat", $form["autoResponder"]) ? "" : "checked='checked'"; ?> /> <label for="form_notification_disable_autoformat" class="inline"> <?php _e("Disable Auto-formatting", "gravityforms"); ?> <?php gform_tooltip("notification_autoformat"); ?> </label> </div> </li> </ul> </div> <?php } ?> </div> </div> </div> </div> <br class="clear" /> <div> <?php $notification_button = '<input class="button-primary" type="submit" value="' . __("Save Settings", "gravityforms") . '" name="save"/>'; echo apply_filters("gform_save_notification_button", $notification_button); ?> </div> </div> </div> </form> <?php if (rgpost("save")) { if ($invalid_tab == 0) { ?> <div class="updated fade" style="padding:6px;"> <?php _e("Notification Updated.", "gravityforms"); ?> </div> <?php } else { ?> <div class="error" style="padding:6px;"> <?php _e("Notification could not be updated. Please enter all required information below.", "gravityforms"); ?> </div> <?php } } }