function admin_handle_other_options($info_message = '') { if (isset($_POST['SubmitOptions'])) { if (function_exists('current_user_can') && !current_user_can('manage_options')) { die(__('Cheatin’ uh?')); } @SimpleFileCache::clearCache(); if (isset($_POST['ga_forget_pass'])) { delete_option('gad_login_pass'); } if (isset($_POST['ga_forget_all'])) { delete_option('gad_oauth_token'); delete_option('gad_oauth_secret'); delete_option('gad_account_id'); delete_option('gad_display_level'); delete_option('gad_cache_timeout'); delete_option('gad_goal_one'); delete_option('gad_goal_two'); delete_option('gad_goal_three'); delete_option('gad_goal_four'); delete_option('gad_login_email'); delete_option('gad_login_pass'); delete_option('gad_auth_token'); delete_option('gad_disable_post_stats'); $this->admin_plugin_options('Everything Reset'); return; } delete_option('gad_account_id'); add_option('gad_account_id', $_POST['ga_account_id']); if (isset($_POST['ga_forget_auth'])) { delete_option('gad_oauth_token'); delete_option('gad_oauth_secret'); delete_option('gad_auth_token'); $this->admin_plugin_options('Auth Reset'); return; } if (isset($_POST['ga_display_level'])) { delete_option('gad_display_level'); if ($_POST['ga_display_level'] != '') { add_option('gad_display_level', $_POST['ga_display_level']); } } if (isset($_POST['ga_disable_post_stats'])) { add_option('gad_disable_post_stats', 'true'); } else { delete_option('gad_disable_post_stats'); } if (isset($_POST['ga_cache_timeout'])) { delete_option('gad_cache_timeout'); if ($_POST['ga_cache_timeout'] != '') { add_option('gad_cache_timeout', $_POST['ga_cache_timeout']); } } delete_option('gad_goal_one'); delete_option('gad_goal_two'); delete_option('gad_goal_three'); delete_option('gad_goal_four'); if (isset($_POST['ga_goal_one'])) { if ($_POST['ga_goal_one'] != '') { add_option('gad_goal_one', $_POST['ga_goal_one']); } } if (isset($_POST['ga_goal_two'])) { if ($_POST['ga_goal_two'] != '') { add_option('gad_goal_two', $_POST['ga_goal_two']); } } if (isset($_POST['ga_goal_three'])) { if ($_POST['ga_goal_three'] != '') { add_option('gad_goal_three', $_POST['ga_goal_three']); } } if (isset($_POST['ga_goal_four'])) { if ($_POST['ga_goal_four'] != '') { add_option('gad_goal_four', $_POST['ga_goal_four']); } } $info_message = 'Options Saved'; } if (get_option('gad_auth_token') == 'gad_see_oauth') { $ga = new GALib('oauth', NULL, get_option('gad_oauth_token'), get_option('gad_oauth_secret'), '', get_option('gad_cache_timeout') !== false ? get_option('gad_cache_timeout') : 60); } else { $ga = new GALib('client', get_option('gad_auth_token'), NULL, NULL, '', get_option('gad_cache_timeout') !== false ? get_option('gad_cache_timeout') : 60); } $account_hash = $ga->account_query(); if ($ga->isError()) { if ($ga->isAuthError()) { delete_option('gad_auth_token'); // this is removed so login will happen again $this->admin_plugin_options(); return; } else { $ui = new GADAdminOptionsUI(); $ui->error_message = 'Error gathering analytics data from Google: ' . strip_tags($ga->getErrorMessage()); $ui->display_admin_halting_error(); return; } } $ui = new GADAdminOptionsUI(); $ui->info_message = $info_message; $ui->error_message = ''; $ui->display_admin_handle_other_options($account_hash); }