Ejemplo n.º 1
0
function ninja_forms_filter_restore_progress($data, $field_id)
{
    global $ninja_forms_processing, $ninja_forms_fields;
    $field_row = ninja_forms_get_field_by_id($field_id);
    $field_type = $field_row['type'];
    if (isset($ninja_forms_fields[$field_type]['esc_html'])) {
        $esc_html = $ninja_forms_fields[$field_type]['esc_html'];
    } else {
        $esc_html = true;
    }
    if (is_object($ninja_forms_processing)) {
        $clear_form = $ninja_forms_processing->get_form_setting('clear_complete');
        $process_complete = $ninja_forms_processing->get_form_setting('processing_complete');
        if ($process_complete != 1 or $process_complete == 1 and $clear_form != 1) {
            if ($ninja_forms_processing->get_field_value($field_id) !== false) {
                if ($esc_html) {
                    if (is_array($ninja_forms_processing->get_field_value($field_id))) {
                        $default_value = ninja_forms_esc_html_deep($ninja_forms_processing->get_field_value($field_id));
                    } else {
                        $default_value = esc_html($ninja_forms_processing->get_field_value($field_id));
                    }
                } else {
                    $default_value = $ninja_forms_processing->get_field_value($field_id);
                }
                $data['default_value'] = $default_value;
            }
        }
    }
    return $data;
}
Ejemplo n.º 2
0
function ninja_forms_display_field_type($field_id, $data)
{
    global $ninja_forms_loading, $ninja_forms_processing;
    $field = ninja_forms_get_field_by_id($field_id);
    $form_id = $field['form_id'];
    if (isset($ninja_forms_loading) && $ninja_forms_loading->get_form_ID() == $form_id) {
        $field_row = $ninja_forms_loading->get_field_settings($field_id);
    } else {
        if (isset($ninja_forms_processing) && $ninja_forms_processing->get_form_ID() == $form_id) {
            $field_row = $ninja_forms_processing->get_field_settings($field_id);
        }
    }
    $field_type = $field_row['type'];
    if (strpos($field_type, '_') === 0) {
        $field_type = substr($field_type, 1);
    }
    $field_type = apply_filters('ninja_forms_display_field_type', $field_type, $field_id);
    ?>
	<input type="hidden" id="ninja_forms_field_<?php 
    echo $field_id;
    ?>
_type" value="<?php 
    echo $field_type;
    ?>
">
<?php 
}
Ejemplo n.º 3
0
function ninja_forms_display_label_inside($data, $field_id)
{
    global $ninja_forms_processing;
    if (is_object($ninja_forms_processing)) {
        $field_row = $ninja_forms_processing->get_field_settings($field_id);
    } else {
        $field_row = ninja_forms_get_field_by_id($field_id);
    }
    $field_data = $field_row['data'];
    if (isset($field_data['label_pos'])) {
        $label_pos = $field_data['label_pos'];
    } else {
        $label_pos = '';
    }
    if (isset($field_data['label'])) {
        $label = $field_data['label'];
    } else {
        $label = '';
    }
    if ($field_row['type'] != '_list') {
        if ($label_pos == 'inside') {
            $data['default_value'] = $label;
        }
    }
    return $data;
}
Ejemplo n.º 4
0
function ninja_forms_user_info_fields_groups($field_id, $field_data)
{
    global $ninja_forms_fields;
    $field = ninja_forms_get_field_by_id($field_id);
    $field_type = $field['type'];
    $default_user_info = 0;
    if (isset($ninja_forms_fields[$field_type]['edit_options']) and is_array($ninja_forms_fields[$field_type]['edit_options'])) {
        foreach ($ninja_forms_fields[$field_type]['edit_options'] as $option) {
            if (isset($option['name']) and $option['name'] == 'user_info_field_group' and isset($option['default'])) {
                $default_user_info = $option['default'];
                break;
            }
        }
    }
    if (isset($field_data['user_info_field_group']) and $field_data['user_info_field_group'] == 1 or (!isset($field_data['user_info_field_group']) or $field_data['user_info_field_group'] !== 0) and $default_user_info == 1) {
        $options = array(array('name' => '- ' . __('None', 'ninja-forms'), 'value' => ''), array('name' => __('Billing', 'ninja-forms'), 'value' => 'billing'), array('name' => __('Shipping', 'ninja-forms'), 'value' => 'shipping'), array('name' => __('Custom', 'ninja-forms') . ' ->', 'value' => 'custom'));
        if (isset($field_data['user_info_field_group_name'])) {
            $group_name = $field_data['user_info_field_group_name'];
        } else {
            $group_name = '';
        }
        if (isset($field_data['user_info_field_group_custom'])) {
            $group_custom = $field_data['user_info_field_group_custom'];
        } else {
            $group_custom = '';
        }
        if ($group_name == 'custom') {
            $custom_class = '';
        } else {
            $custom_class = 'hidden';
        }
        ninja_forms_edit_field_el_output($field_id, 'select', __('User Info Field Group', 'ninja-forms'), 'user_info_field_group_name', $group_name, 'thin', $options, 'user-info-group-name widefat');
        ninja_forms_edit_field_el_output($field_id, 'text', __('Custom Field Group', 'ninja-forms'), 'user_info_field_group_custom', $group_custom, 'thin', '', 'user-info-custom-group widefat ' . $custom_class, '', $custom_class);
    }
}
 function ninja_forms_post_excerpt_pre_process()
 {
     global $ninja_forms_processing;
     $post_excerpt = $ninja_forms_processing->get_form_setting('post_excerpt');
     if ($post_excerpt != '') {
         //Loop through each submitted form field and replace any instances of [label].
         if ($ninja_forms_processing->get_all_fields()) {
             foreach ($ninja_forms_processing->get_all_fields() as $key => $val) {
                 $field_row = ninja_forms_get_field_by_id($key);
                 $data = $field_row['data'];
                 $label = $data['label'];
                 $value = '';
                 if (is_array($val) and !empty($val)) {
                     $x = 0;
                     foreach ($val as $v) {
                         if (!is_array($v)) {
                             $value .= $v;
                             if ($x != count($val)) {
                                 $value .= ',';
                             }
                         }
                         $x++;
                     }
                 } else {
                     $value = $val;
                 }
                 $post_excerpt = str_replace('[' . $label . ']', $value, $post_excerpt);
             }
         }
     }
     $ninja_forms_processing->update_form_setting('post_excerpt', $post_excerpt);
 }
