diff --git a/src/data.cpp b/src/data.cpp index 2a5fe405..0b185737 100644 --- a/src/data.cpp +++ b/src/data.cpp @@ -40,6 +40,7 @@ // ["from"] ["to"|"-" ] // ["from"] "for" // ["before"|"after" ] +// "ago" // Interval getFilter (const CLI& cli) { @@ -106,7 +107,7 @@ Interval getFilter (const CLI& cli) args[0] == "") { range.start = Datetime (start); - range.end = Datetime ("now"); + range.end = Datetime (); } // from @@ -115,7 +116,7 @@ Interval getFilter (const CLI& cli) args[1] == "") { range.start = Datetime (start); - range.end = Datetime ("now"); + range.end = Datetime (); } // to/- @@ -161,7 +162,7 @@ Interval getFilter (const CLI& cli) } // before - else if (args.size () == 3 && + else if (args.size () == 3 && args[0] == "" && args[1] == "before" && args[2] == "") @@ -171,7 +172,7 @@ Interval getFilter (const CLI& cli) } // after - else if (args.size () == 3 && + else if (args.size () == 3 && args[0] == "" && args[1] == "after" && args[2] == "") @@ -180,12 +181,21 @@ Interval getFilter (const CLI& cli) range.end = Datetime (start) + Duration (duration).toTime_t (); } + // ago + else if (args.size () == 2 && + args[0] == "" && + args[1] == "ago") + { + range.start = Datetime () - Duration (duration).toTime_t (); + range.end = Datetime (); + } + // else if (args.size () == 1 && args[0] == "") { - range.start = Datetime ("now") - Duration (duration).toTime_t (); - range.end = Datetime ("now"); + range.start = Datetime () - Duration (duration).toTime_t (); + range.end = Datetime (); } // Unrecognized date range construct.