Commit 90974879 authored by bugreport%peshkin.net's avatar bugreport%peshkin.net

Bug 244927: Add search on time owner has left the bug idle

r=jouni a=myk
parent 1eafc024
......@@ -703,6 +703,42 @@ sub init {
push(@wherepart, "$table.dependson = bugs.bug_id");
},
"^owner_idle_time,(greaterthan|lessthan)" => sub {
my $table = "idle_" . $chartid;
$v =~ /^(\d+)\s*([hHdDwWmMyY])?$/;
my $quantity = $1;
my $unit = lc $2;
my $unitinterval = 'DAY';
if ($unit eq 'h') {
$unitinterval = 'HOUR';
} elsif ($unit eq 'w') {
$unitinterval = ' * 7 DAY';
} elsif ($unit eq 'm') {
$unitinterval = 'MONTH';
} elsif ($unit eq 'y') {
$unitinterval = 'YEAR';
}
my $cutoff = "DATE_SUB(NOW(),
INTERVAL $quantity $unitinterval)";
my $assigned_fieldid = &::GetFieldID('assigned_to');
push(@supptables, "LEFT JOIN longdescs comment_$table " .
"ON comment_$table.who = bugs.assigned_to " .
"AND comment_$table.bug_id = bugs.bug_id " .
"AND comment_$table.bug_when > $cutoff");
push(@supptables, "LEFT JOIN bugs_activity activity_$table " .
"ON (activity_$table.who = bugs.assigned_to " .
"OR activity_$table.fieldid = $assigned_fieldid) " .
"AND activity_$table.bug_id = bugs.bug_id " .
"AND activity_$table.bug_when > $cutoff");
if ($t =~ /greater/) {
push(@wherepart, "(comment_$table.who IS NULL " .
"AND activity_$table.who IS NULL)");
} else {
push(@wherepart, "(comment_$table.who IS NOT NULL " .
"OR activity_$table.who IS NOT NULL)");
}
$term = "0=0";
},
",equals" => sub {
$term = "$ff = $q";
......
......@@ -3897,6 +3897,8 @@ if (!$series_exists) {
}
}
AddFDef("owner_idle_time", "Time Since Owner Touched", 0);
# If you had to change the --TABLE-- definition in any way, then add your
# differential change code *** A B O V E *** this comment.
#
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment