Use UPCASE for select keywords
[omc-tools.git] / approved
1 #! /usr/bin/env python
2 """approved [flags] args...
3
4 Flags:
5     -c text...  Comment to use
6     -r          Reject not approve
7     -h          This help
8     -v          List emails as processed
9
10 Args is a list of email addresses.
11 """
12
13 import datetime, mysql.connector, os, re, subprocess, sys
14 import string, random
15 import getopt
16
17 dbconfig = {
18         'user': 'license',
19         'password': open('rwpass.txt').read().strip(),
20         'database': 'license'
21         }
22 conn = mysql.connector.connect(**dbconfig)
23 cursor = conn.cursor()
24
25 # Parse JCL
26 comment = 'From CLI';
27 reply = 'y'
28 verbose = 0
29 opts, args = getopt.getopt(sys.argv[1:], "c:hrv")
30 for o,a in opts:
31     if o == '-c':
32         comment = a
33     elif o == '-r':
34         reply = 'n'
35     elif o == '-v':
36         verbose = 1
37     else:
38         print __doc__
39         raise SystemExit
40
41 q = 'SELECT uid FROM users WHERE email = %s'
42 update = ("UPDATE users SET date_replied=%s, reply=%s, comment=%s"
43      " WHERE uid=%s")
44 today = datetime.datetime.today().date()
45
46 for email in args:
47     cursor.execute(q, (email,))
48     for uid in cursor:
49         cursor.execute(update, (today, reply, comment, uid[0]))
50         conn.commit()
51         if verbose:
52             print email, uid[0]