Ejemplo n.º 1
0
import webapp2
from webapp2_extras import sessions
from gaemvc.methods import controller

shared = controller("shared")

@shared.view()
def index(handler): return {}

@shared.view()
def http404(handler): return {}

class Switchboard( webapp2.RequestHandler ):
    controllers = []
    default     = shared
    
    def __init__(self,*args,**kwargs):
        super(Switchboard, self).__init__(*args, **kwargs)
        self.default = self.default or shared
    
    def get(self, tail=""):
        line = tail.split('/')
        
        if not line[0]:
            view = self.default.all['index']
        elif line[0] in self.default.all:
            view = self.default.all[line[0]]
        else:
            for ctrl in self.controllers:
                if ctrl.area == line[0]:
                    view = ctrl.all.get(line[1],ctrl.all['index']);break
Ejemplo n.º 2
0
    if 'game' not in handler.session:
        from models.stats import Game
        game = Game(team=db.Key(handler.session['team_key']))
        game.put()
        handler.session['game'] = str(game.key())
    return handler.session['game']

def load_team(handler, team_name):
    from models.stats import Team
    team = Team.get_or_insert(team_name,name=team_name)
    handler.session['team']     = team.key().name()
    handler.session['team_key'] = str(team.key())
    handler.session['game']     = load_game(handler)
    return team

purple = controller("purple")

@purple.view()
def index(handler, route, params):
    team = load_team(handler, "Purple Penetrators")
    return { "roster" : team.roster }

@purple.view(routes=[r"/(?P<team>[A-Za-z0-9-_]+)/$"])
def team(handler, route, params):
    team_name = route.get("team","").replace("-"," ")
    team      =  load_team(handler, team_name)
    return { 'roster' : team.roster, '__template' : 'index.html' }

@purple.json()
def cleanup(handler, **kwargs):
    from models.stats import Game
Ejemplo n.º 3
0
import time
from google.appengine.ext import db
from gaemvc.methods import controller
from models import Writer, Entry

writer = controller("writer")


@writer.view()
def index(handler):
    context = {}
    if handler.session.get("account", False):
        context["drafts"] = Entry.all().filter("author =", db.Key(handler.session["account"]))
    else:
        pass
    return context


@writer.view(routes=[r"/(?P<key>[a-zA-Z0-9\-_]+)/$"])
def draft(handler, route, params):
    if route.get("key", False):
        draft = Entry.get_by_key_name(route.get("key"))
        if draft and str(draft._author) == handler.session.get("account", False):
            return {"draft": draft}
    return {"draft": {"title": "untitled", "content": "", "saved": "never"}}


@writer.view(routes=[r"/(?P<key>[a-zA-Z0-9\-_]+)/$"])
def article(handler, route, params):
    if route.get("key", False):
        draft = Entry.get_by_key_name(route.get("key"))
Ejemplo n.º 4
0
# from appengine
from webapp2_extras import json
from google.appengine.ext import db
# from application
from gaemvc.methods import controller

smallapp = controller("app")

@smallapp.view()
def index(handler): return {}

@smallapp.view()
def craigslist(handler): return {}

@smallapp.view()
def cssbutton(handler): return {}

@smallapp.json()
def generatecssbutton(handler): return {}
Ejemplo n.º 5
0
# from application
from gaemvc.methods import controller
# from application.controllers
from controllers.writer import writer
from controllers.purple import purple
from controllers.apps import smallapp

home = controller("home")

@home.view(redirect_to="/coverletter/")
def index(handler):
	return {}

@home.view()
def coverletter(handler):
    return {}

apps = [home, smallapp, purple, writer]
default_app = home