function ninja_forms_mp_new_form_add_page($form_id, $data) { if ($data['multi_part'] == 1) { $args = array('type' => '_page_divider'); ninja_forms_insert_field($form_id, $args); } }
function ninja_forms_mp_save_form($form_id, $data) { $form_row = ninja_forms_get_form_by_id($form_id); $form_data = $form_row['data']; if (isset($form_data['multi_part'])) { $multi_part = $form_data['multi_part']; } else { $multi_part = 0; } if ($data['multi_part'] == 0 and $multi_part == 1) { $all_fields = ninja_forms_get_fields_by_form_id($form_id); if (is_array($all_fields) and !empty($all_fields)) { foreach ($all_fields as $field) { if ($field['type'] == '_page_divider') { ninja_forms_delete_field($field['id']); } } } } else { if ($data['multi_part'] == 1 and $multi_part == 0) { $args = array('type' => '_page_divider', 'order' => -1); ninja_forms_insert_field($form_id, $args); } } }
function ninja_forms_mp_copy_page() { $form_id = $_REQUEST['form_id']; $fields = $_REQUEST['field_data']; $order = 999; foreach ($fields[0] as $f => $data) { $data = serialize($data); $args = array('type' => '_page_divider', 'data' => $data, 'order' => $order, 'fav_id' => 0, 'def_id' => 0); $new_divider = ninja_forms_insert_field($form_id, $args); $new_html = ninja_forms_return_echo('ninja_forms_edit_field', $new_divider); } unset($fields[0]); $new_fields = array(); foreach ($fields as $field) { foreach ($field as $f => $data) { $field_id = str_replace('ninja_forms_field_', '', $f); $field_row = ninja_forms_get_field_by_id($field_id); $field_type = $field_row['type']; if (isset($field_row['fav_id'])) { $fav_id = $field_row['fav_id']; } else { $fav_id = 0; } if (isset($field_row['def_id'])) { $def_id = $field_row['def_id']; } else { $def_id = 0; } $data = serialize($data); $args = array('type' => $field_type, 'data' => $data, 'order' => $order, 'fav_id' => $fav_id, 'def_id' => $def_id); $new_id = ninja_forms_insert_field($form_id, $args); $new_fields[] = $new_id; } } foreach ($new_fields as $field_id) { $new_html .= ninja_forms_return_echo('ninja_forms_edit_field', $field_id); } header("Content-type: application/json"); $array = array('new_html' => $new_html); echo json_encode($array); die; }
function ninja_forms_insert_def() { global $wpdb, $ninja_forms_fields; // Bail if we aren't in the admin if (!is_admin()) { return false; } check_ajax_referer('nf_ajax', 'nf_ajax_nonce'); $def_id = absint($_REQUEST['def_id']); $form_id = absint($_REQUEST['form_id']); $def_row = ninja_forms_get_def_by_id($def_id); $data = serialize($def_row['data']); $type = $def_row['type']; $type_name = $ninja_forms_fields[$type]['name']; if ($form_id != 0 and $form_id != '') { $args = array('type' => $type, 'data' => $data, 'def_id' => $def_id); $new_id = ninja_forms_insert_field($form_id, $args); $new_html = ninja_forms_return_echo('ninja_forms_edit_field', $new_id); header("Content-type: application/json"); $array = array('new_id' => $new_id, 'new_type' => $type_name, 'new_html' => $new_html); echo json_encode($array); } die; }