pollpress_controller('options-general.php', 'PollPress', 'pollpress_view_options.php'); add_option($this->option_key, $this->get_default_options()); } function dispatch() { if ( isset($_POST['Submit']) ) { check_admin_referer('pollpress-update-options'); $options = get_option($this->option_key); $options[$this->bar_color_key] = $_POST['bar_color']; update_option($this->option_key, $options); $_GET['message'] = 2; } else if ( isset($_POST['delete_all']) && current_user_can('edit_posts') ) { check_admin_referer('pollpress-update-options'); // Delete them all $factory = new pollpress_poll_factory(); $polls = $factory->get_all_polls(); if ( $polls ) { foreach ( $polls as $poll ) $poll->destroy(); } $_GET['message'] = 1; } } function get_bar_color() { $options = get_option($this->option_key); return $options[$this->bar_color_key]; } function get_default_options() { $defaults = array(); $defaults[$this->bar_color_key] = '#0000FF'; $defaults[$this->pages_key] = array(); return $defaults; } function set_page($page_name, $page_id) { $options = get_option($this->option_key); $pages = $options[$this->pages_key]; $pages[$page_name] = $page_id; $options[$this->pages_key] = $pages; update_option($this->option_key, $options); } function get_page($page_name) { $options = get_option($this->option_key); $pages = $options[$this->pages_key]; return $pages[$page_name]; } function remove_page($page_name) { $options = get_option($this->option_key); $pages = $options[$this->pages_key]; unset($pages[$page_name]); $options[$this->pages_key] = $pages; update_option($this->option_key, $options); } } ?>