function buddyforms_transition_post_status_regenerate_global_options($new_status, $old_status, $post)
{
    if ($post->post_type != 'buddyforms') {
        return;
    }
    buddyforms_regenerate_global_options();
    buddyforms_attached_page_rewrite_rules(TRUE);
}
Exemplo n.º 2
0
/**
 * Ajax call back function to add a form element
 *
 * @package BuddyForms
 * @since 0.1-beta
 */
function buddyforms_add_form()
{
    global $buddyforms;
    if (!is_array($buddyforms)) {
        $buddyforms = array();
    }
    if (empty($_POST['create_new_form_name'])) {
        return;
    }
    if (empty($_POST['create_new_form_singular_name'])) {
        return;
    }
    if (empty($_POST['create_new_form_attached_page']) && empty($_POST['create_new_page'])) {
        return;
    }
    if (empty($_POST['create_new_form_post_type'])) {
        return;
    }
    if (!empty($_POST['create_new_page'])) {
        // Create post object
        $mew_post = array('post_title' => wp_strip_all_tags($_POST['create_new_page']), 'post_content' => '', 'post_status' => 'publish', 'post_author' => 1, 'post_type' => 'page');
        // Insert the post into the database
        $_POST['create_new_form_attached_page'] = wp_insert_post($mew_post);
    }
    $bf_forms_args = array('post_title' => $_POST['create_new_form_name'], 'post_type' => 'buddyforms', 'post_status' => 'publish');
    // Insert the new form
    $post_id = wp_insert_post($bf_forms_args, true);
    $the_post = get_post($post_id);
    $options = array('slug' => $the_post->post_name, 'id' => $the_post->ID, 'name' => $_POST['create_new_form_name'], 'singular_name' => $_POST['create_new_form_singular_name'], 'attached_page' => $_POST['create_new_form_attached_page'], 'post_type' => $_POST['create_new_form_post_type']);
    if (!empty($_POST['create_new_form_status'])) {
        $options = array_merge($options, array('status' => $_POST['create_new_form_status']));
    }
    if (!empty($_POST['create_new_form_comment_status'])) {
        $options = array_merge($options, array('comment_status' => $_POST['create_new_form_comment_status']));
    }
    $field_id = $mod5 = substr(md5(time() * rand()), 0, 10);
    $options['form_fields'][$field_id]['name'] = 'Title';
    $options['form_fields'][$field_id]['slug'] = 'editpost_title';
    $options['form_fields'][$field_id]['type'] = 'Title';
    $field_id = $mod5 = substr(md5(time() * rand()), 0, 10);
    $options['form_fields'][$field_id]['name'] = 'Content';
    $options['form_fields'][$field_id]['slug'] = 'editpost_content';
    $options['form_fields'][$field_id]['type'] = 'Content';
    update_post_meta($post_id, '_buddyforms_options', $options);
    if ($post_id) {
        buddyforms_attached_page_rewrite_rules(TRUE);
        echo sanitize_title($_POST['create_new_form_name']);
    } else {
        echo 'Error Saving the Form';
    }
    die;
}
Exemplo n.º 3
0
 function buddyforms_update_db_check()
 {
     $buddyforms_old = get_option('buddyforms_options');
     if (!$buddyforms_old) {
         return;
     }
     update_option('buddyforms_options_old', $buddyforms_old);
     foreach ($buddyforms_old['buddyforms'] as $key => $form) {
         $bf_forms_args = array('post_title' => $form['name'], 'post_type' => 'buddyforms', 'post_status' => 'publish');
         // Insert the new form
         $post_id = wp_insert_post($bf_forms_args, true);
         $form['id'] = $post_id;
         update_post_meta($post_id, '_buddyforms_options', $form);
         // Update the option _buddyforms_forms used to reduce queries
         $buddyforms_forms = get_option('buddyforms_forms');
         $buddyforms_forms[$form['slug']] = $form;
         update_option('buddyforms_forms', $buddyforms_forms);
     }
     update_option('buddyforms_version', BUDDYFORMS_VERSION);
     delete_option('buddyforms_options');
     buddyforms_attached_page_rewrite_rules(TRUE);
 }