예제 #1
0
function tdomf_handle_spam_options_actions($form_id = false)
{
    $message = '';
    if ($form_id) {
        $tdomf_spam_overwrite = isset($_POST['tdomf_spam_overwrite']);
        tdomf_set_option_form(TDOMF_OPTION_SPAM_OVERWRITE, $tdomf_spam_overwrite, $form_id);
        if ($tdomf_spam_overwrite) {
            $tdomf_spam = isset($_POST['tdomf_spam']);
            tdomf_set_option_form(TDOMF_OPTION_SPAM, $tdomf_spam, $form_id);
            /*
            if($tdomf_spam) {
                $tdomf_spam_akismet_key = $_POST['tdomf_spam_akismet_key'];
                $tdomf_spam_akismet_key_prev = get_option(TDOMF_OPTION_SPAM_AKISMET_KEY,$form_id);
                if(tdomf_get_option_form(TDOMF_OPTION_SPAM_AKISMET_KEY_PREV,$form_id) == false || $tdomf_spam_akismet_key_prev != $tdomf_spam_akismet_key) {
                    if(TDOMF_DEBUG_FAKE_SPAM || (!empty($tdomf_spam_akismet_key) && tdomf_akismet_key_verify($tdomf_spam_akismet_key))){
                       tdomf_set_option_form(TDOMF_OPTION_SPAM_AKISMET_KEY,$tdomf_spam_akismet_key,$form_id);
                       tdomf_set_option_form(TDOMF_OPTION_SPAM_AKISMET_KEY_PREV,$tdomf_spam_akismet_key_prev,$form_id);
                    } else {
                      $message .= "<font color='red'>".sprintf(__("The key: %s has not been recognised by akismet. Spam protection has been disabled.","tdomf"),$tdomf_spam_akismet_key)."</font><br/>";
                      tdomf_set_option_form(TDOMF_OPTION_SPAM,false,$form_id);
                      // reset overwrite
                      $tdomf_spam = false;
                      tdomf_set_option_form(TDOMF_OPTION_SPAM_OVERWRITE,false,$form_id);
                    }
                }
            }
            */
            if ($tdomf_spam) {
                /*
                $tdomf_spam_notify = $_POST['tdomf_spam_notify'];
                tdomf_set_option_form(TDOMF_OPTION_SPAM_NOTIFY,$tdomf_spam_notify,$form_id);
                            
                $tdomf_spam_auto_delete = $_POST['tdomf_spam_auto_delete'];
                if($tdomf_spam_auto_delete == "month") {
                    tdomf_set_option_form(TDOMF_OPTION_SPAM_AUTO_DELETE,true,$form_id);
                    tdomf_set_option_form(TDOMF_OPTION_SPAM_AUTO_DELETE_NOW,false,$form_id);
                } else if($tdomf_spam_auto_delete == "now") {
                    tdomf_set_option_form(TDOMF_OPTION_SPAM_AUTO_DELETE,false,$form_id);
                    tdomf_set_option_form(TDOMF_OPTION_SPAM_AUTO_DELETE_NOW,true,$form_id);
                } else {
                    tdomf_set_option_form(TDOMF_OPTION_SPAM_AUTO_DELETE,false,$form_id);
                    tdomf_set_option_form(TDOMF_OPTION_SPAM_AUTO_DELETE_NOW,false,$form_id);
                }
                */
                $tdomf_nospam_author = isset($_POST['tdomf_nospam_author']);
                tdomf_set_option_form(TDOMF_OPTION_NOSPAM_AUTHOR, $tdomf_nospam_author, $form_id);
                $tdomf_nospam_trusted = isset($_POST['tdomf_nospam_trusted']);
                tdomf_set_option_form(TDOMF_OPTION_NOSPAM_TRUSTED, $tdomf_nospam_trusted, $form_id);
                $tdomf_nospam_publish = isset($_POST['tdomf_nospam_publish']);
                tdomf_set_option_form(TDOMF_OPTION_NOSPAM_PUBLISH, $tdomf_nospam_publish, $form_id);
                $tdomf_nospam_user = isset($_POST['tdomf_nospam_user']);
                tdomf_set_option_form(TDOMF_OPTION_NOSPAM_USER, $tdomf_nospam_user, $form_id);
            }
        }
    } else {
        $tdomf_spam = isset($_POST['tdomf_spam']);
        update_option(TDOMF_OPTION_SPAM, $tdomf_spam);
        // allow the akismet key to be set independantly of the tdomf_spam option
        // because tdomf_spam is disabled if you don't have a key
        $tdomf_spam_akismet_key = $_POST['tdomf_spam_akismet_key'];
        $tdomf_spam_akismet_key_prev = get_option(TDOMF_OPTION_SPAM_AKISMET_KEY);
        if (get_option(TDOMF_OPTION_SPAM_AKISMET_KEY_PREV) == false || $tdomf_spam_akismet_key_prev != $tdomf_spam_akismet_key) {
            if (TDOMF_DEBUG_FAKE_SPAM || !empty($tdomf_spam_akismet_key) && tdomf_akismet_key_verify($tdomf_spam_akismet_key)) {
                update_option(TDOMF_OPTION_SPAM_AKISMET_KEY, $tdomf_spam_akismet_key);
                update_option(TDOMF_OPTION_SPAM_AKISMET_KEY_PREV, $tdomf_spam_akismet_key_prev);
            } else {
                $message .= "<font color='red'>" . sprintf(__("The key: %s has not been recognised by akismet. Spam protection has been disabled.", "tdomf"), $tdomf_spam_akismet_key) . "</font><br/>";
                update_option(TDOMF_OPTION_SPAM, false);
                $tdomf_spam = false;
            }
        }
        if ($tdomf_spam) {
            $tdomf_spam_notify = $_POST['tdomf_spam_notify'];
            update_option(TDOMF_OPTION_SPAM_NOTIFY, $tdomf_spam_notify);
            $tdomf_spam_auto_delete = $_POST['tdomf_spam_auto_delete'];
            if ($tdomf_spam_auto_delete == "month") {
                update_option(TDOMF_OPTION_SPAM_AUTO_DELETE, true);
                update_option(TDOMF_OPTION_SPAM_AUTO_DELETE_NOW, false);
            } else {
                if ($tdomf_spam_auto_delete == "now") {
                    update_option(TDOMF_OPTION_SPAM_AUTO_DELETE, false);
                    update_option(TDOMF_OPTION_SPAM_AUTO_DELETE_NOW, true);
                } else {
                    update_option(TDOMF_OPTION_SPAM_AUTO_DELETE, false);
                    update_option(TDOMF_OPTION_SPAM_AUTO_DELETE_NOW, false);
                }
            }
            $tdomf_nospam_author = isset($_POST['tdomf_nospam_author']);
            update_option(TDOMF_OPTION_NOSPAM_AUTHOR, $tdomf_nospam_author);
            $tdomf_nospam_trusted = isset($_POST['tdomf_nospam_trusted']);
            update_option(TDOMF_OPTION_NOSPAM_TRUSTED, $tdomf_nospam_trusted);
            $tdomf_nospam_publish = isset($_POST['tdomf_nospam_publish']);
            update_option(TDOMF_OPTION_NOSPAM_PUBLISH, $tdomf_nospam_publish);
            $tdomf_nospam_user = isset($_POST['tdomf_nospam_user']);
            update_option(TDOMF_OPTION_NOSPAM_USER, $tdomf_nospam_user);
        }
    }
    return $message;
}
예제 #2
0
function tdomf_init()
{
    // Update/upgrade options!
    // Pre 0.7 or a fresh install!
    if (get_option(TDOMF_VERSION_CURRENT) == false) {
        add_option(TDOMF_VERSION_CURRENT, TDOMF_BUILD);
        // Some defaults for new options!
        add_option(TDOMF_OPTION_MODERATION, true);
        add_option(TDOMF_OPTION_PREVIEW, true);
        add_option(TDOMF_OPTION_TRUST_COUNT, -1);
        add_option(TDOMF_OPTION_YOUR_SUBMISSIONS, true);
        add_option(TDOMF_OPTION_WIDGET_MAX_WIDTH, 500);
        add_option(TDOMF_OPTION_WIDGET_MAX_HEIGHT, 400);
    }
    // Pre 0.9.3 (beta)/16
    if (intval(get_option(TDOMF_VERSION_CURRENT)) < 16) {
        add_option(TDOMF_OPTION_YOUR_SUBMISSIONS, true);
    }
    // Pre WP 2.5/0.10.2
    if (intval(get_option(TDOMF_VERSION_CURRENT)) < 26) {
        add_option(TDOMF_OPTION_WIDGET_MAX_WIDTH, 500);
        add_option(TDOMF_OPTION_WIDGET_MAX_HEIGHT, 400);
    }
    if (get_option(TDOMF_OPTION_VERIFICATION_METHOD) == false) {
        add_option(TDOMF_OPTION_VERIFICATION_METHOD, 'wordpress_nonce');
    }
    if (get_option(TDOMF_OPTION_FORM_DATA_METHOD) == false) {
        if (ini_get('register_globals')) {
            add_option(TDOMF_OPTION_FORM_DATA_METHOD, 'db');
        } else {
            add_option(TDOMF_OPTION_FORM_DATA_METHOD, 'session');
        }
    }
    if (get_option(TDOMF_OPTION_LOG_MAX_SIZE) == false) {
        add_option(TDOMF_OPTION_LOG_MAX_SIZE, 1000);
    }
    if (intval(get_option(TDOMF_VERSION_CURRENT)) < 44) {
        $form_ids = tdomf_get_form_ids();
        foreach ($form_ids as $form_id) {
            tdomf_set_option_form(TDOMF_OPTION_ALLOW_PUBLISH, true, $form_id->form_id);
            tdomf_set_option_form(TDOMF_OPTION_PUBLISH_NO_MOD, true, $form_id->form_id);
        }
    }
    // Update build number
    if (get_option(TDOMF_VERSION_CURRENT) != TDOMF_BUILD) {
        update_option(TDOMF_VERSION_LAST, get_option(TDOMF_VERSION_CURRENT));
        update_option(TDOMF_VERSION_CURRENT, TDOMF_BUILD);
    }
}
예제 #3
0
function tdomf_copy_form($form_id)
{
    global $wp_roles, $wpdb;
    $table_name = $wpdb->prefix . TDOMF_DB_TABLE_WIDGETS;
    // Copy form options
    //
    $form_name = sprintf(__("Copy of %s", "tdomf"), tdomf_get_option_form(TDOMF_OPTION_NAME, $form_id));
    $form_to_copy_options = tdomf_get_options_form($form_id);
    if (empty($form_to_copy_options)) {
        return 0;
    }
    $options = wp_parse_args($options, $form_to_copy_options);
    $copied_form_id = tdomf_create_form($form_name, $options);
    // Reset the "created pages" option
    //
    tdomf_set_option_form(TDOMF_OPTION_CREATEDPAGES, false, $copied_form_id);
    //Copy widget options
    //
    $query = "SELECT * \n            FROM {$table_name} \n            WHERE form_id = '" . $wpdb->escape($form_id) . "'";
    $widgets = $wpdb->get_results($query);
    foreach ($widgets as $widget) {
        tdomf_set_option_widget($widget->widget_key, maybe_unserialize($widget->widget_value), $copied_form_id);
    }
    // Copy capablities
    //
    if ($copied_form_id != 0) {
        if (!isset($wp_roles)) {
            $wp_roles = new WP_Roles();
        }
        $roles = $wp_roles->role_objects;
        foreach ($roles as $role) {
            if (isset($role->capabilities[TDOMF_CAPABILITY_CAN_SEE_FORM . '_' . $form_id])) {
                $role->add_cap(TDOMF_CAPABILITY_CAN_SEE_FORM . '_' . $copied_form_id);
            }
        }
    }
    return $copied_form_id;
}
예제 #4
0
 function tdomf_set_form_message($form_id, $name, $opt)
 {
     if (isset($_POST[$name])) {
         $msg = $_POST[$name];
         #if (get_magic_quotes_gpc()) {
         $msg = stripslashes($_POST[$name]);
         #}
     }
     tdomf_set_option_form($opt, $msg, $form_id);
 }
