public function results_page($form_id, $page_title, $gf_page, $gf_view) { $form_id = absint($form_id); if (empty($form_id)) { $forms = RGFormsModel::get_forms(); if (!empty($forms)) { $form_id = $forms[0]->id; } } $form = GFFormsModel::get_form_meta($form_id); $form = gf_apply_filters(array('gform_form_pre_results', $form_id), $form); // set up filter vars $start_date = rgget('start'); $end_date = rgget('end'); $all_fields = $form['fields']; $filter_settings = GFCommon::get_field_filter_settings($form); $filter_settings = apply_filters('gform_filters_pre_results', $filter_settings, $form); $filter_settings = array_values($filter_settings); // reset the numeric keys in case some filters have been unset $filter_fields = rgget('f'); $filter_operators = rgget('o'); $filter_values = rgget('v'); $filters = array(); $init_vars = array(); if (!empty($filter_fields)) { $init_vars['mode'] = rgget('mode'); foreach ($filter_fields as $i => $filter_field) { $filters[$i]['field'] = $filter_field; $filters[$i]['operator'] = $filter_operators[$i]; $filters[$i]['value'] = $filter_values[$i]; } $init_vars['filters'] = $filters; } $min = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG || isset($_GET['gform_debug']) ? '' : '.min'; $admin_css_url = GFCommon::get_base_url() . "/css/admin{$min}.css?ver=" . GFForms::$version; ?> <script type="text/javascript"> var gresultsFields = <?php echo json_encode($all_fields); ?> ; var gresultsFilterSettings = <?php echo json_encode($filter_settings); ?> ; var gresultsInitVars = <?php echo json_encode($init_vars); ?> ; <?php GFCommon::gf_global(); ?> <?php GFCommon::gf_vars(); ?> </script> <link rel="stylesheet" href="<?php echo esc_url($admin_css_url); ?> " type="text/css"/> <div class="wrap gforms_edit_form <?php echo GFCommon::get_browser_class(); ?> "> <?php GFCommon::form_page_title($form); ?> <?php GFCommon::display_dismissible_message(); ?> <?php GFForms::top_toolbar(); ?> <?php if (false === empty($all_fields)) { ?> <div id="poststuff" class="metabox-holder has-right-sidebar"> <div id="side-info-column" class="inner-sidebar"> <div id="gresults-results-filter" class="postbox"> <h3 style="cursor: default;"><?php echo $this->_search_title; ?> </h3> <div id="gresults-results-filter-content"> <form id="gresults-results-filter-form" action="" method="GET"> <input type="hidden" id="gresults-page-slug" name="page" value="<?php echo esc_attr($gf_page); ?> "> <input type="hidden" id="gresults-view-slug" name="view" value="<?php echo esc_attr($gf_view); ?> "> <input type="hidden" id="gresults-form-id" name="id" value="<?php echo esc_attr($form_id); ?> "> <?php $filter_ui = array('fields' => array('label' => esc_attr__('Filters', 'gravityforms'), 'tooltip' => 'gresults_filters', 'markup' => '<div id="gresults-results-field-filters-container"> <!-- placeholder populated by js --> </div>'), 'date_range' => array('label' => esc_attr__('Date Range', 'gravityforms'), 'tooltip' => 'gresults_date_range', 'markup' => '<div style="width:90px; float:left; "> <label for="gresults-results-filter-date-start">' . esc_html__('Start', 'gravityforms') . '</label> <input type="text" id="gresults-results-filter-date-start" name="start" style="width:80px" class="gresults-datepicker" value="' . $start_date . '"/> </div> <div style="width:90px; float:left; "> <label for="gresults-results-filter-date-end">' . esc_html__('End', 'gravityforms') . '</label> <input type="text" id="gresults-results-filter-date-end" name="end" style="width:80px" class="gresults-datepicker" value="' . $end_date . '"/> </div>')); $filter_ui = apply_filters('gform_filter_ui', $filter_ui, $form_id, $page_title, $gf_page, $gf_view); foreach ($filter_ui as $name => $filter) { ?> <div class='gresults-results-filter-section-label'> <?php echo $filter['label']; ?> <?php gform_tooltip(rgar($filter, 'tooltip'), 'tooltip_bottomleft'); ?> </div> <?php echo $filter['markup']; } ?> <br style="clear:both"/> <div id="gresults-results-filter-buttons"> <input type="submit" id="gresults-results-filter-submit-button" class="button button-primary button-large" value="<?php esc_attr_e('Apply filters', 'gravityforms'); ?> "> <input type="button" id="gresults-results-filter-clear-button" class="button button-secondary button-large" value="<?php esc_attr_e('Clear', 'gravityforms'); ?> " onclick="gresults.clearFilterForm();" onkeypress="gresults.clearFilterForm();"> <div class="gresults-filter-loading" style="display:none; float:right; margin-top:5px;"> <i class='gficon-gravityforms-spinner-icon gficon-spin'></i> </div> </div> </form> </div> </div> </div> </div> <div class="gresults-filter-loading" style="display:none;margin:0 5px 10px 0;"> <i class='gficon-gravityforms-spinner-icon gficon-spin'></i> <a href="javascript:void(0);" onclick="javascript:gresultsAjaxRequest.abort()" onkeypress="javascript:gresultsAjaxRequest.abort()"><?php esc_html_e('Cancel', 'gravityforms'); ?> </a> </div> <div id="gresults-results-wrapper"> <div id="gresults-results"> </div> </div> <?php } else { _e('This form does not have any fields that can be used for results', 'gravityforms'); } ?> </div> <?php }
public static function page_header($title = '') { $min = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG || isset($_GET['gform_debug']) ? '' : '.min'; // register admin styles wp_register_style('gform_admin', GFCommon::get_base_url() . "/css/admin{$min}.css"); wp_print_styles(array('jquery-ui-styles', 'gform_admin')); $current_tab = rgempty('view', $_GET) ? 'export_entry' : rgget('view'); $setting_tabs = self::get_tabs(); // kind of boring having to pass the title, optionally get it from the settings tab if (!$title) { foreach ($setting_tabs as $tab) { if ($tab['name'] == $current_tab) { $title = $tab['name']; } } } ?> <div class="wrap <?php echo sanitize_html_class($current_tab); ?> "> <h2><?php echo esc_html($title); ?> </h2> <?php GFCommon::display_dismissible_message(); ?> <?php GFCommon::display_admin_message(); ?> <div id="gform_tab_group" class="gform_tab_group vertical_tabs"> <ul id="gform_tabs" class="gform_tabs"> <?php foreach ($setting_tabs as $tab) { $query = array('view' => $tab['name']); if (isset($tab['query'])) { $query = array_merge($query, $tab['query']); } $url = add_query_arg($query); ?> <li <?php echo $current_tab == $tab['name'] ? "class='active'" : ''; ?> > <a href="<?php echo esc_url($url); ?> "><?php echo esc_html($tab['label']); ?> </a> </li> <?php } ?> </ul> <div id="gform_tab_container" class="gform_tab_container"> <div class="gform_tab_content" id="tab_<?php echo esc_attr($current_tab); ?> "> <?php }
public static function forms_page($form_id) { global $wpdb; if (!GFCommon::ensure_wp_version()) { return; } self::update_recent_forms($form_id); $update_result = ''; if (rgpost('operation') == 'trash') { check_admin_referer('gforms_trash_form', 'gforms_trash_form'); GFFormsModel::trash_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)); } } require_once GFCommon::get_base_path() . '/currency.php'; wp_print_styles(array('thickbox')); /* @var GF_Field_Address $gf_address_field */ $gf_address_field = GF_Fields::get('address'); $min = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG || isset($_GET['gform_debug']) ? '' : '.min'; ?> <link rel="stylesheet" href="<?php echo GFCommon::get_base_url(); ?> /css/admin<?php echo $min; ?> .css?ver=<?php echo GFCommon::$version; ?> " type="text/css" /> <script type="text/javascript"> <?php GFCommon::gf_global(); ?> <?php GFCommon::gf_vars(); ?> </script> <script type="text/javascript"> function has_entry(fieldNumber) { var submitted_fields = [<?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 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); } function IsValidFormula(formula) { if (formula == '') return true; var patt = /{([^}]+)}/i, exprPatt = /^[0-9 -/*\(\)]+$/i, expr = formula.replace(/(\r\n|\n|\r)/gm, ''), match; while (match = patt.exec(expr)) { expr = expr.replace(match[0], 1); } if (exprPatt.test(expr)) { try { var r = eval(expr); return !isNaN(parseFloat(r)) && isFinite(r); } catch (e) { return false; } } else { return false; } } </script> <?php $form = !rgempty('meta', $update_result) ? rgar($update_result, 'meta') : GFFormsModel::get_form_meta($form_id); if (!isset($form['fields']) || !is_array($form['fields'])) { $form['fields'] = array(); } $form = gf_apply_filters(array('gform_admin_pre_render', $form_id), $form); if (isset($form['id'])) { echo "<script type=\"text/javascript\">var form = " . 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(); ?> "> <?php if (empty($form_id)) { ?> <h1><?php esc_html_e('New Form', 'gravityforms'); ?> </h1> <?php } else { ?> <?php GFCommon::form_page_title($form); ?> <?php } ?> <?php GFCommon::display_dismissible_message(); ?> <?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 esc_html_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 esc_html_e('The form title you have entered is already taken. Please enter a 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 esc_html_e('Form updated successfully.', 'gravityforms'); ?> </strong> </div> <?php } break; } ?> <?php // link to the google webfont library ?> <style type="text/css"> @import url('//fonts.googleapis.com/css?family=Shadows+Into+Light+Two'); </style> <form method="post" id="form_trash"> <?php wp_nonce_field('gforms_trash_form', 'gforms_trash_form'); ?> <input type="hidden" value="trash" name="operation" /> </form> <table width="100%"> <tr> <td class="pad_top" valign="top"> <?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 esc_attr_e('click to edit page options', 'gravityforms'); ?> "><i class='fa fa-caret-down fa-lg'></i></a> </div> <div class="gf-pagebreak-first gf-pagebreak-container"> <div class="gf-pagebreak-text-before"><?php esc_html_e('begin form', 'gravityforms'); ?> </div> <div class="gf-pagebreak-text-main"><span><?php esc_html_e('START PAGING', 'gravityforms'); ?> </span></div> <div class="gf-pagebreak-text-after"><?php esc_html_e('top of the first page', 'gravityforms'); ?> </div> </div> <div id="pagination_settings" style="display: none;"> <ul> <li style="width:100px; padding:0px;"> <a href="#gform_pagination_settings_tab_1"><?php esc_html_e('General', 'gravityforms'); ?> </a></li> <li style="width:100px; padding:0px;"> <a href="#gform_pagination_settings_tab_2"><?php esc_html_e('Appearance', 'gravityforms'); ?> </a></li> </ul> <div id="gform_pagination_settings_tab_1"> <ul class="gforms_form_settings"> <li> <label for="pagination_type_container"> <?php esc_html_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();' onkeypress='InitPaginationOptions();' /> <label for="pagination_type_percentage" class="inline"> <?php esc_html_e('Progress Bar', 'gravityforms'); ?> </label> <input type="radio" id="pagination_type_steps" name="pagination_type" value="steps" onclick='InitPaginationOptions();' onkeypress='InitPaginationOptions();' /> <label for="pagination_type_steps" class="inline"> <?php esc_html_e('Steps', 'gravityforms'); ?> </label> <input type="radio" id="pagination_type_none" name="pagination_type" value="none" onclick='InitPaginationOptions();' onkeypress='InitPaginationOptions();' /> <label for="pagination_type_none" class="inline"> <?php esc_html_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 esc_html_e('Style', 'gravityforms'); ?> <?php gform_tooltip('form_percentage_style'); ?> </label> <select id="percentage_style" onchange="TogglePercentageStyle();"> <option value="blue"> <?php esc_html_e('Blue', 'gravityforms'); ?> </option> <option value="gray"> <?php esc_html_e('Gray', 'gravityforms'); ?> </option> <option value="green"> <?php esc_html_e('Green', 'gravityforms'); ?> </option> <option value="orange"> <?php esc_html_e('Orange', 'gravityforms'); ?> </option> <option value="red"> <?php esc_html_e('Red', 'gravityforms'); ?> </option> <option value="custom"> <?php esc_html_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 esc_html_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 esc_html_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 esc_html_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()" onkeypress="TogglePercentageConfirmationText()"> <label for="percentage_confirmation_display" class="inline"> <?php esc_html_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 esc_html_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 esc_html_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> <ul id="no-fields-stash" style="display:none;"> <?php // A place to store the "No Fields" placeholder when not in use. ?> </ul> <ul id="gform_fields" class="<?php echo GFCommon::get_ul_classes($form); ?> " style="position: relative;"> <?php $no_fields_style = !empty($form['fields']) ? ' style="display:none;"' : null; ?> <?php // link to the google webfont library ?> <style type="text/css"> @import url('//fonts.googleapis.com/css?family=Shadows+Into+Light+Two'); </style> <li id="no-fields"<?php echo $no_fields_style; ?> > <div class="newform_notice"><?php esc_html_e("This form doesn't have any fields yet. Follow the steps below to get started.", 'gravityforms'); ?> <span></span></div> <?php // first step ?> <h4 class="gf_nofield_header gf_nofield_1">1. <?php esc_html_e('Select A Field Type', 'gravityforms'); ?> </h4> <p><?php esc_html_e('Start by selecting a field type from the nifty floating panels on the right.', 'gravityforms'); ?> </p> <div id="gf_nofield_1_instructions"> <span class="gf_nofield_1_instructions_heading gf_tips"><?php esc_html_e('Start Over There', 'gravityforms'); ?> </span> <span class="gf_nofield_1_instructions_copy gf_tips"><?php esc_html_e('Pick a field.. any field. Don\'t be shy.', 'gravityforms'); ?> </span> </div> <?php // second step ?> <h4 class="gf_nofield_header gf_nofield_2">2. <?php esc_html_e('Click to Add A Field', 'gravityforms'); ?> </h4> <p><?php esc_html_e("Once you've found the field type you want, click to add it to the form editor here on the left side of your screen.", 'gravityforms'); ?> </p> <div id="gf_nofield_2_instructions"> <span class="gf_nofield_2_instructions_copy gf_tips"><?php esc_html_e('Now your new field magically appears over here.', 'gravityforms'); ?> </span> </div> <?php // third step ?> <h4 class="gf_nofield_header gf_nofield_3">3. <?php esc_html_e('Edit Field Options', 'gravityforms'); ?> </h4> <p><?php esc_html_e('Click on the edit link to configure the various field options', 'gravityforms'); ?> </p> <div id="gf_nofield_3_instructions"> <span class="gf_nofield_3_instructions_copy_top gf_tips"><?php esc_html_e('Preview your changes up here.', 'gravityforms'); ?> </span> <span class="gf_nofield_3_instructions_copy_mid gf_tips"><?php esc_html_e('Edit the field options. Go ahead.. go crazy.', 'gravityforms'); ?> </span> <span class="gf_nofield_3_instructions_copy_bottom gf_tips"><?php esc_html_e('If you get stuck, mouseover the tool tips for a little help.', 'gravityforms'); ?> </span> </div> <?php // fourth step ?> <h4 class="gf_nofield_header gf_nofield_4">4. <?php esc_html_e('Drag to Arrange Fields', 'gravityforms'); ?> </h4> <p><?php esc_html_e('Drag the fields to arrange them the way you prefer', 'gravityforms'); ?> </p> <div id="gf_nofield_4_instructions"> <span class="gf_nofield_4_instructions_copy_top gf_tips"><?php esc_html_e('Grab here with your cursor.', 'gravityforms'); ?> </span> <span class="gf_nofield_4_instructions_copy_bottom gf_tips"><?php esc_html_e('Drag up or down to arrange your fields.', 'gravityforms'); ?> </span> </div> <?php // fifth step ?> <h4 class="gf_nofield_header gf_nofield_5">5. <?php esc_html_e('Save Your Form', 'gravityforms'); ?> </h4> <p><?php esc_html_e("Once you're happy with your form, remember to click on the 'update form' button to save all your hard work.", 'gravityforms'); ?> </p> <div id="gf_nofield_5_instructions"> <span class="gf_nofield_5_instructions_heading gf_tips"><?php esc_html_e('Save Your New Form', 'gravityforms'); ?> </span> <span class="gf_nofield_5_instructions_copy gf_tips"><?php esc_html_e("You're done. That's it.", 'gravityforms'); ?> </span> </div> </li> <?php if (is_array(rgar($form, 'fields'))) { require_once GFCommon::get_base_path() . '/form_display.php'; foreach ($form['fields'] as $field) { echo GFFormDisplay::get_field($field, '', true, $form); } } ?> </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 esc_attr_e('Edit Last Page', 'gravityforms'); ?> "><i class='fa fa-caret-down fa-lg'></i></a> </div> <div class="gf-pagebreak-end gf-pagebreak-container"> <div class="gf-pagebreak-text-before"><?php esc_html_e('end of last page', 'gravityforms'); ?> </div> <div class="gf-pagebreak-text-main"><span><?php esc_html_e('END PAGING', 'gravityforms'); ?> </span></div> <div class="gf-pagebreak-text-after"><?php esc_html_e('end of form', 'gravityforms'); ?> </div> </div> <div id="last_page_settings" style="display:none;"> <ul> <li style="width:100px; padding:0px;"> <a href="#gform_last_page_settings_tab_1"><?php esc_html_e('General', '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 esc_html_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');" onkeypress="TogglePageButton('last_page');" /> <label for="last_page_button_text" class="inline"> <?php esc_html_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');" onkeypress="TogglePageButton('last_page');" /> <label for="last_page_button_image" class="inline"> <?php esc_html_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 esc_html_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 esc_html_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 esc_html_e('You have successfully saved your form!', 'gravityforms'); ?> </h3> <p><?php esc_html_e('What would you like to do next?', 'gravityforms'); ?> </p> <div class="new-form-option"> <a title="<?php esc_attr_e('Preview this form', 'gravityforms'); ?> " id="preview_form_link" href="<?php echo esc_url_raw(trailingslashit(site_url())); ?> ?gf_page=preview&id={formid}" target="_blank"><?php esc_html_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 esc_attr_e('Setup email notifications for this form', 'gravityforms'); ?> " id="notification_form_link" href="#"><?php esc_html_e('Setup Email Notifications for this Form', 'gravityforms'); ?> </a> </div> <?php } ?> <div class="new-form-option"> <a title="<?php esc_attr_e('Continue editing this form', 'gravityforms'); ?> " id="edit_form_link" href="#"><?php esc_html_e('Continue Editing this Form', 'gravityforms'); ?> </a> </div> <div class="new-form-option"> <a title="<?php esc_attr_e('I am done. Take me back to form list', 'gravityforms'); ?> " href="?page=gf_edit_forms"><?php esc_html_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 esc_html_e('General', 'gravityforms'); ?> </a> </li> <li style="width:100px; padding:0px; "> <a href="#gform_tab_3"><?php esc_html_e('Appearance', 'gravityforms'); ?> </a> </li> <li style="width:100px; padding:0px; "> <a href="#gform_tab_2"><?php esc_html_e('Advanced', 'gravityforms'); ?> </a> </li> </ul> <div id="gform_tab_1"> <ul> <?php /** * Inserts additional content within the General field settings * * Note: This action fires multiple times. Use the first parameter to determine positioning on the list. * * @param int 0 The placement of the action being fired * @param int $form_id The current form ID */ do_action('gform_field_standard_settings', 0, $form_id); ?> <li class="label_setting field_setting"> <label for="field_label"> <?php esc_html_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" size="35" /> </li> <?php do_action('gform_field_standard_settings', 10, $form_id); ?> <li class="description_setting field_setting"> <label for="field_description"> <?php esc_html_e('Description', 'gravityforms'); ?> <?php gform_tooltip('form_field_description'); ?> </label> <textarea id="field_description" class="fieldwidth-3 fieldheight-2"></textarea> </li> <?php do_action('gform_field_standard_settings', 20, $form_id); ?> <li class="product_field_setting field_setting"> <label for="product_field"> <?php esc_html_e('Product Field Mapping', '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 esc_html_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 esc_html_e('Single Product', 'gravityforms'); ?> </option> <option value="select"><?php esc_html_e('Drop Down', 'gravityforms'); ?> </option> <option value="radio"><?php esc_html_e('Radio Buttons', 'gravityforms'); ?> </option> <option value="price"><?php esc_html_e('User Defined Price', 'gravityforms'); ?> </option> <option value="hiddenproduct"><?php esc_html_e('Hidden', 'gravityforms'); ?> </option> <option value="calculation"><?php esc_html_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 esc_html_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 esc_html_e('Single Method', 'gravityforms'); ?> </option> <option value="select"><?php esc_html_e('Drop Down', 'gravityforms'); ?> </option> <option value="radio"><?php esc_html_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 esc_html_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'));" onkeypress="SetDisableQuantity(jQuery(this).is(':checked'));" /> <label for="field_disable_quantity" class="inline"> <?php esc_html_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 esc_html_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 esc_html_e('Drop Down', 'gravityforms'); ?> </option> <option value="checkbox"><?php esc_html_e('Checkboxes', 'gravityforms'); ?> </option> <option value="radio"><?php esc_html_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 esc_html_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 esc_html_e('Drop Down', 'gravityforms'); ?> </option> <option value="donation"><?php esc_html_e('User Defined Price', 'gravityforms'); ?> </option> <option value="radio"><?php esc_html_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 esc_html_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 esc_html_e('Number', 'gravityforms'); ?> </option> <option value="select"><?php esc_html_e('Drop Down', 'gravityforms'); ?> </option> <option value="hidden"><?php esc_html_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 esc_html_e('Content', 'gravityforms'); ?> <?php gform_tooltip('form_field_content'); ?> </label> <textarea id="field_content" class="fieldwidth-3 fieldheight-1 merge-tag-support mt-position-right mt-prepopulate"></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 esc_html_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');" onkeypress="TogglePageButton('next'); SetPageButton('next');" /> <label for="next_button_text" class="inline"> <?php esc_html_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');" onkeypress="TogglePageButton('next'); SetPageButton('next');" /> <label for="next_button_image" class="inline"> <?php esc_html_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 esc_html_e('Text:', 'gravityforms'); ?> </label> <input type="text" id="next_button_text_input" class="input_size_b" size="40" /> </div> <div id="next_button_image_container" style="margin-top:5px;"> <label for="next_button_image_url" class="inline"> <?php esc_html_e('Image Path:', 'gravityforms'); ?> </label> <input type="text" id="next_button_image_url" size="45" /> </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 esc_html_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');" onkeypress="TogglePageButton('previous'); SetPageButton('previous');" /> <label for="previous_button_text" class="inline"> <?php esc_html_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');" onkeypress="TogglePageButton('previous'); SetPageButton('previous');" /> <label for="previous_button_image" class="inline"> <?php esc_html_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 esc_html_e('Text:', 'gravityforms'); ?> </label> <input type="text" id="previous_button_text_input" class="input_size_b" size="40" /> </div> <div id="previous_button_image_container" style="margin-top:5px;"> <label for="previous_button_image_url" class="inline"> <?php esc_html_e('Image Path:', 'gravityforms'); ?> </label> <input type="text" id="previous_button_image_url" size="45" /> </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);" onkeypress="SetFieldProperty('disableMargins', this.checked);" /> <label for="field_disable_margins" class="inline"> <?php esc_html_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 esc_html_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());});"> <optgroup class="option_header" label="<?php esc_attr_e('Standard Fields', 'gravityforms'); ?> "> <option value="text"><?php esc_html_e('Single line text', 'gravityforms'); ?> </option> <option value="textarea"><?php esc_html_e('Paragraph Text', 'gravityforms'); ?> </option> <option value="select"><?php esc_html_e('Drop Down', 'gravityforms'); ?> </option> <option value="multiselect"><?php esc_html_e('Multi Select', 'gravityforms'); ?> </option> <option value="number"><?php esc_html_e('Number', 'gravityforms'); ?> </option> <option value="checkbox"><?php esc_html_e('Checkboxes', 'gravityforms'); ?> </option> <option value="radio"><?php esc_html_e('Radio Buttons', 'gravityforms'); ?> </option> <option value="hidden"><?php esc_html_e('Hidden', 'gravityforms'); ?> </option> </optgroup> <optgroup class="option_header" label="<?php esc_html_e('Advanced Fields', 'gravityforms'); ?> "> <option value="date"><?php esc_html_e('Date', 'gravityforms'); ?> </option> <option value="time"><?php esc_html_e('Time', 'gravityforms'); ?> </option> <option value="phone"><?php esc_html_e('Phone', 'gravityforms'); ?> </option> <option value="website"><?php esc_html_e('Website', 'gravityforms'); ?> </option> <option value="email"><?php esc_html_e('Email', 'gravityforms'); ?> </option> <option value="fileupload"><?php esc_html_e('File Upload', 'gravityforms'); ?> </option> <option value="list"><?php esc_html_e('List', 'gravityforms'); ?> </option> </optgroup> </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 esc_html_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 esc_html_e('Single line text', 'gravityforms'); ?> </option> <option value="select"><?php esc_html_e('Drop Down', 'gravityforms'); ?> </option> <option value="multiselect"><?php esc_html_e('Multi Select', 'gravityforms'); ?> </option> <option value="checkbox"><?php esc_html_e('Checkboxes', 'gravityforms'); ?> </option> <option value="radio"><?php esc_html_e('Radio Buttons', 'gravityforms'); ?> </option> </select> </li> <?php do_action('gform_field_standard_settings', 400, $form_id); ?> <?php if (class_exists('ReallySimpleCaptcha')) { //the field_captcha_type drop down has options dynamically added in form_editor.js for the v1/v2 versions of google recaptcha ?> <li class="captcha_type_setting field_setting"> <label for="field_captcha_type"> <?php esc_html_e('Type', 'gravityforms'); ?> <?php gform_tooltip('form_field_captcha_type'); ?> </label> <select id="field_captcha_type" onchange="StartChangeCaptchaType(jQuery(this).val())"> <option value="simple_captcha"><?php esc_html_e('Really Simple CAPTCHA', 'gravityforms'); ?> </option> <option value="math"><?php esc_html_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 esc_html_e('Size', 'gravityforms'); ?> </label> <select id="field_captcha_size" onchange="SetCaptchaSize(jQuery(this).val());"> <option value="small"><?php esc_html_e('Small', 'gravityforms'); ?> </option> <option value="medium"><?php esc_html_e('Medium', 'gravityforms'); ?> </option> <option value="large"><?php esc_html_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 esc_html_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 esc_html_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 esc_html_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="light"><?php esc_html_e('Light', 'gravityforms'); ?> </option> <option value="dark"><?php esc_html_e('Dark', '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 esc_html_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();" onkeypress="ToggleCustomField();" /> <label for="field_custom_existing" class="inline"> <?php esc_html_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();" onkeypress="ToggleCustomField();" /> <label for="field_custom_new" class="inline"> <?php esc_html_e('New', 'gravityforms'); ?> </label> </div> <div class="clear"> <input type="text" id="field_custom_field_name_text" size="35" /> <select id="field_custom_field_name_select" onchange="SetFieldProperty('postCustomFieldName', jQuery(this).val());"> <option value=""><?php esc_html_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 esc_attr($name); ?> "><?php echo esc_html($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 esc_html_e('Post Status', 'gravityforms'); ?> <?php gform_tooltip('form_field_post_status'); ?> </label> <select id="field_post_status" name="field_post_status"> <?php $post_stati = apply_filters('gform_post_status_options', array('draft' => esc_html__('Draft', 'gravityforms'), 'pending' => esc_html__('Pending Review', 'gravityforms'), 'publish' => esc_html__('Published', 'gravityforms'))); foreach ($post_stati as $value => $label) { ?> <option value="<?php echo esc_attr($value); ?> "><?php echo esc_html($label); ?> </option> <?php } ?> </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 esc_html_e('Default Post Author', 'gravityforms'); ?> <?php gform_tooltip('form_field_post_author'); ?> </label> <?php $args = array('name' => 'field_post_author'); $args = gf_apply_filters(array('gform_author_dropdown_args', rgar($form, 'id')), $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 esc_html_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 esc_html_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_format_val = esc_attr($post_format); $post_format_text = esc_html($post_format); $post_formats_dropdown .= "<option value='{$post_format_val}'>" . ucfirst($post_format_text) . '</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 esc_html_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 esc_html_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 esc_html_e('Drop Down', 'gravityforms'); ?> </option> <option value="checkbox"><?php esc_html_e('Checkboxes', 'gravityforms'); ?> </option> <option value="radio"><?php esc_html_e('Radio Buttons', 'gravityforms'); ?> </option> <option value="multiselect"><?php esc_html_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 esc_html_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();" onkeypress="ToggleCategory();" /> <label for="gfield_category_all" class="inline"> <?php esc_html_e('All Categories', 'gravityforms'); ?> </label> <input type="radio" id="gfield_category_select" name="gfield_category" value="select" onclick="ToggleCategory();" onkeypress="ToggleCategory();" /> <label for="form_button_image" class="inline"> <?php esc_html_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();" onkeypress="TogglePostCategoryInitialItem(); SetCategoryInitialItem();" /> <label for="gfield_post_category_initial_item_enabled" class="inline"> <?php esc_html_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 esc_html_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();" onkeypress="TogglePostContentTemplate();" /> <label for="gfield_post_content_enabled" class="inline"> <?php esc_html_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();" onkeypress="TogglePostTitleTemplate();" /> <label for="gfield_post_title_enabled" class="inline"> <?php esc_html_e('Create content template', 'gravityforms'); ?> <?php gform_tooltip('form_field_post_title_template_enable'); ?> </label> <div id="gfield_post_title_container"> <input type="text" id="field_post_title_template" class="fieldwidth-3 merge-tag-support mt-position-right mt-hide_all_fields mt-exclude-post_image-fileupload" /> </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();" onkeypress="ToggleCustomFieldTemplate(); SetCustomFieldTemplate();" /> <label for="gfield_customfield_content_enabled" class="inline"> <?php esc_html_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"></textarea> </div> </li> <?php do_action('gform_field_standard_settings', 1000, $form_id); ?> <li class="post_image_setting field_setting"> <label><?php esc_html_e('Image Metadata', 'gravityforms'); ?> <?php gform_tooltip('form_field_image_meta'); ?> </label> <input type="checkbox" id="gfield_display_title" onclick="SetPostImageMeta();" onkeypress="SetPostImageMeta();" /> <label for="gfield_display_title" class="inline"> <?php esc_html_e('Title', 'gravityforms'); ?> </label> <br /> <input type="checkbox" id="gfield_display_caption" onclick="SetPostImageMeta();" onkeypress="SetPostImageMeta();" /> <label for="gfield_display_caption" class="inline"> <?php esc_html_e('Caption', 'gravityforms'); ?> </label> <br /> <input type="checkbox" id="gfield_display_description" onclick="SetPostImageMeta();" onkeypress="SetPostImageMeta();" /> <label for="gfield_display_description" class="inline"> <?php esc_html_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();" onkeypress="SetFeaturedImage();" /> <label for="gfield_featured_image" class="inline"><?php esc_html_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 = $gf_address_field->get_address_types(rgar($form, 'id')); ?> <label for="field_address_type"> <?php esc_html_e('Address Type', 'gravityforms'); ?> <?php gform_tooltip('form_field_address_type'); ?> </label> <select id="field_address_type" onchange="ChangeAddressType();"> <?php foreach ($addressTypes as $key => $addressType) { ?> <option value="<?php echo esc_attr($key); ?> "><?php echo esc_html($addressType['label']); ?> </option> <?php } ?> </select> <div class="custom_inputs_sub_setting gfield_sub_setting"> <label for="field_address_fields" class="inline"> <?php esc_html_e('Address Fields', 'gravityforms'); ?> <?php gform_tooltip('form_field_address_fields'); ?> </label> <div id="field_address_fields_container" style="padding-top:10px;"> <!-- content dynamically created from js.php --> </div> </div> <?php foreach ($addressTypes as $key => $addressType) { $state_label = isset($addressType['state_label']) ? esc_attr($addressType['state_label']) : __('State', 'gravityforms'); ?> <div id="address_type_container_<?php echo esc_attr($key); ?> " class="gfield_sub_setting gfield_address_type_container"> <input type="hidden" id="field_address_country_<?php echo esc_attr($key); ?> " value="<?php echo isset($addressType['country']) ? esc_attr($addressType['country']) : ''; ?> " /> <input type="hidden" id="field_address_zip_label_<?php echo esc_attr($key); ?> " value="<?php echo isset($addressType['zip_label']) ? esc_attr($addressType['zip_label']) : __('Postal Code', 'gravityforms'); ?> " /> <input type="hidden" id="field_address_state_label_<?php echo esc_attr($key); ?> " value="<?php echo $state_label; ?> " /> <input type="hidden" id="field_address_has_states_<?php echo esc_attr($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 esc_attr($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 esc_attr($key); ?> " class="field_address_default_state" onchange="SetAddressProperties();"> <?php echo $gf_address_field->get_state_dropdown($addressType['states']); ?> </select> <?php } ?> <?php if (!isset($addressType['country'])) { ?> <label for="field_address_default_country_<?php echo $key; ?> "> <?php esc_html_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 $gf_address_field->get_country_dropdown(); ?> </select> <?php } ?> </div> <?php } ?> </li> <?php do_action('gform_field_standard_settings', 1100, $form_id); ?> <li class="name_format_setting field_setting"> <label for="field_name_format"> <?php esc_html_e('Name Format', 'gravityforms'); ?> <?php gform_tooltip('form_field_name_format'); ?> </label> <select id="field_name_format" onchange="StartChangeNameFormat(jQuery(this).val());"> <option value="extended"><?php esc_html_e('Extended', 'gravityforms'); ?> </option> <option value="advanced"><?php esc_html_e('Advanced', 'gravityforms'); ?> </option> </select> </li> <?php do_action('gform_field_standard_settings', 1125, $form_id); ?> <li class="name_setting field_setting"> <div class="custom_inputs_setting gfield_sub_setting"> <label for="field_name_fields" class="inline"> <?php esc_html_e('Name Fields', 'gravityforms'); ?> <?php gform_tooltip('form_field_name_fields'); ?> </label> <div id="field_name_fields_container" style="padding-top:10px;"> <!-- content dynamically created from js.php --> </div> </div> </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 esc_html_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 esc_html_e('Date Field', 'gravityforms'); ?> </option> <option value="datepicker"><?php esc_html_e('Date Picker', 'gravityforms'); ?> </option> <option value="datedropdown"><?php esc_html_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);" onkeypress="SetCalendarIconType(this.value);" /> <label for="gsetting_icon_none" class="inline"> <?php esc_html_e('No Icon', 'gravityforms'); ?> </label> <input type="radio" id="gsetting_icon_calendar" name="gsetting_icon" value="calendar" onclick="SetCalendarIconType(this.value);" onkeypress="SetCalendarIconType(this.value);" /> <label for="gsetting_icon_calendar" class="inline"> <?php esc_html_e('Calendar Icon', 'gravityforms'); ?> </label> <input type="radio" id="gsetting_icon_custom" name="gsetting_icon" value="custom" onclick="SetCalendarIconType(this.value);" onkeypress="SetCalendarIconType(this.value);" /> <label for="gsetting_icon_custom" class="inline"> <?php esc_html_e('Custom Icon', 'gravityforms'); ?> </label> <div id="gfield_icon_url_container"> <label for="gfield_calendar_icon_url" class="inline"> <?php esc_html_e('Image Path: ', 'gravityforms'); ?> </label> <input type="text" id="gfield_calendar_icon_url" size="45" /> <div class="instruction"><?php esc_html_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 esc_html_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', 1225, $form_id); ?> <li class="customize_inputs_setting field_setting"> <label for="field_enable_customize_inputs" class="inline"> <?php esc_html_e('Customize Fields', 'gravityforms'); ?> </label> <?php gform_tooltip('form_field_customize_inputs'); ?> <div id="field_customize_inputs_container" style="padding-top:10px;"> <!-- content dynamically created from js.php --> </div> </li> <?php do_action('gform_field_standard_settings', 1250, $form_id); ?> <li class="file_extensions_setting field_setting"> <label for="field_file_extension"> <?php esc_html_e('Allowed file extensions', 'gravityforms'); ?> <?php gform_tooltip('form_field_fileupload_allowed_extensions'); ?> </label> <input type="text" id="field_file_extension" size="40" /> <div> <small><?php esc_html_e('Separated with commas (i.e. jpg, gif, png, pdf)', 'gravityforms'); ?> </small> </div> </li> <?php do_action('gform_field_standard_settings', 1260, $form_id); ?> <li class="multiple_files_setting field_setting"> <input type="checkbox" id="field_multiple_files" onclick="ToggleMultiFile();" onkeypress="ToggleMultiFile();" /> <label for="field_multiple_files" class="inline"> <?php esc_html_e('Enable Multi-File Upload', 'gravityforms'); ?> <?php gform_tooltip('form_field_multiple_files'); ?> </label> <div id="gform_multiple_files_options"> <br /> <div> <label for="field_max_files"> <?php esc_html_e('Maximum Number of Files', 'gravityforms'); ?> <?php gform_tooltip('form_field_max_files'); ?> </label> <input type="text" id="field_max_files" size="10" /> </div> <br /> </div> </li> <?php do_action('gform_field_standard_settings', 1267, $form_id); ?> <li class="file_size_setting field_setting"> <label for="field_max_file_size"> <?php esc_html_e('Maximum File Size', 'gravityforms'); ?> <?php gform_tooltip('form_field_max_file_size'); ?> </label> <input type="text" id="field_max_file_size" size="10" placeholder="<?php $max_upload_size = wp_max_upload_size() / 1048576; echo $max_upload_size; ?> MB" /> <div> <small><?php printf(esc_html__('Maximum allowed on this server: %sMB', 'gravityforms'), $max_upload_size); ?> </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();" onkeypress="SetFieldProperty('enableColumns', this.checked); ToggleColumns();" /> <label for="field_columns_enabled" class="inline"><?php esc_html_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 esc_html_e('Maximum Rows', 'gravityforms'); ?> <?php gform_tooltip('form_field_maxrows'); ?> </label> <input type="text" id="field_maxrows" /> </li> <?php do_action('gform_field_standard_settings', 1300, $form_id); ?> <li class="time_format_setting field_setting"> <label for="field_time_format"> <?php esc_html_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 esc_html_e('12 hour', 'gravityforms'); ?> </option> <option value="24"><?php esc_html_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 esc_html_e('Phone Format', 'gravityforms'); ?> <?php gform_tooltip('form_field_phone_format'); ?> </label> <select id="field_phone_format" onchange="SetFieldPhoneFormat(jQuery(this).val());"> <?php $phone_formats = GF_Fields::get('phone')->get_phone_formats($form_id); foreach ($phone_formats as $key => $phone_format) { ?> <option value="<?php echo esc_attr($key); ?> "><?php echo esc_html($phone_format['label']); ?> </option> <?php } ?> </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();" onkeypress="SetFieldProperty('enableChoiceValue', this.checked); ToggleChoiceValue(); SetFieldChoices();" /> <label for="field_choice_values_enabled" class="inline gfield_value_label"><?php esc_html_e('show values', 'gravityforms'); ?> </label> </div> <?php echo apply_filters('gform_choices_setting_title', __('Choices', 'gravityforms')); ?> <?php gform_tooltip('form_field_choices'); ?> <br /> <div id="gfield_settings_choices_container"> <label class="gfield_choice_header_label"><?php esc_html_e('Label', 'gravityforms'); ?> </label><label class="gfield_choice_header_value"><?php esc_html_e('Value', 'gravityforms'); ?> </label><label class="gfield_choice_header_price"><?php esc_html_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=400&width=600&inlineId=gfield_bulk_add', '');" onkeypress="tb_show('<?php echo esc_js($window_title); ?> ', '#TB_inline?height=400&width=600&inlineId=gfield_bulk_add', '');" class="button" /> <div id="gfield_bulk_add" style="display:none;"> <div> <?php $predefined_choices = array(__('Countries', 'gravityforms') => $gf_address_field->get_countries(), __('U.S. States', 'gravityforms') => $gf_address_field->get_us_states(), __('Canadian Province/Territory', 'gravityforms') => $gf_address_field->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 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')), __('Education', 'gravityforms') => array(__('High School', 'gravityforms'), __('Associate Degree', 'gravityforms'), __("Bachelor's Degree", 'gravityforms'), __('Graduate or 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(__('Every day', '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 = gf_apply_filters(array('gform_predefined_choices', rgar($form, 'id')), $predefined_choices); $custom_choices = RGFormsModel::get_custom_choices(); ?> <div class="panel-instructions"><?php esc_html_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="javascript:void(0);" onclick="SelectPredefinedChoice('<?php echo $key; ?> ');" onkeypress="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();" onkeypress="InsertBulkChoices(jQuery('#gfield_bulk_add_input').val().split('\n')); tb_remove();" class="button-primary" value="<?php esc_attr_e('Insert Choices', 'gravityforms'); ?> " /> <input type="button" onclick="tb_remove();" onkeypress="tb_remove();" class="button" value="<?php esc_attr_e('Cancel', 'gravityforms'); ?> " /> </div> <div class="panel-custom" style=""> <a href="javascript:void(0);" onclick="LoadCustomChoicesPanel(true, 'slow');" onkeypress="LoadCustomChoicesPanel(true, 'slow');" id="bulk_save_as"><?php esc_html_e('Save as new custom choice', 'gravityforms'); ?> </a> <div id="bulk_custom_edit" style="display:none;"> <?php esc_html_e('Save as', 'gravityforms'); ?> <input type="text" id="custom_choice_name" value="<?php esc_attr_e('Enter name', 'gravityforms'); ?> " onfocus="if(this.value == '<?php echo esc_js(__('enter name', 'gravityforms')); ?> ') this.value='';"> <a href="javascript:void(0);" onclick="SaveCustomChoices();" onkeypress="SaveCustomChoices();" class="button" id="bulk_save_button"><?php esc_html_e('Save', 'gravityforms'); ?> </a> <a href="javascript:void(0);" onclick="CloseCustomChoicesPanel('slow');" onkeypress="CloseCustomChoicesPanel('slow');" id="bulk_cancel_link"><?php esc_html_e('Cancel', 'gravityforms'); ?> </a> <a href="javascript:void(0);" onclick="DeleteCustomChoice();" onkeypress="DeleteCustomChoice();" id="bulk_delete_link"><?php esc_html_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));" onkeypress="var value = jQuery(this).is(':checked'); SetFieldProperty('enableOtherChoice', value); UpdateFieldChoices(GetInputType(field));" /> <label for="field_other_choice" class="inline"> <?php esc_html_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);" onkeypress="SetEmailConfirmation(this.checked);" /> <label for="gfield_email_confirm_enabled" class="inline"> <?php esc_html_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);" onkeypress="TogglePasswordStrength(); SetPasswordStrength(this.checked);" /> <label for="gfield_password_strength_enabled" class="inline"> <?php esc_html_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 id="gfield_min_strength_container"> <label for="gfield_min_strength"> <?php esc_html_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 esc_html_e('None', 'gravityforms'); ?> </option> <option value="short"><?php esc_html_e('Short', 'gravityforms'); ?> </option> <option value="bad"><?php esc_html_e('Bad', 'gravityforms'); ?> </option> <option value="good"><?php esc_html_e('Good', 'gravityforms'); ?> </option> <option value="strong"><?php esc_html_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 esc_html_e('Number Format', 'gravityforms'); ?> <?php gform_tooltip('form_field_number_format'); ?> </label> <select id="field_number_format" onchange="SetFieldProperty('numberFormat', this.value);jQuery('.field_calculation_rounding').toggle(this.value != 'currency');"> <option value="decimal_dot">9,999.99</option> <option value="decimal_comma">9.999,99</option> <option value="currency"><?php esc_html_e('Currency', 'gravityforms'); ?> </option> </select> </li> <?php do_action('gform_field_standard_settings', 1415, $form_id); ?> <li class="sub_labels_setting field_setting"> <label for="field_sub_labels"> <?php esc_html_e('Sub-Labels', 'gravityforms'); ?> <?php gform_tooltip('form_field_sub_labels'); ?> </label> <div id="field_sub_labels_container"> <!-- content dynamically created from js.php --> </div> </li> <?php do_action('gform_field_standard_settings', 1425, $form_id); ?> <?php do_action('gform_field_standard_settings', 1430, $form_id); ?> <li class="credit_card_setting field_setting"> <label> <?php esc_html_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 esc_attr($card['slug']); ?> " value="<?php echo esc_attr($card['slug']); ?> " onclick="SetCardType(this, this.value);" onkeypress="SetCardType(this, this.value);" /> <label for="field_credit_card_<?php echo esc_attr($card['slug']); ?> " class="inline"><?php echo esc_html($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 esc_html_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 esc_html_e('Standard', 'gravityforms'); ?> </option> <option value="style2"><?php esc_html_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();" onkeypress="ToggleInputMask();" /> <label for="field_input_mask" class="inline"> <?php esc_html_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();" onkeypress="ToggleInputMaskOptions();" /> <label for="field_mask_standard" class="inline"> <?php esc_html_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();" onkeypress="ToggleInputMaskOptions();" /> <label for="field_mask_custom" class="inline"> <?php esc_html_e('Custom', 'gravityforms'); ?> </label> </div> <div class="clear"></div> <input type="text" id="field_mask_text" size="35" /> <p class="mask_text_description" style="margin:5px 0 0;"> <?php esc_html_e('Enter a custom mask', 'gravityforms'); ?> . <a href="javascript:void(0);" onclick="tb_show('<?php echo esc_js(__('Custom Mask Instructions', 'gravityforms')); ?> ', '#TB_inline?width=350&inlineId=custom_mask_instructions', '');" onkeypress="tb_show('<?php echo esc_js(__('Custom Mask Instructions', 'gravityforms')); ?> ', '#TB_inline?width=350&inlineId=custom_mask_instructions', '');"><?php esc_html_e('Help', 'gravityforms'); ?> </a> </p> <div id="custom_mask_instructions" style="display:none;"> <div class="custom_mask_instructions"> <h4><?php esc_html_e('Usage', 'gravityforms'); ?> </h4> <ul class="description-list"> <li><?php esc_html_e("Use a '9' to indicate a numerical character.", 'gravityforms'); ?> </li> <li><?php esc_html_e("Use a lower case 'a' to indicate an alphabetical character.", 'gravityforms'); ?> </li> <li><?php esc_html_e("Use an asterisk '*' to indicate any alphanumeric character.", 'gravityforms'); ?> </li> <li><?php esc_html_e("Use a question mark '?' to indicate optional characters. Note: All characters after the question mark will be optional.", 'gravityforms'); ?> </li> <li><?php esc_html_e('All other characters are literal values and will be displayed automatically.', 'gravityforms'); ?> </li> </ul> <h4><?php esc_html_e('Examples', 'gravityforms'); ?> </h4> <ul class="examples-list"> <li> <h5><?php esc_html_e('Date', 'gravityforms'); ?> </h5> <span class="label"><?php esc_html_e('Mask', 'gravityforms'); ?> </span> <code>99/99/9999</code><br /> <span class="label"><?php esc_html_e('Valid Input', 'gravityforms'); ?> </span> <code>10/21/2011</code> </li> <li> <h5><?php esc_html_e('Social Security Number', 'gravityforms'); ?> </h5> <span class="label"><?php esc_html_e('Mask', 'gravityforms'); ?> </span> <code>999-99-9999</code><br /> <span class="label"><?php esc_html_e('Valid Input', 'gravityforms'); ?> </span> <code>987-65-4329</code> </li> <li> <h5><?php esc_html_e('Course Code', 'gravityforms'); ?> </h5> <span class="label"><?php esc_html_e('Mask', 'gravityforms'); ?> </span> <code>aaa 999</code><br /> <span class="label"><?php esc_html_e('Valid Input', 'gravityforms'); ?> </span> <code>BIO 101</code> </li> <li> <h5><?php esc_html_e('License Key', 'gravityforms'); ?> </h5> <span class="label"><?php esc_html_e('Mask', 'gravityforms'); ?> </span> <code>***-***-***</code><br /> <span class="label"><?php esc_html_e('Valid Input', 'gravityforms'); ?> </span> <code>a9a-f0c-28Q</code> </li> <li> <h5><?php esc_html_e('Zip Code w/ Optional Plus Four', 'gravityforms'); ?> </h5> <span class="label"><?php esc_html_e('Mask', 'gravityforms'); ?> </span> <code>99999?-9999</code><br /> <span class="label"><?php esc_html_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 esc_html_e('Select a Mask', 'gravityforms'); ?> </option> <?php $masks = RGFormsModel::get_input_masks(); foreach ($masks as $mask_name => $mask_value) { ?> <option value="<?php echo esc_attr($mask_value); ?> "><?php echo esc_html($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 esc_html_e('Maximum Characters', 'gravityforms'); ?> <?php gform_tooltip('form_field_maxlength'); ?> </label> <input type="text" id="field_maxlen" /></input> </li> <?php do_action('gform_field_standard_settings', 1500, $form_id); ?> <li class="range_setting field_setting"> <div style="clear:both;"><?php esc_html_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" /> <label for="field_range_min"> <?php esc_html_e('Min', 'gravityforms'); ?> </label> </div> <div style="width:90px; float:left;"> <input type="text" id="field_range_max" size="10" /> <label for="field_range_max"> <?php esc_html_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);" onkeypress="ToggleCalculationOptions(this.checked, field);" /> <label for="field_enable_calculation" class="inline"> <?php esc_html_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 esc_html_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);" onkeypress="InsertVariable('field_calculation_formula', 'FormulaContentCallback', this.value);" /> <?php } ?> </div> </div> <textarea id="field_calculation_formula" class="fieldwidth-3 fieldheight-2"></textarea> <br /> <a href="javascript:void(0)" onclick="var field = GetSelectedField(); alert(IsValidFormula(field.calculationFormula) ? '<?php echo esc_js(__('The formula appears to be valid.', 'gravityforms')); ?> ' : '<?php echo esc_js(__('There appears to be a problem with the formula.', 'gravityforms')); ?> ');" onkeypress="var field = GetSelectedField(); alert(IsValidFormula(field.calculationFormula) ? '<?php echo esc_js(__('The formula appears to be valid.', 'gravityforms')); ?> ' : '<?php echo esc_js(__('There appears to be a problem with the formula.', 'gravityforms')); ?> ');"><?php esc_html_e('Validate Formula', 'gravityforms'); ?> </a> <div class="field_calculation_rounding"> <label for="field_calculation_rounding" style="margin-top:10px;"> <?php esc_html_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"><?php esc_html_e('Do not round', 'gravityforms'); ?> </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 esc_html_e('Rules', 'gravityforms'); ?> <br /> <input type="checkbox" id="field_required" onclick="SetFieldRequired(this.checked);" onkeypress="SetFieldRequired(this.checked);" /> <label for="field_required" class="inline"> <?php esc_html_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);" onkeypress="SetFieldProperty('noDuplicates', this.checked);" /> <label for="field_no_duplicates" class="inline"> <?php esc_html_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_3"> <ul> <?php /** * Inserts additional content within the Appearance field settings * * Note: This action fires multiple times. Use the first parameter to determine positioning on the list. * * @param int 0 The placement of the action being fired * @param int $form_id The current form ID */ do_action('gform_field_appearance_settings', 0, $form_id); ?> <li class="placeholder_setting field_setting"> <label for="field_placeholder"> <?php esc_html_e('Placeholder', 'gravityforms'); ?> <?php gform_tooltip('form_field_placeholder'); ?> </label> <input type="text" id="field_placeholder" class="field_placeholder fieldwidth-2 merge-tag-support mt-position-right mt-prepopulate" /> <span id="placeholder_warning" style="display:none"><?php _e('Placeholder text is not supported when using the Rich Text Editor.', 'gravityforms'); ?> </span> </li> <?php do_action('gform_field_appearance_settings', 20, $form_id); ?> <li class="placeholder_textarea_setting field_setting"> <label for="field_placeholder_textarea"> <?php esc_html_e('Placeholder', 'gravityforms'); ?> <?php gform_tooltip('form_field_placeholder'); ?> </label> <textarea id="field_placeholder_textarea" class="field_placeholder fieldwidth-3 merge-tag-support mt-position-right mt-prepopulate"></textarea> <span id="placeholder_warning" style="display:none"><?php _e('Placeholder text is not supported when using the Rich Text Editor.', 'gravityforms'); ?> </span> </li> <?php do_action('gform_field_appearance_settings', 50, $form_id); ?> <li class="input_placeholders_setting field_setting"> <label> <?php esc_html_e('Placeholders', 'gravityforms'); ?> <?php gform_tooltip('form_field_input_placeholders'); ?> </label> <div id="field_input_placeholders_container"> <!-- content dynamically created from js.php --> </div> </li> <?php do_action('gform_field_appearance_settings', 100, $form_id); $label_placement_form_setting = rgar($form, 'labelPlacement'); switch ($label_placement_form_setting) { case 'left_label': $label_placement_form_setting_label = __('Left aligned', 'gravityforms'); break; case 'right_label': $label_placement_form_setting_label = __('Right aligned', 'gravityforms'); break; case 'top_label': default: $label_placement_form_setting_label = __('Top aligned', 'gravityforms'); } $enable_label_visiblity_settings = apply_filters('gform_enable_field_label_visibility_settings', false); $description_placement_form_setting = rgar($form, 'descriptionPlacement'); $description_placement_form_setting_label = $description_placement_form_setting == 'above' ? $description_placement_form_setting_label = __('Above inputs', 'gravityforms') : ($description_placement_form_setting_label = __('Below inputs', 'gravityforms')); ?> <li class="label_placement_setting field_setting"> <?php if ($enable_label_visiblity_settings) { ?> <label for="field_label_placement"> <?php esc_html_e('Field Label Visibility', 'gravityforms'); ?> <?php gform_tooltip('form_field_label_placement'); ?> </label> <select id="field_label_placement" onchange="SetFieldLabelPlacement(jQuery(this).val());"> <option value=""><?php printf(__('Visible (%s)', 'gravityforms'), esc_html($label_placement_form_setting_label)); ?> </option> <option value="hidden_label"><?php esc_html_e('Hidden', 'gravityforms'); ?> </option> </select> <?php } ?> <div id="field_description_placement_container" style="display:none; padding-top:10px;"> <label for="field_description_placement"> <?php esc_html_e('Description Placement', 'gravityforms'); ?> <?php gform_tooltip('form_field_description_placement'); ?> </label> <select id="field_description_placement" onchange="SetFieldDescriptionPlacement(jQuery(this).val());"> <option value=""><?php printf(__('Use Form Setting (%s)', 'gravityforms'), esc_html($description_placement_form_setting_label)); ?> </option> <option value="below"><?php esc_html_e('Below inputs', 'gravityforms'); ?> </option> <option value="above"><?php esc_html_e('Above inputs', 'gravityforms'); ?> </option> </select> </div> </li> <?php do_action('gform_field_appearance_settings', 150, $form_id); $sub_label_placement_form_setting = rgar($form, 'subLabelPlacement'); $sub_label_placement_form_setting_label = $sub_label_placement_form_setting == 'above' ? $sub_label_placement_form_setting_label = __('Above inputs', 'gravityforms') : ($sub_label_placement_form_setting_label = __('Below inputs', 'gravityforms')); ?> <li class="sub_label_placement_setting field_setting"> <label for="field_sub_label_placement"> <?php esc_html_e('Sub-Label Placement', 'gravityforms'); ?> <?php gform_tooltip('form_field_sub_label_placement'); ?> </label> <select id="field_sub_label_placement" onchange="SetFieldSubLabelPlacement(jQuery(this).val());"> <option value=""><?php printf(__('Use Form Setting (%s)', 'gravityforms'), esc_html($sub_label_placement_form_setting_label)); ?> </option> <option value="below"><?php esc_html_e('Below inputs', 'gravityforms'); ?> </option> <option value="above"><?php esc_html_e('Above inputs', 'gravityforms'); ?> </option> <?php if ($enable_label_visiblity_settings) { ?> <option value="hidden_label"><?php esc_html_e('Hidden', 'gravityforms'); ?> </option> <?php } ?> </select> </li> <?php do_action('gform_field_appearance_settings', 200, $form_id); ?> <li class="error_message_setting field_setting"> <label for="field_error_message"> <?php esc_html_e('Custom Validation Message', 'gravityforms'); ?> <?php gform_tooltip('form_field_validation_message'); ?> </label> <input type="text" id="field_error_message" class="fieldwidth-2" /> </li> <?php do_action('gform_field_appearance_settings', 250, $form_id); ?> <li class="css_class_setting field_setting"> <label for="field_css_class"> <?php esc_html_e('Custom CSS Class', 'gravityforms'); ?> <?php gform_tooltip('form_field_css_class'); ?> </label> <input type="text" id="field_css_class" size="30" /> </li> <?php do_action('gform_field_appearance_settings', 300, $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);" onkeypress="SetFieldProperty('enableEnhancedUI', jQuery(this).is(':checked') ? 1 : 0);" /> <label for="gfield_enable_enhanced_ui" class="inline"> <?php esc_html_e('Enable enhanced user interface', 'gravityforms'); ?> <?php gform_tooltip('form_field_enable_enhanced_ui'); ?> </label> </li> <?php do_action('gform_field_appearance_settings', 400, $form_id); ?> <li class="size_setting field_setting"> <label for="field_size"> <?php esc_html_e('Field Size', 'gravityforms'); ?> <?php gform_tooltip('form_field_size'); ?> </label> <select id="field_size" onchange="SetFieldSize(jQuery(this).val());"> <option value="small"><?php esc_html_e('Small', 'gravityforms'); ?> </option> <option value="medium"><?php esc_html_e('Medium', 'gravityforms'); ?> </option> <option value="large"><?php esc_html_e('Large', 'gravityforms'); ?> </option> </select> </li> </ul> </div> <div id="gform_tab_2"> <ul> <?php /** * Inserts additional content within the Advanced field settings * * Note: This action fires multiple times. Use the first parameter to determine positioning on the list. * * @param int 0 The placement of the action being fired * @param int $form_id The current form ID */ do_action('gform_field_advanced_settings', 0, $form_id); ?> <li class="admin_label_setting field_setting"> <label for="field_admin_label"> <?php esc_html_e('Admin Field Label', 'gravityforms'); ?> <?php gform_tooltip('form_field_admin_label'); ?> </label> <input type="text" id="field_admin_label" size="35" /> </li> <?php do_action('gform_field_advanced_settings', 25, $form_id); do_action('gform_field_advanced_settings', 35, $form_id); do_action('gform_field_advanced_settings', 50, $form_id); do_action('gform_field_advanced_settings', 100, $form_id); do_action('gform_field_advanced_settings', 125, $form_id); ?> <li class="default_value_setting field_setting"> <label for="field_default_value"> <?php esc_html_e('Default Value', 'gravityforms'); ?> <?php gform_tooltip('form_field_default_value'); ?> </label> <input type="text" id="field_default_value" class="field_default_value fieldwidth-2 merge-tag-support mt-position-right mt-prepopulate" /> </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 esc_html_e('Default Value', 'gravityforms'); ?> <?php gform_tooltip('form_field_default_value'); ?> </label> <textarea id="field_default_value_textarea" class="field_default_value fieldwidth-3 merge-tag-support mt-position-right mt-prepopulate"></textarea> </li> <?php do_action('gform_field_advanced_settings', 155, $form_id); ?> <li class="name_prefix_choices_setting field_setting" style="display:none;"> <?php esc_html_e('Prefix Choices', 'gravityforms'); ?> <?php gform_tooltip('form_field_name_prefix_choices'); ?> <br /> <div id="gfield_settings_prefix_input_choices_container" class="gfield_settings_input_choices_container"> <label class="gfield_choice_header_label"><?php esc_html_e('Label', 'gravityforms'); ?> </label><label class="gfield_choice_header_value"><?php esc_html_e('Value', 'gravityforms'); ?> </label> <ul id="field_prefix_choices" class="field_input_choices"> <!-- content dynamically created from js.php --> </ul> </div> </li> <?php do_action('gform_field_advanced_settings', 175, $form_id); ?> <li class="default_input_values_setting field_setting"> <label> <?php esc_html_e('Default Values', 'gravityforms'); ?> <?php gform_tooltip('form_field_default_input_values'); ?> </label> <div id="field_default_input_values_container"> <!-- content dynamically created from js.php --> </div> </li> <?php do_action('gform_field_advanced_settings', 185, $form_id); ?> <li class="copy_values_option field_setting"> <input type="checkbox" id="field_enable_copy_values_option" /> <label for="field_enable_copy_values_option" class="inline"> <?php esc_html_e('Display option to use the values submitted in different field', 'gravityforms'); ?> <?php gform_tooltip('form_field_enable_copy_values_option'); ?> </label> <div id="field_copy_values_disabled" style="display:none;padding-top: 10px;"> <span class="instruction" style="margin-left:0"> <?php esc_html_e('To activate this option, please add a field to be used as the source.', 'gravityforms'); ?> <?php gform_tooltip('form_field_enable_copy_values_disabled'); ?> </span> </div> <div id="field_copy_values_container" style="display:none;" class="gfield_sub_setting"> <label for="field_copy_values_option_label"> <?php esc_html_e('Option Label', 'gravityforms'); ?> <?php gform_tooltip('form_field_copy_values_option_label'); ?> </label> <input id="field_copy_values_option_label" type="text" class="fieldwidth-2" /> <label for="field_copy_values_option_field" style="padding-top: 10px;"> <?php esc_html_e('Source Field', 'gravityforms'); ?> <?php gform_tooltip('form_field_copy_values_option_field'); ?> </label> <select id="field_copy_values_option_field"> <!-- content dynamically created --> </select> <div style="padding-top: 10px;"> <input type="checkbox" id="field_copy_values_option_default" /> <label for="field_copy_values_option_default" class="inline"> <?php esc_html_e('Activated by default', 'gravityforms'); ?> <?php gform_tooltip('form_field_copy_values_option_default'); ?> </label> </div> </div> </li> <?php do_action('gform_field_advanced_settings', 200, $form_id); do_action('gform_field_advanced_settings', 225, $form_id); do_action('gform_field_advanced_settings', 250, $form_id); ?> <li class="captcha_language_setting field_setting"> <label for="field_captcha_language"> <?php esc_html_e('Language', 'gravityforms'); ?> <?php gform_tooltip('form_field_recaptcha_language'); ?> </label> <select id="field_captcha_language" onchange="SetFieldProperty('captchaLanguage', this.value);"> <option value="ar"><?php esc_html_e('Arabic', 'gravityforms'); ?> </option> <option value="bn"><?php esc_html_e('Bengali', 'gravityforms'); ?> </option> <option value="bg"><?php esc_html_e('Bulgarian', 'gravityforms'); ?> </option> <option value="ca"><?php esc_html_e('Catalan', 'gravityforms'); ?> </option> <option value="zh-CN"><?php esc_html_e('Chinese (Simplified)', 'gravityforms'); ?> </option> <option value="zh-TW"><?php esc_html_e('Chinese (Traditional)', 'gravityforms'); ?> </option> <option value="hr"><?php esc_html_e('Croatian', 'gravityforms'); ?> </option> <option value="cs"><?php esc_html_e('Czech', 'gravityforms'); ?> </option> <option value="da"><?php esc_html_e('Danish', 'gravityforms'); ?> </option> <option value="nl"><?php esc_html_e('Dutch', 'gravityforms'); ?> </option> <option value="en-GB"><?php esc_html_e('English (UK)', 'gravityforms'); ?> </option> <option value="en"><?php esc_html_e('English (US)', 'gravityforms'); ?> </option> <option value="et"><?php esc_html_e('Estonian', 'gravityforms'); ?> </option> <option value="fil"><?php esc_html_e('Filipino', 'gravityforms'); ?> </option> <option value="fi"><?php esc_html_e('Finnish', 'gravityforms'); ?> </option> <option value="fr"><?php esc_html_e('French', 'gravityforms'); ?> </option> <option value="fr-CA"><?php esc_html_e('French (Canadian)', 'gravityforms'); ?> </option> <option value="de"><?php esc_html_e('German', 'gravityforms'); ?> </option> <option value="gu"><?php esc_html_e('Gujarati', 'gravityforms'); ?> </option> <option value="de-AT"><?php esc_html_e('German (Austria)', 'gravityforms'); ?> </option> <option value="de-CH"><?php esc_html_e('German (Switzerland)', 'gravityforms'); ?> </option> <option value="el"><?php esc_html_e('Greek', 'gravityforms'); ?> </option> <option value="iw"><?php esc_html_e('Hebrew', 'gravityforms'); ?> </option> <option value="hi"><?php esc_html_e('Hindi', 'gravityforms'); ?> </option> <option value="hu"><?php esc_html_e('Hungarian', 'gravityforms'); ?> </option> <option value="id"><?php esc_html_e('Indonesian', 'gravityforms'); ?> </option> <option value="it"><?php esc_html_e('Italian', 'gravityforms'); ?> </option> <option value="ja"><?php esc_html_e('Japanese', 'gravityforms'); ?> </option> <option value="kn"><?php esc_html_e('Kannada', 'gravityforms'); ?> </option> <option value="ko"><?php esc_html_e('Korean', 'gravityforms'); ?> </option> <option value="lv"><?php esc_html_e('Latvian', 'gravityforms'); ?> </option> <option value="lt"><?php esc_html_e('Lithuanian', 'gravityforms'); ?> </option> <option value="ms"><?php esc_html_e('Malay', 'gravityforms'); ?> </option> <option value="ml"><?php esc_html_e('Malayalam', 'gravityforms'); ?> </option> <option value="mr"><?php esc_html_e('Marathi', 'gravityforms'); ?> </option> <option value="no"><?php esc_html_e('Norwegian', 'gravityforms'); ?> </option> <option value="fa"><?php esc_html_e('Persian', 'gravityforms'); ?> </option> <option value="pl"><?php esc_html_e('Polish', 'gravityforms'); ?> </option> <option value="pt"><?php esc_html_e('Portuguese', 'gravityforms'); ?> </option> <option value="pt-BR"><?php esc_html_e('Portuguese (Brazil)', 'gravityforms'); ?> </option> <option value="pt-PT"><?php esc_html_e('Portuguese (Portugal)', 'gravityforms'); ?> </option> <option value="ro"><?php esc_html_e('Romanian', 'gravityforms'); ?> </option> <option value="ru"><?php esc_html_e('Russian', 'gravityforms'); ?> </option> <option value="sr"><?php esc_html_e('Serbian', 'gravityforms'); ?> </option> <option value="sk"><?php esc_html_e('Slovak', 'gravityforms'); ?> </option> <option value="sl"><?php esc_html_e('Slovenian', 'gravityforms'); ?> </option> <option value="es"><?php esc_html_e('Spanish', 'gravityforms'); ?> </option> <option value="es-419"><?php esc_html_e('Spanish (Latin America)', 'gravityforms'); ?> </option> <option value="sv"><?php esc_html_e('Swedish', 'gravityforms'); ?> </option> <option value="ta"><?php esc_html_e('Tamil', 'gravityforms'); ?> </option> <option value="te"><?php esc_html_e('Telugu', 'gravityforms'); ?> </option> <option value="th"><?php esc_html_e('Thai', 'gravityforms'); ?> </option> <option value="tr"><?php esc_html_e('Turkish', 'gravityforms'); ?> </option> <option value="uk"><?php esc_html_e('Ukrainian', 'gravityforms'); ?> </option> <option value="ur"><?php esc_html_e('Urdu', 'gravityforms'); ?> </option> <option value="vi"><?php esc_html_e('Vietnamese', 'gravityforms'); ?> </option> </select> </li> <?php do_action('gform_field_advanced_settings', 300, $form_id); do_action('gform_field_advanced_settings', 325, $form_id); ?> <li class="add_icon_url_setting field_setting"> <label for="field_add_icon_url"> <?php esc_html_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" /> </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 esc_html_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" /> </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);" onkeypress="SetPasswordProperty(this.checked);" /> <label for="field_password" class="inline"><?php esc_html_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);" onkeypress="SetFieldProperty('forceSSL', this.checked);" /> <label for="field_force_ssl" class="inline"><?php esc_html_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 esc_html_e('Visibility', 'gravityforms'); ?> <?php gform_tooltip('form_field_visibility'); ?> </label> <div> <input type="radio" name="field_visibility" id="field_visibility_everyone" size="10" onclick="return SetFieldAdminOnly(!this.checked);" onkeypress="return SetFieldAdminOnly(!this.checked);" /> <label for="field_visibility_everyone" class="inline"> <?php esc_html_e('Everyone', 'gravityforms'); ?> </label> <input type="radio" name="field_visibility" id="field_visibility_admin" size="10" onclick="return SetFieldAdminOnly(this.checked);" onkeypress="return SetFieldAdminOnly(this.checked);" /> <label for="field_visibility_admin" class="inline"> <?php esc_html_e('Admin Only', 'gravityforms'); ?> </label> </div> <br class="clear" /> </li> <?php do_action('gform_field_advanced_settings', 425, $form_id); ?> <li class="rich_text_editor_setting field_setting"> <input type="checkbox" id="field_rich_text_editor" onclick="ToggleRichTextEditor( this.checked );"/> <label for="field_rich_text_editor" class="inline"><?php _e('Use the Rich Text Editor', 'gravityforms'); ?> <?php gform_tooltip('form_field_rich_text_editor'); ?> </label> </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()" onkeypress="SetFieldProperty('allowsPrepopulate', this.checked); ToggleInputName()" /> <label for="field_prepopulate" class="inline"><?php esc_html_e('Allow field to be populated dynamically', 'gravityforms'); ?> <?php 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');" onkeypress="SetFieldProperty('conditionalLogic', this.checked ? new ConditionalLogic() : null); ToggleConditionalLogic(false, 'field');" /> <label for="field_conditional_logic" class="inline"><?php esc_html_e('Enable Conditional Logic', 'gravityforms'); ?> <?php 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');" onkeypress="SetFieldProperty('conditionalLogic', this.checked ? new ConditionalLogic() : null); ToggleConditionalLogic(false, 'page');" /> <label for="page_conditional_logic" class="inline"><?php esc_html_e('Enable Page Conditional Logic', 'gravityforms'); ?> <?php 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');" onkeypress="SetNextButtonConditionalLogic(this.checked); ToggleConditionalLogic(false, 'next_button');" /> <label for="next_button_conditional_logic" class="inline"><?php esc_html_e('Enable Next Button Conditional Logic', 'gravityforms'); ?> <?php 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', 'data-type' => 'text', 'value' => GFCommon::get_field_type_title('text')), array('class' => 'button', 'data-type' => 'textarea', 'value' => GFCommon::get_field_type_title('textarea')), array('class' => 'button', 'data-type' => 'select', 'value' => GFCommon::get_field_type_title('select')), array('class' => 'button', 'data-type' => 'multiselect', 'value' => GFCommon::get_field_type_title('multiselect')), array('class' => 'button', 'data-type' => 'number', 'value' => GFCommon::get_field_type_title('number')), array('class' => 'button', 'data-type' => 'checkbox', 'value' => GFCommon::get_field_type_title('checkbox')), array('class' => 'button', 'data-type' => 'radio', 'value' => GFCommon::get_field_type_title('radio')), array('class' => 'button', 'data-type' => 'hidden', 'value' => GFCommon::get_field_type_title('hidden')), array('class' => 'button', 'data-type' => 'html', 'value' => GFCommon::get_field_type_title('html')), array('class' => 'button', 'data-type' => 'section', 'value' => GFCommon::get_field_type_title('section')), array('class' => 'button', 'data-type' => 'page', 'value' => GFCommon::get_field_type_title('page'))); $advanced_fields = array(array('class' => 'button', 'data-type' => 'name', 'value' => GFCommon::get_field_type_title('name')), array('class' => 'button', 'data-type' => 'date', 'value' => GFCommon::get_field_type_title('date')), array('class' => 'button', 'data-type' => 'time', 'value' => GFCommon::get_field_type_title('time')), array('class' => 'button', 'data-type' => 'phone', 'value' => GFCommon::get_field_type_title('phone')), array('class' => 'button', 'data-type' => 'address', 'value' => GFCommon::get_field_type_title('address')), array('class' => 'button', 'data-type' => 'website', 'value' => GFCommon::get_field_type_title('website')), array('class' => 'button', 'data-type' => 'email', 'value' => GFCommon::get_field_type_title('email'))); if (apply_filters('gform_enable_password_field', false)) { $advanced_fields[] = array('class' => 'button', 'data-type' => 'password', 'value' => GFCommon::get_field_type_title('password')); } $advanced_fields[] = array('class' => 'button', 'data-type' => 'fileupload', 'value' => GFCommon::get_field_type_title('fileupload')); $advanced_fields[] = array('class' => 'button', 'data-type' => 'captcha', 'value' => GFCommon::get_field_type_title('captcha')); $advanced_fields[] = array('class' => 'button', 'data-type' => 'list', 'value' => GFCommon::get_field_type_title('list')); $post_fields = array(array('class' => 'button', 'data-type' => 'post_title', 'value' => GFCommon::get_field_type_title('post_title')), array('class' => 'button', 'data-type' => 'post_content', 'value' => GFCommon::get_field_type_title('post_content')), array('class' => 'button', 'data-type' => 'post_excerpt', 'value' => GFCommon::get_field_type_title('post_excerpt')), array('class' => 'button', 'data-type' => 'post_tags', 'value' => GFCommon::get_field_type_title('post_tags')), array('class' => 'button', 'data-type' => 'post_category', 'value' => GFCommon::get_field_type_title('post_category')), array('class' => 'button', 'data-type' => 'post_image', 'value' => GFCommon::get_field_type_title('post_image')), array('class' => 'button', 'data-type' => 'post_custom_field', 'value' => GFCommon::get_field_type_title('post_custom_field'))); $pricing_fields = array(array('class' => 'button', 'data-type' => 'product', 'value' => GFCommon::get_field_type_title('product')), array('class' => 'button', 'data-type' => 'quantity', 'value' => GFCommon::get_field_type_title('quantity')), array('class' => 'button', 'data-type' => 'option', 'value' => GFCommon::get_field_type_title('option')), array('class' => 'button', 'data-type' => 'shipping', 'value' => GFCommon::get_field_type_title('shipping')), array('class' => 'button', 'data-type' => 'total', 'value' => GFCommon::get_field_type_title('total'))); if (apply_filters('gform_enable_credit_card_field', false)) { $pricing_fields[] = array('class' => 'button', 'data-type' => 'creditcard', 'value' => GFCommon::get_field_type_title('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); foreach (GF_Fields::get_all() as $gf_field) { $field_groups = $gf_field->add_button($field_groups); } $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 esc_attr($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 esc_html($group['label']); ?> <?php gform_tooltip("form_{$group['name']}", $tooltip_class); ?> </div> </div> <ul> <li class="add-buttons"> <ol class="field_type"> <?php 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')) { $trash_link = '<a class="submitdelete" title="' . __('Move this form to the trash', 'gravityforms') . '" onclick="gf_vars.isFormTrash = true; jQuery(\'#form_trash\')[0].submit();" onkeypress="gf_vars.isFormTrash = true; jQuery(\'#form_trash\')[0].submit();">' . __('Move to Trash', 'gravityforms') . '</a>'; /** * @deprecated */ $trash_link = apply_filters('gform_form_delete_link', $trash_link); /** * Allows for modification of the Form Trash Link * * @param string $trash_link The Trash link HTML */ echo apply_filters('gform_form_trash_link', $trash_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-large button-primary update-form" value="' . $button_text . '" onclick="SaveForm(' . $isNew . ');" onkeypress="SaveForm(' . $isNew . ');" />'; /** * A filter to aloow you to modify the Form Save button * * @param string $save_button The Form Save button HTML */ $save_button = apply_filters('gform_save_form_button', $save_button); echo $save_button; ?> <span id="please_wait_container" style="display:none;"><i class='gficon-gravityforms-spinner-icon gficon-spin'></i></span> <div class="updated_base" id="after_update_dialog" style="display:none;"> <strong><?php esc_html_e('Form updated successfully.', 'gravityforms'); ?> <a title="<?php esc_html_e('Preview this form', 'gravityforms'); ?> " href="<?php echo esc_url(trailingslashit(site_url())); ?> ?gf_page=preview&id=<?php echo absint(rgar($form, 'id')); ?> " target="_blank"><?php esc_html_e('Preview', 'gravityforms'); ?> </a></strong> </div> <div class="error_base" id="after_update_error_dialog" style="padding:10px 10px 16px 10px; display:none;"> <?php esc_html_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> <!-- this field allows us to force onblur events for field setting inputs that are otherwise not triggered when closing the field settings UI --> <input type="text" id="gform_force_focus" style="position:absolute;left:-9999em;" /> <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> <!-- // including form setting hooks as a temporary fix to prevent issues where users using the "gform_before_update" hook are expecting form settings to be included on the form editor page --> <div style="display:none;"> <!--form settings--> <?php do_action('gform_properties_settings', 100, $form_id); ?> <?php do_action('gform_properties_settings', 200, $form_id); ?> <?php do_action('gform_properties_settings', 300, $form_id); ?> <?php do_action('gform_properties_settings', 400, $form_id); ?> <?php do_action('gform_properties_settings', 500, $form_id); ?> <!--advanced settings--> <?php do_action('gform_advanced_settings', 100, $form_id); ?> <?php do_action('gform_advanced_settings', 200, $form_id); ?> <?php do_action('gform_advanced_settings', 300, $form_id); ?> <?php do_action('gform_advanced_settings', 400, $form_id); ?> <?php do_action('gform_advanced_settings', 500, $form_id); ?> <?php do_action('gform_advanced_settings', 600, $form_id); ?> <?php do_action('gform_advanced_settings', 700, $form_id); ?> <?php do_action('gform_advanced_settings', 800, $form_id); ?> </div> <?php self::inline_scripts($form); require_once GFCommon::get_base_path() . '/js.php'; }
public static function update_page() { if (!GFCommon::current_user_can_any('gravityforms_view_updates')) { wp_die(esc_html__("You don't have permissions to view this page", 'gravityforms')); } if (!GFCommon::ensure_wp_version()) { return; } GFCommon::cache_remote_message(); echo GFCommon::get_remote_message(); wp_print_styles(array('thickbox')); $min = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG || isset($_GET['gform_debug']) ? '' : '.min'; ?> <link rel="stylesheet" href="<?php echo GFCommon::get_base_url() . "/css/admin{$min}.css?ver=" . GFForms::$version; ?> " /> <div class="wrap <?php echo GFCommon::get_browser_class(); ?> "> <h2><?php esc_html_e('Gravity Forms Updates', 'gravityforms'); ?> </h2> <?php GFCommon::display_dismissible_message(); ?> <?php $version_info = GFCommon::get_version_info(false); /** * Fires after Gravity Forms checks for a new version */ do_action('gform_after_check_update'); if (version_compare(GFCommon::$version, $version_info['version'], '<')) { $plugin_file = 'gravityforms/gravityforms.php'; $upgrade_url = wp_nonce_url('update.php?action=upgrade-plugin&plugin=' . urlencode($plugin_file), 'upgrade-plugin_' . $plugin_file); $message = __('There is a new version of Gravity Forms available.', 'gravityforms'); if (rgar($version_info, 'is_valid_key')) { ?> <div class="gf_update_outdated alert_yellow"> <?php echo esc_html($message) . ' <p>' . sprintf(esc_html__('You can update to the latest version automatically or download the update and install it manually. %sUpdate Automatically%s %sDownload Update%s', 'gravityforms'), "</p><a class='button-primary' href='{$upgrade_url}'>", '</a>', " <a class='button' href='{$version_info["url"]}'>", '</a>'); ?> </div> <?php } else { ?> <div class="gf_update_expired alert_red"> <?php echo esc_html($message) . ' ' . sprintf(esc_html('%sRegister%s your copy of Gravity Forms to receive access to automatic updates and support. Need a license key? %sPurchase one now%s.', 'gravityforms'), '<a href="admin.php?page=gf_settings">', '</a>', '<a href="http://www.gravityforms.com">', '</a>'); ?> </div> <?php } echo '<br/><br/>'; $changelog = RGForms::get_changelog(); echo $changelog; } else { ?> <div class="gf_update_current alert_green"> <?php esc_html_e('Your version of Gravity Forms is up to date.', 'gravityforms'); ?> </div> <?php } /** * Fires after the notifications that signal that Gravity Forms has an update/license key has expired or is needed */ do_action('gform_updates'); ?> <div id='gform_upgrade_license' style="display:none;"></div> <script type="text/javascript"> jQuery(document).ready(function () { jQuery.post(ajaxurl, { action : "gf_upgrade_license", gf_upgrade_license: "<?php echo wp_create_nonce('gf_upgrade_license'); ?> "}, function (data) { if (data.trim().length > 0) jQuery("#gform_upgrade_license").replaceWith(data); } ); }); </script> </div> <?php }
public static function lead_detail_page() { global $current_user; if (!GFCommon::ensure_wp_version()) { return; } echo GFCommon::get_remote_message(); $requested_form_id = absint($_GET['id']); if (empty($requested_form_id)) { return; } $lead = self::get_current_entry(); if (is_wp_error($lead) || !$lead) { esc_html_e("Oops! We couldn't find your entry. Please try again", 'gravityforms'); return; } $lead_id = $lead['id']; $form = self::get_current_form(); $form_id = absint($form['id']); $total_count = self::get_total_count(); $position = rgget('pos') ? rgget('pos') : 0; $prev_pos = !rgblank($position) && $position > 0 ? $position - 1 : false; $next_pos = !rgblank($position) && $position < self::$_total_count - 1 ? $position + 1 : false; $filter = rgget('filter'); // unread filter requires special handling for pagination since entries are filter out of the query as they are read if ($filter == 'unread') { $next_pos = $position; if ($next_pos + 1 == $total_count) { $next_pos = false; } } RGFormsModel::update_lead_property($lead['id'], 'is_read', 1); switch (RGForms::post('action')) { case 'update': check_admin_referer('gforms_save_entry', 'gforms_save_entry'); //Loading files that have been uploaded to temp folder $files = GFCommon::json_decode(stripslashes(RGForms::post('gform_uploaded_files'))); if (!is_array($files)) { $files = array(); } $original_entry = $lead; GFFormsModel::$uploaded_files[$form_id] = $files; GFFormsModel::save_lead($form, $lead); /** * Fires after the Entry is updated from the entry detail page. * * @param array $form The form object for the entry. * @param integer $lead['id'] The entry ID. * @param array $original_entry The entry object before being updated. */ gf_do_action(array('gform_after_update_entry', $form['id']), $form, $lead['id'], $original_entry); $lead = RGFormsModel::get_lead($lead['id']); $lead = GFFormsModel::set_entry_meta($lead, $form); self::set_current_entry($lead); break; case 'add_note': check_admin_referer('gforms_update_note', 'gforms_update_note'); $user_data = get_userdata($current_user->ID); RGFormsModel::add_note($lead['id'], $current_user->ID, $user_data->display_name, stripslashes($_POST['new_note'])); //emailing notes if configured if (rgpost('gentry_email_notes_to')) { GFCommon::log_debug('GFEntryDetail::lead_detail_page(): Preparing to email entry notes.'); $email_to = $_POST['gentry_email_notes_to']; $email_from = $current_user->user_email; $email_subject = stripslashes($_POST['gentry_email_subject']); $body = stripslashes($_POST['new_note']); $headers = "From: \"{$email_from}\" <{$email_from}> \r\n"; GFCommon::log_debug("GFEntryDetail::lead_detail_page(): Emailing notes - TO: {$email_to} SUBJECT: {$email_subject} BODY: {$body} HEADERS: {$headers}"); $is_success = wp_mail($email_to, $email_subject, $body, $headers); $result = is_wp_error($is_success) ? $is_success->get_error_message() : $is_success; GFCommon::log_debug("GFEntryDetail::lead_detail_page(): Result from wp_mail(): {$result}"); if (!is_wp_error($is_success) && $is_success) { GFCommon::log_debug('GFEntryDetail::lead_detail_page(): Mail was passed from WordPress to the mail server.'); } else { GFCommon::log_error('GFEntryDetail::lead_detail_page(): The mail message was passed off to WordPress for processing, but WordPress was unable to send the message.'); } if (has_filter('phpmailer_init')) { GFCommon::log_debug(__METHOD__ . '(): The WordPress phpmailer_init hook has been detected, usually used by SMTP plugins, it can impact mail delivery.'); } /** * Fires after a note is attached to an entry and sent as an email * * @param string $result The Error message or success message when the entry note is sent * @param string $email_to The email address to send the entry note to * @param string $email_from The email address from which the email is sent from * @param string $email_subject The subject of the email that is sent * @param mixed $body The Full body of the email containing the message after the note is sent * @param array $form The current form object * @param array $lead The Current lead object */ do_action('gform_post_send_entry_note', $result, $email_to, $email_from, $email_subject, $body, $form, $lead); } break; case 'add_quick_note': check_admin_referer('gforms_save_entry', 'gforms_save_entry'); $user_data = get_userdata($current_user->ID); RGFormsModel::add_note($lead['id'], $current_user->ID, $user_data->display_name, stripslashes($_POST['quick_note'])); break; case 'bulk': check_admin_referer('gforms_update_note', 'gforms_update_note'); if ($_POST['bulk_action'] == 'delete') { if (!GFCommon::current_user_can_any('gravityforms_edit_entry_notes')) { die(esc_html__("You don't have adequate permission to delete notes.", 'gravityforms')); } RGFormsModel::delete_notes($_POST['note']); } break; case 'trash': check_admin_referer('gforms_save_entry', 'gforms_save_entry'); RGFormsModel::update_lead_property($lead['id'], 'status', 'trash'); $lead = RGFormsModel::get_lead($lead['id']); self::set_current_entry($lead); break; case 'restore': case 'unspam': check_admin_referer('gforms_save_entry', 'gforms_save_entry'); RGFormsModel::update_lead_property($lead['id'], 'status', 'active'); $lead = RGFormsModel::get_lead($lead['id']); self::set_current_entry($lead); break; case 'spam': check_admin_referer('gforms_save_entry', 'gforms_save_entry'); RGFormsModel::update_lead_property($lead['id'], 'status', 'spam'); $lead = RGFormsModel::get_lead($lead['id']); self::set_current_entry($lead); break; case 'delete': check_admin_referer('gforms_save_entry', 'gforms_save_entry'); if (!GFCommon::current_user_can_any('gravityforms_delete_entries')) { die(esc_html__("You don't have adequate permission to delete entries.", 'gravityforms')); } RGFormsModel::delete_lead($lead['id']); ?> <script type="text/javascript"> document.location.href = '<?php echo 'admin.php?page=gf_entries&view=entries&id=' . absint($form['id']); ?> '; </script> <?php break; } $mode = empty($_POST['screen_mode']) ? 'view' : $_POST['screen_mode']; $screen = get_current_screen(); $min = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG || isset($_GET['gform_debug']) ? '' : '.min'; ?> <link rel="stylesheet" href="<?php echo GFCommon::get_base_url(); ?> /css/admin<?php echo $min; ?> .css?ver=<?php echo GFForms::$version; ?> " /> <script type="text/javascript"> jQuery(document).ready(function () { toggleNotificationOverride(true); jQuery('#gform_update_button').prop('disabled', false); if(typeof postboxes != 'undefined'){ jQuery('.if-js-closed').removeClass('if-js-closed').addClass('closed'); postboxes.add_postbox_toggles( <?php echo json_encode($screen->id); ?> ); } }); function DeleteFile(leadId, fieldId, deleteButton) { if (confirm(<?php echo json_encode(__("Would you like to delete this file? 'Cancel' to stop. 'OK' to delete", 'gravityforms')); ?> )) { var fileIndex = jQuery(deleteButton).parent().index(); var mysack = new sack("<?php echo admin_url('admin-ajax.php'); ?> "); mysack.execute = 1; mysack.method = 'POST'; mysack.setVar("action", "rg_delete_file"); mysack.setVar("rg_delete_file", "<?php echo wp_create_nonce('rg_delete_file'); ?> "); mysack.setVar("lead_id", leadId); mysack.setVar("field_id", fieldId); mysack.setVar("file_index", fileIndex); mysack.onError = function () { alert(<?php echo json_encode(__('Ajax error while deleting field.', 'gravityforms')); ?> ) }; mysack.runAJAX(); return true; } } function EndDeleteFile(fieldId, fileIndex) { var previewFileSelector = "#preview_existing_files_" + fieldId + " .ginput_preview"; var $previewFiles = jQuery(previewFileSelector); var rr = $previewFiles.eq(fileIndex); $previewFiles.eq(fileIndex).remove(); var $visiblePreviewFields = jQuery(previewFileSelector); if ($visiblePreviewFields.length == 0) { jQuery('#preview_' + fieldId).hide(); jQuery('#upload_' + fieldId).show('slow'); } } function ToggleShowEmptyFields() { if (jQuery("#gentry_display_empty_fields").is(":checked")) { createCookie("gf_display_empty_fields", true, 10000); document.location = document.location.href; } else { eraseCookie("gf_display_empty_fields"); document.location = document.location.href; } } function createCookie(name, value, days) { if (days) { var date = new Date(); date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000)); var expires = "; expires=" + date.toGMTString(); } else var expires = ""; document.cookie = name + "=" + value + expires + "; path=/"; } function eraseCookie(name) { createCookie(name, "", -1); } function ResendNotifications() { var selectedNotifications = new Array(); jQuery(".gform_notifications:checked").each(function () { selectedNotifications.push(jQuery(this).val()); }); var sendTo = jQuery('#notification_override_email').val(); if (selectedNotifications.length <= 0) { displayMessage(<?php echo json_encode(__('You must select at least one type of notification to resend.', 'gravityforms')); ?> , 'error', '#notifications'); return; } jQuery('#please_wait_container').fadeIn(); jQuery.post(ajaxurl, { action : "gf_resend_notifications", gf_resend_notifications: '<?php echo wp_create_nonce('gf_resend_notifications'); ?> ', notifications : jQuery.toJSON(selectedNotifications), sendTo : sendTo, leadIds : '<?php echo absint($lead['id']); ?> ', formId : '<?php echo absint($form['id']); ?> ' }, function (response) { if (response) { displayMessage(response, "error", "#notifications"); } else { displayMessage(<?php echo json_encode(esc_html__('Notifications were resent successfully.', 'gravityforms')); ?> , "updated", "#notifications" ); // reset UI jQuery(".gform_notifications").attr( 'checked', false ); jQuery('#notification_override_email').val(''); toggleNotificationOverride(); } jQuery('#please_wait_container').hide(); setTimeout(function () { jQuery('#notifications_container').find('.message').slideUp(); }, 5000); } ); } function displayMessage( message, messageClass, container ) { jQuery( container ).find( '.message' ).hide().html( message ).attr( 'class', 'message ' + messageClass ).slideDown(); } function toggleNotificationOverride(isInit) { if (isInit) jQuery('#notification_override_email').val(''); if (jQuery(".gform_notifications:checked").length > 0) { jQuery('#notifications_override_settings').slideDown(); } else { jQuery('#notifications_override_settings').slideUp(function () { jQuery('#notification_override_email').val(''); }); } } </script> <form method="post" id="entry_form" enctype='multipart/form-data'> <?php wp_nonce_field('gforms_save_entry', 'gforms_save_entry'); ?> <input type="hidden" name="action" id="action" value="" /> <input type="hidden" name="screen_mode" id="screen_mode" value="<?php echo esc_attr(rgpost('screen_mode')); ?> " /> <input type="hidden" name="entry_id" id="entry_id" value="<?php echo absint($lead['id']); ?> " /> <div class="wrap gf_entry_wrap"> <h2 class="gf_admin_page_title"> <span><?php echo esc_html(rgar($form, 'title')); ?> </span> <?php if (isset($_GET['pos'])) { ?> <div class="gf_entry_detail_pagination"> <ul> <li class="gf_entry_count"> <span>entry <strong><?php echo $position + 1; ?> </strong> of <strong><?php echo $total_count; ?> </strong></span> </li> <li class="gf_entry_prev gf_entry_pagination"><?php echo GFEntryDetail::entry_detail_pagination_link($prev_pos, 'Previous Entry', 'gf_entry_prev_link', 'fa fa-arrow-circle-o-left'); ?> </li> <li class="gf_entry_next gf_entry_pagination"><?php echo GFEntryDetail::entry_detail_pagination_link($next_pos, 'Next Entry', 'gf_entry_next_link', 'fa fa-arrow-circle-o-right'); ?> </li> </ul> </div> <?php } ?> <span class="gf_admin_page_subtitle"> <span class="gf_admin_page_formid">ID: <?php echo absint($form['id']); ?> </span> </span> <?php $gf_entry_locking = new GFEntryLocking(); $gf_entry_locking->lock_info($lead_id); ?> </h2> <?php GFCommon::display_dismissible_message(); ?> <?php RGForms::top_toolbar(); ?> <div id="poststuff"> <?php wp_nonce_field('closedpostboxes', 'closedpostboxesnonce', false); ?> <?php wp_nonce_field('meta-box-order', 'meta-box-order-nonce', false); ?> <div id="post-body" class="metabox-holder columns-2"> <div id="post-body-content"> <?php /** * Fires before the entry detail content is displayed * * @param array $form The Form object * @param array $lead The Entry object */ do_action('gform_entry_detail_content_before', $form, $lead); if ($mode == 'view') { self::lead_detail_grid($form, $lead, true); } else { self::lead_detail_edit($form, $lead); } /** * Fires when entry details are displayed * * @param array $form The Form object * @param array $lead The Entry object */ do_action('gform_entry_detail', $form, $lead); ?> </div> <div id="postbox-container-1" class="postbox-container"> <?php /** * Fires before the entry detail sidebar is generated * * @param array $form The Form object * @param array $lead The Entry object */ do_action('gform_entry_detail_sidebar_before', $form, $lead); ?> <?php do_meta_boxes($screen->id, 'side', array('form' => $form, 'entry' => $lead, 'mode' => $mode)); ?> <?php /** * Inserts information into the middle of the entry detail sidebar * * @param array $form The Form object * @param array $lead The Entry object */ do_action('gform_entry_detail_sidebar_middle', $form, $lead); ?> <!-- begin print button --> <div class="detail-view-print"> <a href="javascript:;" onclick="var notes_qs = jQuery('#gform_print_notes').is(':checked') ? '¬es=1' : ''; var url='<?php echo trailingslashit(site_url()); ?> ?gf_page=print-entry&fid=<?php echo absint($form['id']); ?> &lid=<?php echo absint($lead['id']); ?> ' + notes_qs; window.open (url,'printwindow');" class="button"><?php esc_html_e('Print', 'gravityforms'); ?> </a> <?php if (GFCommon::current_user_can_any('gravityforms_view_entry_notes')) { ?> <input type="checkbox" name="print_notes" value="print_notes" checked="checked" id="gform_print_notes" /> <label for="print_notes"><?php esc_html_e('include notes', 'gravityforms'); ?> </label> <?php } ?> </div> <!-- end print button --> <?php /** * Fires after the entry detail sidebar information. * * @param array $form The Form object * @param array $lead The Entry object */ do_action('gform_entry_detail_sidebar_after', $form, $lead); ?> </div> <div id="postbox-container-2" class="postbox-container"> <?php do_meta_boxes($screen->id, 'normal', array('form' => $form, 'entry' => $lead, 'mode' => $mode)); ?> <?php /** * Fires after the entry detail content is displayed * * @param array $form The Form object * @param array $lead The Entry object */ do_action('gform_entry_detail_content_after', $form, $lead); ?> </div> </div> </div> </div> </form> <?php if (rgpost('action') == 'update') { ?> <div class="updated fade" style="padding:6px;"> <?php esc_html_e('Entry Updated.', 'gravityforms'); ?> </div> <?php } }
public static function leads_page($form_id) { global $wpdb; //quit if version of wp is not supported if (!GFCommon::ensure_wp_version()) { return; } $form = GFFormsModel::get_form_meta($form_id); $table = new GF_Entry_List_Table(array('form_id' => $form_id, 'form' => $form)); $table->prepare_items(); $table->output_styles(); $table->output_scripts(); wp_print_styles(array('thickbox')); echo GFCommon::get_remote_message(); ?> <div class="wrap <?php echo GFCommon::get_browser_class(); ?> "> <?php GFCommon::form_page_title($form); ?> <?php GFCommon::display_dismissible_message(); ?> <?php GFForms::top_toolbar(); if ($table->has_items()) { ?> <div id="entry_search_container"> <div id="entry_filters" style=""></div> <a style="" class="button" id="entry_search_button" href="javascript:Search('<?php echo esc_js($table->get_orderby()); ?> ', '<?php echo esc_js($table->get_order()); ?> ', <?php echo absint($form_id); ?> , jQuery('.gform-filter-value').val(), '<?php echo esc_js($table->get_filter()); ?> ', jQuery('.gform-filter-field').val(), jQuery('.gform-filter-operator').val());"><?php esc_html_e('Search', 'gravityforms'); ?> </a> </div> <?php } ?> <form id="entry_list_form" method="post"> <?php $table->views(); $table->display(); ?> </form> </div> <?php }
public static function page_header($title = '') { // register admin styles $min = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG || isset($_GET['gform_debug']) ? '' : '.min'; wp_register_style('gform_admin', GFCommon::get_base_url() . "/css/admin{$min}.css"); wp_print_styles(array('jquery-ui-styles', 'gform_admin', 'wp-pointer')); $form = GFFormsModel::get_form_meta(rgget('id')); $current_tab = rgempty('subview', $_GET) ? 'settings' : rgget('subview'); $setting_tabs = GFFormSettings::get_tabs($form['id']); // kind of boring having to pass the title, optionally get it from the settings tab if (!$title) { foreach ($setting_tabs as $tab) { if ($tab['name'] == $current_tab) { $title = $tab['label']; } } } ?> <div class="wrap gforms_edit_form gforms_form_settings_wrap <?php echo GFCommon::get_browser_class(); ?> "> <?php GFCommon::form_page_title($form); ?> <?php GFCommon::display_dismissible_message(); ?> <?php GFCommon::display_admin_message(); ?> <?php RGForms::top_toolbar(); ?> <div id="gform_tab_group" class="gform_tab_group vertical_tabs"> <ul id="gform_tabs" class="gform_tabs"> <?php foreach ($setting_tabs as $tab) { $query = array('subview' => $tab['name']); if (isset($tab['query'])) { $query = array_merge($query, $tab['query']); } $url = add_query_arg($query); ?> <li <?php echo $current_tab == $tab['name'] ? "class='active'" : ''; ?> > <a href="<?php echo esc_url($url); ?> "><?php echo esc_html($tab['label']); ?> </a><span></span> </li> <?php } ?> </ul> <div id="gform_tab_container_1" class="gform_tab_container"> <div class="gform_tab_content" id="tab_<?php echo esc_attr($current_tab); ?> "> <?php }
/** * Displays the Gravity Forms Help page * * @access public * @static */ public static function help_page() { if (!GFCommon::ensure_wp_version()) { return; } echo GFCommon::get_remote_message(); $min = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG || isset($_GET['gform_debug']) ? '' : '.min'; ?> <link rel="stylesheet" href="<?php echo GFCommon::get_base_url(); ?> /css/admin<?php echo $min; ?> .css" /> <div class="wrap <?php echo GFCommon::get_browser_class(); ?> "> <h2><?php esc_html_e('Gravity Forms Help', 'gravityforms'); ?> </h2> <?php GFCommon::display_dismissible_message(); ?> <div style="margin-top:10px;"> <div class="gf_admin_notice"><?php printf(esc_html__('%sIMPORTANT NOTICE:%s We do not provide support via telephone or e-mail. Please %sopen a support ticket%s.', 'gravityforms'), '<strong>', '</strong>', '<a href="https://www.gravityhelp.com/support/" target="_blank">', '</a>'); ?> </div> <div class="gf_help_content"><p><?php printf(esc_html__("Please review the plugin documentation and %sfrequently asked questions (FAQ)%s first. If you still can't find the answer %sopen a support ticket%s and we will be happy to answer your questions and assist you with any problems. %sPlease note:%s If you have not %spurchased a license%s from us, you will not have access to these help resources.", 'gravityforms'), '<a href="https://www.gravityhelp.com/frequently-asked-questions/">', '</a>', '<a href="https://www.gravityhelp.com/support/" target="_blank">', '</a>', '<strong>', '</strong>', '<a href="http://www.gravityforms.com/purchase-gravity-forms/">', '</a>'); ?> </p></div> <div class="hr-divider"></div> <h3><?php esc_html_e('User Documentation', 'gravityforms'); ?> </h3> <div class="gforms_helpbox" style="margin:15px 0;"> <ul class="resource_list"> <li> <i class="fa fa-book"></i> <a href="https://www.gravityhelp.com/documentation/article/creating-a-form/"> <?php esc_html_e('Creating a Form', 'gravityforms'); ?> </a> </li> <li> <i class="fa fa-book"></i> <a target="_blank" href="https://www.gravityhelp.com/documentation/article/embedding-a-form/"> <?php esc_html_e('Embedding a Form', 'gravityforms'); ?> </a> </li> <li> <i class="fa fa-book"></i> <a target="_blank" href="https://www.gravityhelp.com/documentation/article/reviewing-form-submissions/"> <?php esc_html_e('Reviewing Form Submissions', 'gravityforms'); ?> </a> </li> <li> <i class="fa fa-book"></i> <a target="_blank" href="https://www.gravityhelp.com/documentation/article/configuring-confirmations-in-gravity-forms/"> <?php esc_html_e('Configuring Confirmations', 'gravityforms'); ?> </a> </li> <li> <i class="fa fa-book"></i> <a target="_blank" href="https://www.gravityhelp.com/documentation/article/configuring-notifications-in-gravity-forms/"> <?php esc_html_e('Configuring Notifications', 'gravityforms'); ?> </a> </li> </ul> </div> <div class="hr-divider"></div> <h3><?php esc_html_e('Developer Documentation', 'gravityforms'); ?> </h3> <div class="gforms_helpbox" style="margin:15px 0;"> <ul class="resource_list"> <li> <i class="fa fa-book"></i> <a href="https://www.gravityhelp.com/documentation/article/getting-started-with-the-gravity-forms-api-gfapi/"> <?php esc_html_e('Getting Started with the Gravity Forms API', 'gravityforms'); ?> </a> </li> <li> <i class="fa fa-book"></i> <a target="_blank" href="https://www.gravityhelp.com/documentation/article/api-functions/"> <?php esc_html_e('API Functions', 'gravityforms'); ?> </a> </li> <li> <i class="fa fa-book"></i> <a target="_blank" href="https://www.gravityhelp.com/documentation/article/web-api/"> <?php esc_html_e('Web API', 'gravityforms'); ?> </a> </li> <li> <i class="fa fa-book"></i> <a target="_blank" href="https://www.gravityhelp.com/documentation/article/add-on-framework/"> <?php esc_html_e('Add-On Framework', 'gravityforms'); ?> </a> </li> <li> <i class="fa fa-book"></i> <a target="_blank" href="https://www.gravityhelp.com/documentation/article/gfaddon/"> <?php esc_html_e('GFAddOn', 'gravityforms'); ?> </a> </li> </ul> </div> <div class="hr-divider"></div> <h3><?php esc_html_e('Designer Documentation', 'gravityforms'); ?> </h3> <div class="gforms_helpbox" style="margin:15px 0;"> <ul class="resource_list"> <li> <i class="fa fa-book"></i> <a href="http://www.gravityhelp.com/"> <?php esc_html_e('CSS Selectors', 'gravityforms'); ?> </a> </li> <li> <i class="fa fa-book"></i> <a target="_blank" href="https://www.gravityhelp.com/gravity-forms-css-visual-guide/"> <?php esc_html_e('CSS Targeting Samples', 'gravityforms'); ?> </a> </li> <li> <i class="fa fa-book"></i> <a target="_blank" href="http://www.rocketgenius.com/gravity-forms-css-targeting-specific-elements/"> <?php esc_html_e('CSS Ready Classes', 'gravityforms'); ?> </a> </li> <li> <i class="fa fa-book"></i> <a target="_blank" href="https://www.gravityhelp.com/creating-a-modal-form-with-gravity-forms-and-fancybox/"> <?php esc_html_e('gform_field_css_class', 'gravityforms'); ?> </a> </li> <li> <i class="fa fa-book"></i> <a target="_blank" href="http://yoast.com/gravity-forms-widget-update/"> <?php esc_html_e('gform_noconflict_styles', 'gravityforms'); ?> </a> </li> </ul> </div> </div> </div> <?php }
/** * Outputs the settings page header * * @access public * @static * @see GFSettings::get_subview * @see GFSettings::$addon_page * * @param string $title Optional. The page title to be used. Defaults to an empty string. * @param string $message Optional. The message to display in the header. Defaults to empty string. */ public static function page_header($title = '', $message = '') { $min = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG || isset($_GET['gform_debug']) ? '' : '.min'; // register admin styles wp_register_style('gform_admin', GFCommon::get_base_url() . "/css/admin{$min}.css"); wp_print_styles(array('jquery-ui-styles', 'gform_admin')); $current_tab = self::get_subview(); // Build left side options, always have GF Settings first and Uninstall last, put add-ons in the middle $setting_tabs = array('10' => array('name' => 'settings', 'label' => __('Settings', 'gravityforms'))); if (!empty(self::$addon_pages)) { $sorted_addons = self::$addon_pages; asort($sorted_addons); //add add-ons to menu foreach ($sorted_addons as $sorted_addon) { $setting_tabs[] = array('name' => urlencode($sorted_addon['name']), 'label' => esc_html($sorted_addon['tab_label']), 'title' => esc_html(rgar($sorted_addon, 'title'))); } } // Prevent Uninstall tab from being added for users that don't have gravityforms_uninstall capability if (GFCommon::current_user_can_any('gravityforms_uninstall')) { $setting_tabs[] = array('name' => 'uninstall', 'label' => __('Uninstall', 'gravityforms')); } /** * Filters the Settings menu tabs * * @param array $setting_tabs The settings tab names and labels */ $setting_tabs = apply_filters('gform_settings_menu', $setting_tabs); ksort($setting_tabs, SORT_NUMERIC); // kind of boring having to pass the title, optionally get it from the settings tab if (!$title) { foreach ($setting_tabs as $tab) { if ($tab['name'] == urlencode($current_tab)) { $title = !empty($tab['title']) ? $tab['title'] : $tab['label']; } } } ?> <div class="wrap <?php echo GFCommon::get_browser_class(); ?> gforms_settings_wrap"> <?php if ($message) { ?> <div id="message" class="updated"><p><?php echo $message; ?> </p></div> <?php } ?> <h2><?php echo esc_html($title); ?> </h2> <?php GFCommon::display_dismissible_message(); ?> <div id="gform_tab_group" class="gform_tab_group vertical_tabs"> <ul id="gform_tabs" class="gform_tabs"> <?php foreach ($setting_tabs as $tab) { $name = $tab['label']; $url = add_query_arg(array('subview' => $tab['name']), admin_url('admin.php?page=gf_settings')); ?> <li <?php echo urlencode($current_tab) == $tab['name'] ? "class='active'" : ''; ?> > <a href="<?php echo esc_url($url); ?> "><?php echo esc_html($tab['label']); ?> </a> </li> <?php } ?> </ul> <div id="gform_tab_container" class="gform_tab_container"> <div class="gform_tab_content" id="tab_<?php echo esc_attr($current_tab); ?> "> <?php }
public static function form_list_page() { global $wpdb; // todo: hook up bulk action confirmation js // todo: apply button filter if (!GFCommon::ensure_wp_version()) { return; } echo GFCommon::get_remote_message(); wp_print_styles(array('thickbox')); add_action('admin_print_footer_scripts', array(__CLASS__, 'output_form_list_script_block'), 20); $min = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG || isset($_GET['gform_debug']) ? '' : '.min'; ?> <script type="text/javascript"> // checked by the ToggleActive method to prevent errors when form status icon is clicked before page has fully loaded var gfPageLoaded = false; </script> <style type="text/css"> body div#TB_window[style] { width: 405px !important; height: 340px !important; margin-left: -202px !important; } body #TB_ajaxContent { height: 290px !important; overflow: hidden; } .gf_new_form_modal_container { padding: 30px; } .gf_new_form_modal_container .setting-row { margin: 0 0 10px; } .gf_new_form_modal_container .setting-row label { line-height: 24px; } .gf_new_form_modal_container .setting-row input, .gf_new_form_modal_container .setting-row textarea { display: block; width: 100%; } .gf_new_form_modal_container .setting-row textarea { height: 110px; } .gf_new_form_modal_container .submit-row { margin-top: 18px; } .gf_new_form_modal_container #gf_new_form_error_message { margin: 0 0 18px 5px !important; color: #BC0B0B; } .gf_new_form_modal_container img.gfspinner { position: relative; top: 5px; left: 5px; } .gf_not_ready { opacity: 0.25; } </style> <?php if (GFCommon::current_user_can_any('gravityforms_create_form')) { ?> <div id="gf_new_form_modal" style="display:none;"> <div class="gf_new_form_modal_container"> <div class="setting-row"> <label for="new_form_title"><?php esc_html_e('Form Title', 'gravityforms'); ?> <span class="gfield_required">*</span></label><br /> <input type="text" class="regular-text" value="" id="new_form_title" tabindex="9000"> </div> <div class="setting-row"> <label for="new_form_description"><?php esc_html_e('Form Description', 'gravityforms'); ?> </label><br /> <textarea class="regular-text" id="new_form_description" tabindex="9001"></textarea> </div> <div class="submit-row"> <?php /** * Allows for modification of the "New Form" button HTML * * @param string The HTML rendered for the "New Form" button. */ echo apply_filters('gform_new_form_button', '<input id="save_new_form" type="button" class="button button-large button-primary" value="' . esc_html__('Create Form', 'gravityforms') . '" onclick="saveNewForm();" onkeypress="saveNewForm();" tabindex="9002" />'); ?> <div id="gf_new_form_error_message" style="display:inline-block;"></div> </div> </div> </div> <?php } // - end of new form modal - // ?> <script text="text/javascript"> function TrashForm(form_id) { jQuery("#single_action_argument").val(form_id); jQuery("#single_action").val("trash"); jQuery("#form_list_form")[0].submit(); } function RestoreForm(form_id) { jQuery("#single_action_argument").val(form_id); jQuery("#single_action").val("restore"); jQuery("#form_list_form")[0].submit(); } function DeleteForm(form_id) { jQuery("#single_action_argument").val(form_id); jQuery("#single_action").val("delete"); jQuery("#form_list_form")[0].submit(); } function ConfirmDeleteForm(form_id){ if( confirm(<?php echo json_encode(__('WARNING: You are about to delete this form and ALL entries associated with it. ', 'gravityforms') . esc_html__('Cancel to stop, OK to delete.', 'gravityforms')); ?> ) ){ DeleteForm(form_id); } } function DuplicateForm(form_id) { jQuery("#single_action_argument").val(form_id); jQuery("#single_action").val("duplicate"); jQuery("#form_list_form")[0].submit(); } function ToggleActive(img, form_id) { if( ! gfPageLoaded ) { return; } var is_active = img.src.indexOf("active1.png") >= 0 if (is_active) { img.src = img.src.replace("active1.png", 'active0.png'); jQuery(img).attr('title', <?php echo json_encode(esc_attr__('Inactive', 'gravityforms')); ?> ).attr('alt', <?php echo json_encode(esc_attr__('Inactive', 'gravityforms')); ?> ); } else { img.src = img.src.replace("active0.png", 'active1.png'); jQuery(img).attr('title', <?php echo json_encode(esc_attr__('Active', 'gravityforms')); ?> ).attr('alt', <?php echo json_encode(esc_attr__('Active', 'gravityforms')); ?> ); } UpdateCount("active_count", is_active ? -1 : 1); UpdateCount("inactive_count", is_active ? 1 : -1); var mysack = new sack(<?php echo json_encode(admin_url('admin-ajax.php')); ?> ); mysack.execute = 1; mysack.method = 'POST'; mysack.setVar("action", "rg_update_form_active"); mysack.setVar("rg_update_form_active", <?php echo json_encode(wp_create_nonce('rg_update_form_active')); ?> ); mysack.setVar("form_id", form_id); mysack.setVar("is_active", is_active ? 0 : 1); mysack.onError = function () { alert(<?php echo json_encode(__('Ajax error while updating form', 'gravityforms')); ?> ) }; mysack.runAJAX(); return true; } function UpdateCount(element_id, change) { var element = jQuery("#" + element_id); var count = parseInt(element.html()) + change element.html(count + ""); } function gfConfirmBulkAction(element_id) { var element = "#" + element_id; if (jQuery(element).val() == 'delete') return confirm(<?php echo json_encode(__('WARNING: You are about to delete these forms and ALL entries associated with them. ', 'gravityforms') . __("'Cancel' to stop, 'OK' to delete.", 'gravityforms')); ?> ); else if (jQuery(element).val() == 'reset_views') return confirm(<?php echo json_encode(__('Are you sure you would like to reset the Views for the selected forms? ', 'gravityforms') . __("'Cancel' to stop, 'OK' to reset.", 'gravityforms')); ?> ); else if (jQuery(element).val() == 'delete_entries') return confirm(<?php echo json_encode(__('WARNING: You are about to delete ALL entries associated with the selected forms. ', 'gravityforms') . __("'Cancel' to stop, 'OK' to delete.", 'gravityforms')); ?> ); return true; } </script> <link rel="stylesheet" href="<?php echo esc_url(GFCommon::get_base_url()); ?> /css/admin<?php echo $min; ?> .css?ver=<?php echo GFForms::$version; ?> "/> <div class="wrap <?php echo sanitize_html_class(GFCommon::get_browser_class()); ?> "> <h2> <?php esc_html_e('Forms', 'gravityforms'); if (GFCommon::current_user_can_any('gravityforms_create_form')) { echo '<a class="add-new-h2" href="" onclick="return loadNewFormModal();" onkeypress="return loadNewFormModal();">' . esc_html__('Add New', 'gravityforms') . '</a>'; } ?> </h2> <?php GFCommon::display_dismissible_message(); ?> <form id="form_list_form" method="post"> <?php $table = new GF_Form_List_Table(); $table->process_action(); $table->views(); $table->prepare_items(); $table->display(); ?> </form> <?php }