def __init__(self, data, auth, model, options):
        self.auth = auth
        self.model = model
        self.options = options
        self.sessionId = hat.hat()
        self.connectTime = time.time()
        self.headers = data['headers']
        self.remoteAddress = data['remoteAddress']

        self.listeners = {}

        self.name = None
Beispiel #2
0
def getPlayers():
    players = []
    keepGoing = "yes"
    
    # while True:
    #     keepGoing = input("Do you want to add a new player? \n")

    #     if keepGoing != "yes":
    #         break

    #     userName = input("Type in your username \n")
    #     UserNameTaken = isUserNameTaken(players, userName)

    #     #what type is UserNameTaken?

    #     if UserNameTaken:
    #         print("sorry its taken")

    #     else:
    #         print("congratulations you created a new username!!11! \n")
    #         color = input("Which color would you like to be? ")
    #         newPlayer = player(userName, color)

    #         #we want the newPlayer's userName
    #         hatColor = input("What color does " + newPlayer.userName + " want your hat to be?" )
    #         hatStyle = input("What style does " + newPlayer.userName + " want your style to be? ")

    #         newHat = hat(hatColor, hatStyle)

    #         newPlayer.setHat(newHat)
    #         players.append(newPlayer)

    #write a for loop that makes 10 players with user name 0-9 and color blue

    #randint(start, stop) inclusive of start and stop
    #range(start, stop) inclusive of start but exclusive of stop

    for x in range(0, 5):
        userName = "******" + str(x) 
        color = "blue"
        hatColor = "blue"
        hatStyle = "birthday"
        newPlayer = player(userName, color)
        newHat = hat(hatColor, hatStyle)
        newPlayer.setHat(newHat)
        players.append(newPlayer)



    return players
    def handleMessage(self, query, callback=None):
        error = None
        if not (
            ("doc" in query and query["doc"] is None)
            or ("doc" in query and isinstance(query["doc"], (str, unicode)))
            or ("doc" not in query and self.lastReceivedDoc)
        ):
            error = "Invalid docName"
        if "create" in query and query["create"] is not True:
            error = "'create' must be True or missing"
        if "open" in query and query["open"] not in [True, False]:
            error = "'open' must be True, False or missing"
        if "snapshot" in query and query["snapshot"] is not None:
            error = "'snapshot' must be None or missing"
        if "type" in query and not isinstance(query["type"], (str, unicode)):
            error = "'type' invalid"
        if "v" in query and (not isinstance(query["v"], (int, float)) or query["v"] < 0):
            error = "'v' invalid"

        if error:
            print("Invalid query {0} from {1}: {2}".format(query, self.agent.sessionId, error))
            self.session.abort()
            if callback:
                return callback()
            else:
                return

        if "doc" in query:
            if query["doc"] is None:
                query["doc"] = self.lastReceivedDoc = hat.hat()
            else:
                self.lastReceivedDoc = query["doc"]
        else:
            if not self.lastReceivedDoc:
                print("msg.doc missing in query {0} from {1}".format(query, self.agent.sessionId))
                return self.session.abort()
            query["doc"] = self.lastReceivedDoc

        if query["doc"] not in self.docState:
            self.docState[query["doc"]] = {}

        if "queue" not in self.docState[query["doc"]]:

            def _queue_func(query, callback):
                if not self.docState:
                    return callback()

                if "open" in query and query["open"] == False:
                    self.handleClose(query, callback)
                elif "open" in query or ("snapshot" in query and query["snapshot"] is None) or "create" in query:
                    self.handleOpenCreateSnapshot(query, callback)
                elif "op" in query or ("meta" in query and "path" in query["meta"]):
                    self.handleOp(query, callback)
                else:
                    print("Invalid query {0} from {1}".format(json.dumps(query), self.agent.sessionId))
                    self.session.abort()
                    callback()

            self.docState[query["doc"]]["queue"] = syncQueue.syncQueue(_queue_func)

        self.docState[query["doc"]]["queue"](query)
Beispiel #4
0
    border    = _safeGetBoolean(request, "border")
    highlight = _safeGetBoolean(request, "highlight")

    #return HttpResponse("<pre>%r</pre>" % locals())
    image_path_on_server = my_draw(request,
            bg=bg,
            text=text,
            font=font,
            textColor=textColor,
            shadowColor=shadowColor,
            border=border,
            shadow=shadow,
            highlight=highlight)

    #hat processing, a loop procedure, for several hats(horns)
    image_path_on_server=hat(request, bg=image_path_on_server)
    saveImage4Upload(request, image_path_on_server)
    image_path_on_server=findPath(image_path_on_server)
    image_data = open(image_path_on_server, "rb").read()

    #if save==1, download:
    save = _safeGetBoolean(request, "save")
    if save:
        response = HttpResponse(image_data, mimetype="image/png")
        response['Content-Disposition'] = 'attachment; filename=%s' % image_path_on_server[-36:]
        return response

    return HttpResponse(image_data, mimetype="image/png")

def my_draw(request, bg, text, font, textColor, shadowColor, border, shadow, highlight):
    """draw avatar. Core part of the program."""