예제 #5
0
function tdomf_handle_form_options_actions()
{
    global $wpdb, $wp_roles;
    $message = "";
    $retValue = false;
    if (!isset($wp_roles)) {
        $wp_roles = new WP_Roles();
    }
    $roles = $wp_roles->role_objects;
    $caps = tdomf_get_all_caps();
    $remove_throttle_rule = false;
    $rule_id = 0;
    if (isset($_REQUEST['tdomf_form_id'])) {
        $form_id = intval($_REQUEST['tdomf_form_id']);
        $rules = tdomf_get_option_form(TDOMF_OPTION_THROTTLE_RULES, $form_id);
        if (is_array($rules)) {
            foreach ($rules as $id => $r) {
                if (isset($_REQUEST["tdomf_remove_throttle_rule_{$id}"])) {
                    $remove_throttle_rule = true;
                    $rule_id = $id;
                    break;
                }
            }
        }
    }
    if ($remove_throttle_rule) {
        check_admin_referer('tdomf-options-save');
        unset($rules[$rule_id]);
        tdomf_set_option_form(TDOMF_OPTION_THROTTLE_RULES, $rules, $form_id);
        $message .= "Throttle rule removed!<br/>";
        tdomf_log_message("Removed throttle rule");
    } else {
        if (isset($_REQUEST['tdomf_add_throttle_rule'])) {
            check_admin_referer('tdomf-options-save');
            $form_id = intval($_REQUEST['tdomf_form_id']);
            $rule = array();
            $rule['sub_type'] = $_REQUEST['tdomf_throttle_rule_sub_type'];
            $rule['count'] = $_REQUEST['tdomf_throttle_rule_count'];
            $rule['type'] = $_REQUEST['tdomf_throttle_rule_user_type'];
            $rule['opt1'] = isset($_REQUEST['tdomf_throttle_rule_opt1']);
            $rule['time'] = intval($_REQUEST['tdomf_throttle_rule_time']);
            $rules = tdomf_get_option_form(TDOMF_OPTION_THROTTLE_RULES, $form_id);
            if (!is_array($rules)) {
                $rules = array();
            }
            $rules[] = $rule;
            tdomf_set_option_form(TDOMF_OPTION_THROTTLE_RULES, $rules, $form_id);
            $message .= "Throttle rule added!<br/>";
            tdomf_log_message("Added a new throttle rule: " . var_export($rule, true));
        } else {
            if (isset($_REQUEST['action']) && $_REQUEST['action'] == 'create_form_page') {
                check_admin_referer('tdomf-create-form-page');
                $form_id = intval($_REQUEST['form']);
                $page_id = tdomf_create_form_page($form_id);
                $message = sprintf(__("A page with the form has been created. <a href='%s'>View page &raquo;</a><br/>", "tdomf"), get_permalink($page_id));
            } else {
                if (isset($_REQUEST['save_settings']) && isset($_REQUEST['tdomf_form_id'])) {
                    check_admin_referer('tdomf-options-save');
                    $form_id = intval($_REQUEST['tdomf_form_id']);
                    // Edit or Submit
                    $edit_form = false;
                    if (isset($_REQUEST['tdomf_mode']) && $_REQUEST['tdomf_mode'] == "edit") {
                        $edit_form = true;
                    }
                    tdomf_set_option_form(TDOMF_OPTION_FORM_EDIT, $edit_form, $form_id);
                    // Allow pages with forms to be editted
                    $edit_page_form = isset($_REQUEST['tdomf_edit_page_form']);
                    tdomf_set_option_form(TDOMF_OPTION_EDIT_PAGE_FORM, $edit_page_form, $form_id);
                    // Allow authors to edit
                    $author_edit = false;
                    if (isset($_REQUEST['tdomf_author_edit'])) {
                        $author_edit = true;
                    }
                    tdomf_set_option_form(TDOMF_OPTION_ALLOW_AUTHOR, $author_edit, $form_id);
                    // Edit post within X seconds of being published
                    $time_edit = false;
                    if (isset($_REQUEST['tdomf_time_edit'])) {
                        $time_edit = intval($_REQUEST['tdomf_time_edit']);
                        if ($time_edit <= 0) {
                            $time_edit = false;
                        }
                    }
                    tdomf_set_option_form(TDOMF_OPTION_ALLOW_TIME, $time_edit, $form_id);
                    // Who can access the form?
                    if (isset($_REQUEST['tdomf_special_access_anyone']) && tdomf_get_option_form(TDOMF_OPTION_ALLOW_EVERYONE, $form_id) == false) {
                        tdomf_set_option_form(TDOMF_OPTION_ALLOW_EVERYONE, true, $form_id);
                        foreach ($roles as $role) {
                            // remove cap as it's not needed
                            if (isset($role->capabilities[TDOMF_CAPABILITY_CAN_SEE_FORM . '_' . $form_id])) {
                                $role->remove_cap(TDOMF_CAPABILITY_CAN_SEE_FORM . '_' . $form_id);
                            }
                        }
                        tdomf_set_option_form(TDOMF_OPTION_ALLOW_CAPS, array(), $form_id);
                    } else {
                        if (!isset($_REQUEST['tdomf_special_access_anyone'])) {
                            tdomf_set_option_form(TDOMF_OPTION_ALLOW_EVERYONE, false, $form_id);
                            // add cap to right roles
                            foreach ($roles as $role) {
                                if (isset($_REQUEST["tdomf_access_" . $role->name])) {
                                    $role->add_cap(TDOMF_CAPABILITY_CAN_SEE_FORM . '_' . $form_id);
                                } else {
                                    if (isset($role->capabilities[TDOMF_CAPABILITY_CAN_SEE_FORM . '_' . $form_id])) {
                                        $role->remove_cap(TDOMF_CAPABILITY_CAN_SEE_FORM . '_' . $form_id);
                                    }
                                }
                            }
                            // list caps that can access form
                            $allow_caps = array();
                            foreach ($caps as $cap) {
                                if (isset($_REQUEST['tdomf_access_caps_' . $cap])) {
                                    $allow_caps[] = $cap;
                                }
                            }
                            tdomf_set_option_form(TDOMF_OPTION_ALLOW_CAPS, $allow_caps, $form_id);
                            // convert user names to ids
                            $allow_users = array();
                            if (isset($_REQUEST['tdomf_access_users_list'])) {
                                $user_names = trim($_REQUEST['tdomf_access_users_list']);
                                if (!empty($user_names)) {
                                    $user_names = explode(' ', $user_names);
                                    foreach ($user_names as $user_name) {
                                        if (!empty($user_name)) {
                                            if (($userdata = get_userdatabylogin($user_name)) != false) {
                                                $allow_users[] = $userdata->ID;
                                            } else {
                                                $message .= "<font color='red'>" . sprintf(__("{$user_name} is not a valid user name. Ignoring.<br/>", "tdomf"), $form_id) . "</font>";
                                                tdomf_log_message("User login {$user_name} is not recognised by wordpress. Ignoring.", TDOMF_LOG_BAD);
                                            }
                                        }
                                    }
                                }
                            }
                            tdomf_set_option_form(TDOMF_OPTION_ALLOW_USERS, $allow_users, $form_id);
                        }
                    }
                    tdomf_set_option_form(TDOMF_OPTION_ALLOW_PUBLISH, isset($_REQUEST['tdomf_user_publish_override']), $form_id);
                    // Who gets notified?
                    $notify_roles = "";
                    foreach ($roles as $role) {
                        if (isset($_REQUEST["tdomf_notify_" . $role->name])) {
                            $notify_roles .= $role->name . ";";
                        }
                    }
                    if (!empty($notify_roles)) {
                        tdomf_set_option_form(TDOMF_NOTIFY_ROLES, $notify_roles, $form_id);
                    } else {
                        tdomf_set_option_form(TDOMF_NOTIFY_ROLES, false, $form_id);
                    }
                    $save = true;
                    $tdomf_admin_emails = $_POST['tdomf_admin_emails'];
                    $emails = explode(',', $tdomf_admin_emails);
                    foreach ($emails as $email) {
                        if (!empty($email)) {
                            if (!tdomf_check_email_address($email)) {
                                $message .= "<font color='red'>" . sprintf(__("The email %s is not valid! Please update 'Who Gets Notified' with valid email addresses.", "tdomf"), $email) . "</font><br/>";
                                $save = false;
                                break;
                            }
                        }
                    }
                    if ($save) {
                        tdomf_set_option_form(TDOMF_OPTION_ADMIN_EMAILS, $tdomf_admin_emails, $form_id);
                    }
                    // Default Category
                    $def_cat = $_POST['tdomf_def_cat'];
                    tdomf_set_option_form(TDOMF_DEFAULT_CATEGORY, $def_cat, $form_id);
                    // Restrict editing to posts submitted by tdomf
                    $edit_restrict_tdomf = isset($_REQUEST['tdomf_edit_tdomf_only']);
                    tdomf_set_option_form(TDOMF_OPTION_EDIT_RESTRICT_TDOMF, $edit_restrict_tdomf, $form_id);
                    $edit_restrict_cats = explode(',', trim($_REQUEST['tdomf_edit_cats']));
                    if (!empty($edit_restrict_cats)) {
                        $cats = array();
                        foreach ($edit_restrict_cats as $cat) {
                            $cat = intval(trim($cat));
                            if ($cat > 0) {
                                $cats[] = $cat;
                            }
                        }
                        $edit_restrict_cats = $cats;
                    } else {
                        $edit_restrict_cats = array();
                    }
                    tdomf_set_option_form(TDOMF_OPTION_EDIT_RESTRICT_CATS, $edit_restrict_cats, $form_id);
                    // add edit link
                    $add_edit_link = $_REQUEST['tdomf_add_edit_link'];
                    if ($add_edit_link == 'custom') {
                        $add_edit_link = $_REQUEST['tdomf_add_edit_link_custom_url'];
                    }
                    tdomf_set_option_form(TDOMF_OPTION_ADD_EDIT_LINK, $add_edit_link, $form_id);
                    $ajax_edit = isset($_REQUEST['tdomf_ajax_edit']);
                    tdomf_set_option_form(TDOMF_OPTION_AJAX_EDIT, $ajax_edit, $form_id);
                    // auto modify edit link
                    $auto_edit_link = $_REQUEST['tdomf_auto_edit_link'];
                    if ($auto_edit_link == 'custom') {
                        $auto_edit_link = $_REQUEST['tdomf_auto_edit_link_custom_url'];
                    }
                    tdomf_set_option_form(TDOMF_OPTION_AUTO_EDIT_LINK, $auto_edit_link, $form_id);
                    //Turn On/Off Moderation
                    $mod = false;
                    if (isset($_POST['tdomf_moderation'])) {
                        $mod = true;
                    }
                    tdomf_set_option_form(TDOMF_OPTION_MODERATION, $mod, $form_id);
                    $tdomf_redirect = isset($_POST['tdomf_redirect']);
                    tdomf_set_option_form(TDOMF_OPTION_REDIRECT, $tdomf_redirect, $form_id);
                    //Preview
                    $preview = false;
                    if (isset($_POST['tdomf_preview'])) {
                        $preview = true;
                    }
                    tdomf_set_option_form(TDOMF_OPTION_PREVIEW, $preview, $form_id);
                    //From email
                    if (trim($_POST['tdomf_from_email']) == "") {
                        tdomf_set_option_form(TDOMF_OPTION_FROM_EMAIL, false, $form_id);
                    } else {
                        tdomf_set_option_form(TDOMF_OPTION_FROM_EMAIL, $_POST['tdomf_from_email'], $form_id);
                    }
                    // Form name
                    if (trim($_POST['tdomf_form_name']) == "") {
                        tdomf_set_option_form(TDOMF_OPTION_NAME, "", $form_id);
                    } else {
                        tdomf_set_option_form(TDOMF_OPTION_NAME, strip_tags($_POST['tdomf_form_name']), $form_id);
                    }
                    // Form description
                    if (trim($_POST['tdomf_form_descp']) == "") {
                        tdomf_set_option_form(TDOMF_OPTION_DESCRIPTION, false, $form_id);
                    } else {
                        tdomf_set_option_form(TDOMF_OPTION_DESCRIPTION, $_POST['tdomf_form_descp'], $form_id);
                    }
                    // Include on "your submissions" page
                    //
                    $include = false;
                    if (isset($_POST['tdomf_include_sub'])) {
                        $include = true;
                    }
                    tdomf_set_option_form(TDOMF_OPTION_INCLUDED_YOUR_SUBMISSIONS, $include, $form_id);
                    if (get_option(TDOMF_OPTION_YOUR_SUBMISSIONS) && $include) {
                        $message .= sprintf(__("Saved Options for Form %d. <a href='%s'>See your form &raquo</a>", "tdomf"), $form_id, "users.php?page=tdomf_your_submissions#tdomf_form%d") . "<br/>";
                    } else {
                        $message .= sprintf(__("Saved Options for Form %d.", "tdomf"), $form_id) . "<br/>";
                    }
                    // widget count
                    //
                    $widget_count = 10;
                    if (isset($_POST['tdomf_widget_count'])) {
                        $widget_count = intval($_POST['tdomf_widget_count']);
                    }
                    if ($widget_count < 1) {
                        $widget_count = 1;
                    }
                    tdomf_set_option_form(TDOMF_OPTION_WIDGET_INSTANCES, $widget_count, $form_id);
                    //Submit page instead of post
                    //
                    $use_page = false;
                    if (isset($_POST['tdomf_use_type']) && $_POST['tdomf_use_type'] == 'page') {
                        $use_page = true;
                    }
                    tdomf_set_option_form(TDOMF_OPTION_SUBMIT_PAGE, $use_page, $form_id);
                    // Queue period
                    //
                    $tdomf_queue_period = intval($_POST['tdomf_queue_period']);
                    tdomf_set_option_form(TDOMF_OPTION_QUEUE_PERIOD, $tdomf_queue_period, $form_id);
                    // Queue on all
                    //
                    $tdomf_queue_on_all = isset($_POST['tdomf_queue_on_all']);
                    tdomf_set_option_form(TDOMF_OPTION_QUEUE_ON_ALL, $tdomf_queue_on_all, $form_id);
                    // ajax
                    //
                    $tdomf_ajax = isset($_POST['tdomf_ajax']);
                    tdomf_set_option_form(TDOMF_OPTION_AJAX, $tdomf_ajax, $form_id);
                    // Send moderation email even for published posts
                    //
                    $tdomf_mod_email_on_pub = isset($_POST['tdomf_mod_email_on_pub']);
                    tdomf_set_option_form(TDOMF_OPTION_MOD_EMAIL_ON_PUB, $tdomf_mod_email_on_pub, $form_id);
                    // Admin users auto-publish?
                    //
                    $tdomf_publish_no_mod = isset($_POST['tdomf_user_publish_auto']);
                    tdomf_set_option_form(TDOMF_OPTION_PUBLISH_NO_MOD, $tdomf_publish_no_mod, $form_id);
                    // Spam
                    //
                    $message .= tdomf_handle_spam_options_actions($form_id);
                    tdomf_log_message("Options Saved for Form ID {$form_id}");
                } else {
                    if (isset($_REQUEST['delete'])) {
                        $form_id = intval($_REQUEST['delete']);
                        check_admin_referer('tdomf-delete-form-' . $form_id);
                        if (tdomf_form_exists($form_id)) {
                            $count_forms = count(tdomf_get_form_ids());
                            if ($count_forms > 1) {
                                if (tdomf_delete_form($form_id)) {
                                    $message .= sprintf(__("Form %d deleted.<br/>", "tdomf"), $form_id);
                                } else {
                                    $message .= sprintf(__("Could not delete Form %d!<br/>", "tdomf"), $form_id);
                                }
                            } else {
                                $message .= sprintf(__("You cannot delete the last form! There must be at least one form in the system.<br/>", "tdomf"), $form_id);
                            }
                        } else {
                            $message .= sprintf(__("Form %d is not valid!<br/>", "tdomf"), $form_id);
                        }
                    } else {
                        if (isset($_REQUEST['copy'])) {
                            $form_id = intval($_REQUEST['copy']);
                            check_admin_referer('tdomf-copy-form-' . $form_id);
                            $copy_form_id = tdomf_copy_form($form_id);
                            if ($copy_form_id != 0) {
                                $message .= sprintf(__("Form %d copied with id %d.<br/>", "tdomf"), $form_id, $copy_form_id);
                                $retValue = $copy_form_id;
                            } else {
                                $message .= sprintf(__("Failed to copy Form %d!<br/>", "tdomf"), $form_id);
                            }
                        } else {
                            if (isset($_REQUEST['new'])) {
                                check_admin_referer('tdomf-new-form');
                                $form_id = tdomf_create_form(__('New Form', 'tdomf'), array());
                                if ($form_id != 0) {
                                    $message .= sprintf(__("New form created with %d.<br/>", "tdomf"), $form_id);
                                    $retValue = $form_id;
                                } else {
                                    $message .= __("Failed to create new Form!<br/>", "tdomf");
                                }
                            }
                        }
                    }
                }
            }
        }
    }
    // Warnings
    $message .= tdomf_get_error_messages(false);
    if (!empty($message)) {
        ?>
   <div id="message" class="updated fade"><p><?php 
        echo $message;
        ?>
</p></div>
   <?php 
    }
    return $retValue;
}