You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

50 lines
1.1 KiB
Python

#!/usr/bin/env python
import cgi, jinja2, os, json, re
import cgitb; cgitb.enable()
from jinja2 import Template
# Directory => ITEMS list (all files with a timestamp name, grouped)
ff = os.listdir(".")
tpat = re.compile(r"^(\d\d\d\d)(\d\d)(\d\d)T(\d\d)(\d\d)(\d\d)Z")
items = {}
for f in ff:
base, ext = os.path.splitext(f)
ext = ext[1:]
m = tpat.match(f)
if m:
t = m.group(0)
if t not in items:
items[t] = {}
items[t][ext] = f
items = [items[key] for key in sorted(items, reverse=True)]
# # dump the data (debugging)
# print "Content-type: text/plain"
# print ""
# print json.dumps(items, indent=2)
# Output template with items
print "Content-type: text/html"
print ""
print Template(u"""<html>
<head>
<title>RECORD O RAMA</title>
</head>
<body>
<form method="get" action="record.cgi">
<input type="submit" value="record" />
</form>
{% for i in items %}
<a href="../{{i.mp4}}"><img src="../{{i.jpg}}" /></a>
{% endfor %}
<div>
<form method="get" action="record.cgi">
<input type="submit" value="record" />
</form>
</div>
</body>
</html>""").render(items=items).encode("utf-8")