ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/repos/FreeBSDAdmin/Reminder/creditcards.py
(Generate patch)

Comparing:
FreeBSDAdmin/Reminder/creditcard.py (file contents), Revision 1178 by douglas, 2009-05-17T14:30:08-07:00 vs.
FreeBSDAdmin/Reminder/creditcards.py (file contents), Revision 1181 by douglas, 2009-05-21T01:58:14-07:00

# Line 1 | Line 1
1 < #!/usr/local/bin/python
2 < # Credit Card
1 > # Credit Cards
2   #
3   # Douglas Thrift
4   #
5   # $Id$
6  
7   import atom
9 import common
8   from datetime import date, timedelta
9   import gdata.calendar
12 import gdata.calendar.service
10  
11 < if __name__ == '__main__':
12 <        parser = common.OptionParser()
16 <        options = parser.parse_args()[0]
11 > def main(calendar, config, banks, debug):
12 >        reminder = gdata.calendar.Reminder(minutes = 10)
13  
14 <        config, banks = common.config(parser, options, '.creditcard')
15 <        service = gdata.calendar.service.CalendarService()
14 >        for module in config.getlist('banks'):
15 >                bank = banks.bank(module)
16  
17 <        service.ClientLogin(config.get('google', 'username'), common.decode(config.get('google', 'password')))
18 <
23 <        for bank, accounts in banks.iteritems():
24 <                bank = common.bank(bank, options, config)
25 <
26 <                for account in accounts:
27 <                        name, account = account.rsplit(' ', 1)
28 <                        due = bank.due(account)
17 >                for name, number in bank.accounts():
18 >                        due = bank.due(number)
19                          today = date.today()
20  
21                          if due <= today:
# Line 34 | Line 24 | if __name__ == '__main__':
24                          title = '%s Due' % name
25                          query = gdata.calendar.service.CalendarEventQuery('default', 'private', 'full', '"%s"' % title)
26                          query.start_min = str(today)
27 <                        events = service.CalendarQuery(query).entry
27 >                        events = calendar.CalendarQuery(query).entry
28  
29 <                        if events == []:
29 >                        if not events:
30                                  event = gdata.calendar.CalendarEventEntry()
31                                  event.title = atom.Title(text = title)
32                                  event.transparency = gdata.calendar.Transparency()
# Line 45 | Line 35 | if __name__ == '__main__':
35                                  event.visibility.value = 'PRIVATE'
36  
37                                  event.when.append(gdata.calendar.When(start_time = str(due), end_time = str(due + timedelta(1))))
38 <                                event.when[0].reminder.append(gdata.calendar.Reminder(minutes = 10))
39 <
50 <                                service.InsertEvent(event, '/calendar/feeds/default/private/full')
38 >                                event.when[0].reminder.append(reminder)
39 >                                calendar.InsertEvent(event, '/calendar/feeds/default/private/full')
40                          else:
41                                  for index, event in enumerate(filter(lambda event: event.title.text == title, events)):
42                                          if index == 0:
# Line 56 | Line 45 | if __name__ == '__main__':
45                                                  event.when[0].start_time = str(due)
46                                                  event.when[0].end_time = str(due + timedelta(1))
47  
48 <                                                if event.when[0].reminder != []:
49 <                                                        event.when[0].reminder[0].minutes = str(10)
48 >                                                if event.when[0].reminder:
49 >                                                        event.when[0].reminder[0] = reminder
50                                                  else:
51 <                                                        event.when[0].reminder.append(gdata.calendar.Reminder(minutes = 10))
51 >                                                        event.when[0].reminder.append(reminder)
52  
53 <                                                service.UpdateEvent(event.GetEditLink().href, event)
53 >                                                calendar.UpdateEvent(event.GetEditLink().href, event)
54                                          else:
55 <                                                service.DeleteEvent(event.GetEditLink().href)
55 >                                                calendar.DeleteEvent(event.GetEditLink().href)

Comparing:
FreeBSDAdmin/Reminder/creditcard.py (property svn:executable), Revision 1178 by douglas, 2009-05-17T14:30:08-07:00 vs.
FreeBSDAdmin/Reminder/creditcards.py (property svn:executable), Revision 1181 by douglas, 2009-05-21T01:58:14-07:00

# Line 1 | Line 0
1 *

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines