/** * When a field settings metabox is expanded, return a JSON element containing the field settings HTML * * @since 2.9 * @return false; */ function nf_output_field_settings_html() { global $nf_rte_editors; // Bail if we aren't in the admin if (!is_admin()) { return false; } // Bail if we don't have proper permissions if (!current_user_can(apply_filters('nf_new_field_capabilities', 'manage_options'))) { return false; } check_ajax_referer('nf_ajax', 'nf_ajax_nonce'); $field_id = esc_html($_REQUEST['field_id']); $data = isset($_REQUEST['data']) ? json_decode(stripslashes($_REQUEST['data']), true) : array(); $field = ninja_forms_get_field_by_id($field_id); $field_data = $field['data']; $data = wp_parse_args($data, $field_data); nf_output_registered_field_settings($field_id, $data); die; }
function ninja_forms_edit_field_output_li($field_id, $new = false) { global $wpdb, $ninja_forms_fields, $nf_rte_editors; $field_row = ninja_forms_get_field_by_id($field_id); $current_tab = ninja_forms_get_current_tab(); if (isset($_REQUEST['page'])) { $current_page = esc_html($_REQUEST['page']); } else { $current_page = ''; } $field_type = $field_row['type']; $field_data = $field_row['data']; $plugin_settings = nf_get_settings(); if (isset($ninja_forms_fields[$field_type]['use_li']) && $ninja_forms_fields[$field_type]['use_li']) { if (isset($field_row['fav_id']) && $field_row['fav_id'] != 0) { $fav_id = $field_row['fav_id']; $fav_row = ninja_forms_get_fav_by_id($fav_id); if (empty($fav_row['name'])) { $args = array('update_array' => array('fav_id' => ''), 'where' => array('id' => $field_id)); ninja_forms_update_field($args); $fav_id = ''; } } else { $fav_id = ''; } if (isset($field_row['def_id']) && $field_row['def_id'] != 0) { $def_id = $field_row['def_id']; } else { $def_id = ''; } $form_id = $field_row['form_id']; if (isset($ninja_forms_fields[$field_type])) { $reg_field = $ninja_forms_fields[$field_type]; $type_name = $reg_field['name']; $edit_function = $reg_field['edit_function']; $edit_options = $reg_field['edit_options']; $li_class = $reg_field['li_class']; if ($reg_field['nesting']) { $nesting_class = 'ninja-forms-nest'; } else { $nesting_class = 'ninja-forms-no-nest'; } $conditional = $reg_field['conditional']; $type_class = $field_type . '-li'; if ($def_id != 0 && $def_id != '') { $def_row = ninja_forms_get_def_by_id($def_id); if (!empty($def_row['name'])) { $type_name = $def_row['name']; } } if ($fav_id != 0 && $fav_id != '') { $fav_row = ninja_forms_get_fav_by_id($fav_id); if (!empty($fav_row['name'])) { $fav_class = 'ninja-forms-field-remove-fav'; $type_name = $fav_row['name']; } } else { $fav_class = 'ninja-forms-field-add-fav'; } if (isset($field_data['label']) && $field_data['label'] != '') { $li_label = $field_data['label']; } else { $li_label = $type_name; } $li_label = apply_filters('ninja_forms_edit_field_li_label', $li_label, $field_id); $li_label = stripslashes($li_label); $li_label = ninja_forms_esc_html_deep($li_label); if (isset($reg_field) && isset($reg_field['conditional']) && isset($reg_field['conditional']['value']) && isset($reg_field['conditional']['value']['type'])) { $conditional_value_type = $reg_field['conditional']['value']['type']; } else { $conditional_value_type = ''; } ?> <li id="ninja_forms_field_<?php echo $field_id; ?> " class="<?php echo $li_class; ?> <?php echo $nesting_class; ?> <?php echo $type_class; ?> "> <input type="hidden" id="ninja_forms_field_<?php echo $field_id; ?> _conditional_value_type" value="<?php echo $conditional_value_type; ?> "> <input type="hidden" id="ninja_forms_field_<?php echo $field_id; ?> _fav_id" name="" class="ninja-forms-field-fav-id" value="<?php echo $fav_id; ?> "> <dl class="menu-item-bar"> <dt class="menu-item-handle" id="ninja_forms_metabox_field_<?php echo $field_id; ?> " > <span class="item-title ninja-forms-field-title" id="ninja_forms_field_<?php echo $field_id; ?> _title"><?php echo $li_label; ?> </span> <span class="item-controls"> <span class="item-type"><span class="spinner" style="margin-top:-2px;float:left;"></span><span class="item-type-name"><?php echo $type_name; ?> </span></span> <a class="item-edit nf-edit-field" id="ninja_forms_field_<?php echo $field_id; ?> _toggle" title="<?php _e('Edit Menu Item', 'ninja-forms'); ?> " href="#" data-field="<?php echo $field_id; ?> "><?php _e('Edit Menu Item', 'ninja-forms'); ?> </a> </span> </dt> </dl> <?php if ($new) { $padding = ''; } else { $padding = 'no-padding'; } ?> <div class="menu-item-settings type-class inside <?php echo $padding; ?> " id="ninja_forms_field_<?php echo $field_id; ?> _inside" > <?php if ($new) { nf_output_registered_field_settings($field_id); } } } else { if (isset($ninja_forms_fields[$field_type])) { $reg_field = $ninja_forms_fields[$field_type]; $edit_function = $reg_field['edit_function']; $arguments = array(); $arguments['field_id'] = $field_id; $arguments['data'] = $field_data; if ($edit_function != '') { call_user_func_array($edit_function, $arguments); } } } }