/** * return the bug filter parameters for the specified user * * @param integer $p_user_id A valid user identifier. * @param integer $p_project_id A valid project identifier. * @return array The user filter, or default filter if not valid. */ function user_get_bug_filter($p_user_id, $p_project_id = null) { if (null === $p_project_id) { $t_project_id = helper_get_current_project(); } else { $t_project_id = $p_project_id; } $t_view_all_cookie_id = filter_db_get_project_current($t_project_id, $p_user_id); $t_view_all_cookie = filter_db_get_filter($t_view_all_cookie_id, $p_user_id); $t_cookie_detail = explode('#', $t_view_all_cookie, 2); if (!isset($t_cookie_detail[1])) { return filter_get_default(); } $t_filter = json_decode($t_cookie_detail[1], true); $t_filter = filter_ensure_valid_filter($t_filter); return $t_filter; }
# for proxies that clear out HTTP_REFERER if (!is_blank($c_ref)) { $t_redirect_url = $c_ref; } else { if (!isset($_SERVER['HTTP_REFERER']) || is_blank($_SERVER['HTTP_REFERER'])) { $t_redirect_url = config_get('default_home_page'); } else { $t_home_page = config_get('default_home_page'); # Check that referrer matches our address after squashing case (case insensitive compare) $t_path = rtrim(config_get('path'), '/'); if (preg_match('@^(' . $t_path . ')/(?:/*([^\\?#]*))(.*)?\\$@', $_SERVER['HTTP_REFERER'], $t_matches)) { $t_referrer_page = $t_matches[2]; $t_param = $t_matches[3]; # if view_all_bug_page, pass on filter if (strcasecmp('view_all_bug_page.php', $t_referrer_page) == 0) { $t_source_filter_id = filter_db_get_project_current($f_project_id); $t_redirect_url = 'view_all_set.php?type=4'; if ($t_source_filter_id !== null) { $t_redirect_url = 'view_all_set.php?type=3&source_query_id=' . $t_source_filter_id; } } else { if (stripos($t_referrer_page, '_page.php') !== false) { switch ($t_referrer_page) { case 'bug_view_page.php': case 'bug_view_advanced_page.php': case 'bug_update_page.php': case 'bug_change_status_page.php': $t_path = $t_home_page; break; default: $t_path = $t_referrer_page . $t_param;