from parameter_util import JSON_BODY, JSON_CONTAINS
from http_util import FAIL, CODE_JSON, CODE_MISSING, CODE_SEMANTIC

import random

def create():
    parameters = JSON_BODY(request)

    if parameters == None:
        return(FAIL(CODE_JSON))

    if not JSON_CONTAINS(parameters, [('player_max', int)]):
        return(FAIL(CODE_MISSING))

    player_max = parameters['player_max']

    if player_max <= 0:
        return(FAIL(CODE_SEMANTIC))

    room_id = db.Room.insert(player_max=player_max)
    room_record = db(db.Room.id == room_id).select().first()

    json = {"room_id": room_id, "room_code": room_record.code, "room_pw": room_record.hashcode}

    return(response.json(json))