Exemplo n.º 1
0
import lib.trumpet

import hlib.api
import hlib.database
import hlib.datalayer
import hlib.input

# Shortcuts
from handlers import page, require_admin, require_login, require_write
from hlib.api import api
from hlib.input import validator_factory, validate_by

# pylint: disable-msg=F0401
import hruntime  # @UnresolvedImport

ValidateLang	= validator_factory(hlib.input.CommonString())
ValidateName	= validator_factory(hlib.input.CommonString(), hlib.input.MaxLength(256))
ValidateValue	= validator_factory(hlib.input.CommonString(), hlib.input.MaxLength(256))

class ValidateLangSchema(hlib.input.SchemaValidator):
  lang = ValidateLang()

def require_lang(lang):
  if lang not in hruntime.dbroot.localization.languages:
    raise hlib.error.InvalidInputError(invalid_field = 'lang')

  return hruntime.dbroot.localization.languages[lang]

class TrumpetHandler(handlers.GenericHandler):
  password_recovery_mail	= lib.trumpet.PasswordRecoveryMail()
  board				= lib.trumpet.Board()
Exemplo n.º 2
0
import time

import hlib.api
import hlib.events
import hlib.format
import hlib.pageable

import hlib.database

# Validators
from hlib.input import validator_factory, CommonString, MaxLength

# pylint: disable-msg=F0401
import hruntime  # @UnresolvedImport

ValidateChatPost = validator_factory(CommonString(), MaxLength(65535))

class ChatPost(hlib.database.DBObject):
  PACK_OBJECTS = ['user', 'stamp', 'message']

  def __init__(self, entity, user, stamp, message):
    hlib.database.DBObject.__init__(self)

    self.id		= None
    self.entity		= entity
    self.user		= user
    self.stamp		= stamp
    self.message	= message

    self._v_formatted	= None
Exemplo n.º 3
0
import handlers

# Shortcuts
from handlers import require_login, require_write
from hlib.api import api
from hlib.input import validate_by, validator_factory

# Validators
from games import ValidateNew
from handlers.game import require_on_turn, require_on_game
from games import GenericValidateGID

# pylint: disable-msg=F0401
import hruntime  # @UnresolvedImport

ValidateNID = validator_factory(hlib.input.NotEmpty(), hlib.input.Int(), hlib.input.OneOf(range(0, 128)))
ValidatePID = validator_factory(hlib.input.NotEmpty(), hlib.input.Int(), hlib.input.OneOf(range(0, 128)))
ValidateResource = validator_factory(hlib.input.NotEmpty(), hlib.input.Int(), hlib.input.OneOf([0, 1, 2, 3, 4]))

class GameOnTurnChecker(object):
  @staticmethod
  def check():
    return [g for g in games.f_active(hruntime.user) if not g.is_free and g.my_player != None and g.my_player.is_on_turn]

class Handler(handlers.GenericHandler):
  class ValidatNodeClick(GenericValidateGID):
    nid = ValidateNID()

  @require_write
  @require_login
  @validate_by(schema = ValidatNodeClick)
Exemplo n.º 4
0
import games.settlers
import handlers
import lib.datalayer

# Handlers
from handlers import require_login, require_write, page
from hlib.api import api
from hlib.input import Password, CommonString, OneOf, SchemaValidator, NotEmpty, Int, FieldsMatch, validator_factory, validate_by
from games import ValidateKind, GenericValidateKind

# pylint: disable-msg=F0401
import hruntime  # @UnresolvedImport

TABLE_ROW_COUNTS = range(10, 61, 10)

ValidateColor = validator_factory(CommonString(), OneOf(games.settlers.COLOR_SPACE.colors.keys()))

class ApiTokenHandler(handlers.GenericHandler):
  @require_write
  @require_login
  @api
  def new(self):
    u = hruntime.user

    u.reset_api_tokens()
    u.api_tokens.append(hlib.api.api_token_generate(u))

    return hlib.api.Reply(200, token = u.api_tokens[0])

  @require_login
  @api