Ejemplo n.º 6
0
function nf_edit_field_sub_settings($field_id)
{
    global $ninja_forms_fields;
    $field_row = ninja_forms_get_field_by_id($field_id);
    $field_type = $field_row['type'];
    if ($ninja_forms_fields[$field_type]['process_field']) {
        if (isset($field_row['data']['admin_label'])) {
            $admin_label = $field_row['data']['admin_label'];
        } else {
            $admin_label = '';
        }
        if (isset($field_row['data']['num_sort'])) {
            $num_sort = $field_row['data']['num_sort'];
        } else {
            $num_sort = '';
        }
        ?>
		<div class="description description-wide">
		<hr>
		<h5><?php 
        _e('Submission Settings', 'ninja-forms');
        ?>
</h5>
		<?php 
        ninja_forms_edit_field_el_output($field_id, 'text', __('Admin Label', 'ninja-forms'), 'admin_label', $admin_label, 'wide', '', 'widefat code', __('This is the label used when viewing/editing/exporting submissions.', 'ninja-forms'));
        ninja_forms_edit_field_el_output($field_id, 'checkbox', __('Sort as numeric', 'ninja-forms'), 'num_sort', $num_sort, 'wide', '', '', __('If this box is checked, this column in the submissions table will sort by number.', 'ninja-forms'));
    }
}
Ejemplo n.º 7
0
/**
 * Function that adds a character and word limit option to textboxes and textareas.
 *
 * @since 2.4.3
 * @return void
 */
function ninja_forms_edit_field_input_limit($field_id, $field_data)
{
    $field_row = ninja_forms_get_field_by_id($field_id);
    $field_type = $field_row['type'];
    $allowed_types = apply_filters('nf_input_limit_types', array('_text', '_textarea'));
    if (!in_array($field_type, $allowed_types)) {
        return false;
    }
    if (isset($field_data['input_limit'])) {
        $input_limit = $field_data['input_limit'];
    } else {
        $input_limit = '';
    }
    if (isset($field_data['input_limit_type'])) {
        $input_limit_type = $field_data['input_limit_type'];
    } else {
        $input_limit_type = '';
    }
    if (isset($field_data['input_limit_msg'])) {
        $input_limit_msg = $field_data['input_limit_msg'];
    } else {
        $input_limit_msg = '';
    }
    $desc = '<em>' . __('If you leave the box empty, no limit will be used', 'ninja-forms') . '</em>';
    ninja_forms_edit_field_el_output($field_id, 'text', __('Limit input to this number', 'ninja-forms'), 'input_limit', $input_limit, 'thin', '', 'widefat', $desc);
    ninja_forms_edit_field_el_output($field_id, 'select', __('of', 'ninja-forms'), 'input_limit_type', $input_limit_type, 'thin', array(array('name' => __('Characters', 'ninja-forms'), 'value' => 'char'), array('name' => __('Words', 'ninja-forms'), 'value' => 'word')), 'widefat');
    echo '<p class="description description-wide">&nbsp;</p>';
    ninja_forms_edit_field_el_output($field_id, 'text', __('Text to appear after character/word counter', 'ninja-forms'), 'input_limit_msg', $input_limit_msg, 'wide', '', 'widefat');
}
Ejemplo n.º 8
0
/**
 * Function that adds a character and word limit option to textboxes and textareas.
 *
 * @since 2.4.3
 * @return void
 */
