summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjake%bugzilla.org <>2004-12-23 18:54:18 +0100
committerjake%bugzilla.org <>2004-12-23 18:54:18 +0100
commit16a4553913f69fa9da5e6c816c6c747514630aa2 (patch)
treedf19248128ff481c4aa0a69ec119f72f735778c6
parent298360bc7d0412a97205558168652e6aeb8c7526 (diff)
downloadbugzilla-16a4553913f69fa9da5e6c816c6c747514630aa2.tar.gz
bugzilla-16a4553913f69fa9da5e6c816c6c747514630aa2.tar.xz
Bug 274397 - Editing a saved search should now work even after clicking "Show List" from a bug.
Patch by Colin S. Ogilvie <colin.ogilvie@gmail.com> r=wurblzap, a=justdave
-rwxr-xr-xbuglist.cgi19
-rwxr-xr-xuserprefs.cgi17
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() {