#!/usr/bin/python
|
|
|
|
import os,sys,string,time
|
|
|
|
def dumpfile(out, path):
|
|
try:
|
|
f = open(path, 'r')
|
|
out.write(f.read())
|
|
f.close()
|
|
except:
|
|
pass
|
|
|
|
def cmptimes(i1, i2):
|
|
if i1[1] < i2[1]:
|
|
return -1
|
|
if i1[1] > i2[1]:
|
|
return 1
|
|
return 0
|
|
|
|
|
|
dirs = [ 'guide', 'synops' ]
|
|
|
|
months = [ '', 'January', 'February', 'March', 'April', 'May', 'June', 'July',
|
|
'August', 'September', 'October', 'November', 'December']
|
|
|
|
outfile = open('lastmod-new.html', 'w')
|
|
|
|
fp = open('internal/epnames', 'r')
|
|
epnames = fp.readlines()
|
|
fp.close()
|
|
|
|
#
|
|
# Spit out the page header.
|
|
#
|
|
dumpfile(outfile, 'internal/lu-header')
|
|
|
|
mdate = time.localtime(time.time())
|
|
outfile.write('%02d:%02d Pacific (US) time on %s %d, %d.\n' %
|
|
(mdate[3], mdate[4], months[mdate[1]], mdate[2], mdate[0]))
|
|
outfile.write("If that date isn't recent, you probably need to hit your reload button.\n")
|
|
|
|
for dir in dirs:
|
|
files = []
|
|
|
|
dumpfile(outfile, 'internal/lu-header-' + dir)
|
|
|
|
for file in os.listdir(dir):
|
|
if file[0] != '0' and file[0] != '1' and file[0] != '5' or file[-4:] == 'html':
|
|
continue
|
|
|
|
path = dir + '/' + file
|
|
|
|
#
|
|
# Has the HTML been generated?
|
|
#
|
|
try:
|
|
os.stat(path + '.html')
|
|
except:
|
|
continue
|
|
|
|
#
|
|
# Figure out when the file was touched last.
|
|
#
|
|
mtime = os.stat(path)[8]
|
|
mdate = time.localtime(mtime)
|
|
lastmod = '%02d/%02d/%02d' % (mdate[0] % 100, mdate[1],mdate[2])
|
|
|
|
#
|
|
# Figure out the file's episode name.
|
|
#
|
|
epnum = string.atoi(file[:3])
|
|
epname = epnames[epnum][:-1]
|
|
if len(file) != 3:
|
|
epname = epname + ' (scene in detail)'
|
|
|
|
#
|
|
# Generate a list entry.
|
|
#
|
|
text = '%03d. %s: <a href="%s">%s</a><br>\n' % (
|
|
epnum, lastmod, path + '.html', epname)
|
|
|
|
files.append((epnum, mtime, text))
|
|
|
|
#
|
|
# Print a list sorted by date.
|
|
#
|
|
dumpfile(outfile, 'internal/lu-header-date')
|
|
files.sort(cmptimes)
|
|
files.reverse()
|
|
|
|
for (epnum, mtime, text) in files:
|
|
outfile.write(text)
|
|
|
|
# dumpfile(outfile, 'internal/lu-header-epnum')
|
|
|
|
#
|
|
# Print a list sorted by episode number.
|
|
#
|
|
# files.sort()
|
|
|
|
# for (epnum, mtime, text) in files:
|
|
# outfile.write(text)
|
|
|
|
dumpfile(outfile, 'internal/lu-footer-epnum')
|
|
|
|
dumpfile(outfile, 'internal/lu-footer')
|
|
outfile.close()
|
|
|
|
os.unlink('lastmod.html')
|
|
os.rename('lastmod-new.html', 'lastmod.html')
|