function ninja_forms_edit_field_input_limit($field_id)
{
    $field_row = ninja_forms_get_field_by_id($field_id);
    $field_type = $field_row['type'];
    $allowed_types = apply_filters('nf_input_limit_types', array('_text', '_textarea'));
    if (!in_array($field_type, $allowed_types)) {
        return false;
    }
    $field_data = $field_row['data'];
    if (isset($field_data['input_limit'])) {
        $input_limit = $field_data['input_limit'];
    } else {
        $input_limit = '';
    }
    if (isset($field_data['input_limit_type'])) {
        $input_limit_type = $field_data['input_limit_type'];
    } else {
        $input_limit_type = '';
    }
    if (isset($field_data['input_limit_msg'])) {
        $input_limit_msg = $field_data['input_limit_msg'];
    } else {
        $input_limit_msg = '';
    }
    $desc = __('If you want to limit the number of characters or words that your user can input, set the number and type of limit you want to enforce below.', 'ninja-forms');
    ninja_forms_edit_field_el_output($field_id, 'desc', $desc);
    $desc = '<em>' . __('If you leave the box empty, no limit will be used', 'ninja-forms') . '</em>';
    ninja_forms_edit_field_el_output($field_id, 'desc', $desc);
    ninja_forms_edit_field_el_output($field_id, 'text', __('Limit input to this number', 'ninja-forms'), 'input_limit', $input_limit, 'thin', '', 'widefat', '');
    ninja_forms_edit_field_el_output($field_id, 'select', __('of', 'ninja-forms'), 'input_limit_type', $input_limit_type, 'thin', array(array('name' => __('Characters', 'ninja-forms'), 'value' => 'char'), array('name' => __('Words', 'ninja-forms'), 'value' => 'word')), 'widefat');
    ninja_forms_edit_field_el_output($field_id, 'text', __('Text to appear after character/word counter', 'ninja-forms'), 'input_limit_msg', $input_limit_msg, 'wide', '', 'widefat');
}
Ejemplo n.º 9
0
function ninja_forms_field_desc_pre_process($field_id, $user_value)
{
    global $ninja_forms_processing;
    $field = ninja_forms_get_field_by_id($field_id);
    $default_value = $field['data']['default_value'];
    $ninja_forms_processing->update_field_value($field_id, $default_value);
}
Ejemplo n.º 10
0
function nf_edit_field_admin_label($field_id, $field_data)
{
    global $ninja_forms_fields;
    $field_row = ninja_forms_get_field_by_id($field_id);
    $field_type = $field_row['type'];
    if ($ninja_forms_fields[$field_type]['process_field']) {
        if (isset($field_data['admin_label'])) {
            $admin_label = $field_data['admin_label'];
        } else {
            $admin_label = '';
        }
        if (isset($field_data['num_sort'])) {
            $num_sort = $field_data['num_sort'];
        } else {
            $num_sort = '';
        }
        ?>
		<div class="description description-wide">
		<?php 
        ninja_forms_edit_field_el_output($field_id, 'text', __('Admin Label', 'ninja-forms'), 'admin_label', $admin_label, 'wide', '', 'widefat code', __('This is the label used when viewing/editing/exporting submissions.', 'ninja-forms'));
        ?>
		</div>
		<?php 
    }
}
Ejemplo n.º 11
0
function ninja_forms_edit_field_list_term($field_id)
{
    $field_row = ninja_forms_get_field_by_id($field_id);
    $field_type = $field_row['type'];
    $field_data = $field_row['data'];
    if (isset($field_data['populate_term'])) {
        $populate_term = $field_data['populate_term'];
    } else {
        $populate_term = '';
    }
    $form_row = ninja_forms_get_form_by_field_id($field_id);
    if (isset($form_row['data']['post_type'])) {
        $post_type = $form_row['data']['post_type'];
    } else {
        $post_type = '';
    }
    if ($field_type == '_list' and $post_type != '') {
        ?>
        <div>
            <label>
                <?php 
        _e('Populate this with the term: ', 'ninja-forms-post-creation');
        ?>
            <select name="ninja_forms_field_<?php 
        echo $field_id;
        ?>
[populate_term]">
                <option value=""><?php 
        _e('- None', 'ninja-forms-post-creation');
        ?>
</option>
                <?php 
        // Get a list of terms registered to the post type set above and loop through them.
        foreach (get_object_taxonomies($post_type) as $tax_name) {
            if ($tax_name != 'post_tag' and $tax_name != 'post_status') {
                $tax = get_taxonomy($tax_name);
                ?>
                        <option value="<?php 
                echo $tax_name;
                ?>
" <?php 
                selected($populate_term, $tax_name);
                ?>
><?php 
                echo $tax->labels->name;
                ?>
</option>
                        <?php 
            }
        }
        ?>
            </select>
        </div>
        <?php 
    }
}
Ejemplo n.º 12
0
function nf_edit_field_req($field_id, $field_data)
{
    global $ninja_forms_fields;
    $field_row = ninja_forms_get_field_by_id($field_id);
    $field_type = $field_row['type'];
    $reg_field = $ninja_forms_fields[$field_type];
    $field_req = $reg_field['req'];
    if ($field_req) {
        ninja_forms_edit_field_el_output($field_id, 'hidden', '', 'req', 1);
    }
}
Ejemplo n.º 13
0
function ninja_forms_edit_field_hr($field_id)
{
    $field_row = ninja_forms_get_field_by_id($field_id);
    $field_type = $field_row['type'];
    $field_data = $field_row['data'];
    ?>
	<p class="description-wide">
		<hr>
	</p>
	<?php 
}
Ejemplo n.º 14
0
function nf_field_autocomplete_off($field_id, $field_data)
{
    global $ninja_forms_fields;
    $field_row = ninja_forms_get_field_by_id($field_id);
    $field_type = $field_row['type'];
    $reg_field = $ninja_forms_fields[$field_type];
    $edit_autocomplete_off = $reg_field['edit_autocomplete_off'];
    if ($edit_autocomplete_off) {
        $autocomplete_off = isset($field_data['autocomplete_off']) ? $field_data['autocomplete_off'] : 0;
        ninja_forms_edit_field_el_output($field_id, 'checkbox', __('Disable Browser Autocomplete', 'ninja-forms'), 'autocomplete_off', $autocomplete_off, 'wide');
    }
}
Ejemplo n.º 15
0
 /**
  * Get things started
  *
  * @access public
  * @since 2.7
  * @return void/
  */
 public function __construct($sub_id)
 {
     global $ninja_forms_fields;
     // Bail if the sub doesn't exist.
     $sub = get_post($sub_id);
     if (!is_object($sub)) {
         return false;
     }
     // Set our sub id
     $this->sub_id = $sub_id;
     // Setup our fields and meta vars.
     $post_meta = get_post_custom($this->sub_id);
     $this->fields = array();
     foreach ($post_meta as $key => $array) {
         if (is_serialized($array[0])) {
             $meta_value = unserialize($array[0]);
         } else {
             $meta_value = $array[0];
         }
         if (strpos($key, '_field_') !== false) {
             $field_id = str_replace('_field_', '', $key);
             $field = ninja_forms_get_field_by_id($field_id);
             $field_type = $field['type'];
             // Check to see if our field type has been set as a "process_field".
             if (isset($ninja_forms_fields[$field_type])) {
                 $reg_field = $ninja_forms_fields[$field_type];
                 $process_field = $reg_field['process_field'];
             } else {
                 $process_field = false;
             }
             if ($process_field) {
                 $this->fields[$field_id] = $meta_value;
             }
         } else {
             if ($key != '_form_id' && $key != '_action') {
                 $this->meta[$key] = $meta_value;
             }
         }
     }
     // Setup our form id var
     $this->form_id = $this->get_meta('_form_id');
     // Setup our action var
     $this->action = $this->get_meta('_action');
     // Setup our sequential id
     $this->seq_num = $this->get_meta('_seq_num');
     // Setup our user_id var
     $this->user_id = $sub->post_author;
     // Setup our date submitted var
     $this->date_submitted = get_the_time('Y-m-d G:i:s', $sub_id);
     // Setup our date modified var
     $this->date_modified = get_post_modified_time('Y-m-d G:i:s', false, $sub_id);
 }
