public static function forms_page($form_id)
    {
        global $wpdb;
        if (!GFCommon::ensure_wp_version()) {
            return;
        }
        $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');
        ?>

		<link rel="stylesheet" href="<?php 
        echo GFCommon::get_base_url();
        ?>
/css/admin.css?ver=<?php 
        echo GFCommon::$version;
        ?>
" type="text/css" />

		<script type="text/javascript">
			<?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 = apply_filters('gform_admin_pre_render_' . $form_id, apply_filters('gform_admin_pre_render', $form));
        if (isset($form['id'])) {
            echo "<script type=\"text/javascript\">var form = " . 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)) {
            ?>
			<h2 class="gf_admin_page_title"><?php 
            _e('New Form', 'gravityforms');
            ?>
</h2>
		<?php 
        } else {
            ?>
			<h2 class="gf_admin_page_title">
				<span><?php 
            _e('Form Editor', 'gravityforms');
            ?>
</span><span class="gf_admin_page_subtitle"><span class="gf_admin_page_formid">ID: <?php 
            echo absint($form['id']);
            ?>
</span><span class="gf_admin_page_formname"><?php 
            _e('Form Name', 'gravityforms');
            ?>
: <?php 
            echo esc_html($form['title']);
            ?>
</span></span>
			</h2>
		<?php 
        }
        ?>

		<?php 
        RGForms::top_toolbar();
        ?>

		<?php 
        switch (rgar($update_result, 'status')) {
            case 'invalid_json':
                ?>
				<div class="error_base gform_editor_status" id="after_update_error_dialog">
					<?php 
                _e('There was an error while saving your form.', 'gravityforms');
                ?>
					<?php 
                printf(__('Please %scontact our support team%s.', 'gravityforms'), '<a href="http://www.gravityhelp.com">', '</a>');
                ?>
				</div>
				<?php 
                break;
            case 'duplicate_title':
                ?>
				<div class="error_base gform_editor_status" id="after_update_error_dialog">
					<?php 
                _e('The form title you have entered is already taken. Please enter 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 
                    _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 
        _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 
        _e('begin form', 'gravityforms');
        ?>
</div>
				<div class="gf-pagebreak-text-main"><span><?php 
        _e('START PAGING', 'gravityforms');
        ?>
</span></div>
				<div class="gf-pagebreak-text-after"><?php 
        _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 
        _e('Properties', 'gravityforms');
        ?>
</a></li>
					<li style="width:100px; padding:0px;">
						<a href="#gform_pagination_settings_tab_2"><?php 
        _e('Advanced', 'gravityforms');
        ?>
</a></li>
				</ul>

				<div id="gform_pagination_settings_tab_1">
					<ul class="gforms_form_settings">
						<li>
							<label for="pagination_type_container">
								<?php 
        _e('Progress Indicator', 'gravityforms');
        ?>
								<?php 
        gform_tooltip('form_progress_indicator');
        ?>
							</label>

							<div id="pagination_type_container" class="pagination_container">
								<input type="radio" id="pagination_type_percentage" name="pagination_type" value="percentage" onclick='InitPaginationOptions();' />
								<label for="pagination_type_percentage" class="inline">
									<?php 
        _e('Progress Bar', 'gravityforms');
        ?>
								</label>
								&nbsp;&nbsp;
								<input type="radio" id="pagination_type_steps" name="pagination_type" value="steps" onclick='InitPaginationOptions();' />
								<label for="pagination_type_steps" class="inline">
									<?php 
        _e('Steps', 'gravityforms');
        ?>
								</label>
								&nbsp;&nbsp;
								<input type="radio" id="pagination_type_none" name="pagination_type" value="none" onclick='InitPaginationOptions();' />
								<label for="pagination_type_none" class="inline">
									<?php 
        _e('None', 'gravityforms');
        ?>
								</label>
							</div>
						</li>

						<li id="percentage_style_setting">

							<div class="percentage_style_setting" style="float:left; z-index: 99;">
								<label for="percentage_style" style="display:block;">
									<?php 
        _e('Style', 'gravityforms');
        ?>
									<?php 
        gform_tooltip('form_percentage_style');
        ?>
								</label>
								<select id="percentage_style" onchange="TogglePercentageStyle();">
									<option value="blue">  <?php 
        _e('Blue', 'gravityforms');
        ?>
  </option>
									<option value="gray">  <?php 
        _e('Gray', 'gravityforms');
        ?>
  </option>
									<option value="green">  <?php 
        _e('Green', 'gravityforms');
        ?>
  </option>
									<option value="orange">  <?php 
        _e('Orange', 'gravityforms');
        ?>
  </option>
									<option value="red">  <?php 
        _e('Red', 'gravityforms');
        ?>
  </option>
									<option value="custom">  <?php 
        _e('Custom', 'gravityforms');
        ?>
  </option>
								</select>
							</div>

							<div class="percentage_custom_container" style="float:left; padding-left:20px;">
								<label for="percentage_background_color" style="display:block;">
									<?php 
        _e('Text Color', 'gravityforms');
        ?>
								</label>
								<?php 
        self::color_picker('percentage_style_custom_color', '');
        ?>
							</div>

							<div class="percentage_custom_container" style="float:left; padding-left:20px;">
								<label for="percentage_background_bgcolor" style="display:block;">
									<?php 
        _e('Background Color', 'gravityforms');
        ?>
								</label>
								<?php 
        self::color_picker('percentage_style_custom_bgcolor', '');
        ?>
							</div>
						</li>
						<li id="page_names_setting">
							<label for="page_names_container">
								<?php 
        _e('Page Names', 'gravityforms');
        ?>
								<?php 
        gform_tooltip('form_page_names');
        ?>
							</label>

							<div id="page_names_container" style="margin-top:5px;">
								<!-- Populated dynamically from js.php -->
							</div>
						</li>
						<li id="percentage_confirmation_display_setting">
							<div class="percentage_confirmation_display_setting">
								<input type="checkbox" id="percentage_confirmation_display" onclick="TogglePercentageConfirmationText()">
								<label for="percentage_confirmation_display" class="inline">
									<?php 
        _e('Display completed progress bar on confirmation', 'gravityforms');
        ?>
									<?php 
        gform_tooltip('form_percentage_confirmation_display');
        ?>
								</label>
							</div>
						</li>
						<li id="percentage_confirmation_page_name_setting">
							<div class="percentage_confirmation_page_name_setting">
								<label for="percentage_confirmation_page_name" style="display:block;">
									<?php 
        _e('Completion Text', 'gravityforms');
        ?>
 <?php 
        gform_tooltip('percentage_confirmation_page_name');
        ?>
								</label>
								<input type="text" id="percentage_confirmation_page_name" class="fieldwidth-3" />
							</div>
						</li>
					</ul>
				</div>

				<div id="gform_pagination_settings_tab_2">
					<ul class="gforms_form_settings">
						<li>
							<label for="first_page_css_class" style="display:block;">
								<?php 
        _e('CSS Class Name', 'gravityforms');
        ?>
								<?php 
        gform_tooltip('form_field_css_class');
        ?>
							</label>
							<input type="text" id="first_page_css_class" size="30" />
						</li>
					</ul>
				</div>
			</div>
		</div>

		<ul id="gform_fields" class="<?php 
        echo GFCommon::get_ul_classes($form);
        ?>
" style="position: relative;">

			<?php 
        if (empty($form['fields'])) {
            ?>

				<?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">

					<div class="newform_notice"><?php 
            _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 
            _e('Select A Field Type', 'gravityforms');
            ?>
</h4>

					<p><?php 
            _e('Start by seleting 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 
            _e('Start Over There', 'gravityforms');
            ?>
</span>
						<span class="gf_nofield_1_instructions_copy gf_tips"><?php 
            _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 
            _e('Click to Add A Field', 'gravityforms');
            ?>
</h4>

					<p><?php 
            _e('Once you&#39;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 
            _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 
            _e('Edit Field Options', 'gravityforms');
            ?>
</h4>

					<p><?php 
            _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 
            _e('Preview your changes up here.', 'gravityforms');
            ?>
</span>
						<span class="gf_nofield_3_instructions_copy_mid gf_tips"><?php 
            _e('Edit the field options. Go ahead.. go crazy.', 'gravityforms');
            ?>
</span>
						<span class="gf_nofield_3_instructions_copy_bottom gf_tips"><?php 
            _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 
            _e('Drag to Arrange Fields', 'gravityforms');
            ?>
</h4>

					<p><?php 
            _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 
            _e('Grab here with your cursor.', 'gravityforms');
            ?>
</span>
						<span class="gf_nofield_4_instructions_copy_bottom gf_tips"><?php 
            _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 
            _e('Save Your Form', 'gravityforms');
            ?>
</h4>

					<p><?php 
            _e('Once you&#39;re happy with your form, remember to click on the &quot;update form&quot; 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 
            _e('Save Your New Form', 'gravityforms');
            ?>
</span>
						<span class="gf_nofield_5_instructions_copy gf_tips"><?php 
            _e('You\'re done. That\'s it.', 'gravityforms');
            ?>
</span>
					</div>

				</li>
			<?php 
        }
        ?>

			<?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 
        _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 
        _e('end of last page', 'gravityforms');
        ?>
</div>
				<div class="gf-pagebreak-text-main"><span><?php 
        _e('END PAGING', 'gravityforms');
        ?>
</span></div>
				<div class="gf-pagebreak-text-after"><?php 
        _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 
        _e('Properties', 'gravityforms');
        ?>
</a></li>
				</ul>
				<div id="gform_last_page_settings_tab_1">
					<ul class="gforms_form_settings">
						<li>
							<label for="last_page_button_container">
								<?php 
        _e('Previous Button', 'gravityforms');
        ?>
								<?php 
        gform_tooltip('form_field_last_page_button');
        ?>
							</label>

							<div class="last_page_button_options" id="last_page_button_container">
								<input type="radio" id="last_page_button_text" name="last_page_button" value="text" onclick="TogglePageButton('last_page');" />
								<label for="last_page_button_text" class="inline">
									<?php 
        _e('Default', 'gravityforms');
        ?>
									<?php 
        gform_tooltip('previous_button_text');
        ?>
								</label>
								&nbsp;&nbsp;
								<input type="radio" id="last_page_button_image" name="last_page_button" value="image" onclick="TogglePageButton('last_page');" />
								<label for="last_page_button_image" class="inline">
									<?php 
        _e('Image', 'gravityforms');
        ?>
									<?php 
        gform_tooltip('previous_button_image');
        ?>
								</label>

								<div id="last_page_button_text_container" style="margin-top:5px;">
									<label for="last_page_button_text_input" class="inline">
										<?php 
        _e('Text:', 'gravityforms');
        ?>
									</label>
									<input type="text" id="last_page_button_text_input" class="input_size_b" size="40" />
								</div>

								<div id="last_page_button_image_container" style="margin-top:5px;">
									<label for="last_page_button_image_url" class="inline">
										<?php 
        _e('Image Path:', 'gravityforms');
        ?>
									</label>
									<input type="text" id="last_page_button_image_url" size="45" />
								</div>
							</div>
						</li>
					</ul>
				</div>
			</div>
		</div>

		<div>

			<div id="after_insert_dialog" style="display:none;">
				<h3><?php 
        _e('You have successfully saved your form!', 'gravityforms');
        ?>
</h3>

				<p><?php 
        _e('What would you like to do next?', 'gravityforms');
        ?>
</p>

				<div class="new-form-option">
					<a title="<?php 
        _e('Preview this form', 'gravityforms');
        ?>
" id="preview_form_link" href="<?php 
        echo trailingslashit(site_url());
        ?>
?gf_page=preview&id={formid}" target="_blank"><?php 
        _e('Preview this Form', 'gravityforms');
        ?>
</a>
				</div>

				<?php 
        if (GFCommon::current_user_can_any('gravityforms_edit_forms')) {
            ?>
					<div class="new-form-option">
						<a title="<?php 
            _e('Setup email notifications for this form', 'gravityforms');
            ?>
" id="notification_form_link" href="#"><?php 
            _e('Setup Email Notifications for this Form', 'gravityforms');
            ?>
</a>
					</div>
				<?php 
        }
        ?>

				<div class="new-form-option">
					<a title="<?php 
        _e('Continue editing this form', 'gravityforms');
        ?>
" id="edit_form_link" href="#"><?php 
        _e('Continue Editing this Form', 'gravityforms');
        ?>
</a>
				</div>

				<div class="new-form-option">
					<a title="<?php 
        _e('I am done. Take me back to form list', 'gravityforms');
        ?>
" href="?page=gf_edit_forms"><?php 
        _e('Return to Form List', 'gravityforms');
        ?>
</a>
				</div>

			</div>


		</div>
		<div id="field_settings" style="display: none;">
		<ul>
			<li style="width:100px; padding:0px;">
				<a href="#gform_tab_1"><?php 
        _e('General', 'gravityforms');
        ?>
</a>
            </li>
            <li style="width:100px; padding:0px; ">
                <a href="#gform_tab_3"><?php 
        _e('Appearance', 'gravityforms');
        ?>
</a>
            </li>
			<li style="width:100px; padding:0px; ">
                <a href="#gform_tab_2"><?php 
        _e('Advanced', 'gravityforms');
        ?>
</a>
			</li>
		</ul>
		<div id="gform_tab_1">
		<ul>
		<?php 
        do_action('gform_field_standard_settings', 0, $form_id);
        ?>
		<li class="label_setting field_setting">
			<label for="field_label">
				<?php 
        _e('Field Label', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_label');
        ?>
				<?php 
        gform_tooltip('form_field_label_html');
        ?>
			</label>
			<input type="text" id="field_label" class="fieldwidth-3" size="35" />
		</li>
        <?php 
        do_action('gform_field_standard_settings', 10, $form_id);
        ?>
		<li class="description_setting field_setting">
			<label for="field_description">
				<?php 
        _e('Description', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_description');
        ?>
			</label>
			<textarea id="field_description" class="fieldwidth-3 fieldheight-2"></textarea>
		</li>
		<?php 
        do_action('gform_field_standard_settings', 20, $form_id);
        ?>
        <li class="product_field_setting field_setting">
			<label for="product_field">
				<?php 
        _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 
        _e('Field Type', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_type');
        ?>
			</label>
			<select id="product_field_type" onchange="if(jQuery(this).val() == '') return; jQuery('#field_settings').slideUp(function(){StartChangeProductType(jQuery('#product_field_type').val());});">
				<option value="singleproduct"><?php 
        _e('Single Product', 'gravityforms');
        ?>
</option>
				<option value="select"><?php 
        _e('Drop Down', 'gravityforms');
        ?>
</option>
				<option value="radio"><?php 
        _e('Radio Buttons', 'gravityforms');
        ?>
</option>
				<option value="price"><?php 
        _e('User Defined Price', 'gravityforms');
        ?>
</option>
				<option value="hiddenproduct"><?php 
        _e('Hidden', 'gravityforms');
        ?>
</option>
				<option value="calculation"><?php 
        _e('Calculation', 'gravityforms');
        ?>
</option>
			</select>
		</li>
		<?php 
        do_action('gform_field_standard_settings', 37, $form_id);
        ?>
		<li class="shipping_field_type_setting field_setting">
			<label for="shipping_field_type">
				<?php 
        _e('Field Type', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_type');
        ?>
			</label>
			<select id="shipping_field_type" onchange="if(jQuery(this).val() == '') return; jQuery('#field_settings').slideUp(function(){StartChangeShippingType(jQuery('#shipping_field_type').val());});">
				<option value="singleshipping"><?php 
        _e('Single Method', 'gravityforms');
        ?>
</option>
				<option value="select"><?php 
        _e('Drop Down', 'gravityforms');
        ?>
</option>
				<option value="radio"><?php 
        _e('Radio Buttons', 'gravityforms');
        ?>
</option>
			</select>
		</li>
		<?php 
        do_action('gform_field_standard_settings', 50, $form_id);
        ?>
		<li class="base_price_setting field_setting">
			<label for="field_base_price">
				<?php 
        _e('Price', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_base_price');
        ?>
			</label>
			<input type="text" id="field_base_price" onchange="SetBasePrice(this.value)" />
		</li>
		<?php 
        do_action('gform_field_standard_settings', 75, $form_id);
        ?>
		<li class="disable_quantity_setting field_setting">
			<input type="checkbox" name="field_disable_quantity" id="field_disable_quantity" onclick="SetDisableQuantity(jQuery(this).is(':checked'));" />
			<label for="field_disable_quantity" class="inline">
				<?php 
        _e('Disable quantity field', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_disable_quantity');
        ?>
			</label>

		</li>
		<?php 
        do_action('gform_field_standard_settings', 100, $form_id);
        ?>
		<li class="option_field_type_setting field_setting">
			<label for="option_field_type">
				<?php 
        _e('Field Type', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_type');
        ?>
			</label>
			<select id="option_field_type" onchange="if(jQuery(this).val() == '') return; jQuery('#field_settings').slideUp(function(){StartChangeInputType(jQuery('#option_field_type').val());});">
				<option value="select"><?php 
        _e('Drop Down', 'gravityforms');
        ?>
</option>
				<option value="checkbox"><?php 
        _e('Checkboxes', 'gravityforms');
        ?>
</option>
				<option value="radio"><?php 
        _e('Radio Buttons', 'gravityforms');
        ?>
</option>
			</select>
		</li>
		<?php 
        do_action('gform_field_standard_settings', 125, $form_id);
        ?>
		<li class="donation_field_type_setting field_setting">
			<label for="donation_field_type">
				<?php 
        _e('Field Type', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_type');
        ?>
			</label>
			<select id="donation_field_type" onchange="if(jQuery(this).val() == '') return; jQuery('#field_settings').slideUp(function(){StartChangeDonationType(jQuery('#donation_field_type').val());});">
				<option value="select"><?php 
        _e('Drop Down', 'gravityforms');
        ?>
</option>
				<option value="donation"><?php 
        _e('User Defined Price', 'gravityforms');
        ?>
</option>
				<option value="radio"><?php 
        _e('Radio Buttons', 'gravityforms');
        ?>
</option>
			</select>
		</li>
		<?php 
        do_action('gform_field_standard_settings', 150, $form_id);
        ?>
		<li class="quantity_field_type_setting field_setting">
			<label for="quantity_field_type">
				<?php 
        _e('Field Type', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_type');
        ?>
			</label>
			<select id="quantity_field_type" onchange="if(jQuery(this).val() == '') return; jQuery('#field_settings').slideUp(function(){StartChangeInputType(jQuery('#quantity_field_type').val());});">
				<option value="number"><?php 
        _e('Number', 'gravityforms');
        ?>
</option>
				<option value="select"><?php 
        _e('Drop Down', 'gravityforms');
        ?>
</option>
				<option value="hidden"><?php 
        _e('Hidden', 'gravityforms');
        ?>
</option>
			</select>
		</li>

		<?php 
        do_action('gform_field_standard_settings', 200, $form_id);
        ?>
		<li class="content_setting field_setting">
			<label for="field_content">
				<?php 
        _e('Content', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_content');
        ?>
			</label>
			<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 
        _e('Next Button', 'gravityforms');
        ?>
			</label>

			<div class="next_button_options" id="next_button_container">
				<input type="radio" id="next_button_text" name="next_button" value="text" onclick="TogglePageButton('next'); SetPageButton('next');" />
				<label for="next_button_text" class="inline">
					<?php 
        _e('Default', 'gravityforms');
        ?>
					<?php 
        gform_tooltip('next_button_text');
        ?>
				</label>
				&nbsp;&nbsp;
				<input type="radio" id="next_button_image" name="next_button" value="image" onclick="TogglePageButton('next'); SetPageButton('next');" />
				<label for="next_button_image" class="inline">
					<?php 
        _e('Image', 'gravityforms');
        ?>
					<?php 
        gform_tooltip('next_button_image');
        ?>
				</label>

				<div id="next_button_text_container" style="margin-top:5px;">
					<label for="next_button_text_input" class="inline">
						<?php 
        _e('Text:', 'gravityforms');
        ?>
					</label>
					<input type="text" id="next_button_text_input" class="input_size_b" size="40" />
				</div>

				<div id="next_button_image_container" style="margin-top:5px;">
					<label for="next_button_image_url" class="inline">
						<?php 
        _e('Image Path:', 'gravityforms');
        ?>
					</label>
					<input type="text" id="next_button_image_url" size="45" />
				</div>
			</div>
		</li>

		<?php 
        do_action('gform_field_standard_settings', 237, $form_id);
        ?>
		<li class="previous_button_setting field_setting">
			<label for="previous_button_container">
				<?php 
        _e('Previous Button', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_previous_button');
        ?>
			</label>

			<div class="previous_button_options" id="previous_button_container">
				<input type="radio" id="previous_button_text" name="previous_button" value="text" onclick="TogglePageButton('previous'); SetPageButton('previous');" />
				<label for="previous_button_text" class="inline">
					<?php 
        _e('Default', 'gravityforms');
        ?>
					<?php 
        gform_tooltip('previous_button_text');
        ?>
				</label>
				&nbsp;&nbsp;
				<input type="radio" id="previous_button_image" name="previous_button" value="image" onclick="TogglePageButton('previous'); SetPageButton('previous');" />
				<label for="previous_button_image" class="inline">
					<?php 
        _e('Image', 'gravityforms');
        ?>
					<?php 
        gform_tooltip('previous_button_image');
        ?>
				</label>

				<div id="previous_button_text_container" style="margin-top:5px;">
					<label for="previous_button_text_input" class="inline">
						<?php 
        _e('Text:', 'gravityforms');
        ?>
					</label>
					<input type="text" id="previous_button_text_input" class="input_size_b" size="40" />
				</div>

				<div id="previous_button_image_container" style="margin-top:5px;">
					<label for="previous_button_image_url" class="inline">
						<?php 
        _e('Image Path:', 'gravityforms');
        ?>
					</label>
					<input type="text" id="previous_button_image_url" size="45" />
				</div>
			</div>
		</li>

		<?php 
        do_action('gform_field_standard_settings', 250, $form_id);
        ?>
		<li class="disable_margins_setting field_setting">
			<input type="checkbox" id="field_margins" onclick="SetFieldProperty('disableMargins', this.checked);" />
			<label for="field_disable_margins" class="inline">
				<?php 
        _e('Disable default margins', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_disable_margins');
        ?>
			</label><br />
		</li>
		<?php 
        do_action('gform_field_standard_settings', 300, $form_id);
        ?>
		<li class="post_custom_field_type_setting field_setting">
			<label for="post_custom_field_type">
				<?php 
        _e('Field Type', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_type');
        ?>
			</label>
			<select id="post_custom_field_type" onchange="if(jQuery(this).val() == '') return; jQuery('#field_settings').slideUp(function(){StartChangeInputType(jQuery('#post_custom_field_type').val());});">
				<optgroup class="option_header" label="<?php 
        _e('Standard Fields', 'gravityforms');
        ?>
">
					<option value="text"><?php 
        _e('Single line text', 'gravityforms');
        ?>
</option>
					<option value="textarea"><?php 
        _e('Paragraph Text', 'gravityforms');
        ?>
</option>
					<option value="select"><?php 
        _e('Drop Down', 'gravityforms');
        ?>
</option>
					<option value="multiselect"><?php 
        _e('Multi Select', 'gravityforms');
        ?>
</option>
					<option value="number"><?php 
        _e('Number', 'gravityforms');
        ?>
</option>
					<option value="checkbox"><?php 
        _e('Checkboxes', 'gravityforms');
        ?>
</option>
					<option value="radio"><?php 
        _e('Radio Buttons', 'gravityforms');
        ?>
</option>
					<option value="hidden"><?php 
        _e('Hidden', 'gravityforms');
        ?>
</option>
				</optgroup>
				<optgroup class="option_header" label="<?php 
        _e('Advanced Fields', 'gravityforms');
        ?>
">
					<option value="date"><?php 
        _e('Date', 'gravityforms');
        ?>
</option>
					<option value="time"><?php 
        _e('Time', 'gravityforms');
        ?>
</option>
					<option value="phone"><?php 
        _e('Phone', 'gravityforms');
        ?>
</option>
					<option value="website"><?php 
        _e('Website', 'gravityforms');
        ?>
</option>
					<option value="email"><?php 
        _e('Email', 'gravityforms');
        ?>
</option>
					<option value="fileupload"><?php 
        _e('File Upload', 'gravityforms');
        ?>
</option>
					<option value="list"><?php 
        _e('List', 'gravityforms');
        ?>
</option>
				</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 
        _e('Field Type', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_type');
        ?>
			</label>
			<select id="post_tag_type" onchange="if(jQuery(this).val() == '') return; jQuery('#field_settings').slideUp(function(){StartChangeInputType(jQuery('#post_tag_type').val());});">
				<option value="text"><?php 
        _e('Single line text', 'gravityforms');
        ?>
</option>
				<option value="select"><?php 
        _e('Drop Down', 'gravityforms');
        ?>
</option>
				<option value="multiselect"><?php 
        _e('Multi Select', 'gravityforms');
        ?>
</option>
				<option value="checkbox"><?php 
        _e('Checkboxes', 'gravityforms');
        ?>
</option>
				<option value="radio"><?php 
        _e('Radio Buttons', 'gravityforms');
        ?>
</option>
			</select>
		</li>
		<?php 
        do_action('gform_field_standard_settings', 400, $form_id);
        ?>
		<?php 
        if (class_exists('ReallySimpleCaptcha')) {
            ?>
			<li class="captcha_type_setting field_setting">
				<label for="field_captcha_type">
					<?php 
            _e('Type', 'gravityforms');
            ?>
					<?php 
            gform_tooltip('form_field_captcha_type');
            ?>
				</label>
				<select id="field_captcha_type" onchange="StartChangeCaptchaType(jQuery(this).val())">
					<option value="captcha"><?php 
            _e('reCAPTCHA', 'gravityforms');
            ?>
</option>
					<option value="simple_captcha"><?php 
            _e('Really Simple CAPTCHA', 'gravityforms');
            ?>
</option>
					<option value="math"><?php 
            _e('Math Challenge', 'gravityforms');
            ?>
</option>
				</select>
			</li>
			<?php 
            do_action('gform_field_standard_settings', 450, $form_id);
            ?>
			<li class="captcha_size_setting field_setting">
				<label for="field_captcha_size">
					<?php 
            _e('Size', 'gravityforms');
            ?>
				</label>
				<select id="field_captcha_size" onchange="SetCaptchaSize(jQuery(this).val());">
					<option value="small"><?php 
            _e('Small', 'gravityforms');
            ?>
</option>
					<option value="medium"><?php 
            _e('Medium', 'gravityforms');
            ?>
</option>
					<option value="large"><?php 
            _e('Large', 'gravityforms');
            ?>
</option>
				</select>
			</li>
			<?php 
            do_action('gform_field_standard_settings', 500, $form_id);
            ?>
			<li class="captcha_fg_setting field_setting">
				<label for="field_captcha_fg">
					<?php 
            _e('Font Color', 'gravityforms');
            ?>
				</label>
				<?php 
            self::color_picker('field_captcha_fg', 'SetCaptchaFontColor');
            ?>
			</li>
			<?php 
            do_action('gform_field_standard_settings', 550, $form_id);
            ?>
			<li class="captcha_bg_setting field_setting">
				<label for="field_captcha_bg">
					<?php 
            _e('Background Color', 'gravityforms');
            ?>
				</label>
				<?php 
            self::color_picker('field_captcha_bg', 'SetCaptchaBackgroundColor');
            ?>
			</li>
		<?php 
        }
        do_action('gform_field_standard_settings', 600, $form_id);
        ?>
		<li class="captcha_theme_setting field_setting">
			<label for="field_captcha_theme">
				<?php 
        _e('Theme', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_recaptcha_theme');
        ?>
			</label>
			<select id="field_captcha_theme" onchange="SetCaptchaTheme(this.value, '<?php 
        echo GFCommon::get_base_url();
        ?>
/images/captcha_' + this.value + '.jpg')">
				<option value="red"><?php 
        _e('Red', 'gravityforms');
        ?>
</option>
				<option value="white"><?php 
        _e('White', 'gravityforms');
        ?>
</option>
				<option value="blackglass"><?php 
        _e('Black Glass', 'gravityforms');
        ?>
</option>
				<option value="clean"><?php 
        _e('Clean', 'gravityforms');
        ?>
</option>
			</select>
		</li>
		<?php 
        do_action('gform_field_standard_settings', 650, $form_id);
        ?>
		<li class="post_custom_field_setting field_setting">
			<label for="field_custom_field_name">
				<?php 
        _e('Custom Field Name', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_custom_field_name');
        ?>
			</label>

			<div style="width:100px; float:left;">
				<input type="radio" name="field_custom" id="field_custom_existing" size="10" onclick="ToggleCustomField();" />
				<label for="field_custom_existing" class="inline">
					<?php 
        _e('Existing', 'gravityforms');
        ?>
				</label>
			</div>
			<div style="width:100px; float:left;">
				<input type="radio" name="field_custom" id="field_custom_new" size="10" onclick="ToggleCustomField();" />
				<label for="field_custom_new" class="inline">
					<?php 
        _e('New', 'gravityforms');
        ?>
				</label>
			</div>
			<div class="clear">
				<input type="text" id="field_custom_field_name_text" size="35" />
				<select id="field_custom_field_name_select" onchange="SetFieldProperty('postCustomFieldName', jQuery(this).val());">
					<option value=""><?php 
        _e('Select an existing custom field', 'gravityforms');
        ?>
</option>
					<?php 
        $custom_field_names = RGFormsModel::get_custom_field_names();
        foreach ($custom_field_names as $name) {
            ?>
						<option value="<?php 
            echo $name;
            ?>
"><?php 
            echo $name;
            ?>
</option>
					<?php 
        }
        ?>
				</select>
			</div>
		</li>
		<?php 
        do_action('gform_field_standard_settings', 700, $form_id);
        ?>
		<li class="post_status_setting field_setting">
			<label for="field_post_status">
				<?php 
        _e('Post Status', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_post_status');
        ?>
			</label>
			<select id="field_post_status" name="field_post_status">
				<?php 
        $post_stati = apply_filters('gform_post_status_options', array('draft' => 'Draft', 'pending' => 'Pending Review', 'publish' => 'Published'));
        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 
        _e('Default Post Author', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_post_author');
        ?>
			</label>
			<?php 
        $args = array('name' => 'field_post_author');
        $args = apply_filters('gform_author_dropdown_args_' . rgar($form, 'id'), apply_filters('gform_author_dropdown_args', $args));
        wp_dropdown_users($args);
        ?>
			<div>
				<input type="checkbox" id="gfield_current_user_as_author" />
				<label for="gfield_current_user_as_author" class="inline"><?php 
        _e('Use logged in user as author', 'gravityforms');
        ?>
 <?php 
        gform_tooltip('form_field_current_user_as_author');
        ?>
</label>
			</div>
		</li>

		<?php 
        do_action('gform_field_standard_settings', 775, $form_id);
        ?>

		<?php 
        if (current_theme_supports('post-formats')) {
            ?>

			<li class="post_format_setting field_setting">
				<label for="field_post_format">
					<?php 
            _e('Post Format', 'gravityforms');
            ?>
					<?php 
            gform_tooltip('form_field_post_format');
            ?>
				</label>

				<?php 
            $post_formats = get_theme_support('post-formats');
            $post_formats_dropdown = '<option value="0">Standard</option>';
            foreach ($post_formats[0] as $post_format) {
                $post_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 
        _e('Post Category', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_post_category');
        ?>
			</label>
			<?php 
        wp_dropdown_categories(array('selected' => get_option('default_category'), 'hide_empty' => 0, 'id' => 'field_post_category', 'name' => 'field_post_category', 'orderby' => 'name', 'selected' => 'field_post_category', 'hierarchical' => true));
        ?>
		</li>

		<?php 
        do_action('gform_field_standard_settings', 825, $form_id);
        ?>

		<li class="post_category_field_type_setting field_setting">
			<label for="post_category_field_type">
				<?php 
        _e('Field Type', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_type');
        ?>
			</label>
			<select id="post_category_field_type" onchange="jQuery('#field_settings').slideUp(function(){StartChangeInputType( jQuery('#post_category_field_type').val() );});">
				<option value="select"><?php 
        _e('Drop Down', 'gravityforms');
        ?>
</option>
				<option value="checkbox"><?php 
        _e('Checkboxes', 'gravityforms');
        ?>
</option>
				<option value="radio"><?php 
        _e('Radio Buttons', 'gravityforms');
        ?>
</option>
				<option value="multiselect"><?php 
        _e('Multi Select', 'gravityforms');
        ?>
</option>
			</select>
		</li>

		<?php 
        do_action('gform_field_standard_settings', 850, $form_id);
        ?>
		<li class="post_category_checkbox_setting field_setting">
			<label for="field_post_category">
				<?php 
        _e('Category', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_post_category_selection');
        ?>
			</label>

			<input type="radio" id="gfield_category_all" name="gfield_category" value="all" onclick="ToggleCategory();" />
			<label for="gfield_category_all" class="inline">
				<?php 
        _e('All Categories', 'gravityforms');
        ?>

			</label>
			&nbsp;&nbsp;
			<input type="radio" id="gfield_category_select" name="gfield_category" value="select" onclick="ToggleCategory();" />
			<label for="form_button_image" class="inline">
				<?php 
        _e('Select Categories', 'gravityforms');
        ?>
			</label>

			<div id="gfield_settings_category_container">
				<table cellpadding="0" cellspacing="5">
					<?php 
        $categories = get_categories(array('hide_empty' => 0));
        $count = 0;
        $category_rows = '';
        self::_cat_rows($categories, $count, $category_rows);
        echo $category_rows;
        ?>
				</table>
			</div>
		</li>

		<?php 
        do_action('gform_field_standard_settings', 875, $form_id);
        ?>
		<li class="post_category_initial_item_setting field_setting">
			<input type="checkbox" id="gfield_post_category_initial_item_enabled" onclick="TogglePostCategoryInitialItem(); SetCategoryInitialItem();" />
			<label for="gfield_post_category_initial_item_enabled" class="inline">
				<?php 
        _e('Display placeholder', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_post_category_initial_item');
        ?>
			</label>
		</li>
		<li id="gfield_post_category_initial_item_container">
			<label for="field_post_category_initial_item">
				<?php 
        _e('Placeholder Label', 'gravityforms');
        ?>
			</label>
			<input type="text" id="field_post_category_initial_item" onchange="SetCategoryInitialItem();" class="fieldwidth-3" size="35" />
		</li>
		<?php 
        do_action('gform_field_standard_settings', 900, $form_id);
        ?>
		<li class="post_content_template_setting field_setting">
			<input type="checkbox" id="gfield_post_content_enabled" onclick="TogglePostContentTemplate();" />
			<label for="gfield_post_content_enabled" class="inline">
				<?php 
        _e('Create content template', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_post_content_template_enable');
        ?>
			</label>

			<div id="gfield_post_content_container">
				<div>
					<?php 
        GFCommon::insert_post_content_variables($form['fields'], 'field_post_content_template', '', 25);
        ?>
				</div>
				<textarea id="field_post_content_template" class="fieldwidth-3 fieldheight-1"></textarea>
			</div>
		</li>
		<?php 
        do_action('gform_field_standard_settings', 950, $form_id);
        ?>
		<li class="post_title_template_setting field_setting">
			<input type="checkbox" id="gfield_post_title_enabled" onclick="TogglePostTitleTemplate();" />
			<label for="gfield_post_title_enabled" class="inline">
				<?php 
        _e('Create content template', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_post_title_template_enable');
        ?>
			</label>

			<div id="gfield_post_title_container">
				<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();" />
			<label for="gfield_customfield_content_enabled" class="inline">
				<?php 
        _e('Create content template', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_customfield_content_template_enable');
        ?>
			</label>

			<div id="gfield_customfield_content_container">
				<div>
					<?php 
        GFCommon::insert_post_content_variables($form['fields'], 'field_customfield_content_template', 'SetCustomFieldTemplate', 25);
        ?>
				</div>
				<textarea id="field_customfield_content_template" class="fieldwidth-3 fieldheight-1"></textarea>
			</div>
		</li>
		<?php 
        do_action('gform_field_standard_settings', 1000, $form_id);
        ?>
		<li class="post_image_setting field_setting">
			<label><?php 
        _e('Image Metadata', 'gravityforms');
        ?>
 <?php 
        gform_tooltip('form_field_image_meta');
        ?>
</label>
			<input type="checkbox" id="gfield_display_title" onclick="SetPostImageMeta();" />
			<label for="gfield_display_title" class="inline">
				<?php 
        _e('Title', 'gravityforms');
        ?>
			</label>
			<br />
			<input type="checkbox" id="gfield_display_caption" onclick="SetPostImageMeta();" />
			<label for="gfield_display_caption" class="inline">
				<?php 
        _e('Caption', 'gravityforms');
        ?>
			</label>
			<br />
			<input type="checkbox" id="gfield_display_description" onclick="SetPostImageMeta();" />
			<label for="gfield_display_description" class="inline">
				<?php 
        _e('Description', 'gravityforms');
        ?>
			</label>
		</li>

		<?php 
        do_action('gform_field_standard_settings', 1025, $form_id);
        ?>

		<li class="post_image_featured_image field_setting">
			<input type="checkbox" id="gfield_featured_image" onclick="SetFeaturedImage();" />
			<label for="gfield_featured_image" class="inline"><?php 
        _e('Set as Featured Image', 'gravityforms');
        ?>
 <?php 
        gform_tooltip('form_field_featured_image');
        ?>
</label>
		</li>

		<?php 
        do_action('gform_field_standard_settings', 1050, $form_id);
        ?>
		<li class="address_setting field_setting">
			<?php 
        $addressTypes = $gf_address_field->get_address_types(rgar($form, 'id'));
        ?>
			<label for="field_address_type">
				<?php 
        _e('Address Type', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_address_type');
        ?>
			</label>
			<select id="field_address_type" onchange="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 
        _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 
                _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 
        _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 
        _e('Extended', 'gravityforms');
        ?>
</option>
				<option value="advanced"><?php 
        _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 
        _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 
        _e('Date Input Type', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_date_input_type');
        ?>
			</label>
			<select id="field_date_input_type" onchange="SetDateInputType(jQuery(this).val());">
				<option value="datefield"><?php 
        _e('Date Field', 'gravityforms');
        ?>
</option>
				<option value="datepicker"><?php 
        _e('Date Picker', 'gravityforms');
        ?>
</option>
				<option value="datedropdown"><?php 
        _e('Date Drop Down', 'gravityforms');
        ?>
</option>
			</select>

			<div id="date_picker_container">

				<input type="radio" id="gsetting_icon_none" name="gsetting_icon" value="none" onclick="SetCalendarIconType(this.value);" />
				<label for="gsetting_icon_none" class="inline">
					<?php 
        _e('No Icon', 'gravityforms');
        ?>
				</label>
				&nbsp;&nbsp;
				<input type="radio" id="gsetting_icon_calendar" name="gsetting_icon" value="calendar" onclick="SetCalendarIconType(this.value);" />
				<label for="gsetting_icon_calendar" class="inline">
					<?php 
        _e('Calendar Icon', 'gravityforms');
        ?>
				</label>
				&nbsp;&nbsp;
				<input type="radio" id="gsetting_icon_custom" name="gsetting_icon" value="custom" onclick="SetCalendarIconType(this.value);" />
				<label for="gsetting_icon_custom" class="inline">
					<?php 
        _e('Custom Icon', 'gravityforms');
        ?>
				</label>

				<div id="gfield_icon_url_container">
					<label for="gfield_calendar_icon_url" class="inline">
						<?php 
        _e('Image Path: ', 'gravityforms');
        ?>
					</label>
					<input type="text" id="gfield_calendar_icon_url" size="45" />

					<div class="instruction"><?php 
        _e('Preview this form to see your custom icon.', 'gravityforms');
        ?>
</div>
				</div>
			</div>
		</li>
		<?php 
        do_action('gform_field_standard_settings', 1200, $form_id);
        ?>
		<li class="date_format_setting field_setting">
			<label for="field_date_format">
				<?php 
        _e('Date Format', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_date_format');
        ?>
			</label>
			<select id="field_date_format" onchange="SetDateFormat(jQuery(this).val());">
				<option value="mdy">mm/dd/yyyy</option>
				<option value="dmy">dd/mm/yyyy</option>
				<option value="dmy_dash">dd-mm-yyyy</option>
				<option value="dmy_dot">dd.mm.yyyy</option>
				<option value="ymd_slash">yyyy/mm/dd</option>
				<option value="ymd_dash">yyyy-mm-dd</option>
				<option value="ymd_dot">yyyy.mm.dd</option>
			</select>
		</li>
		<?php 
        do_action('gform_field_standard_settings', 1225, $form_id);
        ?>
		<li class="customize_inputs_setting field_setting">
			<label for="field_enable_customize_inputs" class="inline">
				<?php 
        _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 
        _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 
        _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();" />
			<label for="field_multiple_files" class="inline">
				<?php 
        _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 
        _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 
        _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 
        echo __(sprintf('Maximum allowed on this server: %sMB', $max_upload_size), 'gravityforms');
        ?>
</small>
			</div>
		</li>

		<?php 
        do_action('gform_field_standard_settings', 1275, $form_id);
        ?>
		<li class="columns_setting field_setting">

			<input type="checkbox" id="field_columns_enabled" onclick="SetFieldProperty('enableColumns', this.checked); ToggleColumns();" />
			<label for="field_columns_enabled" class="inline"><?php 
        _e('Enable multiple columns', 'gravityforms');
        gform_tooltip('form_field_columns');
        ?>
</label>
			<br />

			<div id="gfield_settings_columns_container">
				<ul id="field_columns"></ul>
			</div>
		</li>

		<?php 
        do_action('gform_field_standard_settings', 1287, $form_id);
        ?>
		<li class="maxrows_setting field_setting">
			<label for="field_maxrows">
				<?php 
        _e('Maximum Rows', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_maxrows');
        ?>
			</label>
			<input type="text" id="field_maxrows" />
		</li>

		<?php 
        do_action('gform_field_standard_settings', 1300, $form_id);
        ?>

		<li class="time_format_setting field_setting">
			<label for="field_time_format">
				<?php 
        _e('Time Format', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_time_format');
        ?>
			</label>
			<select id="field_time_format" onchange="SetTimeFormat(this.value);">
				<option value="12"><?php 
        _e('12 hour', 'gravityforms');
        ?>
</option>
				<option value="24"><?php 
        _e('24 hour', 'gravityforms');
        ?>
</option>
			</select>

		</li>
		<?php 
        do_action('gform_field_standard_settings', 1325, $form_id);
        ?>

		<li class="phone_format_setting field_setting">
			<label for="field_phone_format">
				<?php 
        _e('Phone Format', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_phone_format');
        ?>
			</label>
			<select id="field_phone_format" onchange="SetFieldPhoneFormat(jQuery(this).val());">
				<option value="standard">(###) ###-####</option>
				<option value="international"><?php 
        _e('International', 'gravityforms');
        ?>
</option>
			</select>
		</li>
		<?php 
        do_action('gform_field_standard_settings', 1350, $form_id);
        ?>
		<li class="choices_setting field_setting">

			<div style="float:right;">
				<input type="checkbox" id="field_choice_values_enabled" onclick="SetFieldProperty('enableChoiceValue', this.checked); ToggleChoiceValue(); SetFieldChoices();" />
				<label for="field_choice_values_enabled" class="inline gfield_value_label"><?php 
        _e('show values', 'gravityforms');
        ?>
</label>
			</div>

			<?php 
        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 
        _e('Label', 'gravityforms');
        ?>
</label><label class="gfield_choice_header_value"><?php 
        _e('Value', 'gravityforms');
        ?>
</label><label class="gfield_choice_header_price"><?php 
        _e('Price', 'gravityforms');
        ?>
</label>
				<ul id="field_choices"></ul>
			</div>

			<?php 
        $window_title = __('Bulk Add / Predefined Choices', 'gravityforms');
        ?>
			<input type='button' value='<?php 
        echo esc_attr($window_title);
        ?>
' onclick="tb_show('<?php 
        echo esc_js($window_title);
        ?>
', '#TB_inline?height=500&amp;width=600&amp;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')), __('Income', 'gravityforms') => array(__('Under $20,000', 'gravityforms'), __('$20,000 - $30,000', 'gravityforms'), __('$30,000 - $40,000', 'gravityforms'), __('$40,000 - $50,000', 'gravityforms'), __('$50,000 - $75,000', 'gravityforms'), __('$75,000 - $100,000', 'gravityforms'), __('$100,000 - $150,000', 'gravityforms'), __('$150,000 or more', 'gravityforms'), __('Prefer Not to Answer', 'gravityforms')), __('Education', 'gravityforms') => array(__('High School', 'gravityforms'), __('Associate Degree', 'gravityforms'), __("Bachelor's Degree", 'gravityforms'), __('Graduate of Professional Degree', 'gravityforms'), __('Some College', 'gravityforms'), __('Other', 'gravityforms'), __('Prefer Not to Answer', 'gravityforms')), __('Days of the Week', 'gravityforms') => array(__('Sunday', 'gravityforms'), __('Monday', 'gravityforms'), __('Tuesday', 'gravityforms'), __('Wednesday', 'gravityforms'), __('Thursday', 'gravityforms'), __('Friday', 'gravityforms'), __('Saturday', 'gravityforms')), __('Months of the Year', 'gravityforms') => array(__('January', 'gravityforms'), __('February', 'gravityforms'), __('March', 'gravityforms'), __('April', 'gravityforms'), __('May', 'gravityforms'), __('June', 'gravityforms'), __('July', 'gravityforms'), __('August', 'gravityforms'), __('September', 'gravityforms'), __('October', 'gravityforms'), __('November', 'gravityforms'), __('December', 'gravityforms')), __('How Often', 'gravityforms') => array(__('Everyday', 'gravityforms'), __('Once a week', 'gravityforms'), __('2 to 3 times a week', 'gravityforms'), __('Once a month', 'gravityforms'), __(' 2 to 3 times a month', 'gravityforms'), __('Less than once a month', 'gravityforms')), __('How Long', 'gravityforms') => array(__('Less than a month', 'gravityforms'), __('1-6 months', 'gravityforms'), __('1-3 years', 'gravityforms'), __('Over 3 Years', 'gravityforms'), __('Never used', 'gravityforms')), __('Satisfaction', 'gravityforms') => array(__('Very Satisfied', 'gravityforms'), __('Satisfied', 'gravityforms'), __('Neutral', 'gravityforms'), __('Unsatisfied', 'gravityforms'), __('Very Unsatisfied', 'gravityforms')), __('Importance', 'gravityforms') => array(__('Very Important', 'gravityforms'), __('Important', 'gravityforms'), __('Somewhat Important', 'gravityforms'), __('Not Important', 'gravityforms')), __('Agreement', 'gravityforms') => array(__('Strongly Agree', 'gravityforms'), __('Agree', 'gravityforms'), __('Disagree', 'gravityforms'), __('Strongly Disagree', 'gravityforms')), __('Comparison', 'gravityforms') => array(__('Much Better', 'gravityforms'), __('Somewhat Better', 'gravityforms'), __('About the Same', 'gravityforms'), __('Somewhat Worse', 'gravityforms'), __('Much Worse', 'gravityforms')), __('Would You', 'gravityforms') => array(__('Definitely', 'gravityforms'), __('Probably', 'gravityforms'), __('Not Sure', 'gravityforms'), __('Probably Not', 'gravityforms'), __('Definitely Not', 'gravityforms')), __('Size', 'gravityforms') => array(__('Extra Small', 'gravityforms'), __('Small', 'gravityforms'), __('Medium', 'gravityforms'), __('Large', 'gravityforms'), __('Extra Large', 'gravityforms')));
        $predefined_choices = apply_filters('gform_predefined_choices_' . rgar($form, 'id'), apply_filters('gform_predefined_choices', $predefined_choices));
        $custom_choices = RGFormsModel::get_custom_choices();
        ?>

					<div class="panel-instructions"><?php 
        _e('Select a category and customize the predefined choices or paste your own list to bulk add choices.', 'gravityforms');
        ?>
</div>

					<div class="bulk-left-panel">
						<ul id="bulk_items">
							<?php 
        foreach (array_keys($predefined_choices) as $name) {
            $key = str_replace("'", "\\'", $name);
            ?>
							<li>
								<a href="javascript:void(0);" onclick="SelectPredefinedChoice('<?php 
            echo $key;
            ?>
');"
								   class="bulk-choice"><?php 
            echo $name;
            ?>
</a>
							<?php 
        }
        ?>
						</ul>
					</div>
					<div class="bulk-arrow-mid"></div>
					<textarea id="gfield_bulk_add_input"></textarea>
					<br style="clear:both;" />

					<div class="panel-buttons" style="">
						<input type="button" onclick="InsertBulkChoices(jQuery('#gfield_bulk_add_input').val().split('\n')); tb_remove();" class="button-primary" value="<?php 
        _e('Insert Choices', 'gravityforms');
        ?>
" />&nbsp;
						<input type="button" onclick="tb_remove();" class="button" value="<?php 
        _e('Cancel', 'gravityforms');
        ?>
" />
					</div>

					<div class="panel-custom" style="">
						<a href="javascript:void(0);" onclick="LoadCustomChoicesPanel(true, 'slow');" id="bulk_save_as"><?php 
        _e('Save as new custom choice', 'gravityforms');
        ?>
</a>

						<div id="bulk_custom_edit" style="display:none;">
							<?php 
        _e('Save as', 'gravityforms');
        ?>
							<input type="text" id="custom_choice_name" value="<?php 
        _e('Enter name', 'gravityforms');
        ?>
" onfocus="if(this.value == '<?php 
        _e('enter name', 'gravityforms');
        ?>
') this.value='';">&nbsp;&nbsp;
							<a href="javascript:void(0);" onclick="SaveCustomChoices();" class="button" id="bulk_save_button"><?php 
        _e('Save', 'gravityforms');
        ?>
</a>&nbsp;
							<a href="javascript:void(0);" onclick="CloseCustomChoicesPanel('slow');" id="bulk_cancel_link"><?php 
        _e('Cancel', 'gravityforms');
        ?>
</a>
							<a href="javascript:void(0);" onclick="DeleteCustomChoice();" id="bulk_delete_link"><?php 
        _e('Delete', 'gravityforms');
        ?>
</a>
						</div>
						<div id="bulk_custom_message" class="alert_yellow" style="display:none; margin-top:8px; padding: 8px;">
							<!--Message will be added via javascript-->
						</div>
					</div>

					<script type="text/javascript">
						var gform_selected_custom_choice = '';
						var gform_custom_choices = <?php 
        echo GFCommon::json_encode($custom_choices);
        ?>
;
						var gform_predefined_choices = <?php 
        echo GFCommon::json_encode($predefined_choices);
        ?>
;
					</script>

				</div>
			</div>
		</li>
		<?php 
        do_action('gform_field_standard_settings', 1362, $form_id);
        ?>

		<li class="other_choice_setting field_setting">

			<input type="checkbox" id="field_other_choice" onclick="var value = jQuery(this).is(':checked'); SetFieldProperty('enableOtherChoice', value); UpdateFieldChoices(GetInputType(field));" />
			<label for="field_other_choice" class="inline">
				<?php 
        _e('Enable "other" choice', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_other_choice');
        ?>
			</label>

		</li>

		<?php 
        do_action('gform_field_standard_settings', 1368, $form_id);
        ?>

		<li class="email_confirm_setting field_setting">
			<input type="checkbox" id="gfield_email_confirm_enabled" onclick="SetEmailConfirmation(this.checked);" />
			<label for="gfield_email_confirm_enabled" class="inline">
				<?php 
        _e('Enable Email Confirmation', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_email_confirm_enable');
        ?>
			</label>
		</li>
		<?php 
        do_action('gform_field_standard_settings', 1375, $form_id);
        ?>
		<li class="password_strength_setting field_setting">
			<input type="checkbox" id="gfield_password_strength_enabled" onclick="TogglePasswordStrength(); SetPasswordStrength(this.checked);" />
			<label for="gfield_password_strength_enabled" class="inline">
				<?php 
        _e('Enable Password Strength', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_password_strength_enable');
        ?>
			</label>
		</li>

		<?php 
        do_action('gform_field_standard_settings', 1387, $form_id);
        ?>

		<li id="gfield_min_strength_container">
			<label for="gfield_min_strength">
				<?php 
        _e('Minimum Strength', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_password_strength_enable');
        ?>
			</label>
			<select id="gfield_min_strength" onchange="SetFieldProperty('minPasswordStrength', jQuery(this).val());">
				<option value=""><?php 
        _e('None', 'gravityforms');
        ?>
</option>
				<option value="short"><?php 
        _e('Short', 'gravityforms');
        ?>
</option>
				<option value="bad"><?php 
        _e('Bad', 'gravityforms');
        ?>
</option>
				<option value="good"><?php 
        _e('Good', 'gravityforms');
        ?>
</option>
				<option value="strong"><?php 
        _e('Strong', 'gravityforms');
        ?>
</option>
			</select>
		</li>

		<?php 
        do_action('gform_field_standard_settings', 1400, $form_id);
        ?>

		<li class="number_format_setting field_setting">
			<label for="field_number_format">
				<?php 
        _e('Number Format', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_number_format');
        ?>
			</label>
			<select id="field_number_format" onchange="SetFieldProperty('numberFormat', this.value);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 
        _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 
        _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 
        _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);" />
						<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 
        _e('Card Icon Style', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_card_style');
        ?>
			</label>
			<select id="credit_card_style" onchange="SetFieldProperty('creditCardStyle', this.value);">
				<option value="style1"><?php 
        _e('Standard', 'gravityforms');
        ?>
</option>
				<option value="style2"><?php 
        _e('3D', 'gravityforms');
        ?>
</option>
			</select>
		</li>

		<?php 
        do_action('gform_field_standard_settings', 1440, $form_id);
        ?>

		<li class="input_mask_setting field_setting">

			<input type="checkbox" id="field_input_mask" onclick="ToggleInputMask();" />
			<label for="field_input_mask" class="inline">
				<?php 
        _e('Input Mask', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_mask');
        ?>
			</label><br />

			<div id="gform_input_mask">

				<br />

				<div style="width:100px; float:left;">
					<input type="radio" name="field_mask_option" id="field_mask_standard" size="10" onclick="ToggleInputMaskOptions();" />
					<label for="field_mask_standard" class="inline">
						<?php 
        _e('Standard', 'gravityforms');
        ?>
					</label>
				</div>
				<div style="width:100px; float:left;">
					<input type="radio" name="field_mask_option" id="field_mask_custom" size="10" onclick="ToggleInputMaskOptions();" />
					<label for="field_mask_custom" class="inline">
						<?php 
        _e('Custom', 'gravityforms');
        ?>
					</label>
				</div>

				<div class="clear"></div>

				<input type="text" id="field_mask_text" size="35" />

				<p class="mask_text_description" style="margin:5px 0 0;">
					<?php 
        _e('Enter a custom mask', 'gravityforms');
        ?>
.
					<a href="javascript:void(0);" onclick="tb_show('<?php 
        _e('Custom Mask Instructions', 'gravityforms');
        ?>
', '#TB_inline?width=350&amp;inlineId=custom_mask_instructions', '');"><?php 
        _e('Help', 'gravityforms');
        ?>
</a>
				</p>

				<div id="custom_mask_instructions" style="display:none;">
					<div class="custom_mask_instructions">

						<h4><?php 
        _e('Usage', 'gravityforms');
        ?>
</h4>
						<ul class="description-list">
							<li><?php 
        _e("Use a <em>'9'</em> to indicate a numerical character.", 'gravityforms');
        ?>
</li>
							<li><?php 
        _e("Use a lower case <em>'a'</em> to indicate an alphabetical character.", 'gravityforms');
        ?>
</li>
							<li><?php 
        _e("Use an asterick <em>'*'</em> to indicate any alphanumeric character.", 'gravityforms');
        ?>
</li>
							<li><?php 
        _e("Use a question mark <em>'?'</em> to indicate optional characters. <em>Note:</em> All characters after the question mark will be optional.", 'gravityforms');
        ?>
</li>
							<li><?php 
        _e('All other characters are literal values and will be displayed automatically.', 'gravityforms');
        ?>
</li>
						</ul>

						<h4><?php 
        _e('Examples', 'gravityforms');
        ?>
</h4>
						<ul class="examples-list">
							<li>
								<h5><?php 
        _e('Date', 'gravityforms');
        ?>
</h5>
								<span class="label"><?php 
        _e('Mask', 'gravityforms');
        ?>
</span> <code>99/99/9999</code><br />
								<span class="label"><?php 
        _e('Valid Input', 'gravityforms');
        ?>
</span>
								<code>10/21/2011</code>
							</li>
							<li>
								<h5><?php 
        _e('Social Security Number', 'gravityforms');
        ?>
</h5>
								<span class="label"><?php 
        _e('Mask', 'gravityforms');
        ?>
</span>
								<code>999-99-9999</code><br />
								<span class="label"><?php 
        _e('Valid Input', 'gravityforms');
        ?>
</span>
								<code>987-65-4329</code>
							</li>
							<li>
								<h5><?php 
        _e('Course Code', 'gravityforms');
        ?>
</h5>
								<span class="label"><?php 
        _e('Mask', 'gravityforms');
        ?>
</span>
								<code>aaa 999</code><br />
								<span class="label"><?php 
        _e('Valid Input', 'gravityforms');
        ?>
</span>
								<code>BIO 101</code>
							</li>
							<li>
								<h5><?php 
        _e('License Key', 'gravityforms');
        ?>
</h5>
								<span class="label"><?php 
        _e('Mask', 'gravityforms');
        ?>
</span>
								<code>***-***-***</code><br />
								<span class="label"><?php 
        _e('Valid Input', 'gravityforms');
        ?>
</span>
								<code>a9a-f0c-28Q</code>
							</li>
							<li>
								<h5><?php 
        _e('Zip Code w/ Optional Plus Four', 'gravityforms');
        ?>
</h5>
								<span class="label"><?php 
        _e('Mask', 'gravityforms');
        ?>
</span>
								<code>99999?-9999</code><br />
								<span class="label"><?php 
        _e('Valid Input', 'gravityforms');
        ?>
</span>
								<code>23462</code> or <code>23462-4062</code>
							</li>
						</ul>

					</div>
				</div>

				<select id="field_mask_select" onchange="SetFieldProperty('inputMaskValue', jQuery(this).val());">
					<option value=""><?php 
        _e('Select a Mask', 'gravityforms');
        ?>
</option>
					<?php 
        $masks = RGFormsModel::get_input_masks();
        foreach ($masks as $mask_name => $mask_value) {
            ?>
						<option value="<?php 
            echo 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 
        _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 
        _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 
        _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 
        _e('Max', 'gravityforms');
        ?>
				</label>

			</div>
			<br class="clear" />
		</li>

		<?php 
        do_action('gform_field_standard_settings', 1550, $form_id);
        ?>

		<li class="calculation_setting field_setting">

			<div class="field_enable_calculation">
				<input type="checkbox" id="field_enable_calculation" onclick="ToggleCalculationOptions(this.checked, field);" />
				<label for="field_enable_calculation" class="inline">
					<?php 
        _e('Enable Calculation', 'gravityforms');
        ?>
					<?php 
        gform_tooltip('form_field_enable_calculation');
        ?>
				</label>
			</div>

			<div id="calculation_options" style="display:none;margin-top:10px;">

				<label for="field_calculation_formula">
					<?php 
        _e('Formula', 'gravityforms');
        ?>
					<?php 
        gform_tooltip('form_field_calculation_formula');
        ?>
				</label>

				<div>
					<?php 
        GFCommon::insert_calculation_variables($form['fields'], 'field_calculation_formula', '', 'FormulaContentCallback', 40);
        ?>
					<div class="gf_calculation_buttons">
						<?php 
        foreach (array('+', '-', '/', '*', '(', ')', '.') as $button) {
            ?>
							<input type="button" value="<?php 
            echo in_array($button, array('.')) ? $button : " {$button} ";
            ?>
" onclick="InsertVariable('field_calculation_formula', 'FormulaContentCallback', this.value);" />
						<?php 
        }
        ?>
					</div>
				</div>
				<textarea id="field_calculation_formula" class="fieldwidth-3 fieldheight-2"></textarea>
				<br />
				<a href="javascript:void(0)" onclick="var field = GetSelectedField(); alert(IsValidFormula(field.calculationFormula) ? '<?php 
        _e('The formula appears to be valid.', 'gravityforms');
        ?>
' : '<?php 
        _e('There appears to be a problem with the formula.', 'gravityforms');
        ?>
');"><?php 
        _e('Validate Formula', 'gravityforms');
        ?>
</a>

				<div class="field_calculation_rounding">
					<label for="field_calculation_rounding" style="margin-top:10px;">
						<?php 
        _e('Rounding', 'gravityforms');
        ?>
						<?php 
        gform_tooltip('form_field_calculation_rounding');
        ?>
					</label>
					<select id="field_calculation_rounding" onchange="SetFieldProperty('calculationRounding', this.value);">
						<option value="0">0</option>
						<option value="1">1</option>
						<option value="2">2</option>
						<option value="3">3</option>
						<option value="4">4</option>
						<option value="norounding">Do not round</option>
					</select>
				</div>

			</div>

			<br class="clear" />

		</li>

		<?php 
        do_action('gform_field_standard_settings', 1600, $form_id);
        ?>

		<li class="rules_setting field_setting">
			<?php 
        _e('Rules', 'gravityforms');
        ?>
<br />
			<input type="checkbox" id="field_required" onclick="SetFieldRequired(this.checked);" />
			<label for="field_required" class="inline">
				<?php 
        _e('Required', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_required');
        ?>
			</label><br />

			<div class="duplicate_setting field_setting">
				<input type="checkbox" id="field_no_duplicates" onclick="SetFieldProperty('noDuplicates', this.checked);" />
				<label for="field_no_duplicates" class="inline">
					<?php 
        _e('No Duplicates', 'gravityforms');
        ?>
					<?php 
        gform_tooltip('form_field_no_duplicate');
        ?>
				</label>
			</div>
		</li>

		<?php 
        do_action('gform_field_standard_settings', -1, $form_id);
        ?>
		</ul>
		</div>
		<div id="gform_tab_3">
            <ul>
				<?php 
        do_action('gform_field_appearance_settings', 0, $form_id);
        ?>
                <li class="placeholder_setting field_setting">
                    <label for="field_placeholder">
                        <?php 
        _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" />
                </li>
				<?php 
        do_action('gform_field_appearance_settings', 20, $form_id);
        ?>
				<li class="placeholder_textarea_setting field_setting">
					<label for="field_placeholder_textarea">
						<?php 
        _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>
				</li>
				<?php 
        do_action('gform_field_appearance_settings', 50, $form_id);
        ?>

                <li class="input_placeholders_setting field_setting">
                    <label>
                        <?php 
        _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 
            _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 
            _e('Hidden', 'gravityforms');
            ?>
</option>
					</select>
					<?php 
        }
        ?>
					<div id="field_description_placement_container" style="display:none; padding-top:10px;">
						<label for="field_description_placement">
							<?php 
        _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 
        _e('Below inputs', 'gravityforms');
        ?>
</option>
							<option value="above"><?php 
        _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 
        _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 
        _e('Below inputs', 'gravityforms');
        ?>
</option>
						<option value="above"><?php 
        _e('Above inputs', 'gravityforms');
        ?>
</option>
						<?php 
        if ($enable_label_visiblity_settings) {
            ?>
						<option value="hidden_label"><?php 
            _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 
        _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 
        _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);" />
                    <label for="gfield_enable_enhanced_ui" class="inline">
                        <?php 
        _e('Enable enhanced user interface', 'gravityforms');
        ?>
                        <?php 
        gform_tooltip('form_field_enable_enhanced_ui');
        ?>
                    </label>
                </li>

				<?php 
        do_action('gform_field_appearance_settings', 400, $form_id);
        ?>

				<li class="size_setting field_setting">
					<label for="field_size">
						<?php 
        _e('Field Size', 'gravityforms');
        ?>
						<?php 
        gform_tooltip('form_field_size');
        ?>
					</label>
					<select id="field_size" onchange="SetFieldSize(jQuery(this).val());">
						<option value="small"><?php 
        _e('Small', 'gravityforms');
        ?>
</option>
						<option value="medium"><?php 
        _e('Medium', 'gravityforms');
        ?>
</option>
						<option value="large"><?php 
        _e('Large', 'gravityforms');
        ?>
</option>
					</select>
				</li>
            </ul>
        </div>

        <div id="gform_tab_2">
		<ul>
		<?php 
        do_action('gform_field_advanced_settings', 0, $form_id);
        ?>
		<li class="admin_label_setting field_setting">
			<label for="field_admin_label">
				<?php 
        _e('Admin 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 
        _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 
        _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 
        _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 
        _e('Label', 'gravityforms');
        ?>
</label><label class="gfield_choice_header_value"><?php 
        _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 
        _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 
        _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 
        _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 
        _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 
        _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 
        _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);
        ?>

		<li class="credit_card_icon_style_setting field_setting">
			<label>
				<?php 
        _e('Credit Card Icon Style', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_credit_card_icon_style');
        ?>
			</label>
			<ul>
				<?php 
        $cards = GFCommon::get_card_types();
        foreach ($cards as $card) {
            ?>
					<li>
						<input type="checkbox" id="field_credit_card_<?php 
            echo esc_attr($card['slug']);
            ?>
" value="<?php 
            echo esc_attr($card['slug']);
            ?>
" onclick="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_advanced_settings', 250, $form_id);
        ?>
		<li class="captcha_language_setting field_setting">
			<label for="field_captcha_language">
				<?php 
        _e('Language', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_recaptcha_language');
        ?>
			</label>
			<select id="field_captcha_language" onchange="SetFieldProperty('captchaLanguage', this.value);">
				<option value="en"><?php 
        _e('English', 'gravityforms');
        ?>
</option>
				<option value="nl"><?php 
        _e('Dutch', 'gravityforms');
        ?>
</option>
				<option value="fr"><?php 
        _e('French', 'gravityforms');
        ?>
</option>
				<option value="de"><?php 
        _e('German', 'gravityforms');
        ?>
</option>
				<option value="pt"><?php 
        _e('Portuguese', 'gravityforms');
        ?>
</option>
				<option value="ru"><?php 
        _e('Russian', 'gravityforms');
        ?>
</option>
				<option value="es"><?php 
        _e('Spanish', 'gravityforms');
        ?>
</option>
				<option value="tr"><?php 
        _e('Turkish', 'gravityforms');
        ?>
</option>
			</select>
		</li>
		<?php 
        do_action('gform_field_advanced_settings', 300, $form_id);
        do_action('gform_field_advanced_settings', 325, $form_id);
        ?>
		<li class="add_icon_url_setting field_setting">
			<label for="field_add_icon_url">
				<?php 
        _e('Add Icon URL', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_add_icon_url');
        ?>
			</label>
			<input type="text" id="field_add_icon_url" class="fieldwidth-2" />
		</li>
		<?php 
        do_action('gform_field_advanced_settings', 337, $form_id);
        ?>
		<li class="delete_icon_url_setting field_setting">
			<label for="field_delete_icon_url">
				<?php 
        _e('Delete Icon URL', 'gravityforms');
        ?>
				<?php 
        gform_tooltip('form_field_delete_icon_url');
        ?>
			</label>
			<input type="text" id="field_delete_icon_url" class="fieldwidth-2" />
		</li>
		<?php 
        do_action('gform_field_advanced_settings', 350, $form_id);
        ?>
		<li class="password_field_setting field_setting">
			<input type="checkbox" id="field_password" onclick="SetPasswordProperty(this.checked);" />
			<label for="field_password" class="inline"><?php 
        _e('Enable Password Input', 'gravityforms');
        gform_tooltip('form_field_password');
        ?>
</label>
		</li>

		<?php 
        do_action('gform_field_advanced_settings', 375, $form_id);
        ?>
		<li class="force_ssl_field_setting field_setting">
			<input type="checkbox" id="field_force_ssl" onclick="SetFieldProperty('forceSSL', this.checked);" />
			<label for="field_force_ssl" class="inline"><?php 
        _e('Force SSL', 'gravityforms');
        gform_tooltip('form_field_force_ssl');
        ?>
</label>
		</li>

		<?php 
        do_action('gform_field_advanced_settings', 400, $form_id);
        ?>
		<li class="visibility_setting field_setting">
			<label><?php 
        _e('Visibility', 'gravityforms');
        ?>
 <?php 
        gform_tooltip('form_field_visibility');
        ?>
</label>

			<div>
				<input type="radio" name="field_visibility" id="field_visibility_everyone" size="10" onclick="SetFieldAdminOnly(!this.checked);" />
				<label for="field_visibility_everyone" class="inline">
					<?php 
        _e('Everyone', 'gravityforms');
        ?>
				</label>
				&nbsp;&nbsp;
				<input type="radio" name="field_visibility" id="field_visibility_admin" size="10" onclick="SetFieldAdminOnly(this.checked);" />
				<label for="field_visibility_admin" class="inline">
					<?php 
        _e('Admin Only', 'gravityforms');
        ?>
				</label>
			</div>
			<br class="clear" />
		</li>
		<?php 
        do_action('gform_field_advanced_settings', 450, $form_id);
        ?>
		<li class="prepopulate_field_setting field_setting">
			<input type="checkbox" id="field_prepopulate" onclick="SetFieldProperty('allowsPrepopulate', this.checked); ToggleInputName()" />
			<label for="field_prepopulate" class="inline"><?php 
        _e('Allow field to be populated dynamically', 'gravityforms');
        ?>
 <?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');" />
			<label for="field_conditional_logic" class="inline"><?php 
        _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');" />
			<label for="page_conditional_logic" class="inline"><?php 
        _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');" />
			<label for="next_button_conditional_logic" class="inline"><?php 
        _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="if(confirm(\'' . __("Would you like to move this form to the trash? \\'Cancel\\' to stop. \\'OK\\' to continue", 'gravityforms') . '\')){ gf_vars.isFormTrash = true; jQuery(\'#form_trash\')[0].submit();} else{return false;}">' . __('Move to Trash', 'gravityforms') . '</a>';
            $trash_link = apply_filters('gform_form_delete_link', $trash_link);
            // deprecated
            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 . ');" />';
        $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 
        _e('Form updated successfully.', 'gravityforms');
        ?>
							&nbsp;<a title="<?php 
        _e('Preview this form', 'gravityforms');
        ?>
" href="<?php 
        echo trailingslashit(site_url());
        ?>
?gf_page=preview&id=<?php 
        echo absint(rgar($form, 'id'));
        ?>
" target="_blank"><?php 
        _e('Preview', 'gravityforms');
        ?>
</a></strong>
					</div>
					<div class="error_base" id="after_update_error_dialog" style="padding:10px 10px 16px 10px; display:none;">
						<?php 
        _e('There was an error while saving your form.', 'gravityforms');
        ?>
						<?php 
        printf(__('Please %scontact our support team%s.', 'gravityforms'), '<a href="http://www.gravityhelp.com">', '</a>');
        ?>
					</div>

					<!-- 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';
    }
Exemple #2
0
 public static function get_field_input($field, $value = "", $lead_id = 0, $form_id = 0)
 {
     $id = $field["id"];
     $field_id = IS_ADMIN || $form_id == 0 ? "input_{$id}" : "input_" . $form_id . "_{$id}";
     $form_id = IS_ADMIN && empty($form_id) ? rgget("id") : $form_id;
     $size = rgar($field, "size");
     $disabled_text = IS_ADMIN && RG_CURRENT_VIEW != "entry" ? "disabled='disabled'" : "";
     $class_suffix = RG_CURRENT_VIEW == "entry" ? "_admin" : "";
     $class = $size . $class_suffix;
     $currency = "";
     if (RG_CURRENT_VIEW == "entry") {
         $lead = RGFormsModel::get_lead($lead_id);
         $post_id = $lead["post_id"];
         $post_link = "";
         if (is_numeric($post_id) && self::is_post_field($field)) {
             $post_link = "You can <a href='post.php?action=edit&post={$post_id}'>edit this post</a> from the post page.";
         }
         $currency = $lead["currency"];
     }
     $field_input = apply_filters("gform_field_input", "", $field, $value, $lead_id, $form_id);
     if ($field_input) {
         return $field_input;
     }
     //product fields are not editable
     if (RG_CURRENT_VIEW == "entry" && self::is_product_field($field["type"])) {
         return "<div class='ginput_container'>" . __("Product fields are not editable", "gravityforms") . "</div>";
     } else {
         if (RG_CURRENT_VIEW == "entry" && $field["type"] == "donation") {
             return "<div class='ginput_container'>" . __("Donations are not editable", "gravityforms") . "</div>";
         }
     }
     // add categories as choices for Post Category field
     if ($field['type'] == 'post_category') {
         $field = self::add_categories_as_choices($field, $value);
     }
     $max_length = "";
     $html5_attributes = "";
     switch (RGFormsModel::get_input_type($field)) {
         case "total":
             if (RG_CURRENT_VIEW == "entry") {
                 return "<div class='ginput_container'><input type='text' name='input_{$id}' value='{$value}' /></div>";
             } else {
                 return "<div class='ginput_container'><span class='ginput_total ginput_total_{$form_id}'>" . self::to_money("0") . "</span><input type='hidden' name='input_{$id}' id='{$field_id}' class='gform_hidden'/></div>";
             }
             break;
         case "calculation":
         case "singleproduct":
             $product_name = !is_array($value) || empty($value[$field["id"] . ".1"]) ? esc_attr($field["label"]) : esc_attr($value[$field["id"] . ".1"]);
             $price = !is_array($value) || empty($value[$field["id"] . ".2"]) ? rgget("basePrice", $field) : esc_attr($value[$field["id"] . ".2"]);
             $quantity = is_array($value) ? esc_attr($value[$field["id"] . ".3"]) : "";
             if (empty($price)) {
                 $price = 0;
             }
             $form = RGFormsModel::get_form_meta($form_id);
             $has_quantity = sizeof(GFCommon::get_product_fields_by_type($form, array("quantity"), $field["id"])) > 0;
             if ($has_quantity) {
                 $field["disableQuantity"] = true;
             }
             $quantity_field = "";
             if (IS_ADMIN) {
                 $style = rgget("disableQuantity", $field) ? "style='display:none;'" : "";
                 $quantity_field = " <span class='ginput_quantity_label' {$style}>" . apply_filters("gform_product_quantity_{$form_id}", apply_filters("gform_product_quantity", __("Quantity:", "gravityforms"), $form_id), $form_id) . "</span> <input type='text' name='input_{$id}.3' value='{$quantity}' id='ginput_quantity_{$form_id}_{$field["id"]}' class='ginput_quantity' size='10' />";
             } else {
                 if (!rgget("disableQuantity", $field)) {
                     $tabindex = self::get_tabindex();
                     $quantity_field .= " <span class='ginput_quantity_label'>" . apply_filters("gform_product_quantity_{$form_id}", apply_filters("gform_product_quantity", __("Quantity:", "gravityforms"), $form_id), $form_id) . "</span> <input type='text' name='input_{$id}.3' value='{$quantity}' id='ginput_quantity_{$form_id}_{$field["id"]}' class='ginput_quantity' size='10' {$tabindex}/>";
                 } else {
                     if (!is_numeric($quantity)) {
                         $quantity = 1;
                     }
                     if (!$has_quantity) {
                         $quantity_field .= "<input type='hidden' name='input_{$id}.3' value='{$quantity}' class='ginput_quantity_{$form_id}_{$field["id"]} gform_hidden' />";
                     }
                 }
             }
             return "<div class='ginput_container'><input type='hidden' name='input_{$id}.1' value='{$product_name}' class='gform_hidden' /><span class='ginput_product_price_label'>" . apply_filters("gform_product_price_{$form_id}", apply_filters("gform_product_price", __("Price", "gravityforms"), $form_id), $form_id) . ":</span> <span class='ginput_product_price' id='{$field_id}'>" . esc_html(GFCommon::to_money($price, $currency)) . "</span><input type='hidden' name='input_{$id}.2' id='ginput_base_price_{$form_id}_{$field["id"]}' class='gform_hidden' value='" . esc_attr($price) . "'/>{$quantity_field}</div>";
             break;
         case "hiddenproduct":
             $form = RGFormsModel::get_form_meta($form_id);
             $has_quantity_field = sizeof(GFCommon::get_product_fields_by_type($form, array("quantity"), $field["id"])) > 0;
             $product_name = !is_array($value) || empty($value[$field["id"] . ".1"]) ? esc_attr($field["label"]) : esc_attr($value[$field["id"] . ".1"]);
             $quantity = is_array($value) ? esc_attr($value[$field["id"] . ".3"]) : "1";
             $price = !is_array($value) || empty($value[$field["id"] . ".2"]) ? rgget("basePrice", $field) : esc_attr($value[$field["id"] . ".2"]);
             if (empty($price)) {
                 $price = 0;
             }
             $quantity_field = $has_quantity_field ? "" : "<input type='hidden' name='input_{$id}.3' value='" . esc_attr($quantity) . "' id='ginput_quantity_{$form_id}_{$field["id"]}' class='gform_hidden' />";
             $product_name_field = "<input type='hidden' name='input_{$id}.1' value='{$product_name}' class='gform_hidden' />";
             $field_type = IS_ADMIN ? "text" : "hidden";
             return $quantity_field . $product_name_field . sprintf("<input name='input_%d.2' id='ginput_base_price_{$form_id}_{$field["id"]}' type='{$field_type}' value='%s' class='gform_hidden ginput_amount' %s/>", $id, esc_attr($price), $disabled_text);
             break;
         case "singleshipping":
             $price = !empty($value) ? $value : rgget("basePrice", $field);
             if (empty($price)) {
                 $price = 0;
             }
             return "<div class='ginput_container'><input type='hidden' name='input_{$id}' value='{$price}' class='gform_hidden'/><span class='ginput_shipping_price' id='{$field_id}'>" . GFCommon::to_money($price, $currency) . "</span></div>";
             break;
         case "website":
             $is_html5 = RGFormsModel::is_html5_enabled();
             $value = empty($value) && !$is_html5 ? "http://" : $value;
             $html_input_type = $is_html5 ? "url" : "text";
             $html5_attributes = $is_html5 ? "placeholder='http://'" : "";
         case "text":
             if (empty($html_input_type)) {
                 $html_input_type = "text";
             }
             if (rgget("enablePasswordInput", $field) && RG_CURRENT_VIEW != "entry") {
                 $html_input_type = "password";
             }
             if (is_numeric(rgget("maxLength", $field))) {
                 $max_length = "maxlength='{$field["maxLength"]}'";
             }
             if (!empty($post_link)) {
                 return $post_link;
             }
             $logic_event = self::get_logic_event($field, "keyup");
             $tabindex = self::get_tabindex();
             return sprintf("<div class='ginput_container'><input name='input_%d' id='%s' type='%s' value='%s' class='%s' {$max_length} {$tabindex} {$logic_event} {$html5_attributes} %s/></div>", $id, $field_id, $html_input_type, esc_attr($value), esc_attr($class), $disabled_text);
             break;
         case "email":
             if (!empty($post_link)) {
                 return $post_link;
             }
             $html_input_type = RGFormsModel::is_html5_enabled() ? "email" : "text";
             if (IS_ADMIN && RG_CURRENT_VIEW != "entry") {
                 $single_style = rgget("emailConfirmEnabled", $field) ? "style='display:none;'" : "";
                 $confirm_style = rgget("emailConfirmEnabled", $field) ? "" : "style='display:none;'";
                 return "<div class='ginput_container ginput_single_email' {$single_style}><input name='input_{$id}' type='{$html_input_type}' class='" . esc_attr($class) . "' disabled='disabled' /></div><div class='ginput_complex ginput_container ginput_confirm_email' {$confirm_style} id='{$field_id}_container'><span id='{$field_id}_1_container' class='ginput_left'><input type='text' name='input_{$id}' id='{$field_id}' disabled='disabled' /><label for='{$field_id}'>" . apply_filters("gform_email_{$form_id}", apply_filters("gform_email", __("Enter Email", "gravityforms"), $form_id), $form_id) . "</label></span><span id='{$field_id}_2_container' class='ginput_right'><input type='text' name='input_{$id}_2' id='{$field_id}_2' disabled='disabled' /><label for='{$field_id}_2'>" . apply_filters("gform_email_confirm_{$form_id}", apply_filters("gform_email_confirm", __("Confirm Email", "gravityforms"), $form_id), $form_id) . "</label></span></div>";
             } else {
                 $logic_event = self::get_logic_event($field, "keyup");
                 if (rgget("emailConfirmEnabled", $field) && RG_CURRENT_VIEW != "entry") {
                     $first_tabindex = self::get_tabindex();
                     $last_tabindex = self::get_tabindex();
                     return "<div class='ginput_complex ginput_container' id='{$field_id}_container'><span id='{$field_id}_1_container' class='ginput_left'><input type='{$html_input_type}' name='input_{$id}' id='{$field_id}' value='" . esc_attr($value) . "' {$first_tabindex} {$logic_event} {$disabled_text}/><label for='{$field_id}'>" . apply_filters("gform_email_{$form_id}", apply_filters("gform_email", __("Enter Email", "gravityforms"), $form_id), $form_id) . "</label></span><span id='{$field_id}_2_container' class='ginput_right'><input type='{$html_input_type}' name='input_{$id}_2' id='{$field_id}_2' value='" . esc_attr(rgpost("input_" . $id . "_2")) . "' {$last_tabindex} {$disabled_text}/><label for='{$field_id}_2'>" . apply_filters("gform_email_confirm_{$form_id}", apply_filters("gform_email_confirm", __("Confirm Email", "gravityforms"), $form_id), $form_id) . "</label></span></div>";
                 } else {
                     $tabindex = self::get_tabindex();
                     return sprintf("<div class='ginput_container'><input name='input_%d' id='%s' type='%s' value='%s' class='%s' {$max_length} {$tabindex} {$html5_attributes} {$logic_event} %s/></div>", $id, $field_id, $html_input_type, esc_attr($value), esc_attr($class), $disabled_text);
                 }
             }
             break;
         case "honeypot":
             $autocomplete = RGFormsModel::is_html5_enabled() ? "autocomplete='off'" : "";
             return "<div class='ginput_container'><input name='input_{$id}' id='{$field_id}' type='text' value='' {$autocomplete}/></div>";
             break;
         case "hidden":
             if (!empty($post_link)) {
                 return $post_link;
             }
             $field_type = IS_ADMIN ? "text" : "hidden";
             $class_attribute = IS_ADMIN ? "" : "class='gform_hidden'";
             return sprintf("<input name='input_%d' id='%s' type='{$field_type}' {$class_attribute} value='%s' %s/>", $id, $field_id, esc_attr($value), $disabled_text);
             break;
         case "html":
             $content = IS_ADMIN ? "<img class='gfield_html_block' src='" . self::get_base_url() . "/images/gf_html_admin_placeholder.jpg' alt='HTML Block'/>" : $field["content"];
             $content = GFCommon::replace_variables_prepopulate($content);
             //adding support for merge tags
             $content = do_shortcode($content);
             //adding support for shortcodes
             return $content;
             break;
         case "adminonly_hidden":
             if (!is_array($field["inputs"])) {
                 return sprintf("<input name='input_%d' id='%s' class='gform_hidden' type='hidden' value='%s'/>", $id, $field_id, esc_attr($value));
             }
             $fields = "";
             foreach ($field["inputs"] as $input) {
                 $fields .= sprintf("<input name='input_%s' class='gform_hidden' type='hidden' value='%s'/>", $input["id"], esc_attr(rgar($value, $input["id"])));
             }
             return $fields;
             break;
         case "number":
             if (!empty($post_link)) {
                 return $post_link;
             }
             $instruction = "";
             $read_only = "";
             if (!IS_ADMIN) {
                 if (GFCommon::has_field_calculation($field)) {
                     // calculation-enabled fields should be read only
                     $read_only = 'readonly="readonly"';
                 } else {
                     $message = self::get_range_message($field);
                     $validation_class = $field["failed_validation"] ? "validation_message" : "";
                     if (!$field["failed_validation"] && !empty($message) && empty($field["errorMessage"])) {
                         $instruction = "<div class='instruction {$validation_class}'>" . $message . "</div>";
                     }
                 }
             }
             $is_html5 = RGFormsModel::is_html5_enabled();
             $html_input_type = $is_html5 && !GFCommon::has_field_calculation($field) ? "number" : "text";
             // chrome does not allow number fields to have commas, calculations display numbers with commas
             $step_attr = $is_html5 ? "step='any'" : "";
             $logic_event = self::get_logic_event($field, "keyup");
             $tabindex = self::get_tabindex();
             return sprintf("<div class='ginput_container'><input name='input_%d' id='%s' type='{$html_input_type}' {$step_attr} value='%s' class='%s' {$tabindex} {$logic_event} {$read_only} %s/>%s</div>", $id, $field_id, esc_attr($value), esc_attr($class), $disabled_text, $instruction);
         case "donation":
             $tabindex = self::get_tabindex();
             return sprintf("<div class='ginput_container'><input name='input_%d' id='%s' type='text' value='%s' class='%s ginput_donation_amount' {$tabindex} %s/></div>", $id, $field_id, esc_attr($value), esc_attr($class), $disabled_text);
         case "price":
             $logic_event = self::get_logic_event($field, "keyup");
             $tabindex = self::get_tabindex();
             return sprintf("<div class='ginput_container'><input name='input_%d' id='%s' type='text' value='%s' class='%s ginput_amount' {$tabindex} {$logic_event} %s/></div>", $id, $field_id, esc_attr($value), esc_attr($class), $disabled_text);
         case "phone":
             if (!empty($post_link)) {
                 return $post_link;
             }
             $instruction = $field["phoneFormat"] == "standard" ? __("Phone format:", "gravityforms") . " (###)###-####" : "";
             $instruction_div = rgget("failed_validation", $field) ? "<div class='instruction validation_message'>{$instruction}</div>" : "";
             $html_input_type = RGFormsModel::is_html5_enabled() ? "tel" : "text";
             $logic_event = self::get_logic_event($field, "keyup");
             $tabindex = self::get_tabindex();
             return sprintf("<div class='ginput_container'><input name='input_%d' id='%s' type='{$html_input_type}' value='%s' class='%s' {$tabindex} {$logic_event} %s/>{$instruction_div}</div>", $id, $field_id, esc_attr($value), esc_attr($class), $disabled_text);
         case "textarea":
             $max_chars = "";
             $logic_event = self::get_logic_event($field, "keyup");
             $tabindex = self::get_tabindex();
             return sprintf("<div class='ginput_container'><textarea name='input_%d' id='%s' class='textarea %s' {$tabindex} {$logic_event} %s rows='10' cols='50'>%s</textarea></div>{$max_chars}", $id, $field_id, esc_attr($class), $disabled_text, esc_html($value));
         case "post_title":
         case "post_tags":
         case "post_custom_field":
             $tabindex = self::get_tabindex();
             $logic_event = self::get_logic_event($field, "keyup");
             return !empty($post_link) ? $post_link : sprintf("<div class='ginput_container'><input name='input_%d' id='%s' type='text' value='%s' class='%s' {$tabindex} {$logic_event} %s/></div>", $id, $field_id, esc_attr($value), esc_attr($class), $disabled_text);
             break;
         case "post_content":
         case "post_excerpt":
             $max_chars = "";
             $logic_event = self::get_logic_event($field, "keyup");
             $tabindex = self::get_tabindex();
             return !empty($post_link) ? $post_link : sprintf("<div class='ginput_container'><textarea name='input_%d' id='%s' class='textarea %s' {$tabindex} {$logic_event} %s rows='10' cols='50'>%s</textarea></div>{$max_chars}", $id, $field_id, esc_attr($class), $disabled_text, esc_html($value));
             break;
         case "post_category":
             if (!empty($post_link)) {
                 return $post_link;
             }
             if (rgget("displayAllCategories", $field) && !IS_ADMIN) {
                 $default_category = rgget("categoryInitialItemEnabled", $field) ? "-1" : get_option('default_category');
                 $selected = empty($value) ? $default_category : $value;
                 $args = array('echo' => 0, 'selected' => $selected, "class" => esc_attr($class) . " gfield_select", 'hide_empty' => 0, 'name' => "input_{$id}", 'orderby' => 'name', 'hierarchical' => true);
                 if (self::$tab_index > 0) {
                     $args["tab_index"] = self::$tab_index++;
                 }
                 if (rgget("categoryInitialItemEnabled", $field)) {
                     $args["show_option_none"] = empty($field["categoryInitialItem"]) ? " " : $field["categoryInitialItem"];
                 }
                 return "<div class='ginput_container'>" . wp_dropdown_categories($args) . "</div>";
             } else {
                 $tabindex = self::get_tabindex();
                 if (is_array(rgar($field, "choices"))) {
                     usort($field["choices"], create_function('$a,$b', 'return strcmp($a["text"], $b["text"]);'));
                 }
                 $choices = self::get_select_choices($field, $value);
                 //Adding first option
                 if (rgget("categoryInitialItemEnabled", $field)) {
                     $selected = empty($value) ? "selected='selected'" : "";
                     $choices = "<option value='-1' {$selected}>{$field["categoryInitialItem"]}</option>" . $choices;
                 }
                 return sprintf("<div class='ginput_container'><select name='input_%d' id='%s' class='%s gfield_select' {$tabindex} %s>%s</select></div>", $id, $field_id, esc_attr($class), $disabled_text, $choices);
             }
             break;
         case "post_image":
             if (!empty($post_link)) {
                 return $post_link;
             }
             $title = esc_attr(rgget($field["id"] . ".1", $value));
             $caption = esc_attr(rgget($field["id"] . ".4", $value));
             $description = esc_attr(rgget($field["id"] . ".7", $value));
             //hidding meta fields for admin
             $hidden_style = "style='display:none;'";
             $title_style = !rgget("displayTitle", $field) && IS_ADMIN ? $hidden_style : "";
             $caption_style = !rgget("displayCaption", $field) && IS_ADMIN ? $hidden_style : "";
             $description_style = !rgget("displayDescription", $field) && IS_ADMIN ? $hidden_style : "";
             $file_label_style = IS_ADMIN && !(rgget("displayTitle", $field) || rgget("displayCaption", $field) || rgget("displayDescription", $field)) ? $hidden_style : "";
             $hidden_class = $preview = "";
             $file_info = RGFormsModel::get_temp_filename($form_id, "input_{$id}");
             if ($file_info) {
                 $hidden_class = " gform_hidden";
                 $file_label_style = $hidden_style;
                 $preview = "<span class='ginput_preview'><strong>" . esc_html($file_info["uploaded_filename"]) . "</strong> | <a href='javascript:;' onclick='gformDeleteUploadedFile({$form_id}, {$id});'>" . __("delete", "gravityforms") . "</a></span>";
             }
             //in admin, render all meta fields to allow for immediate feedback, but hide the ones not selected
             $file_label = IS_ADMIN || rgget("displayTitle", $field) || rgget("displayCaption", $field) || rgget("displayDescription", $field) ? "<label for='{$field_id}' class='ginput_post_image_file' {$file_label_style}>" . apply_filters("gform_postimage_file_{$form_id}", apply_filters("gform_postimage_file", __("File", "gravityforms"), $form_id), $form_id) . "</label>" : "";
             $tabindex = self::get_tabindex();
             $upload = sprintf("<span class='ginput_full{$class_suffix}'>{$preview}<input name='input_%d' id='%s' type='file' value='%s' class='%s' {$tabindex} %s/>{$file_label}</span>", $id, $field_id, esc_attr($value), esc_attr($class . $hidden_class), $disabled_text);
             $tabindex = self::get_tabindex();
             $title_field = rgget("displayTitle", $field) || IS_ADMIN ? sprintf("<span class='ginput_full{$class_suffix} ginput_post_image_title' {$title_style}><input type='text' name='input_%d.1' id='%s_1' value='%s' {$tabindex} %s/><label for='%s_1'>" . apply_filters("gform_postimage_title_{$form_id}", apply_filters("gform_postimage_title", __("Title", "gravityforms"), $form_id), $form_id) . "</label></span>", $id, $field_id, $title, $disabled_text, $field_id) : "";
             $tabindex = self::get_tabindex();
             $caption_field = rgget("displayCaption", $field) || IS_ADMIN ? sprintf("<span class='ginput_full{$class_suffix} ginput_post_image_caption' {$caption_style}><input type='text' name='input_%d.4' id='%s_4' value='%s' {$tabindex} %s/><label for='%s_4'>" . apply_filters("gform_postimage_caption_{$form_id}", apply_filters("gform_postimage_caption", __("Caption", "gravityforms"), $form_id), $form_id) . "</label></span>", $id, $field_id, $caption, $disabled_text, $field_id) : "";
             $tabindex = self::get_tabindex();
             $description_field = rgget("displayDescription", $field) || IS_ADMIN ? sprintf("<span class='ginput_full{$class_suffix} ginput_post_image_description' {$description_style}><input type='text' name='input_%d.7' id='%s_7' value='%s' {$tabindex} %s/><label for='%s_7'>" . apply_filters("gform_postimage_description_{$form_id}", apply_filters("gform_postimage_description", __("Description", "gravityforms"), $form_id), $form_id) . "</label></span>", $id, $field_id, $description, $disabled_text, $field_id) : "";
             return "<div class='ginput_complex{$class_suffix} ginput_container'>" . $upload . $title_field . $caption_field . $description_field . "</div>";
             break;
         case "multiselect":
             if (!empty($post_link)) {
                 return $post_link;
             }
             $placeholder = rgar($field, "enableEnhancedUI") ? "data-placeholder='" . esc_attr(apply_filters("gform_multiselect_placeholder_{$form_id}", apply_filters("gform_multiselect_placeholder", __("Click to select...", "gravityforms"), $form_id), $form_id)) . "'" : "";
             $logic_event = self::get_logic_event($field, "keyup");
             $css_class = trim(esc_attr($class) . " gfield_select");
             $size = rgar($field, "multiSelectSize");
             if (empty($size)) {
                 $size = 7;
             }
             $tabindex = self::get_tabindex();
             return sprintf("<div class='ginput_container'><select multiple='multiple' {$placeholder} size='{$size}' name='input_%d[]' id='%s' {$logic_event} class='%s' {$tabindex} %s>%s</select></div>", $id, $field_id, $css_class, $disabled_text, self::get_select_choices($field, $value));
             break;
         case "select":
             if (!empty($post_link)) {
                 return $post_link;
             }
             $logic_event = self::get_logic_event($field, "change");
             $css_class = trim(esc_attr($class) . " gfield_select");
             $tabindex = self::get_tabindex();
             return sprintf("<div class='ginput_container'><select name='input_%d' id='%s' {$logic_event} class='%s' {$tabindex} %s>%s</select></div>", $id, $field_id, $css_class, $disabled_text, self::get_select_choices($field, $value));
         case "checkbox":
             if (!empty($post_link)) {
                 return $post_link;
             }
             return sprintf("<div class='ginput_container'><ul class='gfield_checkbox' id='%s'>%s</ul></div>", $field_id, self::get_checkbox_choices($field, $value, $disabled_text));
         case "radio":
             if (!empty($post_link)) {
                 return $post_link;
             }
             return sprintf("<div class='ginput_container'><ul class='gfield_radio' id='%s'>%s</ul></div>", $field_id, self::get_radio_choices($field, $value, $disabled_text));
         case "password":
             $first_tabindex = self::get_tabindex();
             $last_tabindex = self::get_tabindex();
             $strength_style = !rgar($field, "passwordStrengthEnabled") ? "style='display:none;'" : "";
             $strength = rgar($field, "passwordStrengthEnabled") || IS_ADMIN ? "<div id='{$field_id}_strength_indicator' class='gfield_password_strength' {$strength_style}>" . __("Strength indicator", "gravityforms") . "</div><input type='hidden' class='gform_hidden' id='{$field_id}_strength' name='input_{$id}_strength' />" : "";
             $action = !IS_ADMIN ? "gformShowPasswordStrength(\"{$field_id}\");" : "";
             $onchange = rgar($field, "passwordStrengthEnabled") ? "onchange='{$action}'" : "";
             $onkeyup = rgar($field, "passwordStrengthEnabled") ? "onkeyup='{$action}'" : "";
             $pass = RGForms::post("input_" . $id . "_2");
             return sprintf("<div class='ginput_complex{$class_suffix} ginput_container' id='{$field_id}_container'><span id='" . $field_id . "_1_container' class='ginput_left'><input type='password' name='input_%d' id='%s' {$onkeyup} {$onchange} value='%s' {$first_tabindex} %s/><label for='%s'>" . apply_filters("gform_password_{$form_id}", apply_filters("gform_password", __("Enter Password", "gravityforms"), $form_id), $form_id) . "</label></span><span id='" . $field_id . "_2_container' class='ginput_right'><input type='password' name='input_%d_2' id='%s_2' {$onkeyup} {$onchange} value='%s' {$last_tabindex} %s/><label for='%s_2'>" . apply_filters("gform_password_confirm_{$form_id}", apply_filters("gform_password_confirm", __("Confirm Password", "gravityforms"), $form_id), $form_id) . "</label></span></div>{$strength}", $id, $field_id, esc_attr($value), $disabled_text, $field_id, $id, $field_id, esc_attr($pass), $disabled_text, $field_id);
         case "name":
             $prefix = "";
             $first = "";
             $last = "";
             $suffix = "";
             if (is_array($value)) {
                 $prefix = esc_attr(RGForms::get($field["id"] . ".2", $value));
                 $first = esc_attr(RGForms::get($field["id"] . ".3", $value));
                 $last = esc_attr(RGForms::get($field["id"] . ".6", $value));
                 $suffix = esc_attr(RGForms::get($field["id"] . ".8", $value));
             }
             switch (rgget("nameFormat", $field)) {
                 case "extended":
                     $prefix_tabindex = self::get_tabindex();
                     $first_tabindex = self::get_tabindex();
                     $last_tabindex = self::get_tabindex();
                     $suffix_tabindex = self::get_tabindex();
                     return sprintf("<div class='ginput_complex{$class_suffix} ginput_container' id='{$field_id}'><span id='" . $field_id . "_2_container' class='name_prefix'><input type='text' name='input_%d.2' id='%s_2' value='%s' {$prefix_tabindex} %s/><label for='%s_2'>" . apply_filters("gform_name_prefix_{$form_id}", apply_filters("gform_name_prefix", __("Prefix", "gravityforms"), $form_id), $form_id) . "</label></span><span id='" . $field_id . "_3_container' class='name_first'><input type='text' name='input_%d.3' id='%s_3' value='%s' {$first_tabindex} %s/><label for='%s_3'>" . apply_filters("gform_name_first_{$form_id}", apply_filters("gform_name_first", __("First", "gravityforms"), $form_id), $form_id) . "</label></span><span id='" . $field_id . "_6_container' class='name_last'><input type='text' name='input_%d.6' id='%s_6' value='%s' {$last_tabindex} %s/><label for='%s_6'>" . apply_filters("gform_name_last_{$form_id}", apply_filters("gform_name_last", __("Last", "gravityforms"), $form_id), $form_id) . "</label></span><span id='" . $field_id . "_8_container' class='name_suffix'><input type='text' name='input_%d.8' id='%s_8' value='%s' {$suffix_tabindex} %s/><label for='%s_8'>" . apply_filters("gform_name_suffix_{$form_id}", apply_filters("gform_name_suffix", __("Suffix", "gravityforms"), $form_id), $form_id) . "</label></span></div>", $id, $field_id, $prefix, $disabled_text, $field_id, $id, $field_id, $first, $disabled_text, $field_id, $id, $field_id, $last, $disabled_text, $field_id, $id, $field_id, $suffix, $disabled_text, $field_id);
                 case "simple":
                     $tabindex = self::get_tabindex();
                     return sprintf("<div class='ginput_container'><input name='input_%d' id='%s' type='text' value='%s' class='%s' {$tabindex} %s/></div>", $id, $field_id, esc_attr($value), esc_attr($class), $disabled_text);
                 default:
                     $first_tabindex = self::get_tabindex();
                     $last_tabindex = self::get_tabindex();
                     return sprintf("<div class='ginput_complex{$class_suffix} ginput_container' id='{$field_id}'><span id='" . $field_id . "_3_container' class='ginput_left'><input type='text' name='input_%d.3' id='%s_3' value='%s' {$first_tabindex} %s/><label for='%s_3'>" . apply_filters("gform_name_first_{$form_id}", apply_filters("gform_name_first", __("First", "gravityforms"), $form_id), $form_id) . "</label></span><span id='" . $field_id . "_6_container' class='ginput_right'><input type='text' name='input_%d.6' id='%s_6' value='%s' {$last_tabindex} %s/><label for='%s_6'>" . apply_filters("gform_name_last_{$form_id}", apply_filters("gform_name_last", __("Last", "gravityforms"), $form_id), $form_id) . "</label></span></div>", $id, $field_id, $first, $disabled_text, $field_id, $id, $field_id, $last, $disabled_text, $field_id);
             }
         case "address":
             $street_value = "";
             $street2_value = "";
             $city_value = "";
             $state_value = "";
             $zip_value = "";
             $country_value = "";
             if (is_array($value)) {
                 $street_value = esc_attr(rgget($field["id"] . ".1", $value));
                 $street2_value = esc_attr(rgget($field["id"] . ".2", $value));
                 $city_value = esc_attr(rgget($field["id"] . ".3", $value));
                 $state_value = esc_attr(rgget($field["id"] . ".4", $value));
                 $zip_value = esc_attr(rgget($field["id"] . ".5", $value));
                 $country_value = esc_attr(rgget($field["id"] . ".6", $value));
             }
             $address_types = self::get_address_types($form_id);
             $addr_type = empty($field["addressType"]) ? "international" : $field["addressType"];
             $address_type = $address_types[$addr_type];
             $state_label = empty($address_type["state_label"]) ? __("State", "gravityforms") : $address_type["state_label"];
             $zip_label = empty($address_type["zip_label"]) ? __("Zip Code", "gravityforms") : $address_type["zip_label"];
             $hide_country = !empty($address_type["country"]) || rgget("hideCountry", $field);
             if (empty($country_value)) {
                 $country_value = rgget("defaultCountry", $field);
             }
             if (empty($state_value)) {
                 $state_value = rgget("defaultState", $field);
             }
             $country_list = self::get_country_dropdown($country_value);
             //changing css classes based on field format to ensure proper display
             $address_display_format = apply_filters("gform_address_display_format", "default");
             $city_location = $address_display_format == "zip_before_city" ? "right" : "left";
             $zip_location = $address_display_format != "zip_before_city" && rgar($field, "hideState") ? "right" : "left";
             $state_location = $address_display_format == "zip_before_city" ? "left" : "right";
             $country_location = rgar($field, "hideState") ? "left" : "right";
             //address field
             $tabindex = self::get_tabindex();
             $street_address = sprintf("<span class='ginput_full{$class_suffix}' id='" . $field_id . "_1_container'><input type='text' name='input_%d.1' id='%s_1' value='%s' {$tabindex} %s/><label for='%s_1' id='" . $field_id . "_1_label'>" . apply_filters("gform_address_street_{$form_id}", apply_filters("gform_address_street", __("Street Address", "gravityforms"), $form_id), $form_id) . "</label></span>", $id, $field_id, $street_value, $disabled_text, $field_id);
             //address line 2 field
             $street_address2 = "";
             $style = IS_ADMIN && rgget("hideAddress2", $field) ? "style='display:none;'" : "";
             if (IS_ADMIN || !rgget("hideAddress2", $field)) {
                 $tabindex = self::get_tabindex();
                 $street_address2 = sprintf("<span class='ginput_full{$class_suffix}' id='" . $field_id . "_2_container' {$style}><input type='text' name='input_%d.2' id='%s_2' value='%s' {$tabindex} %s/><label for='%s_2' id='" . $field_id . "_2_label'>" . apply_filters("gform_address_street2_{$form_id}", apply_filters("gform_address_street2", __("Address Line 2", "gravityforms"), $form_id), $form_id) . "</label></span>", $id, $field_id, $street2_value, $disabled_text, $field_id);
             }
             if ($address_display_format == "zip_before_city") {
                 //zip field
                 $tabindex = self::get_tabindex();
                 $zip = sprintf("<span class='ginput_{$zip_location}{$class_suffix}' id='" . $field_id . "_5_container'><input type='text' name='input_%d.5' id='%s_5' value='%s' {$tabindex} %s/><label for='%s_5' id='" . $field_id . "_5_label'>" . apply_filters("gform_address_zip_{$form_id}", apply_filters("gform_address_zip", $zip_label, $form_id), $form_id) . "</label></span>", $id, $field_id, $zip_value, $disabled_text, $field_id);
                 //city field
                 $tabindex = self::get_tabindex();
                 $city = sprintf("<span class='ginput_{$city_location}{$class_suffix}' id='" . $field_id . "_3_container'><input type='text' name='input_%d.3' id='%s_3' value='%s' {$tabindex} %s/><label for='%s_3' id='{$field_id}.3_label'>" . apply_filters("gform_address_city_{$form_id}", apply_filters("gform_address_city", __("City", "gravityforms"), $form_id), $form_id) . "</label></span>", $id, $field_id, $city_value, $disabled_text, $field_id);
                 //state field
                 $style = IS_ADMIN && rgget("hideState", $field) ? "style='display:none;'" : "";
                 if (IS_ADMIN || !rgget("hideState", $field)) {
                     $state_field = self::get_state_field($field, $id, $field_id, $state_value, $disabled_text, $form_id);
                     $state = sprintf("<span class='ginput_{$state_location}{$class_suffix}' id='" . $field_id . "_4_container' {$style}>{$state_field}<label for='%s_4' id='" . $field_id . "_4_label'>" . apply_filters("gform_address_state_{$form_id}", apply_filters("gform_address_state", $state_label, $form_id), $form_id) . "</label></span>", $field_id);
                 } else {
                     $state = sprintf("<input type='hidden' class='gform_hidden' name='input_%d.4' id='%s_4' value='%s'/>", $id, $field_id, $state_value);
                 }
             } else {
                 //city field
                 $tabindex = self::get_tabindex();
                 $city = sprintf("<span class='ginput_{$city_location}{$class_suffix}' id='" . $field_id . "_3_container'><input type='text' name='input_%d.3' id='%s_3' value='%s' {$tabindex} %s/><label for='%s_3' id='{$field_id}.3_label'>" . apply_filters("gform_address_city_{$form_id}", apply_filters("gform_address_city", __("City", "gravityforms"), $form_id), $form_id) . "</label></span>", $id, $field_id, $city_value, $disabled_text, $field_id);
                 //state field
                 $style = IS_ADMIN && rgget("hideState", $field) ? "style='display:none;'" : "";
                 if (IS_ADMIN || !rgget("hideState", $field)) {
                     $state_field = self::get_state_field($field, $id, $field_id, $state_value, $disabled_text, $form_id);
                     $state = sprintf("<span class='ginput_{$state_location}{$class_suffix}' id='" . $field_id . "_4_container' {$style}>{$state_field}<label for='%s_4' id='" . $field_id . "_4_label'>" . apply_filters("gform_address_state_{$form_id}", apply_filters("gform_address_state", $state_label, $form_id), $form_id) . "</label></span>", $field_id);
                 } else {
                     $state = sprintf("<input type='hidden' class='gform_hidden' name='input_%d.4' id='%s_4' value='%s'/>", $id, $field_id, $state_value);
                 }
                 //zip field
                 $tabindex = self::get_tabindex();
                 $zip = sprintf("<span class='ginput_{$zip_location}{$class_suffix}' id='" . $field_id . "_5_container'><input type='text' name='input_%d.5' id='%s_5' value='%s' {$tabindex} %s/><label for='%s_5' id='" . $field_id . "_5_label'>" . apply_filters("gform_address_zip_{$form_id}", apply_filters("gform_address_zip", $zip_label, $form_id), $form_id) . "</label></span>", $id, $field_id, $zip_value, $disabled_text, $field_id);
             }
             if (IS_ADMIN || !$hide_country) {
                 $style = $hide_country ? "style='display:none;'" : "";
                 $tabindex = self::get_tabindex();
                 $country = sprintf("<span class='ginput_{$country_location}{$class_suffix}' id='" . $field_id . "_6_container' {$style}><select name='input_%d.6' id='%s_6' {$tabindex} %s>%s</select><label for='%s_6' id='" . $field_id . "_6_label'>" . apply_filters("gform_address_country_{$form_id}", apply_filters("gform_address_country", __("Country", "gravityforms"), $form_id), $form_id) . "</label></span>", $id, $field_id, $disabled_text, $country_list, $field_id);
             } else {
                 $country = sprintf("<input type='hidden' class='gform_hidden' name='input_%d.6' id='%s_6' value='%s'/>", $id, $field_id, $country_value);
             }
             $inputs = $address_display_format == "zip_before_city" ? $street_address . $street_address2 . $zip . $city . $state . $country : $street_address . $street_address2 . $city . $state . $zip . $country;
             return "<div class='ginput_complex{$class_suffix} ginput_container' id='{$field_id}'>" . $inputs . "</div>";
         case "date":
             if (!empty($post_link)) {
                 return $post_link;
             }
             $format = empty($field["dateFormat"]) ? "mdy" : esc_attr($field["dateFormat"]);
             $field_position = substr($format, 0, 3);
             if (IS_ADMIN && RG_CURRENT_VIEW != "entry") {
                 $datepicker_display = in_array(rgget("dateType", $field), array("datefield", "datedropdown")) ? "none" : "inline";
                 $datefield_display = rgget("dateType", $field) == "datefield" ? "inline" : "none";
                 $dropdown_display = rgget("dateType", $field) == "datedropdown" ? "inline" : "none";
                 $icon_display = rgget("calendarIconType", $field) == "calendar" ? "inline" : "none";
                 $month_field = "<div class='gfield_date_month ginput_date' id='gfield_input_date_month' style='display:{$datefield_display}'><input name='ginput_month' type='text' disabled='disabled'/><label>" . __("MM", "gravityforms") . "</label></div>";
                 $day_field = "<div class='gfield_date_day ginput_date' id='gfield_input_date_day' style='display:{$datefield_display}'><input name='ginput_day' type='text' disabled='disabled'/><label>" . __("DD", "gravityforms") . "</label></div>";
                 $year_field = "<div class='gfield_date_year ginput_date' id='gfield_input_date_year' style='display:{$datefield_display}'><input type='text' name='ginput_year' disabled='disabled'/><label>" . __("YYYY", "gravityforms") . "</label></div>";
                 $month_dropdown = "<div class='gfield_date_dropdown_month ginput_date_dropdown' id='gfield_dropdown_date_month' style='display:{$dropdown_display}'>" . self::get_month_dropdown("", "", "", "", "disabled='disabled'") . "</div>";
                 $day_dropdown = "<div class='gfield_date_dropdown_day ginput_date_dropdown' id='gfield_dropdown_date_day' style='display:{$dropdown_display}'>" . self::get_day_dropdown("", "", "", "", "disabled='disabled'") . "</div>";
                 $year_dropdown = "<div class='gfield_date_dropdown_year ginput_date_dropdown' id='gfield_dropdown_date_year' style='display:{$dropdown_display}'>" . self::get_year_dropdown("", "", "", "", "disabled='disabled'") . "</div>";
                 $field_string = "<div class='ginput_container' id='gfield_input_datepicker' style='display:{$datepicker_display}'><input name='ginput_datepicker' type='text' /><img src='" . GFCommon::get_base_url() . "/images/calendar.png' id='gfield_input_datepicker_icon' style='display:{$icon_display}'/></div>";
                 switch ($field_position) {
                     case "dmy":
                         $field_string .= $day_field . $month_field . $year_field . $day_dropdown . $month_dropdown . $year_dropdown;
                         break;
                     case "ymd":
                         $field_string .= $year_field . $month_field . $day_field . $year_dropdown . $month_dropdown . $day_dropdown;
                         break;
                     default:
                         $field_string .= $month_field . $day_field . $year_field . $month_dropdown . $day_dropdown . $year_dropdown;
                         break;
                 }
                 return $field_string;
             } else {
                 $date_info = self::parse_date($value, $format);
                 $date_type = rgget("dateType", $field);
                 if (in_array($date_type, array("datefield", "datedropdown"))) {
                     switch ($field_position) {
                         case "dmy":
                             $tabindex = self::get_tabindex();
                             $field_str = $date_type == "datedropdown" ? "<div class='clear-multi'><div class='gfield_date_dropdown_day ginput_container' id='{$field_id}'>" . self::get_day_dropdown("input_{$id}[]", "{$field_id}_1", rgar($date_info, "day"), $tabindex, $disabled_text) . "</div>" : sprintf("<div class='clear-multi'><div class='gfield_date_day ginput_container' id='%s'><input type='text' maxlength='2' name='input_%d[]' id='%s_2' value='%s' {$tabindex} %s/><label for='%s_2'>" . __("DD", "gravityforms") . "</label></div>", $field_id, $id, $field_id, rgget("day", $date_info), $disabled_text, $field_id);
                             $tabindex = self::get_tabindex();
                             $field_str .= $date_type == "datedropdown" ? "<div class='gfield_date_dropdown_month ginput_container' id='{$field_id}'>" . self::get_month_dropdown("input_{$id}[]", "{$field_id}_1", rgar($date_info, "month"), $tabindex, $disabled_text) . "</div>" : sprintf("<div class='gfield_date_month ginput_container' id='%s'><input type='text' maxlength='2' name='input_%d[]' id='%s_1' value='%s' {$tabindex} %s/><label for='%s_1'>" . __("MM", "gravityforms") . "</label></div>", $field_id, $id, $field_id, rgget("month", $date_info), $disabled_text, $field_id);
                             $tabindex = self::get_tabindex();
                             $field_str .= $date_type == "datedropdown" ? "<div class='gfield_date_dropdown_year ginput_container' id='{$field_id}'>" . self::get_year_dropdown("input_{$id}[]", "{$field_id}_1", rgar($date_info, "year"), $tabindex, $disabled_text) . "</div></div>" : sprintf("<div class='gfield_date_year ginput_container' id='%s'><input type='text' maxlength='4' name='input_%d[]' id='%s_3' value='%s' {$tabindex} %s/><label for='%s_3'>" . __("YYYY", "gravityforms") . "</label></div></div>", $field_id, $id, $field_id, rgget("year", $date_info), $disabled_text, $field_id);
                             break;
                         case "ymd":
                             $tabindex = self::get_tabindex();
                             $field_str = $date_type == "datedropdown" ? "<div class='clear-multi'><div class='gfield_date_dropdown_year ginput_container' id='{$field_id}'>" . self::get_year_dropdown("input_{$id}[]", "{$field_id}_1", rgar($date_info, "year"), $tabindex, $disabled_text) . "</div>" : sprintf("<div class='clear-multi'><div class='gfield_date_year ginput_container' id='%s'><input type='text' maxlength='4' name='input_%d[]' id='%s_3' value='%s' {$tabindex} %s/><label for='%s_3'>" . __("YYYY", "gravityforms") . "</label></div>", $field_id, $id, $field_id, rgget("year", $date_info), $disabled_text, $field_id);
                             $field_str .= $date_type == "datedropdown" ? "<div class='gfield_date_dropdown_month ginput_container' id='{$field_id}'>" . self::get_month_dropdown("input_{$id}[]", "{$field_id}_1", rgar($date_info, "month"), $tabindex, $disabled_text) . "</div>" : sprintf("<div class='gfield_date_month ginput_container' id='%s'><input type='text' maxlength='2' name='input_%d[]' id='%s_1' value='%s' {$tabindex} %s/><label for='%s_1'>" . __("MM", "gravityforms") . "</label></div>", $field_id, $id, $field_id, rgar($date_info, "month"), $disabled_text, $field_id);
                             $tabindex = self::get_tabindex();
                             $field_str .= $date_type == "datedropdown" ? "<div class='gfield_date_dropdown_day ginput_container' id='{$field_id}'>" . self::get_day_dropdown("input_{$id}[]", "{$field_id}_1", rgar($date_info, "day"), $tabindex, $disabled_text) . "</div></div>" : sprintf("<div class='gfield_date_day ginput_container' id='%s'><input type='text' maxlength='2' name='input_%d[]' id='%s_2' value='%s' {$tabindex} %s/><label for='%s_2'>" . __("DD", "gravityforms") . "</label></div></div>", $field_id, $id, $field_id, rgar($date_info, "day"), $disabled_text, $field_id);
                             break;
                         default:
                             $tabindex = self::get_tabindex();
                             $field_str = $date_type == "datedropdown" ? "<div class='clear-multi'><div class='gfield_date_dropdown_month ginput_container' id='{$field_id}'>" . self::get_month_dropdown("input_{$id}[]", "{$field_id}_1", rgar($date_info, "month"), $tabindex, $disabled_text) . "</div>" : sprintf("<div class='clear-multi'><div class='gfield_date_month ginput_container' id='%s'><input type='text' maxlength='2' name='input_%d[]' id='%s_1' value='%s' {$tabindex} %s/><label for='%s_1'>" . __("MM", "gravityforms") . "</label></div>", $field_id, $id, $field_id, rgar($date_info, "month"), $disabled_text, $field_id);
                             $tabindex = self::get_tabindex();
                             $field_str .= $date_type == "datedropdown" ? "<div class='gfield_date_dropdown_day ginput_container' id='{$field_id}'>" . self::get_day_dropdown("input_{$id}[]", "{$field_id}_1", rgar($date_info, "day"), $tabindex, $disabled_text) . "</div>" : sprintf("<div class='gfield_date_day ginput_container' id='%s'><input type='text' maxlength='2' name='input_%d[]' id='%s_2' value='%s' {$tabindex} %s/><label for='%s_2'>" . __("DD", "gravityforms") . "</label></div>", $field_id, $id, $field_id, rgar($date_info, "day"), $disabled_text, $field_id);
                             $tabindex = self::get_tabindex();
                             $field_str .= $date_type == "datedropdown" ? "<div class='gfield_date_dropdown_year ginput_container' id='{$field_id}'>" . self::get_year_dropdown("input_{$id}[]", "{$field_id}_1", rgar($date_info, "year"), $tabindex, $disabled_text) . "</div></div>" : sprintf("<div class='gfield_date_year ginput_container' id='%s'><input type='text' maxlength='4' name='input_%d[]' id='%s_3' value='%s' {$tabindex} %s/><label for='%s_3'>" . __("YYYY", "gravityforms") . "</label></div></div>", $field_id, $id, $field_id, rgget("year", $date_info), $disabled_text, $field_id);
                             break;
                     }
                     return $field_str;
                 } else {
                     $value = GFCommon::date_display($value, $format);
                     $icon_class = $field["calendarIconType"] == "none" ? "datepicker_no_icon" : "datepicker_with_icon";
                     $icon_url = empty($field["calendarIconUrl"]) ? GFCommon::get_base_url() . "/images/calendar.png" : $field["calendarIconUrl"];
                     $tabindex = self::get_tabindex();
                     return sprintf("<div class='ginput_container'><input name='input_%d' id='%s' type='text' value='%s' class='datepicker %s %s %s' {$tabindex} %s/> </div><input type='hidden' id='gforms_calendar_icon_{$field_id}' class='gform_hidden' value='{$icon_url}'/>", $id, $field_id, esc_attr($value), esc_attr($class), $format, $icon_class, $disabled_text);
                 }
             }
         case "time":
             if (!empty($post_link)) {
                 return $post_link;
             }
             $hour = $minute = $am_selected = $pm_selected = "";
             if (!is_array($value) && !empty($value)) {
                 preg_match('/^(\\d*):(\\d*) ?(.*)$/', $value, $matches);
                 $hour = esc_attr($matches[1]);
                 $minute = esc_attr($matches[2]);
                 $am_selected = rgar($matches, 3) == "am" ? "selected='selected'" : "";
                 $pm_selected = rgar($matches, 3) == "pm" ? "selected='selected'" : "";
             } else {
                 if (is_array($value)) {
                     $hour = esc_attr($value[0]);
                     $minute = esc_attr($value[1]);
                     $am_selected = rgar($value, 2) == "am" ? "selected='selected'" : "";
                     $pm_selected = rgar($value, 2) == "pm" ? "selected='selected'" : "";
                 }
             }
             $hour_tabindex = self::get_tabindex();
             $minute_tabindex = self::get_tabindex();
             $ampm_tabindex = self::get_tabindex();
             $ampm_field_style = is_admin() && rgar($field, "timeFormat") == "24" ? "style='display:none;'" : "";
             $ampm_field = is_admin() || rgar($field, "timeFormat") != "24" ? "<div class='gfield_time_ampm ginput_container' {$ampm_field_style}><select name='input_{$id}[]' id='{$field_id}_3' {$ampm_tabindex} {$disabled_text}><option value='am' {$am_selected}>" . __("AM", "gravityforms") . "</option><option value='pm' {$pm_selected}>" . __("PM", "gravityforms") . "</option></select></div>" : "";
             return sprintf("<div class='clear-multi'><div class='gfield_time_hour ginput_container' id='%s'><input type='text' maxlength='2' name='input_%d[]' id='%s_1' value='%s' {$hour_tabindex} %s/> : <label for='%s_1'>" . __("HH", "gravityforms") . "</label></div><div class='gfield_time_minute ginput_container'><input type='text' maxlength='2' name='input_%d[]' id='%s_2' value='%s' {$minute_tabindex} %s/><label for='%s_2'>" . __("MM", "gravityforms") . "</label></div>{$ampm_field}</div>", $field_id, $id, $field_id, $hour, $disabled_text, $field_id, $id, $field_id, $minute, $disabled_text, $field_id);
         case "fileupload":
             $tabindex = self::get_tabindex();
             $upload = sprintf("<input name='input_%d' id='%s' type='file' value='%s' size='20' class='%s' {$tabindex} %s/>", $id, $field_id, esc_attr($value), esc_attr($class), $disabled_text);
             if (IS_ADMIN && !empty($value)) {
                 $value = esc_attr($value);
                 $preview = sprintf("<div id='preview_%d'><a href='%s' target='_blank' alt='%s' title='%s'>%s</a><a href='%s' target='_blank' alt='" . __("Download file", "gravityforms") . "' title='" . __("Download file", "gravityforms") . "'><img src='%s' style='margin-left:10px;'/></a><a href='javascript:void(0);' alt='" . __("Delete file", "gravityforms") . "' title='" . __("Delete file", "gravityforms") . "' onclick='DeleteFile(%d,%d);' ><img src='%s' style='margin-left:10px;'/></a></div>", $id, $value, $value, $value, GFCommon::truncate_url($value), $value, GFCommon::get_base_url() . "/images/download.png", $lead_id, $id, GFCommon::get_base_url() . "/images/delete.png");
                 return $preview . "<div id='upload_{$id}' style='display:none;'>{$upload}</div>";
             } else {
                 $file_info = RGFormsModel::get_temp_filename($form_id, "input_{$id}");
                 if ($file_info && !$field["failed_validation"]) {
                     $preview = "<span class='ginput_preview'><strong>" . esc_html($file_info["uploaded_filename"]) . "</strong> | <a href='javascript:;' onclick='gformDeleteUploadedFile({$form_id}, {$id});'>" . __("delete", "gravityforms") . "</a></span>";
                     return "<div class='ginput_container'>" . str_replace(" class='", " class='gform_hidden ", $upload) . " {$preview}</div>";
                 } else {
                     return "<div class='ginput_container'>{$upload}</div>";
                 }
             }
         case "captcha":
             switch (rgget("captchaType", $field)) {
                 case "simple_captcha":
                     $size = rgempty("simpleCaptchaSize", $field) ? "medium" : $field["simpleCaptchaSize"];
                     $captcha = self::get_captcha($field);
                     $tabindex = self::get_tabindex();
                     $dimensions = IS_ADMIN ? "" : "width='" . rgar($captcha, "width") . "' height='" . rgar($captcha, "height") . "'";
                     return "<div class='gfield_captcha_container'><img class='gfield_captcha' src='" . rgar($captcha, "url") . "' alt='' {$dimensions} /><div class='gfield_captcha_input_container simple_captcha_{$size}'><input type='text' name='input_{$id}' id='{$field_id}' {$tabindex}/><input type='hidden' name='input_captcha_prefix_{$id}' value='" . rgar($captcha, "prefix") . "' /></div></div>";
                     break;
                 case "math":
                     $size = empty($field["simpleCaptchaSize"]) ? "medium" : $field["simpleCaptchaSize"];
                     $captcha_1 = self::get_math_captcha($field, 1);
                     $captcha_2 = self::get_math_captcha($field, 2);
                     $captcha_3 = self::get_math_captcha($field, 3);
                     $tabindex = self::get_tabindex();
                     $dimensions = IS_ADMIN ? "" : "width='{$captcha_1["width"]}' height='{$captcha_1["height"]}'";
                     return "<div class='gfield_captcha_container'><img class='gfield_captcha' src='{$captcha_1["url"]}' alt='' {$dimensions} /><img class='gfield_captcha' src='{$captcha_2["url"]}' alt='' {$dimensions} /><img class='gfield_captcha' src='{$captcha_3["url"]}' alt='' {$dimensions} /><div class='gfield_captcha_input_container math_{$size}'><input type='text' name='input_{$id}' id='input_{$field_id}' {$tabindex}/><input type='hidden' name='input_captcha_prefix_{$id}' value='{$captcha_1["prefix"]},{$captcha_2["prefix"]},{$captcha_3["prefix"]}' /></div></div>";
                     break;
                 default:
                     if (!function_exists("recaptcha_get_html")) {
                         require_once GFCommon::get_base_path() . '/recaptchalib.php';
                     }
                     $theme = empty($field["captchaTheme"]) ? "red" : esc_attr($field["captchaTheme"]);
                     $publickey = get_option("rg_gforms_captcha_public_key");
                     $privatekey = get_option("rg_gforms_captcha_private_key");
                     if (IS_ADMIN) {
                         if (empty($publickey) || empty($privatekey)) {
                             return "<div class='captcha_message'>" . __("To use the reCaptcha field you must first do the following:", "gravityforms") . "</div><div class='captcha_message'>1 - <a href='http://www.google.com/recaptcha/whyrecaptcha' target='_blank'>" . sprintf(__("Sign up%s for a free reCAPTCHA account", "gravityforms"), "</a>") . "</div><div class='captcha_message'>2 - " . sprintf(__("Enter your reCAPTCHA keys in the %ssettings page%s", "gravityforms"), "<a href='?page=gf_settings'>", "</a>") . "</div>";
                         } else {
                             return "<div class='ginput_container'><img class='gfield_captcha' src='" . GFCommon::get_base_url() . "/images/captcha_{$theme}.jpg' alt='reCAPTCHA' title='reCAPTCHA'/></div>";
                         }
                     } else {
                         $language = empty($field["captchaLanguage"]) ? "en" : esc_attr($field["captchaLanguage"]);
                         $options = "<script type='text/javascript'>" . apply_filters("gform_cdata_open", "") . " var RecaptchaOptions = {theme : '{$theme}'}; if(parseInt('" . self::$tab_index . "') > 0) {RecaptchaOptions.tabindex = " . self::$tab_index++ . ";}" . apply_filters("gform_recaptcha_init_script", "", $form_id, $field) . apply_filters("gform_cdata_close", "") . "</script>";
                         $is_ssl = !empty($_SERVER['HTTPS']);
                         return $options . "<div class='ginput_container' id='{$field_id}'>" . recaptcha_get_html($publickey, null, $is_ssl, $language) . "</div>";
                     }
             }
             break;
         case "creditcard":
             $card_number = "";
             $card_name = "";
             $expiration_date = "";
             $expiration_month = "";
             $expiration_year = "";
             $security_code = "";
             if (is_array($value)) {
                 $card_number = esc_attr(rgget($field["id"] . ".1", $value));
                 $card_name = esc_attr(rgget($field["id"] . ".5", $value));
                 $expiration_date = rgget($field["id"] . ".2", $value);
                 if (!is_array($expiration_date) && !empty($expiration_date)) {
                     $expiration_date = explode("/", $expiration_date);
                 }
                 if (is_array($expiration_date) && count($expiration_date) == 2) {
                     $expiration_month = $expiration_date[0];
                     $expiration_year = $expiration_date[1];
                 }
                 $security_code = esc_attr(rgget($field["id"] . ".3", $value));
             }
             $action = !IS_ADMIN ? "gformMatchCard(\"{$field_id}_1\");" : "";
             $onchange = "onchange='{$action}'";
             $onkeyup = "onkeyup='{$action}'";
             $card_icons = '';
             $cards = GFCommon::get_card_types();
             $card_style = rgar($field, 'creditCardStyle') ? rgar($field, 'creditCardStyle') : 'style1';
             foreach ($cards as $card) {
                 $style = "";
                 if (self::is_card_supported($field, $card["slug"])) {
                     $print_card = true;
                 } else {
                     if (IS_ADMIN) {
                         $print_card = true;
                         $style = "style='display:none;'";
                     } else {
                         $print_card = false;
                     }
                 }
                 if ($print_card) {
                     $card_icons .= "<div class='gform_card_icon gform_card_icon_{$card['slug']}' {$style}>{$card['name']}</div>";
                 }
             }
             $card_icons = "<div class='gform_card_icon_container gform_card_icon_{$card_style}'>{$card_icons}</div>";
             //card number fields
             $tabindex = self::get_tabindex();
             $card_field = sprintf("<span class='ginput_full{$class_suffix}' id='{$field_id}_1_container'>{$card_icons}<input type='text' name='input_%d.1' id='%s_1' value='%s' {$tabindex} %s {$onchange} {$onkeyup} /><label for='%s_1' id='{$field_id}_1_label'>" . apply_filters("gform_card_number_{$form_id}", apply_filters("gform_card_number", __("Card Number", "gravityforms"), $form_id), $form_id) . "</label></span>", $id, $field_id, $card_number, $disabled_text, $field_id);
             //expiration date field
             $expiration_field = "<span class='ginput_full{$class_suffix} ginput_cardextras' id='{$field_id}_2_container'>" . "<span class='ginput_cardinfo_left{$class_suffix}' id='{$field_id}_2_container'>" . "<span class='ginput_card_expiration_container'>" . "<select name='input_{$id}.2[]' id='{$field_id}_2_month' " . self::get_tabindex() . " {$disabled_text} class='ginput_card_expiration ginput_card_expiration_month'>" . self::get_expiration_months($expiration_month) . "</select>" . "<select name='input_{$id}.2[]' id='{$field_id}_2_year' " . self::get_tabindex() . " {$disabled_text} class='ginput_card_expiration ginput_card_expiration_year'>" . self::get_expiration_years($expiration_year) . "</select>" . "<label for='{$field_id}_2_month' >" . apply_filters("gform_card_expiration_{$form_id}", apply_filters("gform_card_expiration", __("Expiration Date", "gravityforms"), $form_id), $form_id) . "</label>" . "</span>" . "</span>";
             //security code field
             $tabindex = self::get_tabindex();
             $security_field = "<span class='ginput_cardinfo_right{$class_suffix}' id='{$field_id}_2_container'>" . "<input type='text' name='input_{$id}.3' id='{$field_id}_3' {$tabindex} {$disabled_text} class='ginput_card_security_code' value='{$security_code}' />" . "<span class='ginput_card_security_code_icon'>&nbsp;</span>" . "<label for='{$field_id}_3' >" . apply_filters("gform_card_security_code_{$form_id}", apply_filters("gform_card_security_code", __("Security Code", "gravityforms"), $form_id), $form_id) . "</label>" . "</span>" . "</span>";
             $tabindex = self::get_tabindex();
             $card_name_field = sprintf("<span class='ginput_full{$class_suffix}' id='{$field_id}_5_container'><input type='text' name='input_%d.5' id='%s_5' value='%s' {$tabindex} %s /><label for='%s_5' id='{$field_id}_5_label'>" . apply_filters("gform_card_name_{$form_id}", apply_filters("gform_card_name", __("Cardholder Name", "gravityforms"), $form_id), $form_id) . "</label></span>", $id, $field_id, $card_name, $disabled_text, $field_id);
             return "<div class='ginput_complex{$class_suffix} ginput_container' id='{$field_id}'>" . $card_field . $expiration_field . $security_field . $card_name_field . " </div>";
             break;
         case "list":
             if (!empty($value)) {
                 $value = maybe_unserialize($value);
             }
             if (!is_array($value)) {
                 $value = array(array());
             }
             $has_columns = is_array(rgar($field, "choices"));
             $columns = $has_columns ? rgar($field, "choices") : array(array());
             $list = "<div class='ginput_container ginput_list'>" . "<table class='gfield_list'>";
             $class_attr = "";
             if ($has_columns) {
                 $list .= "<colgroup>";
                 $colnum = 1;
                 foreach ($columns as $column) {
                     $odd_even = $colnum % 2 == 0 ? "even" : "odd";
                     $list .= "<col id='gfield_list_{$field["id"]}_col{$colnum}' class='gfield_list_col_{$odd_even}'></col>";
                     $colnum++;
                 }
                 $list .= "</colgroup>";
                 $list .= "<thead><tr>";
                 foreach ($columns as $column) {
                     $list .= "<th>" . esc_html($column["text"]) . "</th>";
                 }
                 $list .= "<th>&nbsp;</th></tr></thead>";
             } else {
                 $list .= "<colgroup><col id='gfield_list_{$field["id"]}_col1' class='gfield_list_col_odd'></col></colgroup>";
             }
             $delete_display = count($value) == 1 ? "visibility:hidden;" : "";
             $maxRow = intval(rgar($field, "maxRows"));
             $disabled_icon_class = !empty($maxRow) && count($value) >= $maxRow ? "gfield_icon_disabled" : "";
             $list .= "<tbody>";
             $rownum = 1;
             foreach ($value as $item) {
                 $odd_even = $rownum % 2 == 0 ? "even" : "odd";
                 $list .= "<tr class='gfield_list_row_{$odd_even}'>";
                 $colnum = 1;
                 foreach ($columns as $column) {
                     //getting value. taking into account columns being added/removed from form meta
                     if (is_array($item)) {
                         if ($has_columns) {
                             $val = rgar($item, $column["text"]);
                         } else {
                             $vals = array_values($item);
                             $val = rgar($vals, 0);
                         }
                     } else {
                         $val = $colnum == 1 ? $item : "";
                     }
                     $list .= "<td class='gfield_list_cell gfield_list_{$field["id"]}_cell{$colnum}'>" . self::get_list_input($field, $has_columns, $column, $val, $form_id) . "</td>";
                     $colnum++;
                 }
                 $add_icon = !rgempty("addIconUrl", $field) ? $field["addIconUrl"] : GFCommon::get_base_url() . "/images/add.png";
                 $delete_icon = !rgempty("deleteIconUrl", $field) ? $field["deleteIconUrl"] : GFCommon::get_base_url() . "/images/remove.png";
                 $on_click = IS_ADMIN && RG_CURRENT_VIEW != "entry" ? "" : "onclick='gformAddListItem(this, {$maxRow})'";
                 if (rgar($field, "maxRows") != 1) {
                     $list .= "<td class='gfield_list_icons'>";
                     $list .= "   <img src='{$add_icon}' class='add_list_item {$disabled_icon_class}' {$disabled_text} title='" . __("Add a row", "gravityforms") . "' alt='" . __("Add a row", "gravityforms") . "' {$on_click} style='cursor:pointer; margin:0 3px;' />" . "   <img src='{$delete_icon}' {$disabled_text} title='" . __("Remove this row", "gravityforms") . "' alt='" . __("Remove this row", "gravityforms") . "' class='delete_list_item' style='cursor:pointer; {$delete_display}' onclick='gformDeleteListItem(this, {$maxRow})' />";
                     $list .= "</td>";
                 }
                 $list .= "</tr>";
                 if (!empty($maxRow) && $rownum >= $maxRow) {
                     break;
                 }
                 $rownum++;
             }
             $list .= "</tbody></table></div>";
             return $list;
             break;
     }
 }
 public static function get_credit_card_rules()
 {
     $cards = GFCommon::get_card_types();
     //$supported_cards = //TODO: Only include enabled cards
     $rules = array();
     foreach ($cards as $card) {
         $prefixes = explode(',', $card['prefixes']);
         foreach ($prefixes as $prefix) {
             $rules[$card['slug']][] = $prefix;
         }
     }
     return $rules;
 }
    public static function forms_page($form_id)
    {
        global $wpdb;
        if (!GFCommon::ensure_wp_version()) {
            return;
        }
        $update_result = "";
        if (rgpost("operation") == "delete") {
            check_admin_referer('gforms_delete_form', 'gforms_delete_form');
            RGFormsModel::delete_form($form_id);
            ?>
                <script type="text/javascript">
                jQuery(document).ready(
                    function(){document.location.href="?page=gf_edit_forms";}
                );
                </script>
            <?php 
            exit;
        } else {
            if (!rgempty("gform_meta")) {
                check_admin_referer("gforms_update_form_{$form_id}", 'gforms_update_form');
                $update_result = self::save_form_info($form_id, rgpost("gform_meta", false));
            }
        }
        if (version_compare(get_bloginfo("version"), '3.3.dev1', '<')) {
            ?>
            <script type='text/javascript'>
                /* <![CDATA[
                *Needed for custom version of thickbox
                */
                var thickboxL10n = {
                    loadingAnimation: "<?php 
            echo includes_url();
            ?>
js/thickbox/loadingAnimation.gif",
                    closeImage: "<?php 
            echo includes_url();
            ?>
js/thickbox/tb-close.png"
                };
                try{convertEntities(thickboxL10n);}catch(e){};
                /* ]]> */
            </script>
            <?php 
            wp_register_script("gf_thickbox", GFCommon::get_base_url() . "/js/thickbox.js", null, GFCommon::$version);
            wp_register_style("gf_thickbox", GFCommon::get_base_url() . "/js/thickbox.css", null, GFCommon::$version);
            wp_print_scripts(array("gf_thickbox"));
            wp_print_styles(array("gf_thickbox"));
        } else {
            wp_print_scripts(array("thickbox"));
            wp_print_styles(array("thickbox"));
        }
        wp_register_script("rg_currency", GFCommon::get_base_url() . "/js/gravityforms.js", null, GFCommon::$version);
        wp_print_scripts(array("jquery-ui-core", "jquery-ui-sortable", "jquery-ui-tabs", "sack", "rg_currency"));
        ?>
        <script src="<?php 
        echo GFCommon::get_base_url();
        ?>
/js/jquery.dimensions.js?ver=<?php 
        echo GFCommon::$version;
        ?>
"></script>
        <script src="<?php 
        echo GFCommon::get_base_url();
        ?>
/js/floatmenu_init.js?ver=<?php 
        echo GFCommon::$version;
        ?>
"></script>
        <script src="<?php 
        echo GFCommon::get_base_url();
        ?>
/js/menu.js?ver=<?php 
        echo GFCommon::$version;
        ?>
"></script>
        <script src="<?php 
        echo GFCommon::get_base_url();
        ?>
/js/jquery.json-1.3.js?ver=<?php 
        echo GFCommon::$version;
        ?>
"></script>
        <script src="<?php 
        echo GFCommon::get_base_url();
        ?>
/js/jquery.simplemodal-1.3.min.js?ver=<?php 
        echo GFCommon::$version;
        ?>
"></script>
        <script src="<?php 
        echo GFCommon::get_base_url();
        ?>
/js/forms.js?ver=<?php 
        echo GFCommon::$version;
        ?>
"></script>
        <script src="<?php 
        echo GFCommon::get_base_url();
        ?>
/js/jquery-ui/ui.datepicker.js?ver=<?php 
        echo GFCommon::$version;
        ?>
"></script>

        <link rel="stylesheet" href="<?php 
        echo GFCommon::get_base_url();
        ?>
/css/jquery-ui-1.7.2.custom.css?ver=<?php 
        echo GFCommon::$version;
        ?>
" type="text/css" />
        <link rel="stylesheet" href="<?php 
        echo GFCommon::get_base_url();
        ?>
/css/admin.css?ver=<?php 
        echo GFCommon::$version;
        ?>
" type="text/css" />
        <script type="text/javascript">
            jQuery(document).ready(
                function() {
                    jQuery('.datepicker').datepicker({showOn: "both", buttonImage: "<?php 
        echo GFCommon::get_base_url();
        ?>
/images/calendar.png", buttonImageOnly: true});
                }
            );

            function has_entry(fieldNumber){
                var submitted_fields = new Array(<?php 
        echo RGFormsModel::get_submitted_fields($form_id);
        ?>
);
                for(var i=0; i<submitted_fields.length; i++){
                    if(submitted_fields[i] == fieldNumber)
                        return true;
                }
                return false;
            }

            function InsertVariable(element_id, callback, variable){
                if(!variable)
                    variable = jQuery('#' + element_id + '_variable_select').val();

                var messageElement = jQuery("#" + element_id);

                if(document.selection) {
                    // Go the IE way
                    messageElement[0].focus();
                    document.selection.createRange().text=variable;
                }
                else if(messageElement[0].selectionStart) {
                    // Go the Gecko way
                    obj = messageElement[0]
                    obj.value = obj.value.substr(0, obj.selectionStart) + variable + obj.value.substr(obj.selectionEnd, obj.value.length);
                }
                else {
                    messageElement.val(variable + messageElement.val());
                }

                jQuery('#' + element_id + '_variable_select')[0].selectedIndex = 0;

                if(callback && window[callback])
                    window[callback].call();
            }

            function InsertPostImageVariable(element_id, callback){
                var variable = jQuery('#' + element_id + '_image_size_select').attr("variable");
                var size = jQuery('#' + element_id + '_image_size_select').val();
                if(size){
                    variable = "{" + variable + ":" + size + "}";
                    InsertVariable(element_id, callback, variable);
                    jQuery('#' + element_id + '_image_size_select').hide();
                    jQuery('#' + element_id + '_image_size_select')[0].selectedIndex = 0;
                }
            }

            function InsertPostContentVariable(element_id, callback){
                var variable = jQuery('#' + element_id + '_variable_select').val();
                var regex=/{([^{]*?: *(\d+\.?\d*).*?)}/;
                matches = regex.exec(variable);
                if(!matches){
                    InsertVariable(element_id, callback);
                    return;
                }

                variable = matches[1];
                field_id = matches[2];

                for(var i=0; i<form["fields"].length; i++){
                    if(form["fields"][i]["id"] == field_id){
                        if(form["fields"][i]["type"] == "post_image"){
                            jQuery('#' + element_id + '_image_size_select').attr("variable", variable);
                            jQuery('#' + element_id + '_image_size_select').show();
                            return;
                        }
                    }
                }

                InsertVariable(element_id, callback);
            }
        </script>

        <style>
            .field_type li {
                float:left;
                width:50%;
            }
            .field_type input{
                width:100px;
            }
            .description-list { margin: 10px 0; padding: 0 20px; }
            .description-list li { padding: 0; list-style: disc; overflow: visible; }
            .custom_mask_instructions h5 { margin: 0 0 4px; font-size: 11px; }
            .custom_mask_instructions span.label { font-size: 11px; display: -moz-inline-stack; display: inline-block; zoom: 1; *display: inline;
                width: 80px; }
            .custom_mask_instructions li { margin: 0 0 14px; }
        </style>

        <?php 
        $form = !rgempty("meta", $update_result) ? rgar($update_result, "meta") : RGFormsModel::get_form_meta($form_id);
        $form = RGFormsModel::add_default_properties($form);
        if ($form == null) {
            $form = array("fields" => array());
        }
        $form = apply_filters("gform_admin_pre_render_" . $form_id, apply_filters("gform_admin_pre_render", $form));
        if (isset($form['id'])) {
            echo "<script type=\"text/javascript\">var form = " . GFCommon::json_encode($form) . ";</script>";
        } else {
            echo "<script type=\"text/javascript\">var form = new Form();</script>";
        }
        ?>

        <?php 
        echo GFCommon::get_remote_message();
        ?>
        <div class="wrap gforms_edit_form <?php 
        echo GFCommon::get_browser_class();
        ?>
">


            <div class="icon32" id="gravity-edit-icon"><br></div>


            <h2><?php 
        echo empty($form_id) ? __("New Form", "gravityforms") : __("Form Editor :", "gravityforms") . " " . esc_html($form["title"]);
        ?>
</h2>

            <?php 
        RGForms::top_toolbar();
        ?>

            <?php 
        switch (rgar($update_result, "status")) {
            case "invalid_json":
                ?>
                    <div class="error_base gform_editor_status" id="after_update_error_dialog">
                        <?php 
                _e("There was an error while saving your form.", "gravityforms");
                ?>
                        <?php 
                printf(__("Please %scontact our support team%s.", "gravityforms"), '<a href="http://www.gravityhelp.com">', '</a>');
                ?>
                    </div>
                    <?php 
                break;
            case "duplicate_title":
                ?>
                    <div class="error_base gform_editor_status" id="after_update_error_dialog">
                        <?php 
                _e("The form title you have entered is already taken. Please enter an unique form title.", "gravityforms");
                ?>
                    </div>
                    <?php 
                break;
            default:
                if (!empty($update_result)) {
                    ?>
                        <div class="updated_base gform_editor_status" id="after_update_dialog">
                            <strong><?php 
                    _e("Form updated successfully.", "gravityforms");
                    ?>
</strong>
                        </div>
                        <?php 
                }
                break;
        }
        ?>

            <table width="100%">
            <tr>
                <td class="pad_top" valign="top">

                    <div id="gform_heading" class="selectable">
                        <form method="post" id="form_delete">
                            <?php 
        wp_nonce_field('gforms_delete_form', 'gforms_delete_form');
        ?>


                            <div class="gform_admin_icons">
                                <div class="gform_admin_header_title"><?php 
        _e("Form Settings", "gravityforms");
        if (!rgempty("id", $_GET)) {
            echo " : " . __("Form ID", "gravityforms") . " " . rgget("id");
        }
        ?>
                                </div>
                                <a href="javascript:void(0);" class="form_edit_icon edit_icon_collapsed" title="<?php 
        _e("Edit Form's properties", "gravityforms");
        ?>
"><?php 
        _e("Edit", "gravityforms");
        ?>
</a>
                            </div>

                            <input type="hidden" value="delete" name="operation"/>
                        </form>
                        <h3 id="gform_title"></h3>
                        <span id="gform_description">&nbsp;</span>

                        <div id="form_settings" style="display:none;">
                            <ul>
                                <li style="width:100px; padding:0px;"><a href="#gform_settings_tab_1"><?php 
        _e("Properties", "gravityforms");
        ?>
</a></li>
                                <li style="width:100px; padding:0px; "><a href="#gform_settings_tab_2"><?php 
        _e("Advanced", "gravityforms");
        ?>
</a></li>
                                <li style="width:120px; padding:0px; "><a href="#gform_settings_tab_3"><?php 
        _e("Confirmation", "gravityforms");
        ?>
</a></li>
                            </ul>
                            <div id="gform_settings_tab_1">
                                <ul class="gforms_form_settings">
                                    <?php 
        do_action("gform_properties_settings", 100, $form_id);
        ?>
                                    <li>
                                        <label for="form_title_input" style="display:block;">
                                            <?php 
        _e("Title", "gravityforms");
        ?>
                                            <?php 
        gform_tooltip("form_tile");
        ?>
                                        </label>
                                        <input type="text" id="form_title_input" class="fieldwidth-3" onkeyup="UpdateFormProperty('title', this.value);" />
                                    </li>
                                    <?php 
        do_action("gform_properties_settings", 200, $form_id);
        ?>
                                    <li>
                                        <label for="form_description_input" style="display:block;">
                                            <?php 
        _e("Description", "gravityforms");
        ?>
                                            <?php 
        gform_tooltip("form_description");
        ?>
                                        </label>
                                        <textarea id="form_description_input" class="fieldwidth-3 fieldheight-2" onkeyup="UpdateFormProperty('description', this.value);"></textarea>
                                    </li>
                                    <?php 
        do_action("gform_properties_settings", 300, $form_id);
        ?>
                                    <li class="gform_setting_left_half">
                                        <label for="form_label_placement" style="display:block;">
                                            <?php 
        _e("Label Placement", "gravityforms");
        ?>
                                            <?php 
        gform_tooltip("form_label_placement");
        ?>
                                        </label>
                                        <select id="form_label_placement" onchange="UpdateLabelPlacement();">
                                            <option value="top_label"><?php 
        _e("Top aligned", "gravityforms");
        ?>
</option>
                                            <option value="left_label"><?php 
        _e("Left aligned", "gravityforms");
        ?>
</option>
                                            <option value="right_label"><?php 
        _e("Right aligned", "gravityforms");
        ?>
</option>
                                        </select>
                                    </li>
                                    <?php 
        do_action("gform_properties_settings", 400, $form_id);
        ?>
                                    <li id='description_placement_setting' class="gform_setting_right_half">
                                        <label for="form_label_placement" style="display:block;">
                                            <?php 
        _e("Description Placement", "gravityforms");
        ?>
                                            <?php 
        gform_tooltip("form_description_placement");
        ?>
                                        </label>
                                        <select id="form_description_placement" onchange="UpdateDescriptionPlacement();">
                                            <option value="below"><?php 
        _e("Below inputs", "gravityforms");
        ?>
</option>
                                            <option value="above"><?php 
        _e("Above inputs", "gravityforms");
        ?>
</option>
                                        </select>
                                    </li>
                                    <?php 
        do_action("gform_properties_settings", 500, $form_id);
        ?>
                                </ul>
                            </div>
                            <div id="gform_settings_tab_2">
                                <ul class="gforms_form_settings">
                                    <?php 
        do_action("gform_advanced_settings", 100, $form_id);
        ?>
                                    <li>
                                        <label><?php 
        _e("Form Button", "gravityforms");
        ?>
</label>
                                        <div class="form_button_options">
                                            <input type="radio" id="form_button_text" name="form_button" value="text" onclick="ToggleButton();"/>
                                            <label for="form_button_text" class="inline">
                                                <?php 
        _e("Default", "gravityforms");
        ?>
                                                <?php 
        gform_tooltip("form_button_text");
        ?>
                                            </label>
                                            &nbsp;&nbsp;
                                            <input type="radio" id="form_button_image" name="form_button" value="image" onclick="ToggleButton();"/>
                                            <label for="form_button_image" class="inline">
                                                <?php 
        _e("Image", "gravityforms");
        ?>
                                                <?php 
        gform_tooltip("form_button_image");
        ?>
                                            </label>

                                            <div id="form_button_text_container" style="margin-top:5px;">
                                            <label for="form_button_text_input" class="float_label">
                                                    <?php 
        _e("Text:", "gravityforms");
        ?>
                                                </label>
                                                <input type="text" id="form_button_text_input" class="input_size_b" size="40" />
                                            </div>

                                            <div id="form_button_image_container" style="margin-top:5px;">
                                                <label for="form_button_image_url" class="inline">
                                                    <?php 
        _e("Image Path:", "gravityforms");
        ?>
                                                </label>
                                                <input type="text" id="form_button_image_url" size="45"/>
                                            </div>

                                            <div style="margin-top:9px;">

                                                <input type="checkbox" id="form_button_conditional_logic" onclick="SetButtonConditionalLogic(this.checked); ToggleConditionalLogic(false, 'form_button');"/>
                                                <label for="form_button_conditional_logic" class="inline"><?php 
        _e("Enable Conditional Logic", "gravityforms");
        gform_tooltip("form_button_conditional_logic");
        ?>
</label>
                                                <br/>
                                                <div id="form_button_conditional_logic_container" style="display:none; padding-top:10px;">
                                                    <!-- content dynamically created from js.php -->
                                                </div>
                                            </div>
                                        </div>
                                    </li>
                                    <?php 
        do_action("gform_advanced_settings", 200, $form_id);
        ?>
                                    <li>
                                        <label for="form_css_class" style="display:block;">
                                            <?php 
        _e("CSS Class Name", "gravityforms");
        ?>
                                            <?php 
        gform_tooltip("form_css_class");
        ?>
                                        </label>
                                        <input type="text" id="form_css_class" class="fieldwidth-3"/>
                                    </li>
                                    <?php 
        do_action("gform_advanced_settings", 300, $form_id);
        ?>
                                    <li>
                                        <input type="checkbox" id="gform_limit_entries" onclick="ToggleLimitEntry();"/> <label for="gform_limit_entries"><?php 
        _e("Limit number of entries", "gravityforms");
        ?>
 <?php 
        gform_tooltip("form_limit_entries");
        ?>
</label>

                                        <br/>
                                        <div id="gform_limit_entries_container" style="display:none;">
                                            <br/>
                                            <label for="gform_limit_entries_count" style="display:block;">
                                                <?php 
        _e("Number of Entries", "gravityforms");
        ?>
                                            </label>
                                            <input type="text" id="gform_limit_entries_count" style="width:70px;"/>
                                            &nbsp;
                                            <select id="gform_limit_entries_period" style="height:22px;">
                                                <option value=""><?php 
        _e("total entries", "gravityforms");
        ?>
</option>
                                                <option value="day"><?php 
        _e("per day", "gravityforms");
        ?>
</option>
                                                <option value="week"><?php 
        _e("per week", "gravityforms");
        ?>
</option>
                                                <option value="month"><?php 
        _e("per month", "gravityforms");
        ?>
</option>
                                                <option value="year"><?php 
        _e("per year", "gravityforms");
        ?>
</option>
                                            </select>
                                            <br/><br/>
                                            <label for="form_limit_entries_message" style="display:block;">
                                                <?php 
        _e("Entry Limit Reached Message", "gravityforms");
        ?>
                                            </label>
                                            <textarea id="form_limit_entries_message" class="fieldwidth-3"></textarea>
                                        </div>
                                    </li>
                                    <?php 
        do_action("gform_advanced_settings", 400, $form_id);
        ?>
                                    <li>
                                        <input type="checkbox" id="gform_schedule_form" onclick="ToggleSchedule();"/> <label for="gform_schedule_form"><?php 
        _e("Schedule form", "gravityforms");
        ?>
 <?php 
        gform_tooltip("form_schedule_form");
        ?>
</label>
                                        <br/>
                                        <div id="gform_schedule_form_container" style="display:none;">
                                            <br/>
                                            <label for="gform_schedule_start" style="display:block;">
                                                <?php 
        _e("Start Date/Time", "gravityforms");
        ?>
                                            </label>
                                            <input type="text" id="gform_schedule_start" name="gform_schedule_start" class="datepicker"/>
                                            &nbsp;&nbsp;
                                            <select id="gform_schedule_start_hour">
                                                <option value="1">1</option>
                                                <option value="2">2</option>
                                                <option value="3">3</option>
                                                <option value="4">4</option>
                                                <option value="5">5</option>
                                                <option value="6">6</option>
                                                <option value="7">7</option>
                                                <option value="8">8</option>
                                                <option value="9">9</option>
                                                <option value="10">10</option>
                                                <option value="11">11</option>
                                                <option value="12">12</option>
                                            </select>
                                            :
                                            <select id="gform_schedule_start_minute">
                                                <option value="00">00</option>
                                                <option value="15">15</option>
                                                <option value="30">30</option>
                                                <option value="45">45</option>
                                            </select>
                                            <select id="gform_schedule_start_ampm">
                                                <option value="am">AM</option>
                                                <option value="pm">PM</option>
                                            </select>
                                            <br/><br/>
                                            <label for="gform_schedule_end" style="display:block;">
                                                <?php 
        _e("End Date/Time", "gravityforms");
        ?>
                                            </label>
                                            <input type="text" id="gform_schedule_end" class="datepicker"/>
                                            &nbsp;&nbsp;
                                            <select id="gform_schedule_end_hour">
                                                <option value="1">1</option>
                                                <option value="2">2</option>
                                                <option value="3">3</option>
                                                <option value="4">4</option>
                                                <option value="5">5</option>
                                                <option value="6">6</option>
                                                <option value="7">7</option>
                                                <option value="8">8</option>
                                                <option value="9">9</option>
                                                <option value="10">10</option>
                                                <option value="11">11</option>
                                                <option value="12">12</option>
                                            </select>
                                            :
                                            <select id="gform_schedule_end_minute">
                                                <option value="00">00</option>
                                                <option value="15">15</option>
                                                <option value="30">30</option>
                                                <option value="45">45</option>
                                            </select>
                                            <select id="gform_schedule_end_ampm">
                                                <option value="am">AM</option>
                                                <option value="pm">PM</option>
                                            </select>

                                            <br/><br/>
                                            <label for="gform_schedule_message" style="display:block;">
                                                <?php 
        _e("Form Expired Message", "gravityforms");
        ?>
                                            </label>
                                            <textarea id="gform_schedule_message" class="fieldwidth-3"></textarea>
                                        </div>
                                    </li>
                                    <?php 
        do_action("gform_advanced_settings", 500, $form_id);
        ?>
                                    <li>
                                        <input type="checkbox" id="gform_enable_honeypot" /> <label for="gform_enable_honeypot"><?php 
        _e("Enable anti-spam honeypot", "gravityforms");
        ?>
 <?php 
        gform_tooltip("form_honeypot");
        ?>
</label>
                                    </li>
                                    <?php 
        do_action("gform_advanced_settings", 600, $form_id);
        ?>
                                    <li>
                                        <input type="checkbox" id="gform_enable_animation" /> <label for="gform_enable_animation"><?php 
        _e("Enable animation", "gravityforms");
        ?>
 <?php 
        gform_tooltip("form_animation");
        ?>
</label>
                                    </li>
                                    <?php 
        do_action("gform_advanced_settings", 700, $form_id);
        ?>
                                    <li>
                                        <input type="checkbox" id="gform_require_login" onclick="ToggleRequireLogin();"/> <label for="gform_require_login"><?php 
        _e("Require user to be logged in", "gravityforms");
        ?>
 <?php 
        gform_tooltip("form_require_login");
        ?>
</label>
                                        <br/>
                                        <div id="gform_require_login_container" style="display:none;">
                                            <br/>
                                            <label for="gform_require_login_message" style="display:block;">
                                                <?php 
        _e("Require Login Message", "gravityforms");
        ?>
 <?php 
        gform_tooltip("form_require_login_message");
        ?>
                                            </label>
                                            <textarea id="gform_require_login_message" class="fieldwidth-3"></textarea>
                                        </div>
                                    </li>
                                    <?php 
        do_action("gform_advanced_settings", 800, $form_id);
        ?>
                                </ul>
                            </div>
                            <div id="gform_settings_tab_3">
                                <ul class="gforms_form_settings">
                                    <?php 
        do_action("gform_confirmation_settings", 100, $form_id);
        ?>
                                    <li>
                                        <label><?php 
        _e("Confirmation Message", "gravityforms");
        ?>
</label>
                                        <div style="margin:4px 0;">
                                            <input type="radio" id="form_confirmation_show_message" name="form_confirmation" value="message" onclick="ToggleConfirmation();" />
                                            <label for="form_confirmation_show_message" class="inline">
                                                <?php 
        _e("Text", "gravityforms");
        ?>
                                                <?php 
        gform_tooltip("form_confirmation_message");
        ?>
                                            </label>
                                            &nbsp;&nbsp;
                                            <input type="radio" id="form_confirmation_show_page" name="form_confirmation" value="page" onclick="ToggleConfirmation();" />
                                            <label for="form_confirmation_show_page" class="inline">
                                                <?php 
        _e("Page", "gravityforms");
        ?>
                                                <?php 
        gform_tooltip("form_redirect_to_webpage");
        ?>
                                            </label>
                                            &nbsp;&nbsp;
                                            <input type="radio" id="form_confirmation_redirect" name="form_confirmation" value="redirect" onclick="ToggleConfirmation();" />
                                            <label for="form_confirmation_redirect" class="inline">
                                                <?php 
        _e("Redirect", "gravityforms");
        ?>
                                                <?php 
        gform_tooltip("form_redirect_to_url");
        ?>
                                            </label>

                                            <div id="form_confirmation_message_container" style="padding-top:10px;">
                                                <div>
                                                    <?php 
        GFCommon::insert_variables($form["fields"], "form_confirmation_message");
        ?>
                                                </div>
                                                <textarea id="form_confirmation_message" style="width:400px; height:300px;" ></textarea>
                                                <div style="margin-top:5px;">
                                                    <input type="checkbox" id="form_disable_autoformatting" /> <label for="form_disable_autoformatting"><?php 
        _e("Disable Auto-formatting", "gravityforms");
        ?>
 <?php 
        gform_tooltip("form_confirmation_autoformat");
        ?>
</label>
                                                </div>
                                            </div>

                                            <div id="form_confirmation_page_container" style="margin-top:5px;">
                                                <div>
                                                    <?php 
        wp_dropdown_pages(array("name" => "form_confirmation_page", "show_option_none" => __("Select a page", "gravityforms")));
        ?>
                                                </div>
                                            </div>

                                            <div id="form_confirmation_redirect_container" style="margin-top:5px;">
                                                <div>
                                                    <input type="text" id="form_confirmation_url" style="width:98%;"/>
                                                </div>
                                                <div style="margin-top:15px;">
                                                    <input type="checkbox" id="form_redirect_use_querystring" onclick="ToggleQueryString()"/> <label for="form_redirect_use_querystring"><?php 
        _e("Pass Field Data Via Query String", "gravityforms");
        ?>
 <?php 
        gform_tooltip("form_redirect_querystring");
        ?>
</label>
                                                    <br/>
                                                    <div id="form_redirect_querystring_container" style="display:none;">
                                                        <div style="margin-top:6px;">
                                                            <?php 
        GFCommon::insert_variables($form["fields"], "form_redirect_querystring", true, "", "", 40, null, "url");
        ?>
                                                        </div>
                                                        <textarea name="form_redirect_querystring" id="form_redirect_querystring" style="width:98%; height:100px;"></textarea><br/>
                                                        <div class="instruction"><?php 
        _e("Sample: phone={Phone:1}&email{Email:2}", "gravityforms");
        ?>
</div>
                                                    </div>
                                                </div>
                                            </div>
                                        </div>
                                    </li>
                                    <?php 
        do_action("gform_confirmation_settings", 200, $form_id);
        ?>
                                </ul>
                            </div>
                        </div>
                    </div>
                    <?php 
        $has_pages = GFCommon::has_pages($form);
        ?>
                    <div id="gform_pagination" class="selectable gform_settings_container" style="display:<?php 
        echo $has_pages ? "block" : "none";
        ?>
;">
                        <div class="settings_control_container">
                            <a href="javascript:void(0);" class="form_edit_icon edit_icon_collapsed" title="<?php 
        _e("Edit Last Page", "gravityforms");
        ?>
"><?php 
        _e("Edit", "gravityforms");
        ?>
</a>
                        </div>
                        <img src="<?php 
        echo GFCommon::get_base_url() . "/images/gf_pagebreak_first.png";
        ?>
" alt="<?php 
        __("First Page Options", "gravityforms");
        ?>
" title="<?php 
        __("First Page Options", "gravityforms");
        ?>
" />
                        <div id="pagination_settings" style="display: none;">
                            <ul>
                                <li style="width:100px; padding:0px;"><a href="#gform_pagination_settings_tab_1"><?php 
        _e("Properties", "gravityforms");
        ?>
</a></li>
                                <li style="width:100px; padding:0px;"><a href="#gform_pagination_settings_tab_2"><?php 
        _e("Advanced", "gravityforms");
        ?>
</a></li>
                            </ul>

                            <div id="gform_pagination_settings_tab_1">
                                <ul class="gforms_form_settings">
                                    <li>
                                        <label for="pagination_type_container">
                                            <?php 
        _e("Progress Indicator", "gravityforms");
        ?>
                                            <?php 
        gform_tooltip("form_progress_indicator");
        ?>
                                        </label>
                                        <div id="pagination_type_container" class="pagination_container" >
                                            <input type="radio" id="pagination_type_percentage" name="pagination_type" value="percentage" onclick='InitPaginationOptions();'/>
                                            <label for="pagination_type_percentage" class="inline">
                                                <?php 
        _e("Progress Bar", "gravityforms");
        ?>
                                            </label>
                                            &nbsp;&nbsp;
                                            <input type="radio" id="pagination_type_steps" name="pagination_type" value="steps" onclick='InitPaginationOptions();'/>
                                            <label for="pagination_type_steps" class="inline">
                                                <?php 
        _e("Steps", "gravityforms");
        ?>
                                            </label>
                                            &nbsp;&nbsp;
                                            <input type="radio" id="pagination_type_none" name="pagination_type" value="none" onclick='InitPaginationOptions();'/>
                                            <label for="pagination_type_none" class="inline">
                                                <?php 
        _e("None", "gravityforms");
        ?>
                                            </label>
                                        </div>
                                    </li>

                                    <li id="percentage_style_setting">

                                        <div class="percentage_style_setting" style="float:left; z-index: 99;">
                                             <label for="percentage_style" style="display:block;">
                                                <?php 
        _e("Style", "gravityforms");
        ?>
                                                <?php 
        gform_tooltip("form_percentage_style");
        ?>
                                            </label>
                                            <select id="percentage_style" onchange="TogglePercentageStyle();">
                                                <option value="blue">  <?php 
        _e("Blue", "gravityforms");
        ?>
  </option>
                                                <option value="gray">  <?php 
        _e("Gray", "gravityforms");
        ?>
  </option>
                                                <option value="green">  <?php 
        _e("Green", "gravityforms");
        ?>
  </option>
                                                <option value="orange">  <?php 
        _e("Orange", "gravityforms");
        ?>
  </option>
                                                <option value="red">  <?php 
        _e("Red", "gravityforms");
        ?>
  </option>
                                                <option value="custom">  <?php 
        _e("Custom", "gravityforms");
        ?>
  </option>
                                            </select>
                                        </div>

                                        <div class="percentage_custom_container" style="float:left; padding-left:20px;">
                                            <label for="percentage_background_color" style="display:block;">
                                                <?php 
        _e("Text Color", "gravityforms");
        ?>
                                            </label>
                                            <?php 
        self::color_picker("percentage_style_custom_color", "");
        ?>
                                        </div>

                                        <div class="percentage_custom_container" style="float:left; padding-left:20px;">
                                            <label for="percentage_background_bgcolor" style="display:block;">
                                                <?php 
        _e("Background Color", "gravityforms");
        ?>
                                            </label>
                                            <?php 
        self::color_picker("percentage_style_custom_bgcolor", "");
        ?>
                                        </div>
                                    </li>

                                    <li id="page_names_setting">
                                        <label for="page_names_container">
                                            <?php 
        _e("Page Names", "gravityforms");
        ?>
                                            <?php 
        gform_tooltip("form_page_names");
        ?>
                                        </label>
                                        <div id="page_names_container" style="margin-top:5px;">
                                            <!-- Populated dynamically from js.php -->
                                        </div>
                                    </li>
                                </ul>
                            </div>

                            <div id="gform_pagination_settings_tab_2">
                                <ul class="gforms_form_settings">
                                    <li>
                                        <label for="first_page_css_class" style="display:block;">
                                            <?php 
        _e("CSS Class Name", "gravityforms");
        ?>
                                            <?php 
        gform_tooltip("form_field_css_class");
        ?>
                                        </label>
                                        <input type="text" id="first_page_css_class" size="30"/>
                                    </li>
                                </ul>
                            </div>
                        </div>
                    </div>
                    <?php 
        $description_class = rgar($form, "descriptionPlacement") == "above" ? "description_above" : "description_below";
        ?>
                    <ul id="gform_fields" class="<?php 
        echo rgar($form, "labelPlacement") . " " . $description_class;
        ?>
" style="position: relative;">
                        <?php 
        if (is_array($form["fields"])) {
            require_once GFCommon::get_base_path() . "/form_display.php";
            foreach ($form["fields"] as $field) {
                echo GFFormDisplay::get_field($field, "", true);
            }
        }
        ?>
                    </ul>

                    <div id="gform_last_page_settings" class="selectable gform_settings_container" style="display:<?php 
        echo $has_pages ? "block" : "none";
        ?>
;">
                        <div class="settings_control_container">
                            <a href="javascript:void(0);" class="form_edit_icon edit_icon_collapsed" title="<?php 
        _e("Edit Last Page", "gravityforms");
        ?>
"><?php 
        _e("Edit", "gravityforms");
        ?>
</a>
                        </div>
                        <img src="<?php 
        echo GFCommon::get_base_url() . "/images/gf_pagebreak_end.png";
        ?>
" alt="<?php 
        __("Last Page Options", "gravityforms");
        ?>
" title="<?php 
        __("Last Page Options", "gravityforms");
        ?>
" />
                        <div id="last_page_settings" style="display:none;">
                            <ul>
                                <li style="width:100px; padding:0px;"><a href="#gform_last_page_settings_tab_1"><?php 
        _e("Properties", "gravityforms");
        ?>
</a></li>
                            </ul>
                            <div id="gform_last_page_settings_tab_1">
                                <ul class="gforms_form_settings">
                                    <li>
                                        <label for="last_page_button_container">
                                            <?php 
        _e("Previous Button", "gravityforms");
        ?>
                                            <?php 
        gform_tooltip("form_field_last_page_button");
        ?>
                                        </label>
                                        <div class="last_page_button_options" id="last_page_button_container">
                                            <input type="radio" id="last_page_button_text" name="last_page_button" value="text" onclick="TogglePageButton('last_page');"/>
                                            <label for="last_page_button_text" class="inline">
                                                <?php 
        _e("Default", "gravityforms");
        ?>
                                                <?php 
        gform_tooltip("previous_button_text");
        ?>
                                            </label>
                                            &nbsp;&nbsp;
                                            <input type="radio" id="last_page_button_image" name="last_page_button" value="image" onclick="TogglePageButton('last_page');"/>
                                            <label for="last_page_button_image" class="inline">
                                                <?php 
        _e("Image", "gravityforms");
        ?>
                                                <?php 
        gform_tooltip("previous_button_image");
        ?>
                                            </label>

                                            <div id="last_page_button_text_container" style="margin-top:5px;">
                                                <label for="last_page_button_text_input" class="inline">
                                                    <?php 
        _e("Text:", "gravityforms");
        ?>
                                                </label>
                                                <input type="text" id="last_page_button_text_input" class="input_size_b" size="40" />
                                            </div>

                                            <div id="last_page_button_image_container" style="margin-top:5px;">
                                                <label for="last_page_button_image_url" class="inline">
                                                    <?php 
        _e("Image Path:", "gravityforms");
        ?>
                                                </label>
                                                <input type="text" id="last_page_button_image_url" size="45"/>
                                            </div>
                                        </div>
                                    </li>
                                </ul>
                            </div>
                        </div>
                    </div>

                    <div>

                        <div id="after_insert_dialog" style="display:none;">
                            <h3><?php 
        _e("You have successfully saved your form!", "gravityforms");
        ?>
</h3>
                            <p><?php 
        _e("What would you like to do next?", "gravityforms");
        ?>
</p>
                            <div class="new-form-option"><a title="<?php 
        _e("Preview this form", "gravityforms");
        ?>
" id="preview_form_link" href="<?php 
        echo site_url();
        ?>
/?gf_page=preview&id={formid}" target="_blank"><?php 
        _e("Preview this Form", "gravityforms");
        ?>
</a></div>

                            <?php 
        if (GFCommon::current_user_can_any("gravityforms_edit_forms")) {
            ?>
                                <div class="new-form-option"><a title="<?php 
            _e("Setup email notifications for this form", "gravityforms");
            ?>
" id="notification_form_link" href="#"><?php 
            _e("Setup Email Notifications for this Form", "gravityforms");
            ?>
</a></div>
                            <?php 
        }
        ?>

                            <div class="new-form-option"><a title="<?php 
        _e("Continue editing this form", "gravityforms");
        ?>
" id="edit_form_link" href="#"><?php 
        _e("Continue Editing this Form", "gravityforms");
        ?>
</a></div>

                            <div class="new-form-option"><a title="<?php 
        _e("I am done. Take me back to form list", "gravityforms");
        ?>
" href="?page=gf_edit_forms"><?php 
        _e("Return to Form List", "gravityforms");
        ?>
</a></div>

                        </div>


                    </div>
                    <div id="field_settings" style="display: none;">
                        <ul>
                            <li style="width:100px; padding:0px;"><a href="#gform_tab_1"><?php 
        _e("Properties", "gravityforms");
        ?>
</a></li>
                            <li style="width:100px; padding:0px; "><a href="#gform_tab_2"><?php 
        _e("Advanced", "gravityforms");
        ?>
</a></li>
                        </ul>
                        <div id="gform_tab_1">
                            <ul>
                            <?php 
        do_action("gform_field_standard_settings", 0, $form_id);
        ?>
                            <li class="label_setting field_setting">
                                <label for="field_label">
                                    <?php 
        _e("Field Label", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_label");
        ?>
                                    <?php 
        gform_tooltip("form_field_label_html");
        ?>
                                </label>
                                <input type="text" id="field_label" class="fieldwidth-3" onkeyup="SetFieldLabel(this.value)" size="35"/>
                            </li>
                            <li class="product_field_setting field_setting">
                                <label for="product_field">
                                    <?php 
        _e("Product Field", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_product");
        ?>
                                </label>
                               <select id="product_field" onchange="SetFieldProperty('productField', jQuery(this).val());">
                                   <!-- will be populated when field is selected (js.php) -->
                               </select>
                            </li>
                            <?php 
        do_action("gform_field_standard_settings", 25, $form_id);
        ?>
                            <li class="product_field_type_setting field_setting">
                                <label for="product_field_type">
                                    <?php 
        _e("Field Type", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_type");
        ?>
                                </label>
                                <select id="product_field_type" onchange="if(jQuery(this).val() == '') return; jQuery('#field_settings').slideUp(function(){StartChangeProductType(jQuery('#product_field_type').val());});">
                                    <option value="singleproduct"><?php 
        _e("Single Product", "gravityforms");
        ?>
</option>
                                    <option value="select"><?php 
        _e("Drop Down", "gravityforms");
        ?>
</option>
                                    <option value="radio"><?php 
        _e("Radio Buttons", "gravityforms");
        ?>
</option>
                                    <option value="price"><?php 
        _e("User Defined Price", "gravityforms");
        ?>
</option>
                                    <option value="hiddenproduct"><?php 
        _e("Hidden", "gravityforms");
        ?>
</option>
                                </select>
                            </li>
                            <?php 
        do_action("gform_field_standard_settings", 37, $form_id);
        ?>
                            <li class="shipping_field_type_setting field_setting">
                                <label for="shipping_field_type">
                                    <?php 
        _e("Field Type", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_type");
        ?>
                                </label>
                                <select id="shipping_field_type" onchange="if(jQuery(this).val() == '') return; jQuery('#field_settings').slideUp(function(){StartChangeShippingType(jQuery('#shipping_field_type').val());});">
                                    <option value="singleshipping"><?php 
        _e("Single Method", "gravityforms");
        ?>
</option>
                                    <option value="select"><?php 
        _e("Drop Down", "gravityforms");
        ?>
</option>
                                    <option value="radio"><?php 
        _e("Radio Buttons", "gravityforms");
        ?>
</option>
                                </select>
                            </li>
                            <?php 
        do_action("gform_field_standard_settings", 50, $form_id);
        ?>
                            <li class="base_price_setting field_setting">
                                <label for="field_base_price">
                                    <?php 
        _e("Price", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_base_price");
        ?>
                                </label>
                                <input type="text" id="field_base_price" onchange="SetBasePrice(this.value)"/>
                            </li>
                            <?php 
        do_action("gform_field_standard_settings", 75, $form_id);
        ?>
                            <li class="disable_quantity_setting field_setting">
                                <input type="checkbox" name="field_disable_quantity" id="field_disable_quantity" onclick="SetDisableQuantity(jQuery(this).is(':checked'));"/>
                                <label for="field_disable_quantity" class="inline">
                                    <?php 
        _e("Disable quantity field", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_disable_quantity");
        ?>
                                </label>

                            </li>
                            <?php 
        do_action("gform_field_standard_settings", 100, $form_id);
        ?>
                            <li class="option_field_type_setting field_setting">
                                <label for="option_field_type">
                                    <?php 
        _e("Field Type", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_type");
        ?>
                                </label>
                                <select id="option_field_type" onchange="if(jQuery(this).val() == '') return; jQuery('#field_settings').slideUp(function(){StartChangeInputType(jQuery('#option_field_type').val());});">
                                    <option value="select"><?php 
        _e("Drop Down", "gravityforms");
        ?>
</option>
                                    <option value="checkbox"><?php 
        _e("Checkboxes", "gravityforms");
        ?>
</option>
                                    <option value="radio"><?php 
        _e("Radio Buttons", "gravityforms");
        ?>
</option>
                                </select>
                            </li>
                             <?php 
        do_action("gform_field_standard_settings", 125, $form_id);
        ?>
                            <li class="donation_field_type_setting field_setting">
                                <label for="donation_field_type">
                                    <?php 
        _e("Field Type", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_type");
        ?>
                                </label>
                                <select id="donation_field_type" onchange="if(jQuery(this).val() == '') return; jQuery('#field_settings').slideUp(function(){StartChangeDonationType(jQuery('#donation_field_type').val());});">
                                    <option value="select"><?php 
        _e("Drop Down", "gravityforms");
        ?>
</option>
                                    <option value="donation"><?php 
        _e("User Defined Price", "gravityforms");
        ?>
</option>
                                    <option value="radio"><?php 
        _e("Radio Buttons", "gravityforms");
        ?>
</option>
                                </select>
                            </li>
                            <?php 
        do_action("gform_field_standard_settings", 150, $form_id);
        ?>
                            <li class="quantity_field_type_setting field_setting">
                                <label for="quantity_field_type">
                                    <?php 
        _e("Field Type", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_type");
        ?>
                                </label>
                                <select id="quantity_field_type" onchange="if(jQuery(this).val() == '') return; jQuery('#field_settings').slideUp(function(){StartChangeInputType(jQuery('#quantity_field_type').val());});">
                                    <option value="number"><?php 
        _e("Number", "gravityforms");
        ?>
</option>
                                    <option value="select"><?php 
        _e("Drop Down", "gravityforms");
        ?>
</option>
                                    <option value="hidden"><?php 
        _e("Hidden", "gravityforms");
        ?>
</option>
                                </select>
                            </li>

                            <?php 
        do_action("gform_field_standard_settings", 200, $form_id);
        ?>
                            <li class="content_setting field_setting">
                                <label for="field_content">
                                    <?php 
        _e("Content", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_content");
        ?>
                                </label>
                                <textarea id="field_content" class="fieldwidth-3 fieldheight-1" onkeyup="SetFieldProperty('content', this.value);"></textarea>
                            </li>

                            <?php 
        do_action("gform_field_standard_settings", 225, $form_id);
        ?>
                            <li class="next_button_setting field_setting">
                                <label for="next_button_container">
                                    <?php 
        _e("Next Button", "gravityforms");
        ?>
                                </label>
                                <div class="next_button_options" id="next_button_container">
                                    <input type="radio" id="next_button_text" name="next_button" value="text" onclick="TogglePageButton('next'); SetPageButton('next');"/>
                                    <label for="next_button_text" class="inline">
                                        <?php 
        _e("Default", "gravityforms");
        ?>
                                        <?php 
        gform_tooltip("next_button_text");
        ?>
                                    </label>
                                    &nbsp;&nbsp;
                                    <input type="radio" id="next_button_image" name="next_button" value="image" onclick="TogglePageButton('next'); SetPageButton('next');"/>
                                    <label for="next_button_image" class="inline">
                                        <?php 
        _e("Image", "gravityforms");
        ?>
                                        <?php 
        gform_tooltip("next_button_image");
        ?>
                                    </label>

                                    <div id="next_button_text_container" style="margin-top:5px;">
                                    <label for="next_button_text_input" class="inline">
                                            <?php 
        _e("Text:", "gravityforms");
        ?>
                                        </label>
                                        <input type="text" id="next_button_text_input" class="input_size_b" size="40" onkeyup="SetPageButton('next');"/>
                                    </div>

                                    <div id="next_button_image_container" style="margin-top:5px;">
                                        <label for="next_button_image_url" class="inline">
                                            <?php 
        _e("Image Path:", "gravityforms");
        ?>
                                        </label>
                                        <input type="text" id="next_button_image_url" size="45" onkeyup="SetPageButton('next');"/>
                                    </div>
                                </div>
                            </li>

                            <?php 
        do_action("gform_field_standard_settings", 237, $form_id);
        ?>
                            <li class="previous_button_setting field_setting">
                                <label for="previous_button_container">
                                    <?php 
        _e("Previous Button", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_previous_button");
        ?>
                                </label>
                                <div class="previous_button_options" id="previous_button_container">
                                    <input type="radio" id="previous_button_text" name="previous_button" value="text" onclick="TogglePageButton('previous'); SetPageButton('previous');"/>
                                    <label for="previous_button_text" class="inline">
                                        <?php 
        _e("Default", "gravityforms");
        ?>
                                        <?php 
        gform_tooltip("previous_button_text");
        ?>
                                    </label>
                                    &nbsp;&nbsp;
                                    <input type="radio" id="previous_button_image" name="previous_button" value="image" onclick="TogglePageButton('previous'); SetPageButton('previous');"/>
                                    <label for="previous_button_image" class="inline">
                                        <?php 
        _e("Image", "gravityforms");
        ?>
                                        <?php 
        gform_tooltip("previous_button_image");
        ?>
                                    </label>

                                    <div id="previous_button_text_container" style="margin-top:5px;">
                                        <label for="previous_button_text_input" class="inline">
                                            <?php 
        _e("Text:", "gravityforms");
        ?>
                                        </label>
                                        <input type="text" id="previous_button_text_input" class="input_size_b" size="40" onkeyup="SetPageButton('previous');" />
                                    </div>

                                    <div id="previous_button_image_container" style="margin-top:5px;">
                                        <label for="previous_button_image_url" class="inline">
                                            <?php 
        _e("Image Path:", "gravityforms");
        ?>
                                        </label>
                                        <input type="text" id="previous_button_image_url" size="45" onkeyup="SetPageButton('previous');"/>
                                    </div>
                                </div>
                            </li>

                            <?php 
        do_action("gform_field_standard_settings", 250, $form_id);
        ?>
                            <li class="disable_margins_setting field_setting">
                                <input type="checkbox" id="field_margins" onclick="SetFieldProperty('disableMargins', this.checked);"/>
                                <label for="field_disable_margins" class="inline">
                                    <?php 
        _e("Disable default margins", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_disable_margins");
        ?>
                                </label><br/>
                            </li>
                            <?php 
        do_action("gform_field_standard_settings", 300, $form_id);
        ?>
                            <li class="post_custom_field_type_setting field_setting">
                                <label for="post_custom_field_type">
                                    <?php 
        _e("Field Type", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_type");
        ?>
                                </label>
                                <select id="post_custom_field_type" onchange="if(jQuery(this).val() == '') return; jQuery('#field_settings').slideUp(function(){StartChangeInputType(jQuery('#post_custom_field_type').val());});">
                                    <option value="" class="option_header"><?php 
        _e("Standard Fields", "gravityforms");
        ?>
</option>
                                    <option value="text"><?php 
        _e("Single line text", "gravityforms");
        ?>
</option>
                                    <option value="textarea"><?php 
        _e("Paragraph Text", "gravityforms");
        ?>
</option>
                                    <option value="select"><?php 
        _e("Drop Down", "gravityforms");
        ?>
</option>
                                    <option value="multiselect"><?php 
        _e("Multi Select", "gravityforms");
        ?>
</option>
                                    <option value="number"><?php 
        _e("Number", "gravityforms");
        ?>
</option>
                                    <option value="checkbox"><?php 
        _e("Checkboxes", "gravityforms");
        ?>
</option>
                                    <option value="radio"><?php 
        _e("Radio Buttons", "gravityforms");
        ?>
</option>
                                    <option value="hidden"><?php 
        _e("Hidden", "gravityforms");
        ?>
</option>

                                    <option value="" class="option_header"><?php 
        _e("Advanced Fields", "gravityforms");
        ?>
</option>
                                    <option value="date"><?php 
        _e("Date", "gravityforms");
        ?>
</option>
                                    <option value="time"><?php 
        _e("Time", "gravityforms");
        ?>
</option>
                                    <option value="phone"><?php 
        _e("Phone", "gravityforms");
        ?>
</option>
                                    <option value="website"><?php 
        _e("Website", "gravityforms");
        ?>
</option>
                                    <option value="email"><?php 
        _e("Email", "gravityforms");
        ?>
</option>
                                    <option value="fileupload"><?php 
        _e("File Upload", "gravityforms");
        ?>
</option>
                                    <option value="list"><?php 
        _e("List", "gravityforms");
        ?>
</option>
                                </select>
                            </li>
                            <?php 
        do_action("gform_field_standard_settings", 350, $form_id);
        ?>
                            <li class="post_tag_type_setting field_setting">
                                <label for="post_tag_type">
                                    <?php 
        _e("Field Type", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_type");
        ?>
                                </label>
                                <select id="post_tag_type" onchange="if(jQuery(this).val() == '') return; jQuery('#field_settings').slideUp(function(){StartChangeInputType(jQuery('#post_tag_type').val());});">
                                    <option value="text"><?php 
        _e("Single line text", "gravityforms");
        ?>
</option>
                                    <option value="select"><?php 
        _e("Drop Down", "gravityforms");
        ?>
</option>
                                    <option value="multiselect"><?php 
        _e("Multi Select", "gravityforms");
        ?>
</option>
                                    <option value="checkbox"><?php 
        _e("Checkboxes", "gravityforms");
        ?>
</option>
                                    <option value="radio"><?php 
        _e("Radio Buttons", "gravityforms");
        ?>
</option>
                                </select>
                            </li>
                            <?php 
        do_action("gform_field_standard_settings", 400, $form_id);
        ?>
                            <?php 
        if (class_exists("ReallySimpleCaptcha")) {
            ?>
                                <li class="captcha_type_setting field_setting">
                                    <label for="field_captcha_type">
                                        <?php 
            _e("Type", "gravityforms");
            ?>
                                        <?php 
            gform_tooltip("form_field_captcha_type");
            ?>
                                    </label>
                                    <select id="field_captcha_type" onchange="StartChangeCaptchaType(jQuery(this).val())">
                                        <option value="captcha"><?php 
            _e("reCAPTCHA", "gravityforms");
            ?>
</option>
                                        <option value="simple_captcha"><?php 
            _e("Really Simple CAPTCHA", "gravityforms");
            ?>
</option>
                                        <option value="math"><?php 
            _e("Math Challenge", "gravityforms");
            ?>
</option>
                                    </select>
                                </li>
                                <?php 
            do_action("gform_field_standard_settings", 450, $form_id);
            ?>
                                <li class="captcha_size_setting field_setting">
                                    <label for="field_captcha_size">
                                        <?php 
            _e("Size", "gravityforms");
            ?>
                                    </label>
                                    <select id="field_captcha_size" onchange="SetCaptchaSize(jQuery(this).val());">
                                        <option value="small"><?php 
            _e("Small", "gravityforms");
            ?>
</option>
                                        <option value="medium"><?php 
            _e("Medium", "gravityforms");
            ?>
</option>
                                        <option value="large"><?php 
            _e("Large", "gravityforms");
            ?>
</option>
                                    </select>
                                </li>
                                <?php 
            do_action("gform_field_standard_settings", 500, $form_id);
            ?>
                                <li class="captcha_fg_setting field_setting">
                                    <label for="field_captcha_fg">
                                        <?php 
            _e("Font Color", "gravityforms");
            ?>
                                    </label>
                                    <?php 
            self::color_picker("field_captcha_fg", "SetCaptchaFontColor");
            ?>
                                </li>
                                <?php 
            do_action("gform_field_standard_settings", 550, $form_id);
            ?>
                                <li class="captcha_bg_setting field_setting">
                                    <label for="field_captcha_bg">
                                        <?php 
            _e("Background Color", "gravityforms");
            ?>
                                    </label>
                                    <?php 
            self::color_picker("field_captcha_bg", "SetCaptchaBackgroundColor");
            ?>
                                </li>
                                <?php 
        }
        do_action("gform_field_standard_settings", 600, $form_id);
        ?>
                            <li class="captcha_theme_setting field_setting">
                                <label for="field_captcha_theme">
                                    <?php 
        _e("Theme", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_recaptcha_theme");
        ?>
                                </label>
                                <select id="field_captcha_theme" onchange="SetCaptchaTheme(this.value, '<?php 
        echo GFCommon::get_base_url();
        ?>
/images/captcha_' + this.value + '.jpg')">
                                    <option value="red"><?php 
        _e("Red", "gravityforms");
        ?>
</option>
                                    <option value="white"><?php 
        _e("White", "gravityforms");
        ?>
</option>
                                    <option value="blackglass"><?php 
        _e("Black Glass", "gravityforms");
        ?>
</option>
                                    <option value="clean"><?php 
        _e("Clean", "gravityforms");
        ?>
</option>
                                </select>
                            </li>
                            <?php 
        do_action("gform_field_standard_settings", 650, $form_id);
        ?>
                            <li class="post_custom_field_setting field_setting">
                                <label for="field_custom_field_name">
                                    <?php 
        _e("Custom Field Name", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_custom_field_name");
        ?>
                                </label>
                                <div style="width:100px; float:left;">
                                    <input type="radio" name="field_custom" id="field_custom_existing" size="10" onclick="ToggleCustomField();" />
                                    <label for="field_custom_existing" class="inline">
                                        <?php 
        _e("Existing", "gravityforms");
        ?>
                                    </label>
                                </div>
                                <div style="width:100px; float:left;">
                                    <input type="radio" name="field_custom" id="field_custom_new" size="10" onclick="ToggleCustomField();" />
                                    <label for="field_custom_new" class="inline">
                                        <?php 
        _e("New", "gravityforms");
        ?>
                                    </label>
                                </div>
                                <div class="clear">
                                   <input type="text" id="field_custom_field_name_text" size="35" onkeyup="SetFieldProperty('postCustomFieldName', this.value);"/>
                                   <select id="field_custom_field_name_select" onchange="SetFieldProperty('postCustomFieldName', jQuery(this).val());">
                                        <option value=""><?php 
        _e("Select an existing custom field", "gravityforms");
        ?>
</option>
                                        <?php 
        $custom_field_names = RGFormsModel::get_custom_field_names();
        foreach ($custom_field_names as $name) {
            ?>
                                                <option value="<?php 
            echo $name;
            ?>
"><?php 
            echo $name;
            ?>
</option>
                                                <?php 
        }
        ?>
                                    </select>
                                </div>
                            </li>
                            <?php 
        do_action("gform_field_standard_settings", 700, $form_id);
        ?>
                            <li class="post_status_setting field_setting">
                                <label for="field_post_status">
                                    <?php 
        _e("Post Status", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_post_status");
        ?>
                                </label>
                                <select id="field_post_status" name="field_post_status">
                                    <option value="draft"><?php 
        _e("Draft", "gravityforms");
        ?>
</option>
                                    <option value="pending"><?php 
        _e("Pending Review", "gravityforms");
        ?>
</option>
                                    <option value="publish"><?php 
        _e("Published", "gravityforms");
        ?>
</option>
                                </select>
                            </li>
                            <?php 
        do_action("gform_field_standard_settings", 750, $form_id);
        ?>
                            <li class="post_author_setting field_setting">
                                <label for="field_post_author">
                                    <?php 
        _e("Default Post Author", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_post_author");
        ?>
                                </label>
                                <?php 
        $args = array('name' => 'field_post_author');
        $args = apply_filters("gform_author_dropdown_args_" . rgar($form, "id"), apply_filters("gform_author_dropdown_args", $args));
        wp_dropdown_users($args);
        ?>
                                <div>
                                    <input type="checkbox" id="gfield_current_user_as_author"/>
                                    <label for="gfield_current_user_as_author" class="inline"><?php 
        _e("Use logged in user as author", "gravityforms");
        ?>
 <?php 
        gform_tooltip("form_field_current_user_as_author");
        ?>
</label>
                                </div>
                            </li>

                            <?php 
        do_action("gform_field_standard_settings", 775, $form_id);
        ?>

                            <?php 
        if (current_theme_supports('post-formats')) {
            ?>

                            <li class="post_format_setting field_setting">
                                <label for="field_post_format">
                                    <?php 
            _e("Post Format", "gravityforms");
            ?>
                                    <?php 
            gform_tooltip("form_field_post_format");
            ?>
                                </label>

                                <?php 
            $post_formats = get_theme_support('post-formats');
            $post_formats_dropdown = '<option value="0">Standard</option>';
            foreach ($post_formats[0] as $post_format) {
                $post_formats_dropdown .= "<option value='{$post_format}'>" . ucfirst($post_format) . "</option>";
            }
            echo '<select name="field_post_format" id="field_post_format">' . $post_formats_dropdown . '</select>';
            ?>

                            </li>

                            <?php 
        }
        // if theme supports post formats
        ?>

                            <?php 
        do_action("gform_field_standard_settings", 800, $form_id);
        ?>

                            <li class="post_category_setting field_setting">
                                <label for="field_post_category">
                                    <?php 
        _e("Post Category", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_post_category");
        ?>
                                </label>
                                <?php 
        wp_dropdown_categories(array('selected' => get_option('default_category'), 'hide_empty' => 0, 'id' => 'field_post_category', 'name' => 'field_post_category', 'orderby' => 'name', 'selected' => 'field_post_category', 'hierarchical' => true));
        ?>
                            </li>
                            <?php 
        do_action("gform_field_standard_settings", 850, $form_id);
        ?>
                            <li class="post_category_checkbox_setting field_setting">
                                <label for="field_post_category">
                                    <?php 
        _e("Category", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_post_category_selection");
        ?>
                                </label>

                                <input type="radio" id="gfield_category_all" name="gfield_category" value="all" onclick="ToggleCategory();"/>
                                <label for="gfield_category_all" class="inline">
                                    <?php 
        _e("All Categories", "gravityforms");
        ?>

                                </label>
                                &nbsp;&nbsp;
                                <input type="radio" id="gfield_category_select" name="gfield_category" value="select" onclick="ToggleCategory();"/>
                                <label for="form_button_image" class="inline">
                                    <?php 
        _e("Select Categories", "gravityforms");
        ?>
                                </label>

                                <div id="gfield_settings_category_container">
                                    <table cellpadding="0" cellspacing="5">
                                    <?php 
        $categories = get_categories(array('hide_empty' => 0));
        $count = 0;
        $category_rows = '';
        self::_cat_rows($categories, $count, $category_rows);
        echo $category_rows;
        ?>
                                    </table>
                                </div>
                            </li>

                            <?php 
        do_action("gform_field_standard_settings", 875, $form_id);
        ?>
                            <li class="post_category_initial_item_setting field_setting">
                                <input type="checkbox" id="gfield_post_category_initial_item_enabled" onclick="TogglePostCategoryInitialItem(); SetCategoryInitialItem();"/>
                                <label for="gfield_post_category_initial_item_enabled" class="inline">
                                    <?php 
        _e("Display placeholder", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_post_category_initial_item");
        ?>
                                </label>
                            </li>
                            <li id="gfield_post_category_initial_item_container">
                                <label for="field_post_category_initial_item">
                                    <?php 
        _e("Placeholder Label", "gravityforms");
        ?>
                                </label>
                                <input type="text" id="field_post_category_initial_item" onchange="SetCategoryInitialItem();" class="fieldwidth-3" size="35"/>
                            </li>
                            <?php 
        do_action("gform_field_standard_settings", 900, $form_id);
        ?>
                            <li class="post_content_template_setting field_setting">
                                <input type="checkbox" id="gfield_post_content_enabled" onclick="TogglePostContentTemplate();"/>
                                <label for="gfield_post_content_enabled" class="inline">
                                    <?php 
        _e("Create content template", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_post_content_template_enable");
        ?>
                                </label>

                                <div id="gfield_post_content_container">
                                    <div>
                                        <?php 
        GFCommon::insert_post_content_variables($form["fields"], "field_post_content_template", '', 25);
        ?>
                                    </div>
                                    <textarea id="field_post_content_template" class="fieldwidth-3 fieldheight-1"></textarea>
                                </div>
                            </li>
                            <?php 
        do_action("gform_field_standard_settings", 950, $form_id);
        ?>
                            <li class="post_title_template_setting field_setting">
                                <input type="checkbox" id="gfield_post_title_enabled" onclick="TogglePostTitleTemplate();" />
                                <label for="gfield_post_title_enabled" class="inline">
                                    <?php 
        _e("Create content template", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_post_title_template_enable");
        ?>
                                </label>

                                <div id="gfield_post_title_container">
                                    <div>
                                        <?php 
        GFCommon::insert_variables($form["fields"], "field_post_title_template", true, '', '', 25, array("post_image", "fileupload"));
        ?>
                                    </div>
                                    <input type="text" id="field_post_title_template" class="fieldwidth-3"/>
                                </div>
                            </li>
                            <?php 
        do_action("gform_field_standard_settings", 975, $form_id);
        ?>
                            <li class="customfield_content_template_setting field_setting">
                                <input type="checkbox" id="gfield_customfield_content_enabled" onclick="ToggleCustomFieldTemplate(); SetCustomFieldTemplate();"/>
                                <label for="gfield_customfield_content_enabled" class="inline">
                                    <?php 
        _e("Create content template", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_customfield_content_template_enable");
        ?>
                                </label>

                                <div id="gfield_customfield_content_container">
                                    <div>
                                        <?php 
        GFCommon::insert_post_content_variables($form["fields"], "field_customfield_content_template", 'SetCustomFieldTemplate', 25);
        ?>
                                    </div>
                                    <textarea id="field_customfield_content_template" class="fieldwidth-3 fieldheight-1" onkeyup="SetCustomFieldTemplate();"></textarea>
                                </div>
                            </li>
                            <?php 
        do_action("gform_field_standard_settings", 1000, $form_id);
        ?>
                            <li class="post_image_setting field_setting">
                                <label><?php 
        _e("Image Metadata", "gravityforms");
        ?>
 <?php 
        gform_tooltip("form_field_image_meta");
        ?>
</label>
                                <input type="checkbox" id="gfield_display_title" onclick="SetPostImageMeta();" />
                                <label for="gfield_display_title" class="inline">
                                    <?php 
        _e("Title", "gravityforms");
        ?>
                                </label>
                                <br/>
                                <input type="checkbox" id="gfield_display_caption"  onclick="SetPostImageMeta();" />
                                <label for="gfield_display_caption" class="inline">
                                    <?php 
        _e("Caption", "gravityforms");
        ?>
                                </label>
                                <br/>
                                <input type="checkbox" id="gfield_display_description"  onclick="SetPostImageMeta();"/>
                                <label for="gfield_display_description" class="inline">
                                    <?php 
        _e("Description", "gravityforms");
        ?>
                                </label>
                            </li>

                            <?php 
        do_action("gform_field_standard_settings", 1025, $form_id);
        ?>

                            <li class="post_image_featured_image field_setting">
                                <input type="checkbox" id="gfield_featured_image" onclick="SetFeaturedImage();" />
                                <label for="gfield_featured_image" class="inline"><?php 
        _e('Set as Featured Image', 'gravityforms');
        ?>
 <?php 
        gform_tooltip("form_field_featured_image");
        ?>
</label>
                            </li>

                            <?php 
        do_action("gform_field_standard_settings", 1050, $form_id);
        ?>
                            <li class="address_setting field_setting">
                                <?php 
        $addressTypes = GFCommon::get_address_types(rgar($form, "id"));
        ?>
                                <label for="field_address_type">
                                    <?php 
        _e("Address Type", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_address_type");
        ?>
                                </label>
                                <select id="field_address_type" onchange="SetAddressType();">
                                    <?php 
        foreach ($addressTypes as $key => $addressType) {
            ?>
                                        <option value="<?php 
            echo $key;
            ?>
"><?php 
            echo $addressType["label"];
            ?>
</option>
                                        <?php 
        }
        ?>
                                </select>

                                <?php 
        foreach ($addressTypes as $key => $addressType) {
            $state_label = isset($addressType["state_label"]) ? $addressType["state_label"] : __("State", "gravityforms");
            ?>
                                    <div id="address_type_container_<?php 
            echo $key;
            ?>
" class="gfield_sub_setting gfield_address_type_container">
                                        <input type="hidden" id="field_address_country_<?php 
            echo $key;
            ?>
" value="<?php 
            echo isset($addressType["country"]) ? $addressType["country"] : "";
            ?>
" />
                                        <input type="hidden" id="field_address_zip_label_<?php 
            echo $key;
            ?>
" value="<?php 
            echo isset($addressType["zip_label"]) ? $addressType["zip_label"] : __("Postal Code", "gravityforms");
            ?>
" />
                                        <input type="hidden" id="field_address_state_label_<?php 
            echo $key;
            ?>
" value="<?php 
            echo $state_label;
            ?>
" />
                                        <input type="hidden" id="field_address_has_states_<?php 
            echo $key;
            ?>
" value="<?php 
            echo is_array(rgget("states", $addressType)) ? "1" : "";
            ?>
" />

                                        <?php 
            if (isset($addressType["states"]) && is_array($addressType["states"])) {
                ?>
                                            <label for="field_address_default_state_<?php 
                echo $key;
                ?>
">
                                                <?php 
                echo sprintf(__("Default %s", "gravityforms"), $state_label);
                ?>
                                                <?php 
                gform_tooltip("form_field_address_default_state_{$key}");
                ?>
                                            </label>

                                            <select id="field_address_default_state_<?php 
                echo $key;
                ?>
" class="field_address_default_state" onchange="SetAddressProperties();">
                                                <?php 
                echo GFCommon::get_state_dropdown($addressType["states"]);
                ?>
                                            </select>
                                            <?php 
            }
            ?>

                                        <?php 
            if (!isset($addressType["country"])) {
                ?>
                                             <label for="field_address_default_country_<?php 
                echo $key;
                ?>
">
                                                <?php 
                _e("Default Country", "gravityforms");
                ?>
                                                <?php 
                gform_tooltip("form_field_address_default_country");
                ?>
                                            </label>
                                            <select id="field_address_default_country_<?php 
                echo $key;
                ?>
" class="field_address_default_country" onchange="SetAddressProperties();">
                                                <?php 
                echo GFCommon::get_country_dropdown();
                ?>
                                            </select>

                                            <div class="gfield_sub_setting">
                                                <input type="checkbox" id="field_address_hide_country_<?php 
                echo $key;
                ?>
" onclick="SetAddressProperties();"/>
                                                <label for="field_address_hide_country" class="inline">
                                                    <?php 
                _e("Hide Country Field", "gravityforms");
                ?>
                                                    <?php 
                gform_tooltip("form_field_address_hide_country");
                ?>
                                                </label>
                                            </div>
                                            <?php 
            }
            ?>

                                        <div class="gfield_sub_setting">
                                            <input type="checkbox" id="field_address_hide_state_<?php 
            echo $key;
            ?>
" onclick="SetAddressProperties();"/>
                                            <label for="field_address_hide_state_<?php 
            echo $key;
            ?>
" class="inline">
                                                <?php 
            echo sprintf(__("Hide %s Field", "gravityforms"), $addressType["state_label"]);
            ?>
                                                <?php 
            gform_tooltip("form_field_address_hide_state_{$key}");
            ?>
                                            </label>
                                        </div>
                                    </div>
                                    <?php 
        }
        ?>

                                <div class="gfield_sub_setting">
                                    <input type="checkbox" id="field_address_hide_address2" onclick="SetAddressProperties();"/>
                                    <label for="field_address_hide_address2" class="inline">
                                        <?php 
        _e("Hide Address Line 2 Field", "gravityforms");
        ?>
                                        <?php 
        gform_tooltip("form_field_address_hide_address2");
        ?>
                                    </label>
                                </div>
                            </li>
                            <?php 
        do_action("gform_field_standard_settings", 1100, $form_id);
        ?>
                            <li class="name_format_setting field_setting">
                                <label for="field_name_format">
                                    <?php 
        _e("Name Format", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_name_format");
        ?>
                                </label>
                                <select id="field_name_format" onchange="StartChangeNameFormat(jQuery(this).val());">
                                    <option value="normal"><?php 
        _e("Normal", "gravityforms");
        ?>
</option>
                                    <option value="extended"><?php 
        _e("Extended", "gravityforms");
        ?>
</option>
                                    <option value="simple"><?php 
        _e("Simple", "gravityforms");
        ?>
</option>
                                </select>
                            </li>
                            <?php 
        do_action("gform_field_standard_settings", 1150, $form_id);
        ?>
                            <li class="date_input_type_setting field_setting">
                                <label for="field_date_input_type">
                                    <?php 
        _e("Date Input Type", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_date_input_type");
        ?>
                                </label>
                                <select id="field_date_input_type" onchange="SetDateInputType(jQuery(this).val());">
                                    <option value="datefield"><?php 
        _e("Date Field", "gravityforms");
        ?>
</option>
                                    <option value="datepicker"><?php 
        _e("Date Picker", "gravityforms");
        ?>
</option>
                                    <option value="datedropdown"><?php 
        _e("Date Drop Down", "gravityforms");
        ?>
</option>
                                </select>
                                <div id="date_picker_container">

                                    <input type="radio" id="gsetting_icon_none" name="gsetting_icon" value="none" onclick="SetCalendarIconType(this.value);"/>
                                    <label for="gsetting_icon_none" class="inline">
                                        <?php 
        _e("No Icon", "gravityforms");
        ?>
                                    </label>
                                    &nbsp;&nbsp;
                                    <input type="radio" id="gsetting_icon_calendar" name="gsetting_icon" value="calendar" onclick="SetCalendarIconType(this.value);"/>
                                    <label for="gsetting_icon_calendar" class="inline">
                                        <?php 
        _e("Calendar Icon", "gravityforms");
        ?>
                                    </label>
                                    &nbsp;&nbsp;
                                    <input type="radio" id="gsetting_icon_custom" name="gsetting_icon" value="custom" onclick="SetCalendarIconType(this.value);"/>
                                    <label for="gsetting_icon_custom" class="inline">
                                        <?php 
        _e("Custom Icon", "gravityforms");
        ?>
                                    </label>

                                    <div id="gfield_icon_url_container">
                                        <label for="gfield_calendar_icon_url" class="inline">
                                            <?php 
        _e("Image Path: ", "gravityforms");
        ?>
                                        </label>
                                        <input type="text" id="gfield_calendar_icon_url" size="45" onkeyup="SetFieldProperty('calendarIconUrl', this.value);"/>
                                        <div class="instruction"><?php 
        _e("Preview this form to see your custom icon.", "gravityforms");
        ?>
</div>
                                    </div>
                                </div>
                            </li>
                            <?php 
        do_action("gform_field_standard_settings", 1200, $form_id);
        ?>
                            <li class="date_format_setting field_setting">
                                <label for="field_date_format">
                                    <?php 
        _e("Date Format", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_date_format");
        ?>
                                </label>
                                <select id="field_date_format" onchange="SetDateFormat(jQuery(this).val());">
                                    <option value="mdy">mm/dd/yyyy</option>
                                    <option value="dmy">dd/mm/yyyy</option>
                                    <option value="dmy_dash">dd-mm-yyyy</option>
                                    <option value="dmy_dot">dd.mm.yyyy</option>
                                    <option value="ymd_slash">yyyy/mm/dd</option>
                                    <option value="ymd_dash">yyyy-mm-dd</option>
                                    <option value="ymd_dot">yyyy.mm.dd</option>
                                </select>
                            </li>
                            <?php 
        do_action("gform_field_standard_settings", 1250, $form_id);
        ?>
                            <li class="file_extensions_setting field_setting">
                                <label for="field_file_extension">
                                    <?php 
        _e("Allowed file extensions", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_fileupload_allowed_extensions");
        ?>
                                </label>
                               <input type="text" id="field_file_extension" size="40" onkeyup="SetFieldProperty('allowedExtensions', this.value);"/>
                               <div><small><?php 
        _e("Separated with commas (i.e. jpg, gif, png, pdf)", "gravityforms");
        ?>
</small></div>
                            </li>

                            <?php 
        do_action("gform_field_standard_settings", 1275, $form_id);
        ?>
                            <li class="columns_setting field_setting">

                                <input type="checkbox" id="field_columns_enabled" onclick="SetFieldProperty('enableColumns', this.checked); ToggleColumns();"/>
                                <label for="field_columns_enabled" class="inline"><?php 
        _e("Enable multiple columns", "gravityforms");
        gform_tooltip("form_field_columns");
        ?>
</label>
                                <br />
                                <div id="gfield_settings_columns_container">
                                    <ul id="field_columns"></ul>
                                </div>
                            </li>

                            <?php 
        do_action("gform_field_standard_settings", 1287, $form_id);
        ?>
                            <li class="maxrows_setting field_setting">
                                <label for="field_maxrows">
                                    <?php 
        _e("Maximum Rows", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_maxrows");
        ?>
                                </label>
                                <input type="text" id="field_maxrows" onkeyup="SetFieldProperty('maxRows', this.value);"/></input>
                            </li>

                            <?php 
        do_action("gform_field_standard_settings", 1300, $form_id);
        ?>

                            <li class="time_format_setting field_setting">
                                <label for="field_time_format">
                                    <?php 
        _e("Time Format", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_time_format");
        ?>
                                </label>
                                <select id="field_time_format" onchange="SetTimeFormat(this.value);">
                                    <option value="12"><?php 
        _e("12 hour", "gravityforms");
        ?>
</option>
                                    <option value="24"><?php 
        _e("24 hour", "gravityforms");
        ?>
</option>
                                </select>

                            </li>
                            <?php 
        do_action("gform_field_standard_settings", 1325, $form_id);
        ?>

                            <li class="phone_format_setting field_setting">
                                <label for="field_phone_format">
                                    <?php 
        _e("Phone Format", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_phone_format");
        ?>
                                </label>
                                <select id="field_phone_format" onchange="SetFieldPhoneFormat(jQuery(this).val());">
                                    <option value="standard">(###)### - ####</option>
                                    <option value="international"><?php 
        _e("International", "gravityforms");
        ?>
</option>
                                </select>
                            </li>
                            <?php 
        do_action("gform_field_standard_settings", 1350, $form_id);
        ?>
                            <li class="choices_setting field_setting">
                                <div style="float:right;">
                                    <input type="checkbox" id="field_choice_values_enabled" onclick="SetFieldProperty('enableChoiceValue', this.checked); ToggleChoiceValue(); SetFieldChoices();"/>
                                    <label for="field_choice_values_enabled" class="inline"><?php 
        _e("enable values", "gravityforms");
        gform_tooltip("form_field_choice_values");
        ?>
</label>
                                </div>
                                <?php 
        _e("Choices", "gravityforms");
        ?>
 <?php 
        gform_tooltip("form_field_choices");
        ?>
<br />

                                <div id="gfield_settings_choices_container">
                                    <label class="gfield_choice_header_label"><?php 
        _e("Label", "gravityforms");
        ?>
</label><label class="gfield_choice_header_value"><?php 
        _e("Value", "gravityforms");
        ?>
</label><label class="gfield_choice_header_price"><?php 
        _e("Price", "gravityforms");
        ?>
</label>
                                    <ul id="field_choices"></ul>
                                </div>

                                <?php 
        $window_title = __("Bulk Add / Predefined Choices", "gravityforms");
        ?>
                                <input type='button' value='<?php 
        echo esc_attr($window_title);
        ?>
' onclick="tb_show('<?php 
        echo esc_js($window_title);
        ?>
', '#TB_inline?height=500&amp;width=600&amp;inlineId=gfield_bulk_add', '');" class="button"/>

                                <div id="gfield_bulk_add" style="display:none;">
                                    <div>
                                        <?php 
        $predefined_choices = array(__("Countries", "gravityforms") => GFCommon::get_countries(), __("U.S. States", "gravityforms") => GFCommon::get_us_states(), __("Canadian Province/Territory", "gravityforms") => GFCommon::get_canadian_provinces(), __("Continents", "gravityforms") => array(__("Africa", "gravityforms"), __("Antarctica", "gravityforms"), __("Asia", "gravityforms"), __("Australia", "gravityforms"), __("Europe", "gravityforms"), __("North America", "gravityforms"), __("South America", "gravityforms")), __("Gender", "gravityforms") => array(__("Male", "gravityforms"), __("Female", "gravityforms"), __("Prefer Not to Answer", "gravityforms")), __("Age", "gravityforms") => array(__("Under 18", "gravityforms"), __("18-24", "gravityforms"), __("25-34", "gravityforms"), __("35-44", "gravityforms"), __("45-54", "gravityforms"), __("55-64", "gravityforms"), __("65 or Above", "gravityforms"), __("Prefer Not to Answer", "gravityforms")), __("Marital Status", "gravityforms") => array(__("Single", "gravityforms"), __("Married", "gravityforms"), __("Divorced", "gravityforms"), __("Widowed", "gravityforms")), __("Employment", "gravityforms") => array(__("Employed Full-Time", "gravityforms"), __("Employed Part-Time", "gravityforms"), __("Self-employed", "gravityforms"), __("Not employed", "gravityforms"), __(" but looking for work", "gravityforms"), __("Not employed and not looking for work", "gravityforms"), __("Homemaker", "gravityforms"), __("Retired", "gravityforms"), __("Student", "gravityforms"), __("Prefer Not to Answer", "gravityforms")), __("Job Type", "gravityforms") => array(__("Full-Time", "gravityforms"), __("Part-Time", "gravityforms"), __("Per Diem", "gravityforms"), __("Employee", "gravityforms"), __("Temporary", "gravityforms"), __("Contract", "gravityforms"), __("Intern", "gravityforms"), __("Seasonal", "gravityforms")), __("Industry", "gravityforms") => array(__("Accounting/Finance", "gravityforms"), __("Advertising/Public Relations", "gravityforms"), __("Aerospace/Aviation", "gravityforms"), __("Arts/Entertainment/Publishing", "gravityforms"), __("Automotive", "gravityforms"), __("Banking/Mortgage", "gravityforms"), __("Business Development", "gravityforms"), __("Business Opportunity", "gravityforms"), __("Clerical/Administrative", "gravityforms"), __("Construction/Facilities", "gravityforms"), __("Consumer Goods", "gravityforms"), __("Customer Service", "gravityforms"), __("Education/Training", "gravityforms"), __("Energy/Utilities", "gravityforms"), __("Engineering", "gravityforms"), __("Government/Military", "gravityforms"), __("Green", "gravityforms"), __("Healthcare", "gravityforms"), __("Hospitality/Travel", "gravityforms"), __("Human Resources", "gravityforms"), __("Installation/Maintenance", "gravityforms"), __("Insurance", "gravityforms"), __("Internet", "gravityforms"), __("Job Search Aids", "gravityforms"), __("Law Enforcement/Security", "gravityforms"), __("Legal", "gravityforms"), __("Management/Executive", "gravityforms"), __("Manufacturing/Operations", "gravityforms"), __("Marketing", "gravityforms"), __("Non-Profit/Volunteer", "gravityforms"), __("Pharmaceutical/Biotech", "gravityforms"), __("Professional Services", "gravityforms"), __("QA/Quality Control", "gravityforms"), __("Real Estate", "gravityforms"), __("Restaurant/Food Service", "gravityforms"), __("Retail", "gravityforms"), __("Sales", "gravityforms"), __("Science/Research", "gravityforms"), __("Skilled Labor", "gravityforms"), __("Technology", "gravityforms"), __("Telecommunications", "gravityforms"), __("Transportation/Logistics", "gravityforms"), __("Other", "gravityforms")), __("Income", "gravityforms") => array(__("Under \$20,000", "gravityforms"), __("\$20,000 - \$30,000", "gravityforms"), __("\$30,000 - \$40,000", "gravityforms"), __("\$40,000 - \$50,000", "gravityforms"), __("\$50,000 - \$75,000", "gravityforms"), __("\$75,000 - \$100,000", "gravityforms"), __("\$100,000 - \$150,000", "gravityforms"), __("\$150,000 or more", "gravityforms"), __("Prefer Not to Answer", "gravityforms")), __("Education", "gravityforms") => array(__("High School", "gravityforms"), __("Associate Degree", "gravityforms"), __("Bachelor's Degree", "gravityforms"), __("Graduate of Professional Degree", "gravityforms"), __("Some College", "gravityforms"), __("Other", "gravityforms"), __("Prefer Not to Answer", "gravityforms")), __("Days of the Week", "gravityforms") => array(__("Sunday", "gravityforms"), __("Monday", "gravityforms"), __("Tuesday", "gravityforms"), __("Wednesday", "gravityforms"), __("Thursday", "gravityforms"), __("Friday", "gravityforms"), __("Saturday", "gravityforms")), __("Months of the Year", "gravityforms") => array(__("January", "gravityforms"), __("February", "gravityforms"), __("March", "gravityforms"), __("April", "gravityforms"), __("May", "gravityforms"), __("June", "gravityforms"), __("July", "gravityforms"), __("August", "gravityforms"), __("September", "gravityforms"), __("October", "gravityforms"), __("November", "gravityforms"), __("December", "gravityforms")), __("How Often", "gravityforms") => array(__("Everyday", "gravityforms"), __("Once a week", "gravityforms"), __("2 to 3 times a week", "gravityforms"), __("Once a month", "gravityforms"), __(" 2 to 3 times a month", "gravityforms"), __("Less than once a month", "gravityforms")), __("How Long", "gravityforms") => array(__("Less than a month", "gravityforms"), __("1-6 months", "gravityforms"), __("1-3 years", "gravityforms"), __("Over 3 Years", "gravityforms"), __("Never used", "gravityforms")), __("Satisfaction", "gravityforms") => array(__("Very Satisfied", "gravityforms"), __("Satisfied", "gravityforms"), __("Neutral", "gravityforms"), __("Unsatisfied", "gravityforms"), __("Very Unsatisfied", "gravityforms")), __("Importance", "gravityforms") => array(__("Very Important", "gravityforms"), __("Important", "gravityforms"), __("Somewhat Important", "gravityforms"), __("Not Important", "gravityforms")), __("Agreement", "gravityforms") => array(__("Strongly Agree", "gravityforms"), __("Agree", "gravityforms"), __("Disagree", "gravityforms"), __("Strongly Disagree", "gravityforms")), __("Comparison", "gravityforms") => array(__("Much Better", "gravityforms"), __("Somewhat Better", "gravityforms"), __("About the Same", "gravityforms"), __("Somewhat Worse", "gravityforms"), __("Much Worse", "gravityforms")), __("Would You", "gravityforms") => array(__("Definitely", "gravityforms"), __("Probably", "gravityforms"), __("Not Sure", "gravityforms"), __("Probably Not", "gravityforms"), __("Definitely Not", "gravityforms")), __("Size", "gravityforms") => array(__("Extra Small", "gravityforms"), __("Small", "gravityforms"), __("Medium", "gravityforms"), __("Large", "gravityforms"), __("Extra Large", "gravityforms")));
        $predefined_choices = apply_filters("gform_predefined_choices_" . rgar($form, "id"), apply_filters("gform_predefined_choices", $predefined_choices));
        $custom_choices = RGFormsModel::get_custom_choices();
        ?>

                                        <div class="panel-instructions"><?php 
        _e("Select a category and customize the predefined choices or paste your own list to bulk add choices.", "gravityforms");
        ?>
</div>

                                        <div class="bulk-left-panel">
                                            <ul id="bulk_items">
                                            <?php 
        foreach (array_keys($predefined_choices) as $name) {
            $key = str_replace("'", "\\'", $name);
            ?>
                                                <li><a href="#" onclick="SelectPredefinedChoice('<?php 
            echo $key;
            ?>
');" class="bulk-choice"><?php 
            echo $name;
            ?>
</a>
                                            <?php 
        }
        ?>
                                            </ul>
                                        </div>
                                        <div class="bulk-arrow-mid"></div>
                                        <textarea id="gfield_bulk_add_input"></textarea>
                                        <br style="clear:both;"/>
                                        <div class="panel-buttons" style="">
                                            <input type="button" onclick="InsertBulkChoices(jQuery('#gfield_bulk_add_input').val().split('\n')); tb_remove();" class="button-primary" value="<?php 
        _e("Insert Choices", "gravityforms");
        ?>
" />&nbsp;
                                            <input type="button" onclick="tb_remove();" class="button" value="Cancel" />
                                        </div>

                                        <div class="panel-custom" style="">
                                            <a href="#" onclick="LoadCustomChoicesPanel(true, 'slow');" id="bulk_save_as"><?php 
        _e("Save as new custom choice", "gravityforms");
        ?>
</a>
                                            <div id="bulk_custom_edit" style="display:none;">
                                                <?php 
        _e("Save as", "gravityforms");
        ?>
 <input type="text" id="custom_choice_name" value="<?php 
        _e("Enter name", "gravityforms");
        ?>
" onfocus="if(this.value == '<?php 
        _e("enter name", "gravityforms");
        ?>
') this.value='';">&nbsp;&nbsp;
                                                <a href="#" onclick="SaveCustomChoices();" class="button" id="bulk_save_button"><?php 
        _e("Save", "gravityforms");
        ?>
</a>&nbsp;
                                                <a href="#" onclick="CloseCustomChoicesPanel('slow');" id="bulk_cancel_link"><?php 
        _e("Cancel", "gravityforms");
        ?>
</a>
                                                <a href="#" onclick="DeleteCustomChoice();" id="bulk_delete_link"><?php 
        _e("Delete", "gravityforms");
        ?>
</a>
                                            </div>
                                            <div id="bulk_custom_message" class="alert_yellow" style="display:none; margin-top:8px; padding: 8px;">
                                                <!--Message will be added via javascript-->
                                            </div>
                                        </div>

                                        <script type="text/javascript">
                                            var gform_selected_custom_choice = "";
                                            var gform_custom_choices = <?php 
        echo GFCommon::json_encode($custom_choices);
        ?>
;
                                            var gform_predefined_choices = <?php 
        echo GFCommon::json_encode($predefined_choices);
        ?>
;
                                        </script>

                                    </div>
                                </div>
                            </li>
                            <?php 
        do_action("gform_field_standard_settings", 1362, $form_id);
        ?>

                            <li class="other_choice_setting field_setting">

                                <input type="checkbox" id="field_other_choice" onclick="var value = jQuery(this).is(':checked'); SetFieldProperty('enableOtherChoice', value); UpdateFieldChoices(GetInputType(field));" />
                                <label for="field_other_choice" class="inline">
                                    <?php 
        _e('Enable "other" choice', "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_other_choice");
        ?>
                                </label>

                            </li>

                            <?php 
        do_action("gform_field_standard_settings", 1368, $form_id);
        ?>

                            <li class="email_confirm_setting field_setting">
                                <input type="checkbox" id="gfield_email_confirm_enabled" onclick="SetEmailConfirmation(this.checked);"/>
                                <label for="gfield_email_confirm_enabled" class="inline">
                                    <?php 
        _e("Enable Email Confirmation", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_email_confirm_enable");
        ?>
                                </label>
                            </li>
                            <?php 
        do_action("gform_field_standard_settings", 1375, $form_id);
        ?>
                            <li class="password_strength_setting field_setting">
                                <input type="checkbox" id="gfield_password_strength_enabled" onclick="TogglePasswordStrength(); SetPasswordStrength(this.checked);"/>
                                <label for="gfield_password_strength_enabled" class="inline">
                                    <?php 
        _e("Enable Password Strength", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_password_strength_enable");
        ?>
                                </label>
                            </li>

                             <?php 
        do_action("gform_field_standard_settings", 1387, $form_id);
        ?>
                            <li class="enable_enhanced_ui_setting field_setting">
                                <input type="checkbox" id="gfield_enable_enhanced_ui" onclick="SetFieldProperty('enableEnhancedUI', jQuery(this).is(':checked') ? 1 : 0);"/>
                                <label for="gfield_enable_enhanced_ui" class="inline">
                                    <?php 
        _e("Enable enhanced user interface", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_enable_enhanced_ui");
        ?>
                                </label>
                            </li>

                            <li id="gfield_min_strength_container">
                                <label for="gfield_min_strength">
                                    <?php 
        _e("Minimum Strength", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_password_strength_enable");
        ?>
                                </label>
                                <select id="gfield_min_strength" onchange="SetFieldProperty('minPasswordStrength', jQuery(this).val());">
                                    <option value=""><?php 
        _e("None", "gravityforms");
        ?>
</option>
                                    <option value="short"><?php 
        _e("Short", "gravityforms");
        ?>
</option>
                                    <option value="bad"><?php 
        _e("Bad", "gravityforms");
        ?>
</option>
                                    <option value="good"><?php 
        _e("Good", "gravityforms");
        ?>
</option>
                                    <option value="strong"><?php 
        _e("Strong", "gravityforms");
        ?>
</option>
                                </select>
                            </li>

                            <?php 
        do_action("gform_field_standard_settings", 1400, $form_id);
        ?>

                            <li class="number_format_setting field_setting">
                                <label for="field_number_format">
                                    <?php 
        _e("Number Format", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_number_format");
        ?>
                                </label>
                                <select id="field_number_format" onchange="SetFieldProperty('numberFormat', this.value);">
                                    <option value="decimal_dot">9,999.99</option>
                                    <option value="decimal_comma">9.999,99</option>
                                </select>

                            </li>

                            <?php 
        do_action("gform_field_standard_settings", 1425, $form_id);
        ?>

                            <li class="description_setting field_setting">
                                <label for="field_description">
                                    <?php 
        _e("Description", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_description");
        ?>
                                </label>
                                <textarea id="field_description" class="fieldwidth-3 fieldheight-2" onkeyup="SetFieldDescription(this.value);"></textarea>
                            </li>

                            <?php 
        do_action("gform_field_standard_settings", 1430, $form_id);
        ?>
                            <li class="credit_card_setting field_setting">
                                <label>
                                    <?php 
        _e("Supported Credit Cards", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_credit_cards");
        ?>
                                </label>
                                <ul>
                                <?php 
        $cards = GFCommon::get_card_types();
        foreach ($cards as $card) {
            ?>

                                    <li>
                                        <input type="checkbox" id="field_credit_card_<?php 
            echo $card['slug'];
            ?>
" value="<?php 
            echo $card['slug'];
            ?>
" onclick="SetCardType(this, this.value);" />
                                        <label for="field_credit_card_<?php 
            echo $card['slug'];
            ?>
" class="inline"><?php 
            echo $card['name'];
            ?>
</label>
                                    </li>

                                <?php 
        }
        ?>
                                </ul>
                            </li>
                            <?php 
        do_action("gform_field_standard_settings", 1435, $form_id);
        ?>
                            <li class="credit_card_style_setting field_setting">
                                <label for="credit_card_style">
                                    <?php 
        _e("Card Icon Style", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_card_style");
        ?>
                                </label>
                                <select id="credit_card_style" onchange="SetFieldProperty('creditCardStyle', this.value);">
                                    <option value="style1"><?php 
        _e("Standard", "gravityforms");
        ?>
</option>
                                    <option value="style2"><?php 
        _e("3D", "gravityforms");
        ?>
</option>
                                </select>
                            </li>

                            <?php 
        do_action("gform_field_standard_settings", 1440, $form_id);
        ?>

                            <li class="input_mask_setting field_setting">

                                <input type="checkbox" id="field_input_mask" onclick="ToggleInputMask();"/>
                                <label for="field_input_mask" class="inline">
                                    <?php 
        _e("Input Mask", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_mask");
        ?>
                                </label><br />

                                <div id="gform_input_mask">

                                    <br />

                                    <div style="width:100px; float:left;">
                                        <input type="radio" name="field_mask_option" id="field_mask_standard" size="10" onclick="ToggleInputMaskOptions();" />
                                        <label for="field_mask_standard" class="inline">
                                            <?php 
        _e("Standard", "gravityforms");
        ?>
                                        </label>
                                    </div>
                                    <div style="width:100px; float:left;">
                                        <input type="radio" name="field_mask_option" id="field_mask_custom" size="10" onclick="ToggleInputMaskOptions();" />
                                        <label for="field_mask_custom" class="inline">
                                            <?php 
        _e("Custom", "gravityforms");
        ?>
                                        </label>
                                    </div>

                                    <div class="clear"></div>

                                    <input type="text" id="field_mask_text" size="35" onkeyup="SetFieldProperty('inputMaskValue', this.value);" />
                                    <p class="mask_text_description" style="margin:5px 0 0;">
                                        <?php 
        _e("Enter a custom mask", "gravityforms");
        ?>
.
                                        <a href="#" onclick="tb_show('<?php 
        _e("Custom Mask Instructions", "gravityforms");
        ?>
', '#TB_inline?width=350&amp;inlineId=custom_mask_instructions', '');"><?php 
        _e("Help", "gravityhelp");
        ?>
</a>
                                    </p>
                                    <div id="custom_mask_instructions" style="display:none;">
                                        <div class="custom_mask_instructions">

                                            <h4><?php 
        _e("Usage", "gravityforms");
        ?>
</h4>
                                            <ul class="description-list">
                                                <li><?php 
        _e("Use a <em>'9'</em> to indicate a numerical character.", "gravityforms");
        ?>
</li>
                                                <li><?php 
        _e("Use a lower case <em>'a'</em> to indicate an alphabetical character.", "gravityforms");
        ?>
</li>
                                                <li><?php 
        _e("Use an asterick <em>'*'</em> to indicate any alphanumeric character.", "gravityforms");
        ?>
</li>
                                                <li><?php 
        _e("Use a question mark <em>'?'</em> to indicate optional characters. <em>Note:</em> All characters after the question mark will be optional.", "gravityforms");
        ?>
</li>
                                                <li><?php 
        _e("All other characters are literal values and will be displayed automatically.", "gravityforms");
        ?>
</li>
                                            </ul>

                                            <h4><?php 
        _e("Examples", "gravityforms");
        ?>
</h4>
                                            <ul class="examples-list">
                                                <li>
                                                    <h5><?php 
        _e("Date", "gravityforms");
        ?>
</h5>
                                                    <span class="label"><?php 
        _e("Mask", "gravityforms");
        ?>
</span> <code>99/99/9999</code><br />
                                                    <span class="label"><?php 
        _e("Valid Input", "gravityforms");
        ?>
</span> <code>10/21/2011</code>
                                                </li>
                                                <li>
                                                    <h5><?php 
        _e("Social Security Number", "gravityforms");
        ?>
</h5>
                                                    <span class="label"><?php 
        _e("Mask", "gravityforms");
        ?>
</span> <code>999-99-9999</code><br />
                                                    <span class="label"><?php 
        _e("Valid Input", "gravityforms");
        ?>
</span> <code>987-65-4329</code>
                                                </li>
                                                <li>
                                                    <h5><?php 
        _e("Course Code", "gravityforms");
        ?>
</h5>
                                                    <span class="label"><?php 
        _e("Mask", "gravityforms");
        ?>
</span> <code>aaa 999</code><br />
                                                    <span class="label"><?php 
        _e("Valid Input", "gravityforms");
        ?>
</span> <code>BIO 101</code>
                                                </li>
                                                <li>
                                                    <h5><?php 
        _e("License Key", "gravityforms");
        ?>
</h5>
                                                    <span class="label"><?php 
        _e("Mask", "gravityforms");
        ?>
</span> <code>***-***-***</code><br />
                                                    <span class="label"><?php 
        _e("Valid Input", "gravityforms");
        ?>
</span> <code>a9a-f0c-28Q</code>
                                                </li>
                                                <li>
                                                    <h5><?php 
        _e("Zip Code w/ Optional Plus Four", "gravityforms");
        ?>
</h5>
                                                    <span class="label"><?php 
        _e("Mask", "gravityforms");
        ?>
</span> <code>99999?-9999</code><br />
                                                    <span class="label"><?php 
        _e("Valid Input", "gravityforms");
        ?>
</span> <code>23462</code> or <code>23462-4062</code>
                                                </li>
                                            </ul>

                                        </div>
                                    </div>

                                    <select id="field_mask_select" onchange="SetFieldProperty('inputMaskValue', jQuery(this).val());">
                                        <option value=""><?php 
        _e("Select a Mask", "gravityforms");
        ?>
</option>
                                        <?php 
        $masks = RGFormsModel::get_input_masks();
        foreach ($masks as $mask_name => $mask_value) {
            ?>
                                                <option value="<?php 
            echo $mask_value;
            ?>
"><?php 
            echo $mask_name;
            ?>
</option>
                                                <?php 
        }
        ?>
                                    </select>

                                </div>

                            </li>

                            <?php 
        do_action("gform_field_standard_settings", 1450, $form_id);
        ?>

                            <li class="maxlen_setting field_setting">
                                <label for="field_maxlen">
                                    <?php 
        _e("Maximum Characters", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_maxlength");
        ?>
                                </label>
                                <input type="text" id="field_maxlen" onkeyup="SetFieldProperty('maxLength', this.value);"/></input>
                            </li>
                            <?php 
        do_action("gform_field_standard_settings", 1500, $form_id);
        ?>

                            <li class="range_setting field_setting">
                                <div style="clear:both;"><?php 
        _e("Range", "gravityforms");
        ?>
                                <?php 
        gform_tooltip("form_field_number_range");
        ?>
                                </div>
                                <div style="width:90px; float:left;">
                                <input type="text" id="field_range_min" size="10" onkeyup="SetFieldProperty('rangeMin', this.value);" />
                                    <label for="field_range_min" >
                                        <?php 
        _e("Min", "gravityforms");
        ?>
                                    </label>
                                </div>
                                <div style="width:90px; float:left;">
                                <input type="text" id="field_range_max" size="10" onkeyup="SetFieldProperty('rangeMax', this.value);" />
                                    <label for="field_range_max">
                                        <?php 
        _e("Max", "gravityforms");
        ?>
                                    </label>

                                </div>
                                <br class="clear" />
                            </li>
                            <?php 
        do_action("gform_field_standard_settings", 1550, $form_id);
        ?>
                            <li class="rules_setting field_setting">
                                <?php 
        _e("Rules", "gravityforms");
        ?>
<br/>
                                <input type="checkbox" id="field_required" onclick="SetFieldRequired(this.checked);"/>
                                <label for="field_required" class="inline">
                                    <?php 
        _e("Required", "gravityforms");
        ?>
                                    <?php 
        gform_tooltip("form_field_required");
        ?>
                                </label><br/>
                                <div class="duplicate_setting field_setting">
                                    <input type="checkbox" id="field_no_duplicates" onclick="SetFieldProperty('noDuplicates', this.checked);"/>
                                    <label for="field_no_duplicates" class="inline">
                                        <?php 
        _e("No Duplicates", "gravityforms");
        ?>
                                        <?php 
        gform_tooltip("form_field_no_duplicate");
        ?>
                                    </label>
                                </div>
                            </li>

                            <?php 
        do_action("gform_field_standard_settings", -1, $form_id);
        ?>
                        </ul>
                        </div>
                        <div id="gform_tab_2">
                            <ul>
                                <?php 
        do_action("gform_field_advanced_settings", 0, $form_id);
        ?>
                                <li class="admin_label_setting field_setting">
                                    <label for="field_admin_label">
                                        <?php 
        _e("Admin Label", "gravityforms");
        ?>
                                        <?php 
        gform_tooltip("form_field_admin_label");
        ?>
                                    </label>
                                    <input type="text" id="field_admin_label" size="35" onkeyup="SetFieldProperty('adminLabel', this.value);"/>
                                </li>
                                <?php 
        do_action("gform_field_advanced_settings", 50, $form_id);
        ?>
                                <li class="size_setting field_setting">
                                    <label for="field_size">
                                        <?php 
        _e("Field Size", "gravityforms");
        ?>
                                        <?php 
        gform_tooltip("form_field_size");
        ?>
                                    </label>
                                    <select id="field_size" onchange="SetFieldSize(jQuery(this).val());">
                                        <option value="small"><?php 
        _e("Small", "gravityforms");
        ?>
</option>
                                        <option value="medium"><?php 
        _e("Medium", "gravityforms");
        ?>
</option>
                                        <option value="large"><?php 
        _e("Large", "gravityforms");
        ?>
</option>
                                    </select>
                                </li>
                                <?php 
        do_action("gform_field_advanced_settings", 100, $form_id);
        ?>
                                <li class="default_value_setting field_setting">
                                    <label for="field_default_value">
                                        <?php 
        _e("Default Value", "gravityforms");
        ?>
                                        <?php 
        gform_tooltip("form_field_default_value");
        ?>
                                    </label>
                                    <?php 
        self::insert_variable_prepopulate("field_default_value");
        ?>
<br/>
                                    <input type="text" id="field_default_value" class="fieldwidth-2" onkeyup="SetFieldDefaultValue(this.value);"/>
                                </li>
                                <?php 
        do_action("gform_field_advanced_settings", 150, $form_id);
        ?>
                                <li class="default_value_textarea_setting field_setting">
                                    <label for="field_default_value_textarea">
                                        <?php 
        _e("Default Value", "gravityforms");
        ?>
                                        <?php 
        gform_tooltip("form_field_default_value");
        ?>
                                    </label>
                                    <textarea id="field_default_value_textarea" onkeyup="SetFieldDefaultValue(this.value);" class="fieldwidth-3"></textarea>
                                </li>
                                <?php 
        do_action("gform_field_advanced_settings", 200, $form_id);
        ?>
                                <li class="error_message_setting field_setting">
                                    <label for="field_error_message">
                                        <?php 
        _e("Validation Message", "gravityforms");
        ?>
                                        <?php 
        gform_tooltip("form_field_validation_message");
        ?>
                                    </label>
                                    <input type="text" id="field_error_message" class="fieldwidth-2" onkeyup="SetFieldProperty('errorMessage', this.value);"/>
                                </li>

                                <?php 
        do_action("gform_field_advanced_settings", 225, $form_id);
        ?>

                                <li class="credit_card_icon_style_setting field_setting">
                                    <label>
                                        <?php 
        _e("Credit Card Icon Style", "gravityforms");
        ?>
                                        <?php 
        gform_tooltip("form_field_credit_card_icon_style");
        ?>
                                    </label>
                                    <ul>
                                    <?php 
        $cards = GFCommon::get_card_types();
        foreach ($cards as $card) {
            ?>
                                        <li>
                                            <input type="checkbox" id="field_credit_card_<?php 
            echo $card['slug'];
            ?>
" value="<?php 
            echo $card['slug'];
            ?>
" onclick="SetCardType(this, this.value);" />
                                            <label for="field_credit_card_<?php 
            echo $card['slug'];
            ?>
" class="inline"><?php 
            echo $card['name'];
            ?>
</label>
                                        </li>

                                    <?php 
        }
        ?>
                                    </ul>
                                </li>

                                <?php 
        do_action("gform_field_advanced_settings", 250, $form_id);
        ?>
                                <li class="captcha_language_setting field_setting">
                                    <label for="field_captcha_language">
                                        <?php 
        _e("Language", "gravityforms");
        ?>
                                        <?php 
        gform_tooltip("form_field_recaptcha_language");
        ?>
                                    </label>
                                    <select id="field_captcha_language" onchange="SetFieldProperty('captchaLanguage', this.value);">
                                        <option value="en"><?php 
        _e("English", "gravityforms");
        ?>
</option>
                                        <option value="nl"><?php 
        _e("Dutch", "gravityforms");
        ?>
</option>
                                        <option value="fr"><?php 
        _e("French", "gravityforms");
        ?>
</option>
                                        <option value="de"><?php 
        _e("German", "gravityforms");
        ?>
</option>
                                        <option value="pt"><?php 
        _e("Portuguese", "gravityforms");
        ?>
</option>
                                        <option value="ru"><?php 
        _e("Russian", "gravityforms");
        ?>
</option>
                                        <option value="es"><?php 
        _e("Spanish", "gravityforms");
        ?>
</option>
                                        <option value="tr"><?php 
        _e("Turkish", "gravityforms");
        ?>
</option>
                                    </select>
                                </li>
                                <?php 
        do_action("gform_field_advanced_settings", 300, $form_id);
        ?>
                                <li class="css_class_setting field_setting">
                                    <label for="field_css_class">
                                        <?php 
        _e("CSS Class Name", "gravityforms");
        ?>
                                        <?php 
        gform_tooltip("form_field_css_class");
        ?>
                                    </label>
                                    <input type="text" id="field_css_class" size="30" onkeyup="SetFieldProperty('cssClass', this.value);"/>
                                </li>
                                <?php 
        do_action("gform_field_advanced_settings", 325, $form_id);
        ?>
                                <li class="add_icon_url_setting field_setting">
                                    <label for="field_add_icon_url">
                                        <?php 
        _e("Add Icon URL", "gravityforms");
        ?>
                                        <?php 
        gform_tooltip("form_field_add_icon_url");
        ?>
                                    </label>
                                    <input type="text" id="field_add_icon_url" class="fieldwidth-2" onkeyup="SetFieldProperty('addIconUrl', this.value);"/>
                                </li>
                                <?php 
        do_action("gform_field_advanced_settings", 337, $form_id);
        ?>
                                <li class="delete_icon_url_setting field_setting">
                                    <label for="field_delete_icon_url">
                                        <?php 
        _e("Delete Icon URL", "gravityforms");
        ?>
                                        <?php 
        gform_tooltip("form_field_delete_icon_url");
        ?>
                                    </label>
                                    <input type="text" id="field_delete_icon_url" class="fieldwidth-2" onkeyup="SetFieldProperty('deleteIconUrl', this.value);"/>
                                </li>
                                <?php 
        do_action("gform_field_advanced_settings", 350, $form_id);
        ?>
                                <li class="password_field_setting field_setting">
                                    <input type="checkbox" id="field_password" onclick="SetPasswordProperty(this.checked);"/> <label for="field_password" class="inline"><?php 
        _e("Enable Password Input", "gravityforms");
        gform_tooltip("form_field_password");
        ?>
</label>
                                </li>

                                <?php 
        do_action("gform_field_advanced_settings", 375, $form_id);
        ?>
                                <li class="force_ssl_field_setting field_setting">
                                    <input type="checkbox" id="field_force_ssl" onclick="SetFieldProperty('forceSSL', this.checked);"/> <label for="field_force_ssl" class="inline"><?php 
        _e("Force SSL", "gravityforms");
        gform_tooltip("form_field_force_ssl");
        ?>
</label>
                                </li>

                                <?php 
        do_action("gform_field_advanced_settings", 400, $form_id);
        ?>
                                <li class="visibility_setting field_setting">
                                    <label><?php 
        _e("Visibility", "gravityforms");
        ?>
 <?php 
        gform_tooltip("form_field_visibility");
        ?>
</label>
                                    <div>
                                        <input type="radio" name="field_visibility" id="field_visibility_everyone" size="10" onclick="SetFieldAdminOnly(!this.checked);" />
                                        <label for="field_visibility_everyone" class="inline">
                                            <?php 
        _e("Everyone", "gravityforms");
        ?>
                                        </label>
                                        &nbsp;&nbsp;
                                        <input type="radio" name="field_visibility" id="field_visibility_admin" size="10" onclick="SetFieldAdminOnly(this.checked);" />
                                        <label for="field_visibility_admin" class="inline">
                                            <?php 
        _e("Admin Only", "gravityforms");
        ?>
                                        </label>
                                    </div>
                                    <br class="clear" />
                                </li>
                                <?php 
        do_action("gform_field_advanced_settings", 450, $form_id);
        ?>
                                <li class="prepopulate_field_setting field_setting">
                                    <input type="checkbox" id="field_prepopulate" onclick="SetFieldProperty('allowsPrepopulate', this.checked); ToggleInputName()"/> <label for="field_prepopulate" class="inline"><?php 
        _e("Allow field to be populated dynamically", "gravityforms");
        gform_tooltip("form_field_prepopulate");
        ?>
</label>
                                    <br/>
                                    <div id="field_input_name_container" style="display:none; padding-top:10px;">
                                        <!-- content dynamically created from js.php -->
                                    </div>
                                </li>
                                <?php 
        do_action("gform_field_advanced_settings", 500, $form_id);
        ?>
                                <li class="conditional_logic_field_setting field_setting">
                                    <input type="checkbox" id="field_conditional_logic" onclick="SetFieldProperty('conditionalLogic', this.checked ? new ConditionalLogic() : null); ToggleConditionalLogic(false, 'field');"/> <label for="field_conditional_logic" class="inline"><?php 
        _e("Enable Conditional Logic", "gravityforms");
        gform_tooltip("form_field_conditional_logic");
        ?>
</label>
                                    <br/>
                                    <div id="field_conditional_logic_container" style="display:none; padding-top:10px;">
                                        <!-- content dynamically created from js.php -->
                                    </div>
                                </li>

                                <?php 
        do_action("gform_field_advanced_settings", 525, $form_id);
        ?>
                                <li class="conditional_logic_page_setting field_setting">
                                    <input type="checkbox" id="page_conditional_logic" onclick="SetFieldProperty('conditionalLogic', this.checked ? new ConditionalLogic() : null); ToggleConditionalLogic(false, 'page');"/> <label for="page_conditional_logic" class="inline"><?php 
        _e("Enable Page Conditional Logic", "gravityforms");
        gform_tooltip("form_page_conditional_logic");
        ?>
</label>
                                    <br/>
                                    <div id="page_conditional_logic_container" style="display:none; padding-top:10px;">
                                        <!-- content dynamically created from js.php -->
                                    </div>
                                </li>

                                <?php 
        do_action("gform_field_advanced_settings", 550, $form_id);
        ?>
                                <li class="conditional_logic_nextbutton_setting field_setting">
                                    <input type="checkbox" id="next_button_conditional_logic" onclick="SetNextButtonConditionalLogic(this.checked); ToggleConditionalLogic(false, 'next_button');"/>
                                    <label for="next_button_conditional_logic" class="inline"><?php 
        _e("Enable Next Button Conditional Logic", "gravityforms");
        gform_tooltip("form_nextbutton_conditional_logic");
        ?>
</label>
                                    <br/>
                                    <div id="next_button_conditional_logic_container" style="display:none; padding-top:10px;">
                                        <!-- content dynamically created from js.php -->
                                    </div>
                                </li>

                                <?php 
        do_action("gform_field_advanced_settings", -1, $form_id);
        ?>
                            </ul>
                        </div>
                    </div>
                </td>
                <td valign="top" align="right">
                    <div id="add_fields">
                        <div id="floatMenu">

                            <!-- begin add button boxes -->
                            <ul id="sidebarmenu1" class="menu collapsible expandfirst">

                            <?php 
        $standard_fields = array(array("class" => "button", "value" => GFCommon::get_field_type_title("text"), "onclick" => "StartAddField('text');"), array("class" => "button", "value" => GFCommon::get_field_type_title("textarea"), "onclick" => "StartAddField('textarea');"), array("class" => "button", "value" => GFCommon::get_field_type_title("select"), "onclick" => "StartAddField('select');"), array("class" => "button", "value" => GFCommon::get_field_type_title("multiselect"), "onclick" => "StartAddField('multiselect');"), array("class" => "button", "value" => GFCommon::get_field_type_title("number"), "onclick" => "StartAddField('number');"), array("class" => "button", "value" => GFCommon::get_field_type_title("checkbox"), "onclick" => "StartAddField('checkbox');"), array("class" => "button", "value" => GFCommon::get_field_type_title("radio"), "onclick" => "StartAddField('radio');"), array("class" => "button", "value" => GFCommon::get_field_type_title("hidden"), "onclick" => "StartAddField('hidden');"), array("class" => "button", "value" => GFCommon::get_field_type_title("html"), "onclick" => "StartAddField('html');"), array("class" => "button", "value" => GFCommon::get_field_type_title("section"), "onclick" => "StartAddField('section');"), array("class" => "button", "value" => GFCommon::get_field_type_title("page"), "onclick" => "StartAddField('page');"));
        $advanced_fields = array(array("class" => "button", "value" => GFCommon::get_field_type_title("name"), "onclick" => "StartAddField('name');"), array("class" => "button", "value" => GFCommon::get_field_type_title("date"), "onclick" => "StartAddField('date');"), array("class" => "button", "value" => GFCommon::get_field_type_title("time"), "onclick" => "StartAddField('time');"), array("class" => "button", "value" => GFCommon::get_field_type_title("phone"), "onclick" => "StartAddField('phone');"), array("class" => "button", "value" => GFCommon::get_field_type_title("address"), "onclick" => "StartAddField('address');"), array("class" => "button", "value" => GFCommon::get_field_type_title("website"), "onclick" => "StartAddField('website');"), array("class" => "button", "value" => GFCommon::get_field_type_title("email"), "onclick" => "StartAddField('email');"));
        if (apply_filters("gform_enable_password_field", false)) {
            $advanced_fields[] = array("class" => "button", "value" => GFCommon::get_field_type_title("password"), "onclick" => "StartAddField('password');");
        }
        $advanced_fields[] = array("class" => "button", "value" => GFCommon::get_field_type_title("fileupload"), "onclick" => "StartAddField('fileupload');");
        $advanced_fields[] = array("class" => "button", "value" => GFCommon::get_field_type_title("captcha"), "onclick" => "AddCaptchaField();");
        $advanced_fields[] = array("class" => "button", "value" => GFCommon::get_field_type_title("list"), "onclick" => "StartAddField('list');");
        $post_fields = array(array("class" => "button", "value" => GFCommon::get_field_type_title("post_title"), "onclick" => "StartAddField('post_title');"), array("class" => "button", "value" => GFCommon::get_field_type_title("post_content"), "onclick" => "StartAddField('post_content');"), array("class" => "button", "value" => GFCommon::get_field_type_title("post_excerpt"), "onclick" => "StartAddField('post_excerpt');"), array("class" => "button", "value" => GFCommon::get_field_type_title("post_tags"), "onclick" => "StartAddField('post_tags');"), array("class" => "button", "value" => GFCommon::get_field_type_title("post_category"), "onclick" => "StartAddField('post_category');"), array("class" => "button", "value" => GFCommon::get_field_type_title("post_image"), "onclick" => "StartAddField('post_image');"), array("class" => "button", "value" => GFCommon::get_field_type_title("post_custom_field"), "onclick" => "StartAddField('post_custom_field');"));
        $pricing_fields = array(array("class" => "button", "value" => GFCommon::get_field_type_title("product"), "onclick" => "StartAddField('product');"), array("class" => "button", "value" => GFCommon::get_field_type_title("quantity"), "onclick" => "StartAddField('quantity');"), array("class" => "button", "value" => GFCommon::get_field_type_title("option"), "onclick" => "StartAddField('option');"), array("class" => "button", "value" => GFCommon::get_field_type_title("shipping"), "onclick" => "StartAddField('shipping');"), array("class" => "button", "value" => GFCommon::get_field_type_title("total"), "onclick" => "StartAddField('total');"));
        if (apply_filters("gform_enable_credit_card_field", false)) {
            $pricing_fields[] = array("class" => "button", "value" => GFCommon::get_field_type_title("creditcard"), "onclick" => "StartAddField('creditcard');");
        }
        $field_groups = array(array("name" => "standard_fields", "label" => __("Standard Fields", "gravityforms"), "fields" => $standard_fields, "tooltip_class" => "tooltip_bottomleft"), array("name" => "advanced_fields", "label" => __("Advanced Fields", "gravityforms"), "fields" => $advanced_fields), array("name" => "post_fields", "label" => __("Post Fields", "gravityforms"), "fields" => $post_fields));
        $field_groups[] = array("name" => "pricing_fields", "label" => __("Pricing Fields", "gravityforms"), "fields" => $pricing_fields);
        $field_groups = apply_filters("gform_add_field_buttons", $field_groups);
        foreach ($field_groups as $group) {
            $tooltip_class = empty($group["tooltip_class"]) ? "tooltip_left" : $group["tooltip_class"];
            ?>
                                    <li id="add_<?php 
            echo $group["name"];
            ?>
" class="add_field_button_container">
                                        <div class="button-title-link <?php 
            echo $group["name"] == "standard_fields" ? "gf_button_title_active" : "";
            ?>
"><div class="add-buttons-title"><?php 
            echo $group["label"];
            ?>
 <?php 
            gform_tooltip("form_{$group["name"]}", $tooltip_class);
            ?>
</div></div>
                                        <ul>
                                            <li class="add-buttons">
                                                <ol class="field_type">
                                                    <?php 
            echo self::display_buttons($group["fields"]);
            ?>
                                                </ol>
                                            </li>
                                        </ul>
                                    </li>
                                    <?php 
        }
        ?>
                            </ul>
                            <br style="clear:both;"/>
                            <!--end add button boxes -->

                            <?php 
        if (GFCommon::current_user_can_any("gravityforms_delete_forms")) {
            $delete_link = '<a class="submitdelete" title="' . __("Delete this Form", "gravityforms") . '" onclick="if(confirm(\'' . __("Would you like to delete this form and ALL entries associated with it? \\'Cancel\\' to stop. \\'OK\\' to delete", "gravityforms") . '\')){jQuery(\'#form_delete\')[0].submit();} else{return false;}">' . __("Delete Form", "gravityforms") . '</a>';
            echo apply_filters("gform_form_delete_link", $delete_link);
        }
        $button_text = rgar($form, "id") > 0 ? __("Update Form", "gravityforms") : __("Save Form", "gravityforms");
        $isNew = rgar($form, "id") > 0 ? 0 : 1;
        $save_button = '<input type="button" class="button-primary gfbutton" value="' . $button_text . '" onclick="SaveForm(' . $isNew . ');" />';
        $save_button = apply_filters("gform_save_form_button", $save_button);
        echo $save_button;
        ?>

                            <span id="please_wait_container" style="display:none;"><img src="<?php 
        echo GFCommon::get_base_url();
        ?>
/images/loading.gif"></span>

                            <div class="updated_base" id="after_update_dialog" style="display:none;">
                                <strong><?php 
        _e("Form updated successfully.", "gravityforms");
        ?>
                                &nbsp;<a title="<?php 
        _e("Preview this form", "gravityforms");
        ?>
" href="<?php 
        echo site_url();
        ?>
/?gf_page=preview&id=<?php 
        echo absint(rgar($form, "id"));
        ?>
" target="_blank"><?php 
        _e("Preview", "gravityforms");
        ?>
</a></strong>
                            </div>
                            <div class="error_base" id="after_update_error_dialog" style="padding:10px 10px 16px 10px; display:none;">
                                <?php 
        _e("There was an error while saving your form.", "gravityforms");
        ?>
                                <?php 
        printf(__("Please %scontact our support team%s.", "gravityforms"), '<a href="http://www.gravityhelp.com">', '</a>');
        ?>
                            </div>

                            <form method="post" id="gform_update">
                                <?php 
        wp_nonce_field("gforms_update_form_{$form_id}", "gforms_update_form");
        ?>
                                <input type="hidden" id="gform_meta" name="gform_meta" />
                            </form>

                        </div>
                    </div>
                </td>
            </tr>
        </table>
        </div>

        <?php 
        require_once GFCommon::get_base_path() . "/js.php";
    }
Exemple #5
0
 public function get_card_labels()
 {
     $card_types = GFCommon::get_card_types();
     $card_labels = array();
     foreach ($card_types as $card_type) {
         $card_labels[$card_type['slug']] = $card_type['name'];
     }
     return $card_labels;
 }
 /**
  * Get the slug for the card type returned by Stripe.js
  *
  * @param string $type The possible types are "Visa", "MasterCard", "American Express", "Discover", "Diners Club", and "JCB" or "Unknown".
  *
  * @return string
  */
 public function get_card_slug($type)
 {
     if ($type) {
         $card_types = GFCommon::get_card_types();
         foreach ($card_types as $card) {
             if ($type == rgar($card, 'name')) {
                 return rgar($card, 'slug');
             }
         }
     }
     return $type;
 }
 /**
  * Get the slug for the card type returned by Stripe.js
  *
  * @param string $type The possible types are "Visa", "MasterCard", "American Express", "Discover", "Diners Club", and "JCB" or "Unknown".
  *
  * @return string
  */
 public function get_card_slug($type)
 {
     // If type is defined, attempt to get card slug.
     if ($type) {
         // Get card types.
         $card_types = GFCommon::get_card_types();
         // Loop through card types.
         foreach ($card_types as $card) {
             // If the requested card type is equal to the current card's name, return the slug.
             if (rgar($card, 'name') === $type) {
                 return rgar($card, 'slug');
             }
         }
     }
     return $type;
 }
Exemple #8
0
    public static function get_field_input($field, $value="", $lead_id=0, $form_id=0){

        $id = $field["id"];
        $field_id = IS_ADMIN || $form_id == 0 ? "input_$id" : "input_" . $form_id . "_$id";
        $form_id = IS_ADMIN && empty($form_id) ? rgget("id") : $form_id;

        $size = rgar($field, "size");
        $disabled_text = (IS_ADMIN && RG_CURRENT_VIEW != "entry") ? "disabled='disabled'" : "";
        $class_suffix = RG_CURRENT_VIEW == "entry" ? "_admin" : "";
        $class = $size . $class_suffix;

        $currency = "";
        if(RG_CURRENT_VIEW == "entry"){
            $lead = RGFormsModel::get_lead($lead_id);
            $post_id = $lead["post_id"];
            $post_link = "";
            if(is_numeric($post_id) && self::is_post_field($field)){
                $post_link = "You can <a href='post.php?action=edit&post=$post_id'>edit this post</a> from the post page.";
            }
            $currency = $lead["currency"];
        }

        $field_input = apply_filters("gform_field_input", "", $field, $value, $lead_id, $form_id);
        if($field_input)
            return $field_input;

        //product fields are not editable
        if(RG_CURRENT_VIEW == "entry" && self::is_product_field($field["type"]))
            return "<div class='ginput_container'>" . __("Product fields are not editable", "gravityforms") . "</div>";

        else if(RG_CURRENT_VIEW == "entry" && $field["type"] == "donation")
            return "<div class='ginput_container'>" . __("Donations are not editable", "gravityforms") . "</div>";

        // add categories as choices for Post Category field
        if($field['type'] == 'post_category'){
            $field = self::add_categories_as_choices($field, $value);
		}

        $max_length = "";
        $html5_attributes = "";

        switch(RGFormsModel::get_input_type($field)){

            case "total" :
                if(RG_CURRENT_VIEW == "entry")
                    return "<div class='ginput_container'><input type='text' name='input_{$id}' value='{$value}' /></div>";
                else
                    return "<div class='ginput_container'><span class='ginput_total ginput_total_{$form_id}'>" . self::to_money("0") . "</span><input type='hidden' name='input_{$id}' id='{$field_id}' class='gform_hidden'/></div>";
            break;

            case "calculation" :
            case "singleproduct" :

                $product_name = !is_array($value) || empty($value[$field["id"] . ".1"]) ? esc_attr($field["label"]) : esc_attr($value[$field["id"] . ".1"]);
                $price = !is_array($value) || empty($value[$field["id"] . ".2"]) ? rgget("basePrice", $field) : esc_attr($value[$field["id"] . ".2"]);
                $quantity = is_array($value) ? esc_attr($value[$field["id"] . ".3"]) : "";

                if(empty($price))
                    $price = 0;

                $form = RGFormsModel::get_form_meta($form_id);
                $has_quantity = sizeof(GFCommon::get_product_fields_by_type($form, array("quantity"), $field["id"])) > 0;
                if($has_quantity)
                    $field["disableQuantity"] = true;

                $quantity_field = "";

                $qty_input_type = GFFormsModel::is_html5_enabled() ? "number" : "text";

                if(IS_ADMIN){
                    $style = rgget("disableQuantity", $field) ? "style='display:none;'" : "";
                    $quantity_field  = " <span class='ginput_quantity_label' {$style}>" . apply_filters("gform_product_quantity_{$form_id}",apply_filters("gform_product_quantity",__("Quantity:", "gravityforms"), $form_id), $form_id) . "</span> <input type='{$qty_input_type}' name='input_{$id}.3' value='{$quantity}' id='ginput_quantity_{$form_id}_{$field["id"]}' class='ginput_quantity' size='10' />";
                }
                else if(!rgget("disableQuantity", $field)){
                    $tabindex = self::get_tabindex();
                    $quantity_field .= " <span class='ginput_quantity_label'>" . apply_filters("gform_product_quantity_{$form_id}",apply_filters("gform_product_quantity",__("Quantity:", "gravityforms"), $form_id), $form_id) . "</span> <input type='{$qty_input_type}' name='input_{$id}.3' value='{$quantity}' id='ginput_quantity_{$form_id}_{$field["id"]}' class='ginput_quantity' size='10' {$tabindex}/>";
                }
                else{
                    if(!is_numeric($quantity))
                        $quantity = 1;

                    if(!$has_quantity){
                        $quantity_field .= "<input type='hidden' name='input_{$id}.3' value='{$quantity}' class='ginput_quantity_{$form_id}_{$field["id"]} gform_hidden' />";
                    }
                }

                return "<div class='ginput_container'><input type='hidden' name='input_{$id}.1' value='{$product_name}' class='gform_hidden' /><span class='ginput_product_price_label'>" . apply_filters("gform_product_price_{$form_id}", apply_filters("gform_product_price",__("Price", "gravityforms"), $form_id), $form_id) . ":</span> <span class='ginput_product_price' id='{$field_id}'>" . esc_html(GFCommon::to_money($price, $currency)) ."</span><input type='hidden' name='input_{$id}.2' id='ginput_base_price_{$form_id}_{$field["id"]}' class='gform_hidden' value='" . esc_attr($price) . "'/>{$quantity_field}</div>";

            break;

            case "hiddenproduct" :

                $form = RGFormsModel::get_form_meta($form_id);
                $has_quantity_field = sizeof(GFCommon::get_product_fields_by_type($form, array("quantity"), $field["id"])) > 0;

                $product_name = !is_array($value) || empty($value[$field["id"] . ".1"]) ? esc_attr($field["label"]) : esc_attr($value[$field["id"] . ".1"]);
                $quantity = is_array($value) ? esc_attr($value[$field["id"] . ".3"]) : "1";
                $price = !is_array($value) || empty($value[$field["id"] . ".2"]) ? rgget("basePrice", $field) : esc_attr($value[$field["id"] . ".2"]);
                if(empty($price))
                    $price = 0;

                $quantity_field = $has_quantity_field ? "" : "<input type='hidden' name='input_{$id}.3' value='" . esc_attr($quantity) . "' id='ginput_quantity_{$form_id}_{$field["id"]}' class='gform_hidden' />";
                $product_name_field = "<input type='hidden' name='input_{$id}.1' value='{$product_name}' class='gform_hidden' />";

                $field_type = IS_ADMIN ? "text" : "hidden";

                return $quantity_field . $product_name_field . sprintf("<input name='input_%d.2' id='ginput_base_price_{$form_id}_{$field["id"]}' type='{$field_type}' value='%s' class='gform_hidden ginput_amount' %s/>", $id, esc_attr($price), $disabled_text);

            break;

            case "singleshipping" :

                $price = !empty($value) ? $value : rgget("basePrice", $field);
                if(empty($price))
                    $price = 0;

                return "<div class='ginput_container'><input type='hidden' name='input_{$id}' value='{$price}' class='gform_hidden'/><span class='ginput_shipping_price' id='{$field_id}'>" . GFCommon::to_money($price, $currency) ."</span></div>";

            break;

            case "website":
                $is_html5 = RGFormsModel::is_html5_enabled();
                $value = empty($value) && !$is_html5 ? "http://" : $value;
                $html_input_type = $is_html5 ? "url" : "text";
                $html5_attributes = $is_html5 ? "placeholder='http://'" : "";
            case "text":
                if(empty($html_input_type))
                    $html_input_type = "text";

                if(rgget("enablePasswordInput", $field) && RG_CURRENT_VIEW != "entry")
                    $html_input_type = "password";

                if(is_numeric(rgget("maxLength", $field)))
                    $max_length = "maxlength='{$field["maxLength"]}'";

                if(!empty($post_link))
                    return $post_link;

                $logic_event = self::get_logic_event($field, "keyup");

                $tabindex = self::get_tabindex();
                return sprintf("<div class='ginput_container'><input name='input_%d' id='%s' type='%s' value='%s' class='%s' $max_length $tabindex $logic_event $html5_attributes %s/></div>", $id, $field_id, $html_input_type, esc_attr($value), esc_attr($class), $disabled_text);
            break;

            case "email":

                if(!empty($post_link))
                    return $post_link;

                $html_input_type = RGFormsModel::is_html5_enabled() ? "email" : "text";

                if(IS_ADMIN && RG_CURRENT_VIEW != "entry"){
                    $single_style = rgget("emailConfirmEnabled", $field) ? "style='display:none;'" : "";
                    $confirm_style = rgget("emailConfirmEnabled", $field) ? "" : "style='display:none;'";
                    return "<div class='ginput_container ginput_single_email' {$single_style}><input name='input_{$id}' type='{$html_input_type}' class='" . esc_attr($class) . "' disabled='disabled' /><div class='gf_clear gf_clear_complex'></div></div><div class='ginput_complex ginput_container ginput_confirm_email' {$confirm_style} id='{$field_id}_container'><span id='{$field_id}_1_container' class='ginput_left'><input type='text' name='input_{$id}' id='{$field_id}' disabled='disabled' /><label for='{$field_id}'>" . apply_filters("gform_email_{$form_id}", apply_filters("gform_email",__("Enter Email", "gravityforms"), $form_id), $form_id) . "</label></span><span id='{$field_id}_2_container' class='ginput_right'><input type='text' name='input_{$id}_2' id='{$field_id}_2' disabled='disabled' /><label for='{$field_id}_2'>" . apply_filters("gform_email_confirm_{$form_id}", apply_filters("gform_email_confirm",__("Confirm Email", "gravityforms"), $form_id), $form_id) . "</label></span><div class='gf_clear gf_clear_complex'></div></div>";
                }
                else{
                    $logic_event = self::get_logic_event($field, "keyup");

                    if(rgget("emailConfirmEnabled", $field) && RG_CURRENT_VIEW != "entry"){
                        $first_tabindex = self::get_tabindex();
                        $last_tabindex = self::get_tabindex();
                        return "<div class='ginput_complex ginput_container' id='{$field_id}_container'><span id='{$field_id}_1_container' class='ginput_left'><input type='{$html_input_type}' name='input_{$id}' id='{$field_id}' value='" . esc_attr($value) . "' {$first_tabindex} {$logic_event} {$disabled_text}/><label for='{$field_id}'>" . apply_filters("gform_email_{$form_id}", apply_filters("gform_email",__("Enter Email", "gravityforms"), $form_id), $form_id) . "</label></span><span id='{$field_id}_2_container' class='ginput_right'><input type='{$html_input_type}' name='input_{$id}_2' id='{$field_id}_2' value='" . esc_attr(rgpost("input_" . $id ."_2")) . "' {$last_tabindex} {$disabled_text}/><label for='{$field_id}_2'>" . apply_filters("gform_email_confirm_{$form_id}", apply_filters("gform_email_confirm",__("Confirm Email", "gravityforms"), $form_id), $form_id) . "</label></span><div class='gf_clear gf_clear_complex'></div></div>";
                    }
                    else{
                        $tabindex = self::get_tabindex();
                        return sprintf("<div class='ginput_container'><input name='input_%d' id='%s' type='%s' value='%s' class='%s' {$max_length} {$tabindex} {$html5_attributes} {$logic_event} %s/></div>", $id, $field_id, $html_input_type, esc_attr($value), esc_attr($class), $disabled_text);
                    }
                }

            break;
            case "honeypot":
                $autocomplete = RGFormsModel::is_html5_enabled() ? "autocomplete='off'" : "";
                return "<div class='ginput_container'><input name='input_{$id}' id='{$field_id}' type='text' value='' {$autocomplete}/></div>";
            break;

            case "hidden" :
                if(!empty($post_link))
                    return $post_link;

                $field_type = IS_ADMIN ? "text" : "hidden";
                $class_attribute = IS_ADMIN ? "" : "class='gform_hidden'";

                return sprintf("<input name='input_%d' id='%s' type='$field_type' $class_attribute value='%s' %s/>", $id, $field_id, esc_attr($value), $disabled_text);
            break;

            case "html" :
                $content = IS_ADMIN ? "<div class='gf-html-container'><span class='gf_blockheader'><i class='fa fa-code fa-lg'></i> " . __("HTML Content", "gravityforms") . "</span><span>" . __("This is a content placeholder. HTML content is not displayed in the form admin. Preview this form to view the content.", "gravityforms") . "</span></div>" : $field["content"];
                $content = GFCommon::replace_variables_prepopulate($content); //adding support for merge tags
                $content = do_shortcode($content); //adding support for shortcodes
                return $content;
            break;

            case "adminonly_hidden" :
                if(!is_array($field["inputs"])){
                    if(is_array($value))
                        $value = json_encode($value);
                    return sprintf("<input name='input_%d' id='%s' class='gform_hidden' type='hidden' value='%s'/>", $id, $field_id, esc_attr($value));
                }


                $fields = "";
                foreach($field["inputs"] as $input){
                    $fields .= sprintf("<input name='input_%s' class='gform_hidden' type='hidden' value='%s'/>", $input["id"], esc_attr(rgar($value, strval($input["id"]))));
                }
                return $fields;
            break;

            case "number" :
                if(!empty($post_link))
                    return $post_link;

                $instruction = "";
                $read_only = "";

                if(!IS_ADMIN){

                    if(GFCommon::has_field_calculation($field)) {

                        // calculation-enabled fields should be read only
                        $read_only = 'readonly="readonly"';

                    } else {

                        $message = self::get_range_message($field);
                        $validation_class = $field["failed_validation"] ? "validation_message" : "";

                        if(!$field["failed_validation"] && !empty($message) && empty($field["errorMessage"]))
                            $instruction = "<div class='instruction $validation_class'>" . $message . "</div>";

                    }

                }
                else if( RG_CURRENT_VIEW == "entry" ){
                    $value = GFCommon::format_number($value, rgar($field, "numberFormat"));
                }

                $is_html5 = RGFormsModel::is_html5_enabled();
                $html_input_type = $is_html5 && !GFCommon::has_field_calculation($field) && ($field["numberFormat"] != "currency" && $field["numberFormat"] != "decimal_comma" ) ? "number" : "text"; // chrome does not allow number fields to have commas, calculations and currency values display numbers with commas
                $step_attr = $is_html5 ? "step='any'" : "";

                $logic_event = self::get_logic_event($field, "keyup");

                $value = GFCommon::format_number($value, $field["numberFormat"]);

                $tabindex = self::get_tabindex();
                return sprintf("<div class='ginput_container'><input name='input_%d' id='%s' type='{$html_input_type}' {$step_attr} value='%s' class='%s' {$tabindex} {$logic_event} {$read_only} %s/>%s</div>", $id, $field_id, esc_attr($value), esc_attr($class),  $disabled_text, $instruction);

            case "donation" :
                $tabindex = self::get_tabindex();
                return sprintf("<div class='ginput_container'><input name='input_%d' id='%s' type='text' value='%s' class='%s ginput_donation_amount' $tabindex %s/></div>", $id, $field_id, esc_attr($value), esc_attr($class),  $disabled_text);

            case "price" :
                $logic_event = self::get_logic_event($field, "keyup");

                $tabindex = self::get_tabindex();
                return sprintf("<div class='ginput_container'><input name='input_%d' id='%s' type='text' value='%s' class='%s ginput_amount' {$tabindex} {$logic_event} %s/></div>", $id, $field_id, esc_attr($value), esc_attr($class),  $disabled_text);

            case "phone" :
                if(!empty($post_link))
                    return $post_link;

                $instruction = $field["phoneFormat"] == "standard" ? __("Phone format:", "gravityforms") . " (###)###-####" : "";
                $instruction_div = rgget("failed_validation", $field) && !empty($instruction) ? "<div class='instruction validation_message'>$instruction</div>" : "";
                $html_input_type = RGFormsModel::is_html5_enabled() ? "tel" : "text";
                $logic_event = self::get_logic_event($field, "keyup");

                $tabindex = self::get_tabindex();
                return sprintf("<div class='ginput_container'><input name='input_%d' id='%s' type='{$html_input_type}' value='%s' class='%s' {$tabindex} {$logic_event} %s/>{$instruction_div}</div>", $id, $field_id, esc_attr($value), esc_attr($class), $disabled_text);

            case "textarea":
                $max_chars = "";
                $logic_event = self::get_logic_event($field, "keyup");

                $tabindex = self::get_tabindex();
                return sprintf("<div class='ginput_container'><textarea name='input_%d' id='%s' class='textarea %s' {$tabindex} {$logic_event} %s rows='10' cols='50'>%s</textarea></div>{$max_chars}", $id, $field_id, esc_attr($class), $disabled_text, esc_html($value));

            case "post_title":
            case "post_tags":
            case "post_custom_field":
                $tabindex = self::get_tabindex();
                $logic_event = self::get_logic_event($field, "keyup");

                return !empty($post_link) ? $post_link : sprintf("<div class='ginput_container'><input name='input_%d' id='%s' type='text' value='%s' class='%s' {$tabindex} {$logic_event} %s/></div>", $id, $field_id, esc_attr($value), esc_attr($class), $disabled_text);
            break;

            case "post_content":
            case "post_excerpt":
                $max_chars = "";
                $logic_event = self::get_logic_event($field, "keyup");

                $tabindex = self::get_tabindex();
                return !empty($post_link) ? $post_link : sprintf("<div class='ginput_container'><textarea name='input_%d' id='%s' class='textarea %s' {$tabindex} {$logic_event} %s rows='10' cols='50'>%s</textarea></div>{$max_chars}", $id, $field_id, esc_attr($class), $disabled_text, esc_html($value));
            break;

            case "post_category" :
                if(!empty($post_link))
                    return $post_link;

                if(rgget("displayAllCategories", $field) && !IS_ADMIN){
                    $default_category = rgget("categoryInitialItemEnabled", $field) ? "-1" : get_option('default_category');
                    $selected = empty($value) ? $default_category : $value;
                    $args = array('echo' => 0, 'selected' => $selected, "class" => esc_attr($class) . " gfield_select",  'hide_empty' => 0, 'name' => "input_$id", 'orderby' => 'name', 'hierarchical' => true );
                    if(self::$tab_index > 0)
                        $args["tab_index"] = self::$tab_index++;

                    if(rgget("categoryInitialItemEnabled", $field)){
                        $args["show_option_none"] = empty($field["categoryInitialItem"]) ? " " : $field["categoryInitialItem"];
                    }

                    $args = apply_filters("gform_post_category_args_{$field["id"]}", apply_filters("gform_post_category_args", $args, $field), $field);

                    return "<div class='ginput_container'>" . wp_dropdown_categories($args) . "</div>";
                }
                else{
                    $tabindex = self::get_tabindex();
                    if(is_array(rgar($field, "choices")))
                        usort($field["choices"], create_function('$a,$b', 'return strcmp($a["text"], $b["text"]);'));

                    $choices = self::get_select_choices($field, $value);

                    //Adding first option
                    if(rgget("categoryInitialItemEnabled", $field)){
                        $selected = empty($value) ? "selected='selected'" : "";
                        $choices = "<option value='-1' {$selected}>{$field["categoryInitialItem"]}</option>" . $choices;
                    }

                    return sprintf("<div class='ginput_container'><select name='input_%d' id='%s' class='%s gfield_select' {$tabindex} %s>%s</select></div>", $id, $field_id, esc_attr($class), $disabled_text, $choices);
                }
            break;

            case "post_image" :
                if(!empty($post_link))
                    return $post_link;

                $title = esc_attr(rgget($field["id"] . ".1", $value));
                $caption = esc_attr(rgget($field["id"] . ".4", $value));
                $description = esc_attr(rgget($field["id"] . ".7", $value));

                //hidding meta fields for admin
                $hidden_style = "style='display:none;'";
                $title_style = !rgget("displayTitle", $field) && IS_ADMIN ? $hidden_style : "";
                $caption_style = !rgget("displayCaption", $field) && IS_ADMIN ? $hidden_style : "";
                $description_style = !rgget("displayDescription", $field) && IS_ADMIN ? $hidden_style : "";
                $file_label_style = IS_ADMIN && !(rgget("displayTitle", $field) || rgget("displayCaption", $field) || rgget("displayDescription", $field)) ? $hidden_style : "";

                $hidden_class = $preview = "";
                $file_info = RGFormsModel::get_temp_filename($form_id, "input_{$id}");
                if($file_info){
                    $hidden_class = " gform_hidden";
                    $file_label_style = $hidden_style;
                    $preview = "<span class='ginput_preview'><strong>" . esc_html($file_info["uploaded_filename"]) . "</strong> | <a href='javascript:;' onclick='gformDeleteUploadedFile({$form_id}, {$id});'>" . __("delete", "gravityforms") . "</a></span>";
                }

                //in admin, render all meta fields to allow for immediate feedback, but hide the ones not selected
                $file_label = (IS_ADMIN || rgget("displayTitle", $field) || rgget("displayCaption", $field) || rgget("displayDescription", $field)) ? "<label for='$field_id' class='ginput_post_image_file' $file_label_style>" . apply_filters("gform_postimage_file_{$form_id}",apply_filters("gform_postimage_file",__("File", "gravityforms"), $form_id), $form_id) . "</label>" : "";

                $tabindex = self::get_tabindex();
                $upload = sprintf("<span class='ginput_full$class_suffix'>{$preview}<input name='input_%d' id='%s' type='file' value='%s' class='%s' $tabindex %s/>$file_label</span>", $id, $field_id, esc_attr($value), esc_attr($class . $hidden_class), $disabled_text);

                $tabindex = self::get_tabindex();
                $title_field = rgget("displayTitle", $field) || IS_ADMIN ? sprintf("<span class='ginput_full$class_suffix ginput_post_image_title' $title_style><input type='text' name='input_%d.1' id='%s_1' value='%s' $tabindex %s/><label for='%s_1'>" . apply_filters("gform_postimage_title_{$form_id}",apply_filters("gform_postimage_title",__("Title", "gravityforms"), $form_id), $form_id) . "</label></span>", $id, $field_id, $title, $disabled_text, $field_id) : "";

                $tabindex = self::get_tabindex();
                $caption_field = rgget("displayCaption", $field) || IS_ADMIN ? sprintf("<span class='ginput_full$class_suffix ginput_post_image_caption' $caption_style><input type='text' name='input_%d.4' id='%s_4' value='%s' $tabindex %s/><label for='%s_4'>" . apply_filters("gform_postimage_caption_{$form_id}",apply_filters("gform_postimage_caption",__("Caption", "gravityforms"), $form_id), $form_id) . "</label></span>", $id, $field_id, $caption, $disabled_text, $field_id) : "";

                $tabindex = self::get_tabindex();
                $description_field = rgget("displayDescription", $field) || IS_ADMIN? sprintf("<span class='ginput_full$class_suffix ginput_post_image_description' $description_style><input type='text' name='input_%d.7' id='%s_7' value='%s' $tabindex %s/><label for='%s_7'>" . apply_filters("gform_postimage_description_{$form_id}",apply_filters("gform_postimage_description",__("Description", "gravityforms"), $form_id), $form_id) . "</label></span>", $id, $field_id, $description, $disabled_text, $field_id) : "";

                return "<div class='ginput_complex$class_suffix ginput_container'>" . $upload . $title_field . $caption_field . $description_field . "</div>";

            break;

            case "multiselect" :
                if(!empty($post_link))
                    return $post_link;

                $placeholder = rgar($field, "enableEnhancedUI") ? "data-placeholder='" . esc_attr(apply_filters("gform_multiselect_placeholder_{$form_id}", apply_filters("gform_multiselect_placeholder", __("Click to select...", "gravityforms"), $form_id), $form_id)) . "'" : "";
                $logic_event = self::get_logic_event($field, "keyup");
                $css_class = trim(esc_attr($class) . " gfield_select");
                $size = rgar($field, "multiSelectSize");
                if(empty($size))
                    $size = 7;

                $tabindex = self::get_tabindex();
                return sprintf("<div class='ginput_container'><select multiple='multiple' {$placeholder} size='{$size}' name='input_%d[]' id='%s' {$logic_event} class='%s' $tabindex %s>%s</select></div>", $id, $field_id, $css_class, $disabled_text, self::get_select_choices($field, $value));

            break;

            case "select" :
                if(!empty($post_link))
                    return $post_link;

                $logic_event = self::get_logic_event($field, "change");
                $css_class = trim(esc_attr($class) . " gfield_select");
                $tabindex = self::get_tabindex();
                return sprintf("<div class='ginput_container'><select name='input_%d' id='%s' $logic_event class='%s' $tabindex %s>%s</select></div>", $id, $field_id, $css_class, $disabled_text, self::get_select_choices($field, $value));

            case "checkbox" :
                if(!empty($post_link))
                    return $post_link;

                return sprintf("<div class='ginput_container'><ul class='gfield_checkbox' id='%s'>%s</ul></div>", $field_id, self::get_checkbox_choices($field, $value, $disabled_text));

            case "radio" :
                if(!empty($post_link))
                    return $post_link;

                return sprintf("<div class='ginput_container'><ul class='gfield_radio' id='%s'>%s</ul></div>", $field_id, self::get_radio_choices($field, $value, $disabled_text));

            case "password" :

                $first_tabindex = self::get_tabindex();
                $last_tabindex = self::get_tabindex();

                $strength_style = !rgar($field,"passwordStrengthEnabled") ? "style='display:none;'" : "";
                $strength = rgar($field,"passwordStrengthEnabled") || IS_ADMIN ? "<div id='{$field_id}_strength_indicator' class='gfield_password_strength' {$strength_style}>" . __("Strength indicator", "gravityforms") . "</div><input type='hidden' class='gform_hidden' id='{$field_id}_strength' name='input_{$id}_strength' />" : "";

                $action = !IS_ADMIN ? "gformShowPasswordStrength(\"$field_id\");" : "";
                $onchange= rgar($field,"passwordStrengthEnabled") ? "onchange='{$action}'" : "";
                $onkeyup = rgar($field,"passwordStrengthEnabled") ? "onkeyup='{$action}'" : "";

                $pass = RGForms::post("input_" . $id ."_2");
                return sprintf("<div class='ginput_complex$class_suffix ginput_container' id='{$field_id}_container'><span id='" . $field_id . "_1_container' class='ginput_left'><input type='password' name='input_%d' id='%s' {$onkeyup} {$onchange} value='%s' $first_tabindex %s/><label for='%s'>" . apply_filters("gform_password_{$form_id}", apply_filters("gform_password",__("Enter Password", "gravityforms"), $form_id), $form_id) . "</label></span><span id='" . $field_id . "_2_container' class='ginput_right'><input type='password' name='input_%d_2' id='%s_2' {$onkeyup} {$onchange} value='%s' $last_tabindex %s/><label for='%s_2'>" . apply_filters("gform_password_confirm_{$form_id}", apply_filters("gform_password_confirm",__("Confirm Password", "gravityforms"), $form_id), $form_id) . "</label></span><div class='gf_clear gf_clear_complex'></div></div>{$strength}", $id, $field_id, esc_attr($value), $disabled_text, $field_id, $id, $field_id, esc_attr($pass), $disabled_text, $field_id);

            case "name" :
                $prefix = "";
                $first = "";
                $last = "";
                $suffix = "";
                if(is_array($value)){
                    $prefix = esc_attr(RGForms::get($field["id"] . ".2", $value));
                    $first = esc_attr(RGForms::get($field["id"] . ".3", $value));
                    $last = esc_attr(RGForms::get($field["id"] . ".6", $value));
                    $suffix = esc_attr(RGForms::get($field["id"] . ".8", $value));
                }
                switch(rgget("nameFormat", $field)){

                    case "extended" :
                        $prefix_tabindex = self::get_tabindex();
                        $first_tabindex = self::get_tabindex();
                        $last_tabindex = self::get_tabindex();
                        $suffix_tabindex = self::get_tabindex();
                        return sprintf("<div class='ginput_complex$class_suffix ginput_container' id='$field_id'><span id='" . $field_id . "_2_container' class='name_prefix'><input type='text' name='input_%d.2' id='%s_2' value='%s' $prefix_tabindex %s/><label for='%s_2'>" . apply_filters("gform_name_prefix_{$form_id}",apply_filters("gform_name_prefix",__("Prefix", "gravityforms"), $form_id), $form_id) . "</label></span><span id='" . $field_id . "_3_container' class='name_first'><input type='text' name='input_%d.3' id='%s_3' value='%s' $first_tabindex %s/><label for='%s_3'>" . apply_filters("gform_name_first_{$form_id}",apply_filters("gform_name_first",__("First", "gravityforms"), $form_id), $form_id) . "</label></span><span id='" . $field_id . "_6_container' class='name_last'><input type='text' name='input_%d.6' id='%s_6' value='%s' $last_tabindex %s/><label for='%s_6'>" . apply_filters("gform_name_last_{$form_id}", apply_filters("gform_name_last", __("Last", "gravityforms"), $form_id), $form_id) . "</label></span><span id='" . $field_id . "_8_container' class='name_suffix'><input type='text' name='input_%d.8' id='%s_8' value='%s' $suffix_tabindex %s/><label for='%s_8'>" . apply_filters("gform_name_suffix_{$form_id}", apply_filters("gform_name_suffix", __("Suffix", "gravityforms"), $form_id), $form_id) . "</label></span></div>", $id, $field_id, $prefix, $disabled_text, $field_id, $id, $field_id, $first, $disabled_text, $field_id, $id, $field_id, $last, $disabled_text, $field_id, $id, $field_id, $suffix, $disabled_text, $field_id);

                    case "simple" :
                        $tabindex = self::get_tabindex();
                        return sprintf("<div class='ginput_container'><input name='input_%d' id='%s' type='text' value='%s' class='%s' $tabindex %s/></div>", $id, $field_id, esc_attr($value), esc_attr($class), $disabled_text);

                    default :
                        $first_tabindex = self::get_tabindex();
                        $last_tabindex = self::get_tabindex();
                        return sprintf("<div class='ginput_complex$class_suffix ginput_container' id='$field_id'><span id='" . $field_id . "_3_container' class='ginput_left'><input type='text' name='input_%d.3' id='%s_3' value='%s' $first_tabindex %s/><label for='%s_3'>" . apply_filters("gform_name_first_{$form_id}", apply_filters("gform_name_first",__("First", "gravityforms"), $form_id), $form_id) . "</label></span><span id='" . $field_id . "_6_container' class='ginput_right'><input type='text' name='input_%d.6' id='%s_6' value='%s' $last_tabindex %s/><label for='%s_6'>" . apply_filters("gform_name_last_{$form_id}", apply_filters("gform_name_last",__("Last", "gravityforms"), $form_id), $form_id) . "</label></span><div class='gf_clear gf_clear_complex'></div></div>", $id, $field_id, $first, $disabled_text, $field_id, $id, $field_id, $last, $disabled_text, $field_id);
                }

            case "address" :
                $street_value ="";
                $street2_value ="";
                $city_value ="";
                $state_value ="";
                $zip_value ="";
                $country_value ="";

                if(is_array($value)){
                    $street_value = esc_attr(rgget($field["id"] . ".1",$value));
                    $street2_value = esc_attr(rgget($field["id"] . ".2",$value));
                    $city_value = esc_attr(rgget($field["id"] . ".3",$value));
                    $state_value = esc_attr(rgget($field["id"] . ".4",$value));
                    $zip_value = esc_attr(rgget($field["id"] . ".5",$value));
                    $country_value = esc_attr(rgget($field["id"] . ".6",$value));
                }

                $address_types = self::get_address_types($form_id);
                $addr_type = empty($field["addressType"]) ? "international" : $field["addressType"];
                $address_type = $address_types[$addr_type];

                $state_label = empty($address_type["state_label"]) ? __("State", "gravityforms") : $address_type["state_label"];
                $zip_label = empty($address_type["zip_label"]) ? __("Zip Code", "gravityforms") : $address_type["zip_label"];
                $hide_country = !empty($address_type["country"]) || rgget("hideCountry", $field);

                if(empty($country_value))
                    $country_value = rgget("defaultCountry", $field);

                if(empty($state_value))
                    $state_value = rgget("defaultState", $field);

                $country_list = self::get_country_dropdown($country_value);

                //changing css classes based on field format to ensure proper display
                $address_display_format = apply_filters("gform_address_display_format", "default");
                $city_location = $address_display_format == "zip_before_city" ? "right" : "left";
                $zip_location = $address_display_format != "zip_before_city" && rgar($field,"hideState") ? "right" : "left";
                $state_location = $address_display_format == "zip_before_city" ? "left" : "right";
                $country_location = rgar($field,"hideState") ? "left" : "right";

                //address field
                $tabindex = self::get_tabindex();
                $street_address = sprintf("<span class='ginput_full$class_suffix' id='" . $field_id . "_1_container'><input type='text' name='input_%d.1' id='%s_1' value='%s' $tabindex %s/><label for='%s_1' id='" . $field_id . "_1_label'>" . apply_filters("gform_address_street_{$form_id}", apply_filters("gform_address_street",__("Street Address", "gravityforms"), $form_id), $form_id) . "</label></span>", $id, $field_id, $street_value, $disabled_text, $field_id);

                //address line 2 field
                $street_address2 = "";
                $style = (IS_ADMIN && rgget("hideAddress2", $field)) ? "style='display:none;'" : "";
                if(IS_ADMIN || !rgget("hideAddress2", $field)){
                    $tabindex = self::get_tabindex();
                    $street_address2 = sprintf("<span class='ginput_full$class_suffix' id='" . $field_id . "_2_container' $style><input type='text' name='input_%d.2' id='%s_2' value='%s' $tabindex %s/><label for='%s_2' id='" . $field_id . "_2_label'>" . apply_filters("gform_address_street2_{$form_id}",apply_filters("gform_address_street2",__("Address Line 2", "gravityforms"), $form_id), $form_id) . "</label></span>", $id, $field_id, $street2_value, $disabled_text, $field_id);
                }

                if($address_display_format == "zip_before_city"){
                    //zip field
                    $tabindex = self::get_tabindex();
                    $zip = sprintf("<span class='ginput_{$zip_location}$class_suffix' id='" . $field_id . "_5_container'><input type='text' name='input_%d.5' id='%s_5' value='%s' $tabindex %s/><label for='%s_5' id='" . $field_id . "_5_label'>" . apply_filters("gform_address_zip_{$form_id}", apply_filters("gform_address_zip", $zip_label, $form_id), $form_id) . "</label></span>", $id, $field_id, $zip_value, $disabled_text, $field_id);

                    //city field
                    $tabindex = self::get_tabindex();
                    $city = sprintf("<span class='ginput_{$city_location}$class_suffix' id='" . $field_id . "_3_container'><input type='text' name='input_%d.3' id='%s_3' value='%s' $tabindex %s/><label for='%s_3' id='{$field_id}_3_label'>" . apply_filters("gform_address_city_{$form_id}", apply_filters("gform_address_city",__("City", "gravityforms"), $form_id), $form_id) . "</label></span>", $id, $field_id, $city_value, $disabled_text, $field_id);

                    //state field
                    $style = (IS_ADMIN && rgget("hideState", $field)) ? "style='display:none;'" : "";
                    if(IS_ADMIN || !rgget("hideState", $field)){
                        $state_field = self::get_state_field($field, $id, $field_id, $state_value, $disabled_text, $form_id);
                        $state = sprintf("<span class='ginput_{$state_location}$class_suffix' id='" . $field_id . "_4_container' $style>$state_field<label for='%s_4' id='" . $field_id . "_4_label'>" . apply_filters("gform_address_state_{$form_id}", apply_filters("gform_address_state", $state_label, $form_id), $form_id) . "</label></span>", $field_id);
                    }
                    else{
                        $state = sprintf("<input type='hidden' class='gform_hidden' name='input_%d.4' id='%s_4' value='%s'/>", $id, $field_id, $state_value);
                    }
                }
                else{

                    //city field
                    $tabindex = self::get_tabindex();
                    $city = sprintf("<span class='ginput_{$city_location}$class_suffix' id='" . $field_id . "_3_container'><input type='text' name='input_%d.3' id='%s_3' value='%s' $tabindex %s/><label for='%s_3' id='$field_id.3_label'>" . apply_filters("gform_address_city_{$form_id}", apply_filters("gform_address_city",__("City", "gravityforms"), $form_id), $form_id) . "</label></span>", $id, $field_id, $city_value, $disabled_text, $field_id);

                    //state field
                    $style = (IS_ADMIN && rgget("hideState", $field)) ? "style='display:none;'" : "";
                    if(IS_ADMIN || !rgget("hideState", $field)){
                        $state_field = self::get_state_field($field, $id, $field_id, $state_value, $disabled_text, $form_id);
                        $state = sprintf("<span class='ginput_{$state_location}$class_suffix' id='" . $field_id . "_4_container' $style>$state_field<label for='%s_4' id='" . $field_id . "_4_label'>" . apply_filters("gform_address_state_{$form_id}", apply_filters("gform_address_state", $state_label, $form_id), $form_id) . "</label></span>", $field_id);
                    }
                    else{
                        $state = sprintf("<input type='hidden' class='gform_hidden' name='input_%d.4' id='%s_4' value='%s'/>", $id, $field_id, $state_value);
                    }

                    //zip field
                    $tabindex = self::get_tabindex();
                    $zip = sprintf("<span class='ginput_{$zip_location}$class_suffix' id='" . $field_id . "_5_container'><input type='text' name='input_%d.5' id='%s_5' value='%s' $tabindex %s/><label for='%s_5' id='" . $field_id . "_5_label'>" . apply_filters("gform_address_zip_{$form_id}", apply_filters("gform_address_zip", $zip_label, $form_id), $form_id) . "</label></span>", $id, $field_id, $zip_value, $disabled_text, $field_id);

                }

                if(IS_ADMIN || !$hide_country){
                    $style = $hide_country ? "style='display:none;'" : "";
                    $tabindex = self::get_tabindex();
                    $country = sprintf("<span class='ginput_{$country_location}$class_suffix' id='" . $field_id . "_6_container' $style><select name='input_%d.6' id='%s_6' $tabindex %s>%s</select><label for='%s_6' id='" . $field_id . "_6_label'>" . apply_filters("gform_address_country_{$form_id}", apply_filters("gform_address_country",__("Country", "gravityforms"), $form_id), $form_id) . "</label></span>", $id, $field_id, $disabled_text, $country_list, $field_id);
                }
                else{
                    $country = sprintf("<input type='hidden' class='gform_hidden' name='input_%d.6' id='%s_6' value='%s'/>", $id, $field_id, $country_value);
                }

                $inputs = $address_display_format == "zip_before_city" ? $street_address . $street_address2 . $zip . $city . $state . $country : $street_address . $street_address2 . $city . $state . $zip . $country;

                return "<div class='ginput_complex$class_suffix ginput_container' id='$field_id'>" . $inputs . "<div class='gf_clear gf_clear_complex'></div></div>";

            case "date" :
                if(!empty($post_link))
                    return $post_link;

                $format = empty($field["dateFormat"]) ? "mdy" : esc_attr($field["dateFormat"]);
                $field_position = substr($format, 0, 3);
                if(IS_ADMIN && RG_CURRENT_VIEW != "entry"){
                    $datepicker_display = in_array(rgget("dateType", $field), array("datefield", "datedropdown")) ? "none" : "inline";
                    $datefield_display = rgget("dateType", $field) == "datefield" ? "inline" : "none";
                    $dropdown_display = rgget("dateType", $field) == "datedropdown" ? "inline" : "none";
                    $icon_display = rgget("calendarIconType", $field) == "calendar" ? "inline" : "none";

                    $month_field = "<div class='gfield_date_month ginput_date' id='gfield_input_date_month' style='display:$datefield_display'><input name='ginput_month' type='text' disabled='disabled'/><label>" . __("MM", "gravityforms") . "</label></div>";
                    $day_field = "<div class='gfield_date_day ginput_date' id='gfield_input_date_day' style='display:$datefield_display'><input name='ginput_day' type='text' disabled='disabled'/><label>" . __("DD", "gravityforms") . "</label></div>";
                    $year_field = "<div class='gfield_date_year ginput_date' id='gfield_input_date_year' style='display:$datefield_display'><input type='text' name='ginput_year' disabled='disabled'/><label>" . __("YYYY", "gravityforms") . "</label></div>";

                    $month_dropdown = "<div class='gfield_date_dropdown_month ginput_date_dropdown' id='gfield_dropdown_date_month' style='display:$dropdown_display'>" . self::get_month_dropdown("","","","","disabled='disabled'") . "</div>";
                    $day_dropdown = "<div class='gfield_date_dropdown_day ginput_date_dropdown' id='gfield_dropdown_date_day' style='display:$dropdown_display'>" . self::get_day_dropdown("","","","","disabled='disabled'") . "</div>";
                    $year_dropdown = "<div class='gfield_date_dropdown_year ginput_date_dropdown' id='gfield_dropdown_date_year' style='display:$dropdown_display'>" . self::get_year_dropdown("","","","","disabled='disabled'") . "</div>";

                    $field_string ="<div class='ginput_container' id='gfield_input_datepicker' style='display:$datepicker_display'><input name='ginput_datepicker' type='text' /><img src='" . GFCommon::get_base_url() . "/images/calendar.png' id='gfield_input_datepicker_icon' style='display:$icon_display'/></div>";

                    switch($field_position){
                        case "dmy" :
                            $field_string .= $day_field . $month_field . $year_field . $day_dropdown . $month_dropdown . $year_dropdown;
                        break;

                        case "ymd" :
                            $field_string .= $year_field . $month_field . $day_field . $year_dropdown . $month_dropdown . $day_dropdown;
                        break;

                        default :
                            $field_string .= $month_field . $day_field . $year_field . $month_dropdown . $day_dropdown . $year_dropdown;
                        break;
                    }

                    return $field_string;
                }
                else{
                    $date_info = self::parse_date($value, $format);
                    $date_type = rgget("dateType", $field);
                    if(in_array($date_type, array("datefield", "datedropdown")))
                    {
                        switch($field_position){

                            case "dmy" :
                                $tabindex = self::get_tabindex();
                                $field_str = $date_type == "datedropdown"
                                            ? "<div class='clear-multi'><div class='gfield_date_dropdown_day ginput_container' id='{$field_id}_2_container'>" . self::get_day_dropdown("input_{$id}[]", "{$field_id}_2", rgar($date_info,"day"), $tabindex, $disabled_text) . "</div>"
                                            : sprintf("<div class='clear-multi'><div class='gfield_date_day ginput_container' id='%s_2_container'><input type='text' maxlength='2' name='input_%d[]' id='%s_2' value='%s' $tabindex %s/><label for='%s_2'>" . __("DD", "gravityforms") . "</label></div>", $field_id, $id, $field_id, esc_attr(rgget("day", $date_info)), $disabled_text, $field_id);

                                $tabindex = self::get_tabindex();
                                $field_str .= $date_type == "datedropdown"
                                            ? "<div class='gfield_date_dropdown_month ginput_container' id='{$field_id}_1_container'>" . self::get_month_dropdown("input_{$id}[]", "{$field_id}_1", rgar($date_info,"month"), $tabindex, $disabled_text) . "</div>"
                                            : sprintf("<div class='gfield_date_month ginput_container' id='%s_1_container'><input type='text' maxlength='2' name='input_%d[]' id='%s_1' value='%s' $tabindex %s/><label for='%s_1'>" . __("MM", "gravityforms") . "</label></div>", $field_id, $id, $field_id, esc_attr(rgget("month", $date_info)), $disabled_text, $field_id);

                                $tabindex = self::get_tabindex();
                                $field_str .= $date_type == "datedropdown"
                                        ? "<div class='gfield_date_dropdown_year ginput_container' id='{$field_id}_3_container'>" . self::get_year_dropdown("input_{$id}[]", "{$field_id}_3", rgar($date_info,"year"), $tabindex, $disabled_text) . "</div></div>"
                                        : sprintf("<div class='gfield_date_year ginput_container' id='%s_3_container'><input type='text' maxlength='4' name='input_%d[]' id='%s_3' value='%s' $tabindex %s/><label for='%s_3'>" . __("YYYY", "gravityforms") . "</label></div></div>", $field_id, $id, $field_id, esc_attr(rgget("year", $date_info)), $disabled_text, $field_id);

                            break;

                            case "ymd" :
                                $tabindex = self::get_tabindex();
                                $field_str = $date_type == "datedropdown"
                                        ? "<div class='clear-multi'><div class='gfield_date_dropdown_year ginput_container' id='{$field_id}_3_container'>" . self::get_year_dropdown("input_{$id}[]", "{$field_id}_3", rgar($date_info,"year"), $tabindex, $disabled_text) . "</div>"
                                        : sprintf("<div class='clear-multi'><div class='gfield_date_year ginput_container' id='%s_3_container'><input type='text' maxlength='4' name='input_%d[]' id='%s_3' value='%s' $tabindex %s/><label for='%s_3'>" . __("YYYY", "gravityforms") . "</label></div>", $field_id, $id, $field_id, esc_attr(rgget("year", $date_info)), $disabled_text, $field_id);

                                $field_str .= $date_type == "datedropdown"
                                            ? "<div class='gfield_date_dropdown_month ginput_container' id='{$field_id}_1_container'>" . self::get_month_dropdown("input_{$id}[]", "{$field_id}_1", rgar($date_info,"month"), $tabindex, $disabled_text) . "</div>"
                                            : sprintf("<div class='gfield_date_month ginput_container' id='%s_1_container'><input type='text' maxlength='2' name='input_%d[]' id='%s_1' value='%s' $tabindex %s/><label for='%s_1'>" . __("MM", "gravityforms") . "</label></div>", $field_id, $id, $field_id, esc_attr(rgar($date_info,"month")), $disabled_text, $field_id);

                                $tabindex = self::get_tabindex();
                                $field_str .= $date_type == "datedropdown"
                                            ? "<div class='gfield_date_dropdown_day ginput_container' id='{$field_id}_2_container'>" . self::get_day_dropdown("input_{$id}[]", "{$field_id}_2", rgar($date_info,"day"), $tabindex, $disabled_text) . "</div></div>"
                                            : sprintf("<div class='gfield_date_day ginput_container' id='%s_2_container'><input type='text' maxlength='2' name='input_%d[]' id='%s_2' value='%s' $tabindex %s/><label for='%s_2'>" . __("DD", "gravityforms") . "</label></div></div>", $field_id, $id, $field_id, esc_attr(rgar($date_info,"day")), $disabled_text, $field_id);

                            break;

                            default :
                                $tabindex = self::get_tabindex();

                                $field_str = $date_type == "datedropdown"
                                            ? "<div class='clear-multi'><div class='gfield_date_dropdown_month ginput_container' id='{$field_id}_1_container'>" . self::get_month_dropdown("input_{$id}[]", "{$field_id}_1", rgar($date_info,"month"), $tabindex, $disabled_text) . "</div>"
                                            : sprintf("<div class='clear-multi'><div class='gfield_date_month ginput_container' id='%s_1_container'><input type='text' maxlength='2' name='input_%d[]' id='%s_1' value='%s' $tabindex %s/><label for='%s_1'>" . __("MM", "gravityforms") . "</label></div>", $field_id, $id, $field_id, esc_attr(rgar($date_info,"month")), $disabled_text, $field_id);

                                $tabindex = self::get_tabindex();
                                $field_str .= $date_type == "datedropdown"
                                            ? "<div class='gfield_date_dropdown_day ginput_container' id='{$field_id}_2_container'>" . self::get_day_dropdown("input_{$id}[]", "{$field_id}_2", rgar($date_info,"day"), $tabindex, $disabled_text) . "</div>"
                                            : sprintf("<div class='gfield_date_day ginput_container' id='%s_2_container'><input type='text' maxlength='2' name='input_%d[]' id='%s_2' value='%s' $tabindex %s/><label for='%s_2'>" . __("DD", "gravityforms") . "</label></div>", $field_id, $id, $field_id, esc_attr(rgar($date_info,"day")), $disabled_text, $field_id);

                                $tabindex = self::get_tabindex();
                                $field_str .= $date_type == "datedropdown"
                                        ? "<div class='gfield_date_dropdown_year ginput_container' id='{$field_id}_3_container'>" . self::get_year_dropdown("input_{$id}[]", "{$field_id}_3", rgar($date_info,"year"), $tabindex, $disabled_text) . "</div></div>"
                                        : sprintf("<div class='gfield_date_year ginput_container' id='%s_3_container'><input type='text' maxlength='4' name='input_%d[]' id='%s_3' value='%s' $tabindex %s/><label for='%s_3'>" . __("YYYY", "gravityforms") . "</label></div></div>", $field_id, $id, $field_id, esc_attr(rgget("year", $date_info)), $disabled_text, $field_id);

                            break;
                        }

                        return $field_str;
                    }
                    else
                    {
                        $value = GFCommon::date_display($value, $format);
                        $icon_class = $field["calendarIconType"] == "none" ? "datepicker_no_icon" : "datepicker_with_icon";
                        $icon_url = empty($field["calendarIconUrl"]) ? GFCommon::get_base_url() . "/images/calendar.png" : $field["calendarIconUrl"];
                        $tabindex = self::get_tabindex();
                        return sprintf("<div class='ginput_container'><input name='input_%d' id='%s' type='text' value='%s' class='datepicker %s %s %s' $tabindex %s/> </div><input type='hidden' id='gforms_calendar_icon_$field_id' class='gform_hidden' value='$icon_url'/>", $id, $field_id, esc_attr($value), esc_attr($class), $format, $icon_class, $disabled_text);
                    }
                }

            case "time" :
                if(!empty($post_link))
                    return $post_link;

                $hour = $minute = $am_selected = $pm_selected = "";

                if(!is_array($value) && !empty($value)){
                    preg_match('/^(\d*):(\d*) ?(.*)$/', $value, $matches);
                    $hour = esc_attr($matches[1]);
                    $minute = esc_attr($matches[2]);
                    $am_selected = rgar($matches,3) == "am" ? "selected='selected'" : "";
                    $pm_selected = rgar($matches,3) == "pm" ? "selected='selected'" : "";
                }
                else if(is_array($value)){
                    $hour = esc_attr($value[0]);
                    $minute = esc_attr($value[1]);
                    $am_selected = rgar($value,2) == "am" ? "selected='selected'" : "";
                    $pm_selected = rgar($value,2) == "pm" ? "selected='selected'" : "";
                }
                $hour_tabindex = self::get_tabindex();
                $minute_tabindex = self::get_tabindex();
                $ampm_tabindex = self::get_tabindex();

                $ampm_field_style = is_admin() && rgar($field, "timeFormat") == "24" ? "style='display:none;'" : "";
                $ampm_field = is_admin() || rgar($field, "timeFormat") != "24" ? "<div class='gfield_time_ampm ginput_container' {$ampm_field_style}><select name='input_{$id}[]' id='{$field_id}_3' $ampm_tabindex {$disabled_text}><option value='am' {$am_selected}>" . __("AM", "gravityforms") . "</option><option value='pm' {$pm_selected}>" . __("PM", "gravityforms") . "</option></select></div>" : "";

                return sprintf("<div class='clear-multi'><div class='gfield_time_hour ginput_container' id='%s'><input type='text' maxlength='2' name='input_%d[]' id='%s_1' value='%s' $hour_tabindex %s/> : <label for='%s_1'>" . __("HH", "gravityforms") . "</label></div><div class='gfield_time_minute ginput_container'><input type='text' maxlength='2' name='input_%d[]' id='%s_2' value='%s' $minute_tabindex %s/><label for='%s_2'>" . __("MM", "gravityforms") . "</label></div>{$ampm_field}</div>", $field_id, $id, $field_id, $hour, $disabled_text, $field_id, $id, $field_id, $minute, $disabled_text, $field_id);

            case "fileupload" :
                $tabindex = self::get_tabindex();
                $multiple_files = rgar($field, "multipleFiles");
                $file_list_id = "gform_preview_" . $form_id . "_". $id;
                $max_upload_size = ! IS_ADMIN && isset($field["maxFileSize"]) && $field["maxFileSize"] > 0 ? $field["maxFileSize"] * 1048576: wp_max_upload_size();
                if($multiple_files){
                    $upload_action_url = trailingslashit(site_url()) . "?gf_page=upload";
                    $max_files = isset($field["maxFiles"]) && $field["maxFiles"] > 0 ? $field["maxFiles"]: 0;
                    $browse_button_id = 'gform_browse_button_' . $form_id . "_" . $id;
                    $container_id = 'gform_multifile_upload_' . $form_id . "_" . $id;
                    $drag_drop_id = 'gform_drag_drop_area_' . $form_id . "_" . $id;

                    $messages_id = "gform_multifile_messages_{$form_id}_{$id}";
                    $allowed_extensions = isset($field["allowedExtensions"]) && !empty($field["allowedExtensions"]) ? join(",", GFCommon::clean_extensions(explode(",", strtolower($field["allowedExtensions"])))) : array();
                    if(empty($allowed_extensions))
                        $allowed_extensions="*";
                    $disallowed_extensions = GFCommon::get_disallowed_file_extensions();

                    if( defined('DOING_AJAX') && DOING_AJAX && "rg_change_input_type" === rgpost('action')){
                        $plupload_init = array();
                    } else {
                        $plupload_init = array(
                            'runtimes' => 'html5,flash,html4',
                            'browse_button' => $browse_button_id,
                            'container' => $container_id,
                            'drop_element' => $drag_drop_id,
                            'filelist' => $file_list_id,
                            'unique_names' => true,
                            'file_data_name' => 'file',
                            /*'chunk_size' => '10mb',*/ // chunking doesn't currently have very good cross-browser support
                            'url' => $upload_action_url,
                            'flash_swf_url' => includes_url('js/plupload/plupload.flash.swf'),
                            'silverlight_xap_url' => includes_url('js/plupload/plupload.silverlight.xap'),
                            'filters' => array(
                                'mime_types' => array(array('title' => __( 'Allowed Files', 'gravityforms' ), 'extensions' => $allowed_extensions)),
                                'max_file_size' => $max_upload_size . 'b'
                            ),
                            'multipart' => true,
                            'urlstream_upload' => false,
                            'multipart_params' => array(
                                "form_id" => $form_id,
                                "field_id" => $id
                            ),
                            'gf_vars' => array(
                                'max_files' => $max_files,
                                'message_id' => $messages_id,
                                'disallowed_extensions' => $disallowed_extensions
                            )
                        );

                        // plupload 2 was introduced in WordPress 3.9. Plupload 1 accepts a slightly different init array.
                        if (version_compare(get_bloginfo('version'), "3.9-RC1", "<")) {
                            $plupload_init['max_file_size'] = $max_upload_size . 'b';
                            $plupload_init['filters']       = array(array('title' => __('Allowed Files', 'gravityforms'), 'extensions' => $allowed_extensions));
                        }
                    }


                    $plupload_init = apply_filters("gform_plupload_settings_{$form_id}", apply_filters('gform_plupload_settings', $plupload_init, $form_id, $field), $form_id, $field);

                    // Multi-file uploading doesn't currently work in iOS Safari,
                    // single-file allows the built-in camera to be used as source for images
                    if ( wp_is_mobile() )
                        $plupload_init['multi_selection'] = false;

                    $plupload_init_json = htmlspecialchars(json_encode($plupload_init), ENT_QUOTES, 'UTF-8');
                    $upload = sprintf("<div id='%s' data-settings='%s' class='gform_fileupload_multifile'><div id='%s' class='gform_drop_area'><span class='gform_drop_instructions'>%s </span><input id='%s' type='button' value='%s' class='button gform_button_select_files'/></div></div>",$container_id, $plupload_init_json, $drag_drop_id, __("Drop files here or" ,"gravityforms"), $browse_button_id, __("Select files", "gravityforms") ) ;
                    if(!IS_ADMIN)
                        $upload .= "<div class='validation_message'><ul id='{$messages_id}'></ul></div>";

                    if(IS_ADMIN && RG_CURRENT_VIEW === "entry")
                        $upload .= sprintf('<input type="hidden" name="input_%d" value=\'%s\' />', $id, esc_attr($value));

                } else {
                    $upload = sprintf("<input type='hidden' name='MAX_FILE_SIZE' value='%d' />", $max_upload_size);
                    $upload .= sprintf("<input name='input_%d' id='%s' type='file' class='%s' $tabindex %s/>", $id, $field_id, esc_attr($class), $disabled_text);
                }

                if(IS_ADMIN && RG_CURRENT_VIEW === "entry" && !empty($value)){ // edit entry
                    $file_urls = $multiple_files ? json_decode($value) : array($value);
                    $upload_display = $multiple_files ? "" : "style='display:none'";
                    $preview = "<div id='upload_$id' {$upload_display}>$upload</div>";
                    $preview .= sprintf("<div id='%s'></div>", $file_list_id);
                    $preview .= sprintf("<div id='preview_existing_files_%d'>", $id);

                    foreach($file_urls as $file_index => $file_url){
                        if(self::is_ssl() && strpos($file_url, "http:") !== false ){
                            $file_url = str_replace("http:", "https:", $file_url);
                        }
                        $file_url = esc_attr($file_url);
                        $preview .= sprintf("<div id='preview_file_%d' class='ginput_preview'><a href='%s' target='_blank' alt='%s' title='%s'>%s</a><a href='%s' target='_blank' alt='" . __("Download file", "gravityforms") . "' title='" . __("Download file", "gravityforms") . "'><img src='%s' style='margin-left:10px;'/></a><a href='javascript:void(0);' alt='" . __("Delete file", "gravityforms") . "' title='" . __("Delete file", "gravityforms") . "' onclick='DeleteFile(%d,%d,this);' ><img src='%s' style='margin-left:10px;'/></a></div>", $file_index, $file_url, $file_url, $file_url, GFCommon::truncate_url($file_url), $file_url, GFCommon::get_base_url() . "/images/download.png", $lead_id, $id, GFCommon::get_base_url() . "/images/delete.png");
                    }

                    $preview .="</div>";

                    return $preview;
                } else {
                    $input_name = "input_{$id}";
                    $uploaded_files = isset(GFFormsModel::$uploaded_files[$form_id][$input_name]) ? GFFormsModel::$uploaded_files[$form_id][$input_name] : array();
                    $file_infos = $multiple_files ? $uploaded_files : RGFormsModel::get_temp_filename($form_id, $input_name);

                    if(!empty($file_infos)){
                        $preview = sprintf("<div id='%s'>", $file_list_id);
                        $file_infos = $multiple_files ? $uploaded_files : array($file_infos);
                        foreach($file_infos as $file_info){
                            $preview .= "<div class='ginput_preview'><img class='gform_delete' src='" . GFCommon::get_base_url() . "/images/delete.png' onclick='gformDeleteUploadedFile({$form_id}, {$id}, this);' /> <strong>" . esc_html($file_info["uploaded_filename"]) . "</strong></div>";
                        }
                        $preview .= "</div>";
                        if(!$multiple_files)
                            $upload = str_replace(" class='", " class='gform_hidden ", $upload);
                        return "<div class='ginput_container'>" . $upload . " {$preview}</div>";
                    }
                    else{

                        $preview = $multiple_files ? sprintf("<div id='%s'></div>", $file_list_id) : "";

                        return "<div class='ginput_container'>$upload</div>" . $preview;
                    }
                }

            case "captcha" :

                switch(rgget("captchaType", $field)){
                    case "simple_captcha" :
                        $size = rgempty("simpleCaptchaSize", $field) ? "medium" : $field["simpleCaptchaSize"];
                        $captcha = self::get_captcha($field);

                        $tabindex = self::get_tabindex();

                        $dimensions = IS_ADMIN ? "" : "width='" . rgar($captcha,"width") . "' height='" . rgar($captcha,"height") . "'";
                        return "<div class='gfield_captcha_container'><img class='gfield_captcha' src='" . rgar($captcha,"url") . "' alt='' {$dimensions} /><div class='gfield_captcha_input_container simple_captcha_{$size}'><input type='text' name='input_{$id}' id='{$field_id}' {$tabindex}/><input type='hidden' name='input_captcha_prefix_{$id}' value='" . rgar($captcha,"prefix") . "' /></div></div>";
                    break;

                    case "math" :
                        $size = empty($field["simpleCaptchaSize"]) ? "medium" : $field["simpleCaptchaSize"];
                        $captcha_1 = self::get_math_captcha($field, 1);
                        $captcha_2 = self::get_math_captcha($field, 2);
                        $captcha_3 = self::get_math_captcha($field, 3);

                        $tabindex = self::get_tabindex();

                        $dimensions = IS_ADMIN ? "" : "width='{$captcha_1["width"]}' height='{$captcha_1["height"]}'";
                        return "<div class='gfield_captcha_container'><img class='gfield_captcha' src='{$captcha_1["url"]}' alt='' {$dimensions} /><img class='gfield_captcha' src='{$captcha_2["url"]}' alt='' {$dimensions} /><img class='gfield_captcha' src='{$captcha_3["url"]}' alt='' {$dimensions} /><div class='gfield_captcha_input_container math_{$size}'><input type='text' name='input_{$id}' id='{$field_id}' {$tabindex}/><input type='hidden' name='input_captcha_prefix_{$id}' value='{$captcha_1["prefix"]},{$captcha_2["prefix"]},{$captcha_3["prefix"]}' /></div></div>";
                    break;

                    default:

                        if(!function_exists("recaptcha_get_html")){
                            require_once(GFCommon::get_base_path() . '/recaptchalib.php');
                        }

                        $theme = empty($field["captchaTheme"]) ? "red" : esc_attr($field["captchaTheme"]);
                        $publickey = get_option("rg_gforms_captcha_public_key");
                        $privatekey = get_option("rg_gforms_captcha_private_key");
                        if(IS_ADMIN){
                            if(empty($publickey) || empty($privatekey)){
                                return "<div class='captcha_message'>" . __("To use the reCaptcha field you must first do the following:", "gravityforms") . "</div><div class='captcha_message'>1 - <a href='http://www.google.com/recaptcha' target='_blank'>" . sprintf(__("Sign up%s for a free reCAPTCHA account", "gravityforms"), "</a>") . "</div><div class='captcha_message'>2 - " . sprintf(__("Enter your reCAPTCHA keys in the %ssettings page%s", "gravityforms"), "<a href='?page=gf_settings'>", "</a>") . "</div>";
                            }
                            else{
                                return "<div class='ginput_container'><img class='gfield_captcha' src='" . GFCommon::get_base_url() . "/images/captcha_$theme.jpg' alt='reCAPTCHA' title='reCAPTCHA'/></div>";
                            }
                        }
                        else{
                            $language = empty($field["captchaLanguage"]) ? "en" : esc_attr($field["captchaLanguage"]);

                            if(empty(self::$tab_index))
                                self::$tab_index = 1;

                            $options = "<script type='text/javascript'>" . apply_filters("gform_cdata_open", "") . " var RecaptchaOptions = {theme : '$theme'}; if(parseInt('" . self::$tab_index . "') > 0) {RecaptchaOptions.tabindex = " . self::$tab_index++ . ";}" .
                            apply_filters("gform_recaptcha_init_script", "", $form_id, $field) . apply_filters("gform_cdata_close", "") . "</script>";

                            $is_ssl = !empty($_SERVER['HTTPS']);
                            return $options . "<div class='ginput_container' id='$field_id'>" . recaptcha_get_html($publickey, null, $is_ssl, $language) . "</div>";
                        }
                }
            break;

            case "creditcard" :

                $card_number = "";
                $card_name = "";
                $expiration_date = "";
                $expiration_month = "";
                $expiration_year = "";
                $security_code = "";
                $autocomplete = RGFormsModel::is_html5_enabled() ? "autocomplete='off'" : "";

                if(is_array($value)){
                    $card_number = esc_attr(rgget($field["id"] . ".1",$value));
                    $card_name = esc_attr(rgget($field["id"] . ".5",$value));
                    $expiration_date = rgget($field["id"] . ".2",$value);
                    if(!is_array($expiration_date) && !empty($expiration_date))
                        $expiration_date = explode("/", $expiration_date);

                    if(is_array($expiration_date) && count($expiration_date) == 2){
                        $expiration_month = $expiration_date[0];
                        $expiration_year = $expiration_date[1];
                    }

                    $security_code = esc_attr(rgget($field["id"] . ".3",$value));
                }

                $action = !IS_ADMIN ? "gformMatchCard(\"{$field_id}_1\");" : "";

                $onchange= "onchange='{$action}'";
                $onkeyup = "onkeyup='{$action}'";

                $card_icons = '';
                $cards = GFCommon::get_card_types();
                $card_style = rgar($field, 'creditCardStyle') ? rgar($field, 'creditCardStyle') : 'style1';

                foreach($cards as $card) {

                    $style = "";
                    if(self::is_card_supported($field, $card["slug"])){
                        $print_card = true;
                    }
                    else if (IS_ADMIN){
                        $print_card = true;
                        $style = "style='display:none;'";
                    }
                    else{
                        $print_card = false;
                    }

                    if($print_card){
                        $card_icons .= "<div class='gform_card_icon gform_card_icon_{$card['slug']}' {$style}>{$card['name']}</div>";
                    }
                }

                $payment_methods = apply_filters("gform_payment_methods", array(), $field, $form_id);
                $payment_options = "";
                if(is_array($payment_methods)){
                    foreach($payment_methods as $payment_method){
                        $checked = rgpost("gform_payment_method") == $payment_method["key"] ? "checked='checked'" : "";
                        $payment_options .="<div class='gform_payment_option gform_payment_{$payment_method["key"]}'><input type='radio' name='gform_payment_method' value='{$payment_method["key"]}' id='gform_payment_method_{$payment_method["key"]}' onclick='gformToggleCreditCard();' {$checked}/> {$payment_method["label"]}</div>";
                    }
                }
                $checked = rgpost("gform_payment_method") == "creditcard" || rgempty("gform_payment_method") ? "checked='checked'" : "";
                $card_radio_button = empty($payment_options) ? "" : "<input type='radio' name='gform_payment_method' id='gform_payment_method_creditcard' value='creditcard' onclick='gformToggleCreditCard();'   {$checked}/>";
                $card_icons = "{$payment_options}<div class='gform_card_icon_container gform_card_icon_{$card_style}'>{$card_radio_button}{$card_icons}</div>";



                //card number fields
                $tabindex = self::get_tabindex();
                $html5_output = ! is_admin() && GFFormsModel::is_html5_enabled() ? "pattern='[0-9]*' title='" . __("Only digits are allowed", "gravityforms") .  "'" : "";
                $card_field =   sprintf("<span class='ginput_full{$class_suffix}' id='{$field_id}_1_container' >{$card_icons}<input type='text' name='input_%d.1' id='%s_1' value='%s' {$tabindex} %s {$onchange} {$onkeyup} {$autocomplete} {$html5_output}/><label for='%s_1' id='{$field_id}_1_label'>" . apply_filters("gform_card_number_{$form_id}", apply_filters("gform_card_number",__("Card Number", "gravityforms"), $form_id), $form_id) . "</label></span>", $id, $field_id, $card_number, $disabled_text, $field_id);

                //expiration date field
                $expiration_field =  "<span class='ginput_full{$class_suffix} ginput_cardextras' id='{$field_id}_2_container'>".

                				        "<span class='ginput_cardinfo_left{$class_suffix}' id='{$field_id}_2_cardinfo_left'>".

                                            "<span class='ginput_card_expiration_container ginput_card_field'>".

                                                // month selector
                                                 "<select name='input_{$id}.2[]' id='{$field_id}_2_month' " . self::get_tabindex() . " {$disabled_text} class='ginput_card_expiration ginput_card_expiration_month'>" . self::get_expiration_months($expiration_month) . "</select>".

                                                 // year selector
                                                 "<select name='input_{$id}.2[]' id='{$field_id}_2_year' " . self::get_tabindex() . " {$disabled_text} class='ginput_card_expiration ginput_card_expiration_year'>" . self::get_expiration_years($expiration_year) . "</select>".

                                                 // label for the expiration fields
                                                 "<label for='{$field_id}_2_month' >" . apply_filters("gform_card_expiration_{$form_id}", apply_filters("gform_card_expiration",__("Expiration Date", "gravityforms"), $form_id), $form_id) . "</label>".

                                             "</span>".
                                         "</span>";

               //security code field
                $tabindex = self::get_tabindex();
                $html5_output = GFFormsModel::is_html5_enabled() ? "pattern='[0-9]*' title='" . __("Only digits are allowed", "gravityforms") .  "'" : "";
                $security_field =        "<span class='ginput_cardinfo_right{$class_suffix}' id='{$field_id}_2_cardinfo_right'>".
                                            "<input type='text' name='input_{$id}.3' id='{$field_id}_3' {$tabindex} {$disabled_text} class='ginput_card_security_code' value='{$security_code}' {$autocomplete} {$html5_output} />".
                				            "<span class='ginput_card_security_code_icon'>&nbsp;</span>".
                                            "<label for='{$field_id}_3' >" . apply_filters("gform_card_security_code_{$form_id}", apply_filters("gform_card_security_code",__("Security Code", "gravityforms"), $form_id), $form_id) . "</label>".
                                         "</span>".
                                    "</span>";

                $tabindex = self::get_tabindex();
                $card_name_field = sprintf("<span class='ginput_full{$class_suffix}' id='{$field_id}_5_container'><input type='text' name='input_%d.5' id='%s_5' value='%s' {$tabindex} %s /><label for='%s_5' id='{$field_id}_5_label'>" . apply_filters("gform_card_name_{$form_id}", apply_filters("gform_card_name",__("Cardholder Name", "gravityforms"), $form_id), $form_id) . "</label></span>", $id, $field_id, $card_name, $disabled_text, $field_id);

                return "<div class='ginput_complex{$class_suffix} ginput_container' id='{$field_id}'>" . $card_field . $expiration_field . $security_field . $card_name_field . " </div>";

            break;

            case "list" :

                if(!empty($value))
                    $value = maybe_unserialize($value);

                if(!is_array($value))
                    $value = array(array());

                $has_columns = is_array(rgar($field, "choices"));
                $columns = $has_columns ? rgar($field, "choices") : array(array());

                $list = "<div class='ginput_container ginput_list'>" .
                        "<table class='gfield_list'>";

                $class_attr = "";
                if($has_columns){

                    $list .= "<colgroup>";
                    $colnum = 1;
                    foreach($columns as $column){
                        $odd_even = ($colnum % 2) == 0 ? "even" : "odd";
                        $list .= "<col id='gfield_list_{$field["id"]}_col{$colnum}' class='gfield_list_col_{$odd_even}'></col>";
                        $colnum++;
                    }
                    $list .= "</colgroup>";

                    $list .= "<thead><tr>";
                    foreach($columns as $column){
                        $list .= "<th>" . esc_html($column["text"]) . "</th>";
                    }
                    $list .= "<th>&nbsp;</th></tr></thead>";
                }
                else{
                    $list .= "<colgroup><col id='gfield_list_{$field["id"]}_col1' class='gfield_list_col_odd'></col></colgroup>";
                }

                $delete_display = count($value) == 1 ? "visibility:hidden;" : "";
                $maxRow = intval(rgar($field, "maxRows"));
                $disabled_icon_class = !empty($maxRow) && count($value) >= $maxRow ? "gfield_icon_disabled" : "";

                $list .= "<tbody>";
                $rownum = 1;
                foreach($value as $item){

                    $odd_even = ($rownum % 2) == 0 ? "even" : "odd";

                    $list .= "<tr class='gfield_list_row_{$odd_even}'>";
                    $colnum = 1;
                    foreach($columns as $column){

                        //getting value. taking into account columns being added/removed from form meta
                        if(is_array($item)){
                            if($has_columns){
                                $val = rgar($item, $column["text"]);
                            }
                            else{
                                 $vals = array_values($item);
                                 $val = rgar($vals, 0);
                            }
                        }
                        else{
                            $val = $colnum == 1 ? $item : "";
                        }

                        $list .= "<td class='gfield_list_cell gfield_list_{$field["id"]}_cell{$colnum}'>" . self::get_list_input($field, $has_columns, $column, $val, $form_id) . "</td>";
                        $colnum++;
                    }

                    $add_icon = !rgempty("addIconUrl", $field) ? $field["addIconUrl"] : GFCommon::get_base_url() . "/images/add.png";
                    $delete_icon = !rgempty("deleteIconUrl", $field) ? $field["deleteIconUrl"] : GFCommon::get_base_url() . "/images/remove.png";

                    $on_click = IS_ADMIN && RG_CURRENT_VIEW != "entry" ? "" : "onclick='gformAddListItem(this, {$maxRow})'";

                    if(rgar($field, "maxRows") != 1){

                    	// can't replace these icons with the webfont versions since they appear on the front end.

                        $list .="<td class='gfield_list_icons'>";
                        $list .="   <img src='{$add_icon}' class='add_list_item {$disabled_icon_class}' {$disabled_text} title='" . __("Add another row", "gravityforms") . "' alt='" . __("Add a row", "gravityforms") . "' {$on_click} style='cursor:pointer; margin:0 3px;' />" .
                                "   <img src='{$delete_icon}' {$disabled_text} title='" . __("Remove this row", "gravityforms") . "' alt='" . __("Remove this row", "gravityforms") . "' class='delete_list_item' style='cursor:pointer; {$delete_display}' onclick='gformDeleteListItem(this, {$maxRow})' />";

                        $list .="</td>";
                    }

                    $list .= "</tr>";

                    if(!empty($maxRow) && $rownum >= $maxRow)
                        break;

                    $rownum++;
                }

                $list .="</tbody></table></div>";

                return $list;
            break;
        }
    }