2 # -*- coding: utf-8 -*-
12 JOBS_DIR = '/tmp/jobs'
14 d = cgi.parse_qs(os.environ.get('QUERY_STRING', ''))
17 print 'Content-type: text/html\n'
18 print open('static.html').read()
22 print 'Content-type: text/plain\n'
24 if d.get('cmd') == ['new']:
26 date_val = d.get('date_val')[0]
27 start_val = d.get('start_val')[0]
28 end_val = d.get('end_val')[0]
33 start_time = '%s %s' % (date_val, start_val)
34 end_time = '%s %s' % (date_val, end_val)
36 time.strptime(start_time, '%d/%m/%Y %H:%M')
38 time.strptime(start_time, '%Y-%m-%d %H:%M')
40 time.strptime(end_time, '%d/%m/%Y %H:%M')
42 time.strptime(end_time, '%Y-%m-%d %H:%M')
44 job_number = md5.md5(str(random.random())).hexdigest()
45 job_filename = os.path.join(JOBS_DIR, job_number)
46 file(job_filename, 'w').write(
47 'start: %s %s %s' % (date_val, start_val, end_val))
48 os.chmod(job_filename, 0666)
49 print 'ok:' + job_number
52 print 'valeur manquante'
55 if d.get('cmd') == ['status']:
56 job_number = d.get('job')[0]
57 job_filename = os.path.join(JOBS_DIR, job_number)
58 if not os.path.exists(job_filename):
59 print 'error (missing job definition)'
61 fd = open(job_filename)
63 secondline = fd.readline()
64 first_word = cmd.split(':', 1)[0]
67 elif first_word == 'start':
68 print 'commande enregistrée, traitement dans une petite minute ...'
72 if d.get('cmd') == ['list']:
73 filenames = [os.path.join(os.getcwd(), x) for x in os.listdir(os.getcwd()) if \
74 x.endswith('.ogg') or x.endswith('.wav')]
76 return cmp(os.stat(x)[stat.ST_CTIME], os.stat(y)[stat.ST_CTIME])
77 filenames.sort(cmp_stat)
81 print os.path.basename(x)