Ejemplo n.º 16
0
function ninja_forms_field_upload_default_value($data, $field_id)
{
    global $ninja_forms_processing;
    $field_row = ninja_forms_get_field_by_id($field_id);
    $field_type = $field_row['type'];
    if ($field_type == '_upload') {
        if (is_object($ninja_forms_processing) and $ninja_forms_processing->get_form_setting('doing_save')) {
            $current_val = $ninja_forms_processing->get_field_value($field_id);
            $data['default_value'] = $current_val;
        }
    }
    return $data;
}
Ejemplo n.º 17
0
function ninja_forms_uploads_filter_mp_confirm_value($user_value, $field_id)
{
    $field_row = ninja_forms_get_field_by_id($field_id);
    $field_type = $field_row['type'];
    if ($field_type == '_upload') {
        if (is_array($user_value)) {
            foreach ($user_value as $key => $file) {
                $user_value = $file['user_file_name'];
            }
        }
    }
    return $user_value;
}
Ejemplo n.º 18
0
 function ninja_forms_field_filter_populate_term($data, $field_id)
 {
     global $post;
     $add_field = apply_filters('ninja_forms_use_post_fields', false);
     if (!$add_field) {
         return $data;
     }
     $field_row = ninja_forms_get_field_by_id($field_id);
     $field_type = $field_row['type'];
     $field_data = $field_row['data'];
     if (isset($field_data['exclude_terms'])) {
         $exclude_terms = $field_data['exclude_terms'];
     } else {
         $exclude_terms = array();
     }
     if ($field_type == '_list' and isset($field_data['populate_term']) and $field_data['populate_term'] != '') {
         // Set the selected option if we are editing a post.
         if (is_object($post)) {
             $selected_terms = get_the_terms($post->ID, $field_data['populate_term']);
         } else {
             $selected_term = '';
         }
         if (is_array($selected_terms)) {
             foreach ($selected_terms as $term) {
                 $selected_term = $term->term_id;
                 break;
             }
         } else {
             $selected_term = '';
         }
         if ($field_data['list_type'] == 'dropdown') {
             $tmp_array = array(array('label' => __('- Select One', 'ninja-forms'), 'value' => ''));
         } else {
             $tmp_array = array();
         }
         $populate_term = $field_data['populate_term'];
         $taxonomies = array($populate_term);
         $args = array('hide_empty' => false, 'parent' => 0);
         $data['default_value'] = $selected_term;
         foreach (get_terms($taxonomies, $args) as $parent_term) {
             $tmp_array[] = array('label' => $parent_term->name, 'value' => $parent_term->term_id);
             $child_args = array('hide_empty' => false, 'child_of' => $parent_term->term_id);
             foreach (get_terms($taxonomies, $child_args) as $child_term) {
                 $tmp_array[] = array('label' => '&nbsp;&nbsp;&nbsp;&nbsp;' . $child_term->name, 'value' => $child_term->term_id);
             }
         }
         $data['list']['options'] = apply_filters('ninja_forms_list_terms', $tmp_array, $field_id);
         $data['list_show_value'] = 1;
     }
     return $data;
 }
