Ejemplo n.º 1
0
function buddyforms_ajax_process_edit_post()
{
    global $buddyforms;
    if (isset($_POST['data'])) {
        parse_str($_POST['data'], $formdata);
        $_POST = $formdata;
    }
    $args = buddyforms_process_post($formdata);
    if ($args['hasError']) {
        if ($args['form_notice']) {
            $json['form_notice'] .= $args['form_notice'];
        }
        if ($args['error_message']) {
            $json['form_notice'] .= $args['error_message'];
        }
    } else {
        if (!empty($buddyforms[$_POST['form_slug']]['after_submit_message_text'])) {
            $permalink = get_permalink($buddyforms[$args['form_slug']]['attached_page']);
            $display_message = $buddyforms[$_POST['form_slug']]['after_submit_message_text'];
            $display_message = str_ireplace('[form_singular_name]', $buddyforms[$args['form_slug']]['singular_name'], $display_message);
            $display_message = str_ireplace('[post_title]', get_the_title($args['post_id']), $display_message);
            $display_message = str_ireplace('[post_link]', '<a title="Display Post" href="' . get_permalink($args['post_id']) . '"">' . __('Display Post', 'buddyforms') . '</a>', $display_message);
            $display_message = str_ireplace('[edit_link]', '<a title="Edit Post" href="' . $permalink . 'edit/' . $args['form_slug'] . '/' . $args['post_id'] . '">' . __('Continue Editing', 'buddyforms') . '</a>', $display_message);
            $args['form_notice'] = $display_message;
        }
        if (isset($buddyforms[$_POST['form_slug']]['after_submit'])) {
            switch ($buddyforms[$_POST['form_slug']]['after_submit']) {
                case 'display_post':
                    $json['form_remove'] = 'true';
                    $json['form_notice'] = buddyforms_after_save_post_redirect(get_permalink($args['post_id']));
                    break;
                case 'display_posts_list':
                    $json['form_remove'] = 'true';
                    $permalink = get_permalink($buddyforms[$args['form_slug']]['attached_page']);
                    $post_list_link = $permalink . 'view/' . $args['form_slug'] . '/';
                    $json['form_notice'] = buddyforms_after_save_post_redirect($post_list_link);
                    break;
                case 'display_message':
                    $json['form_remove'] = 'true';
                    $json['form_notice'] = $display_message;
                    break;
                default:
                    $json['post_id'] = $args['post_id'];
                    $json['editpost_title'] = $args['post_title'];
                    $json['revision_id'] = $args['revision_id'];
                    $json['post_parent'] = $args['post_parent'];
                    $json['form_notice'] = $args['form_notice'];
                    break;
            }
        }
    }
    $json = apply_filters('buddyforms_ajax_process_edit_post_json_response', $json);
    echo json_encode($json);
    die;
}
Ejemplo n.º 2
0
function bf_form_response_no_ajax()
{
    global $buddyforms, $bf_form_error, $bf_form_response_args;
    // If the form is submitted we will get in action
    if (isset($_POST['bf_submitted'])) {
        $bf_form_response_args = buddyforms_process_post($_POST);
        extract($bf_form_response_args);
        if ($hasError) {
            $bf_form_error = $error_message;
            return;
        }
        if (isset($buddyforms[$_POST['form_slug']]['after_submit'])) {
            if ($buddyforms[$_POST['form_slug']]['after_submit'] == 'display_post') {
                $permalink = get_permalink($post_id);
                $permalink = apply_filters('buddyforms_after_save_post_redirect', $permalink);
                wp_redirect($permalink, 302);
                exit;
            }
            if ($buddyforms[$_POST['form_slug']]['after_submit'] == 'display_posts_list') {
                $permalink = get_permalink($buddyforms[$_POST['form_slug']]['attached_page']);
                $post_list_link = $permalink . 'view/' . $_POST['form_slug'] . '/';
                $post_list_link = apply_filters('buddyforms_after_save_post_redirect', $post_list_link);
                wp_redirect($post_list_link, 302);
            }
        }
    }
}