Commit c8b0b264 authored by dave%intrec.com's avatar dave%intrec.com

Fix for bug 66058: dates in Created and Changed date columns in buglists are now…

Fix for bug 66058: dates in Created and Changed date columns in buglists are now in context with how old the bug is. within the last 18 hours: time only (12:24:34) within the last 6 days: weekday and time (Fri 12:24) within the last 100 days: month and day (01-19) older than 100 days: previous behaviour (2001-01-19)
parent 7f41c9df
...@@ -785,9 +785,9 @@ sub DefCol { ...@@ -785,9 +785,9 @@ sub DefCol {
$::needquote{$name} = $q; $::needquote{$name} = $q;
} }
DefCol("opendate", "date_format(bugs.creation_ts,'%Y-%m-%d')", "Opened", DefCol("opendate", "unix_timestamp(bugs.creation_ts)", "Opened",
"bugs.creation_ts"); "bugs.creation_ts");
DefCol("changeddate", "date_format(bugs.delta_ts,'%Y-%m-%d')", "Changed", DefCol("changeddate", "unix_timestamp(bugs.delta_ts)", "Changed",
"bugs.delta_ts"); "bugs.delta_ts");
DefCol("severity", "substring(bugs.bug_severity, 1, 3)", "Sev", DefCol("severity", "substring(bugs.bug_severity, 1, 3)", "Sev",
"bugs.bug_severity"); "bugs.bug_severity");
...@@ -1040,6 +1040,8 @@ for (my $colcount = 0 ; $colcount < @collist ; $colcount++) { ...@@ -1040,6 +1040,8 @@ for (my $colcount = 0 ; $colcount < @collist ; $colcount++) {
} }
} }
my @weekday= qw( Sun Mon Tue Wed Thu Fri Sat );
while (@row = FetchSQLData()) { while (@row = FetchSQLData()) {
my $bug_id = shift @row; my $bug_id = shift @row;
my $g = shift @row; # Bug's group set. my $g = shift @row; # Bug's group set.
...@@ -1099,6 +1101,18 @@ while (@row = FetchSQLData()) { ...@@ -1099,6 +1101,18 @@ while (@row = FetchSQLData()) {
} }
if ($c eq "owner") { if ($c eq "owner") {
$ownerhash{$value} = 1; $ownerhash{$value} = 1;
}elsif( $c eq 'changeddate' or $c eq 'opendate' ) {
my $age= time() - $value;
my ($s,$m,$h,$d,$mo,$y,$wd)= localtime $value;
if( $age < 18*60*60 ) {
$value= sprintf "%02d:%02d:%02d", $h,$m,$s;
}elsif( $age < 6*24*60*60 ) {
$value= sprintf "%s %02d:%02d", $weekday[$wd],$h,$m;
}elsif( $age < 100*24*60*60 ) {
$value= sprintf "%02d-%02d", $mo+1,$d;
}else {
$value= sprintf "%04d-%02d-%02d", 1900+$y,$mo+1,$d;
}
} }
if ($::needquote{$c} || $::needquote{$c} == 5) { if ($::needquote{$c} || $::needquote{$c} == 5) {
$value = html_quote($value); $value = html_quote($value);
......
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