Ejemplo n.º 19
0
function ninja_forms_field_tax_save($form_id, $data)
{
    foreach ($data as $field_id => $val) {
        $field = ninja_forms_get_field_by_id($field_id);
        if ($field['type'] == '_tax') {
            if (isset($val['default_value'])) {
                if (strpos($val['default_value'], '%') === false) {
                    $data[$field_id]['default_value'] .= '%';
                }
            }
        }
    }
    return $data;
}
Ejemplo n.º 20
0
 function ninja_forms_field_post_tags_filter_field($data, $field_id)
 {
     $field = ninja_forms_get_field_by_id($field_id);
     $field_type = $field['type'];
     if (isset($data['show_help'])) {
         $data['tags_show_help'] = $data['show_help'];
     } else {
         $data['tags_show_help'] = 0;
     }
     if ($field_type == '_post_tags') {
         $data['show_help'] = 0;
     }
     return $data;
 }
Ejemplo n.º 21
0
function ninja_forms_feditor_post_default_values($data, $field_id)
{
    global $post, $ninja_forms_processing, $ninja_forms_fields;
    $field_row = ninja_forms_get_field_by_id($field_id);
    $field_type = $field_row['type'];
    if (isset($ninja_forms_fields[$field_type])) {
        $reg_field = $ninja_forms_fields[$field_type];
        if (isset($reg_field['tax'])) {
            $tax = $reg_field['tax'];
        } else {
            $tax = '';
        }
    } else {
        $tax = '';
    }
    $field_data = $field_row['data'];
    switch ($field_type) {
        case '_post_title':
            $data['default_value'] = $post->post_title;
            break;
        case '_post_content':
            $data['default_value'] = $post->post_content;
            break;
        case '_post_category':
            $post_cat = get_the_category($post->ID);
            $tmp_array = array();
            if (is_array($post_cat) and !empty($post_cat)) {
                foreach ($post_cat as $cat) {
                    array_push($tmp_array, $cat->term_id);
                }
            }
            $data['default_value'] = $tmp_array;
            break;
        case '_post_tags':
            $post_tags = wp_get_post_tags($post->ID);
            $data['default_value'] = $post_tags;
            break;
    }
    if ($tax != '') {
        $terms = get_the_terms($post->ID, $tax);
        $tmp_array = array();
        if (is_array($terms) and !empty($terms)) {
            foreach ($terms as $term_id => $term) {
                $tmp_array[] = $term_id;
            }
        }
        $data['default_value'] = $tmp_array;
    }
    return $data;
}
Ejemplo n.º 22
0
function ninja_forms_save_field_settings($form_id, $data)
{
    global $wpdb, $ninja_forms_fields, $ninja_forms_admin_update_message;
    $order = esc_html($_POST['_ninja_forms_field_order']);
    $order = str_replace("ninja_forms_field_", "", $order);
    $order = explode(',', $order);
    if (is_array($order)) {
        $order_array = array();
        $x = 0;
        foreach ($order as $id) {
            $order_array[$id] = $x;
            $x++;
        }
    }
    $tmp_array = array();
    foreach ($data as $field_id => $vals) {
        $field_id = str_replace('ninja_forms_field_', '', $field_id);
        $tmp_array[$field_id] = $vals;
    }
    $data = $tmp_array;
    if (isset($ninja_forms_fields) and is_array($ninja_forms_fields)) {
        foreach ($ninja_forms_fields as $slug => $field) {
            if ($field['save_function'] != '') {
                $save_function = $field['save_function'];
                $arguments['form_id'] = $form_id;
                $arguments['data'] = $data;
                $data = call_user_func_array($save_function, $arguments);
            }
        }
    }
    if ($form_id != '' and $form_id != 0 and $form_id != 'new') {
        foreach ($data as $field_id => $vals) {
            $order = $order_array[$field_id];
            $field_row = ninja_forms_get_field_by_id($field_id);
            $field_data = $field_row['data'];
            foreach ($vals as $k => $v) {
                $field_data[$k] = $v;
            }
            $data_array = array('data' => serialize($field_data), 'order' => $order);
            $wpdb->update(NINJA_FORMS_FIELDS_TABLE_NAME, $data_array, array('id' => $field_id));
        }
        $date_updated = date('Y-m-d H:i:s', strtotime('now'));
        $data_array = array('date_updated' => $date_updated);
        $wpdb->update(NINJA_FORMS_TABLE_NAME, $data_array, array('id' => $form_id));
    }
    $update_msg = __('Field Settings Saved', 'ninja-forms');
    return $update_msg;
}
Ejemplo n.º 23
0
function ninja_forms_feditor_update_meta_values($post_id)
{
    global $ninja_forms_processing;
    $all_fields = $ninja_forms_processing->get_all_fields();
    if (is_array($all_fields) and !empty($all_fields)) {
        foreach ($all_fields as $field_id => $value) {
            $field_row = ninja_forms_get_field_by_id($field_id);
            $field_data = $field_row['data'];
            if (isset($field_data['post_meta_value']) and $field_data['post_meta_value'] != '') {
                $meta_key = $field_data['post_meta_value'];
                $value = apply_filters('ninja_forms_add_post_meta_value', $value, $meta_key, $field_id);
                update_post_meta($post_id, $field_data['post_meta_value'], $value);
            }
        }
    }
}
Ejemplo n.º 24
0
function ninja_forms_edit_field_custom_class($field_id, $field_data)
{
    global $ninja_forms_fields;
    $field_row = ninja_forms_get_field_by_id($field_id);
    $field_type = $field_row['type'];
    $reg_field = $ninja_forms_fields[$field_type];
    $edit_custom_class = $reg_field['edit_custom_class'];
    if ($edit_custom_class) {
        if (isset($field_data['class'])) {
            $class = $field_data['class'];
        } else {
            $class = '';
        }
        ninja_forms_edit_field_el_output($field_id, 'text', __('Custom CSS Classes', 'ninja-forms'), 'class', $class, 'wide', '', 'widefat');
    }
}
Ejemplo n.º 25
0
function ninja_forms_save_sub()
{
    global $ninja_forms_processing, $ninja_forms_fields;
    // save forms by default
    $save = true;
    // check if there's some legacy save settings saved in the database
    if (0 === $ninja_forms_processing->get_form_setting('save_subs')) {
        $save = false;
    }
    $save = apply_filters('ninja_forms_save_submission', $save, $ninja_forms_processing->get_form_ID());
    if ($save) {
        $action = $ninja_forms_processing->get_action();
        $user_id = $ninja_forms_processing->get_user_ID();
        $sub_id = $ninja_forms_processing->get_form_setting('sub_id');
        $form_id = $ninja_forms_processing->get_form_ID();
        $field_data = $ninja_forms_processing->get_all_fields();
        $sub_data = array();
        if (is_array($field_data) and !empty($field_data)) {
            foreach ($field_data as $field_id => $user_value) {
                $field_row = ninja_forms_get_field_by_id($field_id);
                $field_type = $field_row['type'];
                $save_sub = $ninja_forms_fields[$field_type]['save_sub'];
                if ($save_sub) {
                    ninja_forms_remove_from_array($sub_data, "field_id", $field_id, TRUE);
                    $user_value = apply_filters('ninja_forms_save_sub', $user_value, $field_id);
                    if (is_array($user_value)) {
                        $user_value = ninja_forms_esc_html_deep($user_value);
                    } else {
                        $user_value = esc_html($user_value);
                    }
                    array_push($sub_data, array('field_id' => $field_id, 'user_value' => $user_value));
                }
            }
        }
        $args = array('form_id' => $form_id, 'user_id' => $user_id, 'action' => $action, 'data' => serialize($sub_data), 'status' => 1);
        $args = apply_filters('ninja_forms_save_sub_args', $args);
        if ($sub_id != '') {
            $args['sub_id'] = $sub_id;
            ninja_forms_update_sub($args);
            do_action('ninja_forms_update_sub', $sub_id);
        } else {
            $sub_id = ninja_forms_insert_sub($args);
            $ninja_forms_processing->update_form_setting('sub_id', $sub_id);
            do_action('ninja_forms_insert_sub', $sub_id);
        }
    }
}
Ejemplo n.º 26
0
function ninja_forms_edit_field_calc($field_id)
{
    global $ninja_forms_fields;
    $field_row = ninja_forms_get_field_by_id($field_id);
    $field_type = $field_row['type'];
    if ($ninja_forms_fields[$field_type]['process_field']) {
        if (isset($field_row['data']['calc_option'])) {
            $calc_option = $field_row['data']['calc_option'];
        } else {
            $calc_option = 0;
        }
        if (isset($field_row['data']['calc_auto_include'])) {
            $calc_auto_include = $field_row['data']['calc_auto_include'];
        } else {
            $calc_auto_include = 0;
        }
        if (isset($field_row['data']['calc_value'])) {
            $calc_value = $field_row['data']['calc_value'];
        } else {
            $calc_value = 0;
        }
        ?>
		<div class="description description-wide">
		<hr>
		<h5><?php 
        _e('Calculation Settings', 'ninja-forms');
        ?>
</h5>
		<?php 
        if ($field_type == '_checkbox') {
            if (!isset($calc_value['unchecked'])) {
                $calc_value = array();
                $calc_value['unchecked'] = 0;
                $calc_value['checked'] = 0;
            }
            ninja_forms_edit_field_el_output($field_id, 'text', __('<strong>Checked</strong> Calculation Value', 'ninja-forms'), 'calc_value[checked]', $calc_value['checked'], 'wide', '', '', __('This is the value that will be used if <strong>Checked</strong>.', 'ninja-forms'));
            ninja_forms_edit_field_el_output($field_id, 'text', __('<strong>Unchecked</strong> Calculation Value', 'ninja-forms'), 'calc_value[unchecked]', $calc_value['unchecked'], 'wide', '', '', __('This is the value that will be used if <strong>Unchecked</strong>.', 'ninja-forms'));
        }
        //if ( $field_type != '_calc' ) {
        ninja_forms_edit_field_el_output($field_id, 'checkbox', __('Include in the auto-total? (If enabled)', 'ninja-forms'), 'calc_auto_include', $calc_auto_include, 'wide', '', 'ninja-forms-field-auto-total-include');
        //}
        //ninja_forms_edit_field_el_output($field_id, 'checkbox', __( 'Include in payment details list?', 'ninja-forms' ), 'calc_option', $calc_option, 'wide', '', '', __( ' - Should this field be considered as pertinant to a payment/product? i.e. an item option, a product size or color, etc.', 'ninja-forms' ) );
    }
    ?>
		
	<?php 
}
Ejemplo n.º 27
0
function nf_fu_export_filter($user_value, $field_id)
{
    $field = ninja_forms_get_field_by_id($field_id);
    if ($field['type'] == '_upload') {
        if (is_array($user_value)) {
            $file_urls = array();
            foreach ($user_value as $key => $file) {
                if (!isset($file['file_url'])) {
                    continue;
                }
                $file_urls[] = apply_filters('nf_fu_export_file_url', $file['file_url']);
            }
            $user_value = apply_filters('nf_fu_export_files', $file_urls);
        }
    }
    return $user_value;
}
Ejemplo n.º 28
0
function ninja_forms_edit_field_placeholder($field_id)
{
    global $ninja_forms_fields;
    $field_row = ninja_forms_get_field_by_id($field_id);
    $field_type = $field_row['type'];
    $field_data = $field_row['data'];
    $reg_field = $ninja_forms_fields[$field_type];
    $edit_placeholder = $reg_field['edit_placeholder'];
    if ($edit_placeholder) {
        if (isset($field_data['placeholder'])) {
            $placeholder = stripslashes($field_data['placeholder']);
        } else {
            $placeholder = '';
        }
        ninja_forms_edit_field_el_output($field_id, 'text', __('Placeholder', 'ninja-forms'), 'placeholder', $placeholder, 'wide', '', 'widefat ninja-forms-field-label');
    }
}
Ejemplo n.º 29
0
function ninja_forms_display_field_type($field_id, $data)
{
    $field_row = ninja_forms_get_field_by_id($field_id);
    $field_type = $field_row['type'];
    if (strpos($field_type, '_') === 0) {
        $field_type = substr($field_type, 1);
    }
    $field_type = apply_filters('ninja_forms_display_field_type', $field_type, $field_id);
    ?>
	<input type="hidden" id="ninja_forms_field_<?php 
    echo $field_id;
    ?>
_type" value="<?php 
    echo $field_type;
    ?>
">
<?php 
}
Ejemplo n.º 30
0
function ninja_forms_edit_field_calc($field_id)
{
    global $ninja_forms_fields;
    $field_row = ninja_forms_get_field_by_id($field_id);
    $field_type = $field_row['type'];
    if ($ninja_forms_fields[$field_type]['process_field']) {
        if (isset($field_row['data']['calc_option'])) {
            $calc_option = $field_row['data']['calc_option'];
        } else {
            $calc_option = 0;
        }
        if (isset($field_row['data']['calc_auto_include'])) {
            $calc_auto_include = $field_row['data']['calc_auto_include'];
        } else {
            $calc_auto_include = 0;
        }
        if (isset($field_row['data']['calc_value'])) {
            $calc_value = $field_row['data']['calc_value'];
        } else {
            $calc_value = 0;
        }
        ?>
		<div class="description description-wide">
		<hr>
		<h5><?php 
        _e('Calculation Settings', 'ninja-forms');
        ?>
</h5>
		<?php 
        if ($field_type == '_checkbox') {
            if (!isset($calc_value['unchecked'])) {
                $calc_value = array();
                $calc_value['unchecked'] = 0;
                $calc_value['checked'] = 0;
            }
            ninja_forms_edit_field_el_output($field_id, 'text', __('<strong>Checked</strong> Calculation Value', 'ninja-forms'), 'calc_value[checked]', $calc_value['checked'], 'wide', '', '', __('This is the value that will be used if <strong>Checked</strong>.', 'ninja-forms'));
            ninja_forms_edit_field_el_output($field_id, 'text', __('<strong>Unchecked</strong> Calculation Value', 'ninja-forms'), 'calc_value[unchecked]', $calc_value['unchecked'], 'wide', '', '', __('This is the value that will be used if <strong>Unchecked</strong>.', 'ninja-forms'));
        }
        ninja_forms_edit_field_el_output($field_id, 'checkbox', __('Include in the auto-total? (If enabled)', 'ninja-forms'), 'calc_auto_include', $calc_auto_include, 'wide', '', 'ninja-forms-field-auto-total-include');
    }
    ?>
		
	<?php 
}