From 2966b6c086d892599d3640f3f91b0bc794986e82 Mon Sep 17 00:00:00 2001 From: "terry%mozilla.org" <> Date: Mon, 31 Jan 2000 03:21:42 +0000 Subject: Allow searching of attachment stuff using boolean charts. --- buglist.cgi | 29 ++++++++++++++++++++++++++++- checksetup.pl | 4 ++++ 2 files changed, 32 insertions(+), 1 deletion(-) diff --git a/buglist.cgi b/buglist.cgi index 3bc6a036d..4c0505bc3 100755 --- a/buglist.cgi +++ b/buglist.cgi @@ -368,6 +368,34 @@ sub GenerateSQL { push(@wherepart, "$table.bug_id = bugs.bug_id"); $f = "$table.thetext"; }, + "^attachments\..*," => sub { + my $table = "attachments_$chartid"; + push(@supptables, "LEFT JOIN attachments $table ON bugs.bug_id = $table.bug_id"); + $f =~ m/^attachments\.(.*)$/; + my $field = $1; + if ($t eq "changedby") { + $v = DBNameToIdAndCheck($v); + $q = SqlQuote($v); + $field = "submitter_id"; + $t = "equals"; + } elsif ($t eq "changedbefore") { + $v = SqlifyDate($v); + $q = SqlQuote($v); + $field = "creation_ts"; + $t = "lessthan"; + } elsif ($t eq "changedafter") { + $v = SqlifyDate($v); + $q = SqlQuote($v); + $field = "creation_ts"; + $t = "greaterthan"; + } + if ($field eq "ispatch") { + if ($v ne "0" && $v ne "1") { + return Error("The only legal values for the 'Attachment is patch' field is 0 or 1."); + } + } + $f = "$table.$field"; + }, "^changedin," => sub { $f = "(to_days(now()) - to_days(bugs.delta_ts))"; }, @@ -826,7 +854,6 @@ query. You will have to start over at the query page. exit; } my @list = split(/:/, $::COOKIE{'BUGLIST'}); - $::MFORM{'bug_id'} = \@list; $::FORM{'bug_id'} = join(',', @list); if (!$::FORM{'order'}) { $::FORM{'order'} = 'reuse last sort'; diff --git a/checksetup.pl b/checksetup.pl index 8bd430e42..05bcf31ac 100755 --- a/checksetup.pl +++ b/checksetup.pl @@ -898,6 +898,10 @@ AddFDef("qa_contact", "QAContact", 0); AddFDef("cc", "CC", 0); AddFDef("dependson", "BugsThisDependsOn", 0); AddFDef("blocked", "OtherBugsDependingOnThis", 0); +AddFDef("attachments.description", "Attachment description", 0); +AddFDef("attachments.thedata", "Attachment data", 0); +AddFDef("attachments.mimetype", "Attachment mime type", 0); +AddFDef("attachments.ispatch", "Attachment is patch", 0); AddFDef("target_milestone", "Target Milestone", 0); AddFDef("delta_ts", "Last changed date", 0); AddFDef("(to_days(now()) - to_days(bugs.delta_ts))", "Days since bug changed", -- cgit v1.2.3-24-g4f1b