prefix . "authordiscuss"; $wpdb->delete( $table_name, array( 'userid' => $userid ) ); auth_discuss_query(1); } // //////////////////////////////////// // //////// CHECK IF UPDATE ///////// // //////////////////////////////////// function authordiscussion_update_db_check() { global $author_discussion_version; auth_discuss_query(1); if (get_option( 'author_discussion_version' ) != $author_discussion_version) { authordiscussion_install(); } } add_action( 'plugins_loaded', 'authordiscussion_update_db_check' ); // //////////////////////////////////// // //////// DASHBOARD MENUS ///////// // //////////////////////////////////// add_action( 'admin_menu', 'register_author_discussion_menu' ); function register_author_discussion_menu(){ auth_discuss_query(1); $menu_capability = get_option('author_discussion_capability'); add_menu_page( 'Author Discussion', 'Discussion', $menu_capability, 'author_discuss', 'author_discuss_build_page', plugins_url( 'author-discussion/images/icon.png' ), 999 ); //create submenu items add_submenu_page( 'author_discuss', 'Author Discussion', 'Author Discussion', $menu_capability, 'author_discuss' ); add_submenu_page( 'author_discuss', 'Author Discussion Settings', 'Settings', 'manage_options', 'author_discuss_settings', 'author_discuss_settings_page' ); } // Add settings link on plugin page $plugin = plugin_basename(__FILE__); add_filter("plugin_action_links_$plugin", 'author_discussion_settings_link' ); function author_discussion_settings_link($links) { $settings_link = 'Settings'; array_unshift($links, $settings_link); return $links; } // ///////////////////////////////////// // //////// DEFINE FUNCTIONS ///////// // ///////////////////////////////////// // build messages function auth_discuss_get_messages(){ auth_discuss_query(3); $authdiscuss_cap = get_option('author_discussion_capability'); $page_message_limit = get_option('author_discussion_msg_limit'); global $wpdb; $table_name = $wpdb->prefix . "authordiscuss"; $messages = "SELECT * FROM $table_name ORDER BY id DESC LIMIT $page_message_limit"; $messages = $wpdb->get_results($messages); foreach($messages as $row){ //get author info here $auth_name = get_userdata($row->userid); $auth_name = $auth_name->display_name; $time = strtotime($row->time); $time = date('M j, Y g:i A', $time); $message = stripslashes($row->text); $message = apply_filters('the_content', $message); echo '
'; // show delete link echo '
' . $auth_name . '
' . $time; if($row->userid == get_current_user_id()){ echo ' [X]'; } echo '
'; echo $message; echo '
'; } } // retrieve capability titles function auth_discuss_capability(){ auth_discuss_query(1); $authdiscuss_cap = get_option('author_discussion_capability'); if($authdiscuss_cap == 'manage_options'){ $authdiscuss_cap = 'Administrator'; }elseif($authdiscuss_cap == 'moderate_comments'){ $authdiscuss_cap = 'Editor and Higher'; }elseif($authdiscuss_cap == 'publish_posts'){ $authdiscuss_cap = 'Author and Higher'; } return $authdiscuss_cap; } // build rightcol function auth_discuss_rightcol(){ echo '

Welcome to the Author Discussion page. This is a public page for anyone granted access. Right now ' . auth_discuss_capability() . ' is granted access to this system.

What\'s new in 0.2.0?

There are future plans to do the following:

These will come as soon as possible. Thanks for your patience!

'; } // build footer function auth_discuss_footer(){ global $author_discussion_version; global $author_discussion_query_count; if($author_discussion_query_count > 1) $query = 'queries have'; else $query = 'query has'; echo ''; } // build input form function auth_discuss_form(){ auth_discuss_query(1); // settings $editor_settings = array( 'media_buttons' => false, 'textarea_rows' => 6, 'tinymce' => array( 'theme_advanced_buttons1' => 'bold,italic,underline,|,' . 'bullist,blockquote,|,justifyleft,justifycenter' . ',justifyright,justifyfull,|,link,unlink', 'theme_advanced_buttons2' => ''), 'quicktags' => false ); // build form echo '
'; wp_editor('','author_message', $editor_settings); submit_button('Send Message'); echo '
'; } function auth_discuss_purge_views(){ auth_discuss_query(1); global $wpdb; $query = $wpdb->prepare("UPDATE `wp_mainblogusermeta` SET `meta_value`=%d WHERE `meta_key`= %s", 0, 'author_discussion_unread_posts' ); $wpdb->query($query); }