From 16a4553913f69fa9da5e6c816c6c747514630aa2 Mon Sep 17 00:00:00 2001 From: "jake%bugzilla.org" <> Date: Thu, 23 Dec 2004 17:54:18 +0000 Subject: Bug 274397 - Editing a saved search should now work even after clicking "Show List" from a bug. Patch by Colin S. Ogilvie r=wurblzap, a=justdave --- buglist.cgi | 19 ++++++++++--------- userprefs.cgi | 17 ++++++++++++++++- 2 files changed, 26 insertions(+), 10 deletions(-) diff --git a/buglist.cgi b/buglist.cgi index 3379aa70a..bdda404a3 100755 --- a/buglist.cgi +++ b/buglist.cgi @@ -132,10 +132,11 @@ if ($::FORM{'regetlastlist'}) { $cgi->cookie('BUGLIST') || ThrowUserError("missing_cookie"); $order = "reuse last sort" unless $order; - + my $bug_id = $cgi->cookie('BUGLIST'); + $bug_id =~ s/:/,/g; # set up the params for this new query $params = new Bugzilla::CGI({ - bug_id => [split(/:/, $cgi->cookie('BUGLIST'))], + bug_id => $bug_id, order => $order, }); } @@ -309,13 +310,6 @@ if ($::FORM{'cmdtype'} eq "dorem") { $params = new Bugzilla::CGI($::buffer); $order = $params->param('order') || $order; - # backward compatibility hack: if the saved query doesn't say which - # form was used to create it, assume it was on the advanced query - # form - see bug 252295 - if (!$params->param('query_format')) { - $params->param('query_format', 'advanced'); - $::buffer = $params->query_string; - } } elsif ($::FORM{'remaction'} eq "runseries") { $::buffer = LookupSeries($::FORM{"series_id"}); @@ -418,6 +412,13 @@ elsif (($::FORM{'cmdtype'} eq "doit") && $::FORM{'remtype'}) { } } +# backward compatibility hack: if the saved query doesn't say which +# form was used to create it, assume it was on the advanced query +# form - see bug 252295 +if (!$params->param('query_format')) { + $params->param('query_format', 'advanced'); + $::buffer = $params->query_string; +} ################################################################################ # Column Definition diff --git a/userprefs.cgi b/userprefs.cgi index f71fdec02..f8de9915d 100755 --- a/userprefs.cgi +++ b/userprefs.cgi @@ -298,8 +298,23 @@ sub DoPermissions { sub DoSavedSearches() { + # 2004-12-13 - colin.ogilvie@gmail.com, bug 274397 + # Need to work around the possibly missing query_format=advanced $vars->{'user'} = Bugzilla->user; - $vars->{'queries'} = Bugzilla->user->queries; + my @queries = @{Bugzilla->user->queries}; + my @newqueries; + foreach my $q (@queries) { + if ($q->{'query'} !~ /query_format=(advanced|specific)/) { + if ($q->{'query'} =~ /query_format=&/) { + $q->{'query'} =~ s/query_format=&/query_format=advanced&/; + } + else { + $q->{'query'} .= '&query_format=advanced'; + } + } + push @newqueries, $q; + } + $vars->{'queries'} = \@newqueries; } sub SaveSavedSearches() { -- cgit v1.2.3-24-g4f1b