예제 #1
0
파일: save.py 프로젝트: jonoxia/pencilbox
def createNew(title, creator, history, layers):
    kwargs = {"date": datetime.datetime.now(),
              "title": title,
              "history_json": history,
              "layer_json": layers,
              "creator": creator}
    newEntry = DrawingHistory(**kwargs)

def updateOld(entry, history, layers):
    entry.date = datetime.datetime.now()
    entry.history_json = history
    entry.layer_json = layers


cgitb.enable()
q = cgi.FieldStorage()
history = q.getfirst("history", "")
layers = q.getfirst("layers", "")
title = q.getfirst("title", "")
artist = verify_id() 

matches = DrawingHistory.selectBy(title = title, creator=artist)
if matches.count() > 0:
    updateOld(matches[0], history, layers)
else:
    createNew(title, artist, history, layers)

print "Content-type: text/html"
print
print "OK, saved"
예제 #2
0
# NOTE TO SELF how do we prevent people from just posting scores to this
# URL that they didn't actually earn?

from database_tables import Level, Score
from webserver_utils import verify_id

import cgi
import cgitb
import datetime

cgitb.enable()
q = cgi.FieldStorage()
levelName = q.getfirst("levelName", "")
completionTime = q.getfirst("completionTime", "")
player = verify_id() 


print "Content-type: text/html"
print

if (levelName != "" and completionTime != ""):
    levels = Level.selectBy(name = levelName)
    if levels.count() > 0:
        level = levels[0]
        score = Score(level = level,
                      player = player,
                      completionTime = int(completionTime),
                      achievedOn = datetime.datetime.now())
        print "Saved score %d for %s on %s." % (int(completionTime), player.name, level.name)
    else: