view py/recorder.py @ 74:900da50ee11c

Merge lighttpd configuration into one include file. The lighttpd configuration was previously spread across several files which were intended to overwrite the defaults. They often became outdated. Now all customization is in lighttpd/rlgallery.conf, which should be included at the end of whatever main lighttpd configuration file is in use. It should require minimal updates for new lighttpd versions or distribution changes.
author John "Elwin" Edwards
date Wed, 28 Dec 2016 13:12:04 -0500
parents 09ef92dc4439
children
line wrap: on
line source

#!/usr/bin/python3

import os
import psycopg2
import rlgall

# Contains a dir for everyone who registered
everydir = "/var/dgl/dgldir/ttyrec/"
# Contains a page for everyone we know about
#knowndir = rlgall.dbdir + "players/"

# Contact the database
conn = psycopg2.connect("dbname=rlg")
cur = conn.cursor()

# newnames is the list of newly registered players who are not yet in the
# database.  updatenames is the set of players whose pages need updating.
cur.execute("SELECT pname FROM players;")
playersInDB = [ row[0] for row in cur.fetchall() ]
playersAll = os.listdir(everydir)
newnames = [ name for name in playersAll if name not in playersInDB ]
updatenames = set(newnames)

# Add the new names to the database
for newplayer in newnames:
  cur.execute("INSERT INTO players VALUES (%s);", [newplayer])
conn.commit()
cur.close()
conn.close()

# Update the database for each game.
for game in rlgall.gamelist:
  updatenames.update(game.loadnew())

# All the databases have been updated.  Now make the pages.

# The high page has been replaced with a CGI script.
#rlgall.highpage()

for name in updatenames:
  rlgall.playerpage(name)

exit()