Commit f1973062 authored by Max Kanat-Alexander's avatar Max Kanat-Alexander

Bug 600495: Make the "chfieldto" query parameter work all by itself, again.

r=mkanat, a=mkanat (module owner)
parent af2f8916
...@@ -1309,14 +1309,20 @@ sub _special_parse_chfield { ...@@ -1309,14 +1309,20 @@ sub _special_parse_chfield {
# if there is a "from" date specified. It doesn't conflict with # if there is a "from" date specified. It doesn't conflict with
# searching [Bug creation], because a bug's delta_ts is set to # searching [Bug creation], because a bug's delta_ts is set to
# its creation_ts when it is created. So this just gives the # its creation_ts when it is created. So this just gives the
# database an additional index to possibly choose. # database an additional index to possibly choose, on a table that
# # is smaller than bugs_activity.
# It's not safe to do it for "to" dates, though--"chfieldto" means
# "a field that changed before this date", and delta_ts could be either
# later or earlier than that.
if ($date_from ne '') { if ($date_from ne '') {
push(@charts, ['delta_ts', 'greaterthaneq', $date_from]); push(@charts, ['delta_ts', 'greaterthaneq', $date_from]);
} }
# It's not normally safe to do it for "to" dates, though--"chfieldto" means
# "a field that changed before this date", and delta_ts could be either
# later or earlier than that, if we're searching for the time that a field
# changed. However, chfieldto all by itself, without any chfieldvalue or
# chfield, means "just search delta_ts", and so we still want that to
# work.
if ($date_to ne '' and !@fields and $value_to eq '') {
push(@charts, ['delta_ts', 'lessthaneq', $date_to]);
}
# Basically, we construct the chart like: # Basically, we construct the chart like:
# #
......
...@@ -74,6 +74,13 @@ sub search_params { ...@@ -74,6 +74,13 @@ sub search_params {
return { chfield => $field, $ch_param => $value }; return { chfield => $field, $ch_param => $value };
} }
if ($field eq 'delta_ts' and $operator eq 'greaterthaneq') {
return { chfieldfrom => $value };
}
if ($field eq 'delta_ts' and $operator eq 'lessthaneq') {
return { chfieldto => $value };
}
if ($field eq 'deadline' and $operator eq 'greaterthaneq') { if ($field eq 'deadline' and $operator eq 'greaterthaneq') {
return { deadlinefrom => $value }; return { deadlinefrom => $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