source: stamper/bin/stamps@ 29:4a51239749c4

Last change on this file since 29:4a51239749c4 was 29:4a51239749c4, checked in by Borja Lopez <borja@…>, 10 years ago

Allow the use of date-time filters without giving a customer.

  • Property exe set to *
File size: 1.4 KB
Line 
1#!/usr/bin/env python
2
3import argparse
4from stamper import Stamper
5
6
7if __name__ == '__main__':
8
9 parser = argparse.ArgumentParser(
10 description='stamps: show recorded times information')
11 parser.add_argument('customer', action="store", nargs='?',
12 help='Show times only for this customer')
13 parser.add_argument('filter', action="store", nargs='?',
14 help='Filter the times by date range')
15 parser.add_argument('-v', '--verbose', action="store_true",
16 help='Include detailed times information')
17 parser.add_argument('-s', '--sum', action="store_true",
18 help='Include sum of times')
19 parser.add_argument('-g', '--graph', action="store_true",
20 help='Generate a SVG graph')
21 parser.add_argument('-t', '--timeline', action="store_true",
22 help='Show a timeline of recorded times')
23
24 args = parser.parse_args()
25
26 s = Stamper()
27 s.load_stamps()
28
29 # Set proper arguments if they have passed a date-based filter without
30 # a customer
31 if args.customer not in s.customers and not args.filter:
32 args.filter = args.customer
33 args.customer = None
34
35 # Call the proper methods, based on the given parameters
36 if args.timeline:
37 s.timeline()
38 else:
39 s.show_stamps(args.customer, args.filter, args.verbose, args.sum,
40 args.graph)
Note: See TracBrowser for help on using the repository browser.