Пример #1
0
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);
    }
}
Пример #2
0
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);
        }
    }
}
Пример #3
0
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;
}
Пример #4
0
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;
}