зеркало из https://github.com/mozilla/pjs.git
Bug 418068: No way to search for "date of last comment" before/after a given date - Patch by Jesse Clark <jjclark1982@gmail.com> r/a=mkanat
This commit is contained in:
Родитель
41b120c0c4
Коммит
2feb45953c
|
@ -458,8 +458,8 @@ sub init {
|
||||||
"^cc,(?:notequals),(%\\w+%)" => \&_cc_notequals,
|
"^cc,(?:notequals),(%\\w+%)" => \&_cc_notequals,
|
||||||
"^cc,(?!changed)" => \&_cc_nonchanged,
|
"^cc,(?!changed)" => \&_cc_nonchanged,
|
||||||
"^long_?desc,changedby" => \&_long_desc_changedby,
|
"^long_?desc,changedby" => \&_long_desc_changedby,
|
||||||
"^long_?desc,changedbefore" => \&_long_desc_changedbefore,
|
"^long_?desc,changedbefore" => \&_long_desc_changedbefore_after,
|
||||||
"^long_?desc,changedafter" => \&_long_desc_changedafter,
|
"^long_?desc,changedafter" => \&_long_desc_changedbefore_after,
|
||||||
"^content,matches" => \&_content_matches,
|
"^content,matches" => \&_content_matches,
|
||||||
"^content," => sub { ThrowUserError("search_content_without_matches"); },
|
"^content," => sub { ThrowUserError("search_content_without_matches"); },
|
||||||
"^(?:deadline|creation_ts|delta_ts),(?:lessthan|greaterthan|equals|notequals),(?:-|\\+)?(?:\\d+)(?:[dDwWmMyY])\$" => \&_timestamp_compare,
|
"^(?:deadline|creation_ts|delta_ts),(?:lessthan|greaterthan|equals|notequals),(?:-|\\+)?(?:\\d+)(?:[dDwWmMyY])\$" => \&_timestamp_compare,
|
||||||
|
@ -468,8 +468,8 @@ sub init {
|
||||||
"^long_?desc," => \&_long_desc,
|
"^long_?desc," => \&_long_desc,
|
||||||
"^longdescs\.isprivate," => \&_longdescs_isprivate,
|
"^longdescs\.isprivate," => \&_longdescs_isprivate,
|
||||||
"^work_time,changedby" => \&_work_time_changedby,
|
"^work_time,changedby" => \&_work_time_changedby,
|
||||||
"^work_time,changedbefore" => \&_work_time_changedbefore,
|
"^work_time,changedbefore" => \&_work_time_changedbefore_after,
|
||||||
"^work_time,changedafter" => \&_work_time_changedafter,
|
"^work_time,changedafter" => \&_work_time_changedbefore_after,
|
||||||
"^work_time," => \&_work_time,
|
"^work_time," => \&_work_time,
|
||||||
"^percentage_complete," => \&_percentage_complete,
|
"^percentage_complete," => \&_percentage_complete,
|
||||||
"^bug_group,(?!changed)" => \&_bug_group_nonchanged,
|
"^bug_group,(?!changed)" => \&_bug_group_nonchanged,
|
||||||
|
@ -1222,30 +1222,20 @@ sub _long_desc_changedby {
|
||||||
$$term = "$table.who = $id";
|
$$term = "$table.who = $id";
|
||||||
}
|
}
|
||||||
|
|
||||||
sub _long_desc_changedbefore {
|
sub _long_desc_changedbefore_after {
|
||||||
my $self = shift;
|
my $self = shift;
|
||||||
my %func_args = @_;
|
my %func_args = @_;
|
||||||
my ($chartid, $supptables, $term, $v) =
|
my ($chartid, $t, $v, $supptables, $term) =
|
||||||
@func_args{qw(chartid supptables term v)};
|
@func_args{qw(chartid v supptables term)};
|
||||||
my $dbh = Bugzilla->dbh;
|
my $dbh = Bugzilla->dbh;
|
||||||
|
|
||||||
|
my $operator = ($$t =~ /before/) ? '<' : '>';
|
||||||
my $table = "longdescs_$$chartid";
|
my $table = "longdescs_$$chartid";
|
||||||
push(@$supptables, "LEFT JOIN longdescs AS $table " .
|
push(@$supptables, "LEFT JOIN longdescs AS $table " .
|
||||||
"ON $table.bug_id = bugs.bug_id");
|
"ON $table.bug_id = bugs.bug_id " .
|
||||||
$$term = "$table.bug_when < " . $dbh->quote(SqlifyDate($$v));
|
"AND $table.bug_when $operator " .
|
||||||
}
|
$dbh->quote(SqlifyDate($$v)) );
|
||||||
|
$$term = "($table.bug_when IS NOT NULL)";
|
||||||
sub _long_desc_changedafter {
|
|
||||||
my $self = shift;
|
|
||||||
my %func_args = @_;
|
|
||||||
my ($chartid, $supptables, $term, $v) =
|
|
||||||
@func_args{qw(chartid supptables term v)};
|
|
||||||
my $dbh = Bugzilla->dbh;
|
|
||||||
|
|
||||||
my $table = "longdescs_$$chartid";
|
|
||||||
push(@$supptables, "LEFT JOIN longdescs AS $table " .
|
|
||||||
"ON $table.bug_id = bugs.bug_id");
|
|
||||||
$$term = "$table.bug_when > " . $dbh->quote(SqlifyDate($$v));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
sub _content_matches {
|
sub _content_matches {
|
||||||
|
@ -1429,32 +1419,21 @@ sub _work_time_changedby {
|
||||||
$$term .= ") AND ($table.work_time <> 0))";
|
$$term .= ") AND ($table.work_time <> 0))";
|
||||||
}
|
}
|
||||||
|
|
||||||
sub _work_time_changedbefore {
|
sub _work_time_changedbefore_after {
|
||||||
my $self = shift;
|
my $self = shift;
|
||||||
my %func_args = @_;
|
my %func_args = @_;
|
||||||
my ($chartid, $supptables, $v, $term) =
|
my ($chartid, $t, $v, $supptables, $term) =
|
||||||
@func_args{qw(chartid supptables v term)};
|
@func_args{qw(chartid v supptables term)};
|
||||||
my $dbh = Bugzilla->dbh;
|
|
||||||
|
|
||||||
my $table = "longdescs_$$chartid";
|
|
||||||
push(@$supptables, "LEFT JOIN longdescs AS $table " .
|
|
||||||
"ON $table.bug_id = bugs.bug_id");
|
|
||||||
$$term = "(($table.bug_when < " . $dbh->quote(SqlifyDate($$v));
|
|
||||||
$$term .= ") AND ($table.work_time <> 0))";
|
|
||||||
}
|
|
||||||
|
|
||||||
sub _work_time_changedafter {
|
|
||||||
my $self = shift;
|
|
||||||
my %func_args = @_;
|
|
||||||
my ($chartid, $supptables, $v, $term) =
|
|
||||||
@func_args{qw(chartid supptables v term)};
|
|
||||||
my $dbh = Bugzilla->dbh;
|
my $dbh = Bugzilla->dbh;
|
||||||
|
|
||||||
|
my $operator = ($$t =~ /before/) ? '<' : '>';
|
||||||
my $table = "longdescs_$$chartid";
|
my $table = "longdescs_$$chartid";
|
||||||
push(@$supptables, "LEFT JOIN longdescs AS $table " .
|
push(@$supptables, "LEFT JOIN longdescs AS $table " .
|
||||||
"ON $table.bug_id = bugs.bug_id");
|
"ON $table.bug_id = bugs.bug_id " .
|
||||||
$$term = "(($table.bug_when > " . $dbh->quote(SqlifyDate($$v));
|
"AND $table.work_time <> 0" .
|
||||||
$$term .= ") AND ($table.work_time <> 0))";
|
"AND $table.bug_when $operator " .
|
||||||
|
$dbh->quote(SqlifyDate($$v)) );
|
||||||
|
$$term = "($table.bug_when IS NOT NULL)";
|
||||||
}
|
}
|
||||||
|
|
||||||
sub _work_time {
|
sub _work_time {
|
||||||
|
|
Загрузка…
Ссылка в новой задаче