Exemplo n.º 1
0
def printList(player):
    print "Content-type: text/html"
    print

    matches = Level.select(orderBy = "-modified")
    work_list = ""
    for level in matches:
        title = level.name
        date = level.modified
        edit_link = ""
        if level.creator != None:
            if level.creator == player:
                creator = "You"
                edit_link = "<a href=\"designer.html?level=%s\">Edit</a>" % title
            else:
                creator = level.creator.name
        else:
            creator = "Nobody"
            
        scores = Score.selectBy(level = level)
        best = ""
        if (scores.count() > 0):
            best = "%s by %s" % (formatTime(scores[0].completionTime), scores[0].player.name)
        else:
            best = "Nobody Yet!"
        scores = Score.selectBy(player = player, level = level)
        your_time = ""
        if (scores.count() > 0):
            your_time = formatTime(scores[0].completionTime)
        work_list += render_template_file( "list-level-row.html",
                                           {"moddate": date,
                                            "title": title,
                                            "creator": creator,
                                            "editlink": edit_link,
                                            "best": best,
                                            "yourtime": your_time} )
    
    print render_template_file( "list-levels.html", {"work_list": work_list,
                                                     "player": player.name,
                                                     "avatarURL": player.avatarURL})
Exemplo n.º 2
0
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:
        print "No such level as %s" % levelName

else:
    print "Required info not provided."

Exemplo n.º 3
0
import cgi
import cgitb
import datetime
import simplejson

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

if levelData != "" and levelName != "":
    
    # if level doesn't exist create it:
    levels = Level.selectBy(name = levelName)
    if levels.count() > 0:
        level = levels[0]
        level.modified = datetime.datetime.now()
    else:
        level = Level(name = levelName,
                      creator = player,
                      modified = datetime.datetime.now(),
                      startX = 0,
                      startY = 0)

    # verify that I am owner of level i.e. allowed to edit:
    if player == level.creator:
        # delete all the old ones first!!
        old = LevelObject.selectBy(level = level)
        for obj in old:
Exemplo n.º 4
0
def level_exists(name):
    matches = Level.selectBy(name = name)
    return (matches.count() > 0)
Exemplo n.º 5
0
def printList(player):
    print "Content-type: text/html"
    print

    # Show levels that are published and/or created by the current player.
    matches = Level.select(OR(Level.q.published == True, 
                              Level.q.creator == player), orderBy = "-modified")
    published_list = ""
    your_list = ""
    for level in matches:
        title = level.name
        date = level.modified
        edit_link = ""
        if level.creator != None:
            if level.creator == player:
                creator = getStr(player, "_you")
            else:
                creator = level.creator.name
        else:
            creator = getStr(player, "_nobody")
            
        scores = Score.selectBy(level = level)
        best = ""
        if (scores.count() > 0):
            best = getStr(player, "_other_player_score") % {
               "time": formatTime(scores[0].completionTime),
               "player": scores[0].player.name,
               "trinkets": scores[0].trinkets }
        else:
            best = getStr(player, "_nobody_yet")
        scores = Score.selectBy(player = player, level = level)
        your_time = ""
        if (scores.count() > 0):
            your_time = getStr(player, "_your_score") % {
                "time": formatTime(scores[0].completionTime),
                "trinkets": scores[0].trinkets }
        if level.creator == player:
            if level.published:
              published = getStr(player, "_published_yes")
            else:
              published = getStr(player, "_published_no")
            your_list += render_template_file( "list-my-level-row.html",
                                               {"moddate": date,
                                                "title": title,
                                                "published": published,
                                                "best": best,
                                                "yourtime": your_time} )
        else:
            published_list += render_template_file( "list-level-row.html",
                                           {"moddate": date,
                                            "title": title,
                                            "creator": creator,
                                            "best": best,
                                            "yourtime": your_time} )

    sub_words = {"published_list": published_list,
                 "your_list": your_list,
                 "player": player.name,
                 "avatarURL": player.avatarURL,
                 "lang_radio_buttons": make_lang_settings(player.langPref)}
    
    print render_template_file( "list-levels.html", sub_words)
Exemplo n.º 6
0
import cgi
import cgitb
import datetime
import simplejson

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

if levelData != "" and levelName != "":
    
    # if level doesn't exist create it:
    levels = Level.selectBy(name = levelName)
    if levels.count() > 0:
        level = levels[0]
        level.modified = datetime.datetime.now()
    else:
        level = Level(name = levelName,
                      creator = player,
                      modified = datetime.datetime.now(),
                      startX = 0,
                      startY = 0)

    # verify that I am owner of level i.e. allowed to edit:
    if player == level.creator:
        # delete all the old ones first!!
        old = LevelObject.selectBy(level = level)
        for obj in old: