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; }
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); } } } }