示例#1
0
 def get_hash(self):
     e = self
     return util.base36encode(
         abs(
             hash((util.time_to_str(e.time), str(e.lat), str(e.lon),
                   str(e.depth), str(e.magnitude), e.catalog, e.name,
                   e.region)))).lower()
示例#2
0
    def handle_create_instance_request(self, msg):
        instance_id = kv.get("next_instance_id") or "1"
        kv.set("next_instance_id", base36encode(int(instance_id, 36) + 1))

        instance = {}
        instance["id"] = instance_id
        instance["schema_version"] = 1
        instance["mizname"] = msg["filename"]
        instance["mizhash"] = msg["md5hash"]
        if msg["no_passwords"]:
            instance["red_pw"] = ""
            instance["blue_pw"] = ""
            instance["admin_pw"] = ""
        else:
            instance["red_pw"] = util.makepw()
            instance["blue_pw"] = util.makepw()
            instance["admin_pw"] = util.makepw()
        instance["red_spectator_pw"] = util.makepw()
        instance["blue_spectator_pw"] = util.makepw()

        instance["data"] = msg["data"]

        for obj in instance["data"]["objects"].values():
            if "x" in obj and "z" in obj:
                lon, lat = dcs_proj(obj["z"], obj["x"], inverse=True)
                obj["lon"] = lon
                obj["lat"] = lat
                del obj["z"]
                del obj["x"]

        kv.set("instance-" + instance_id, json.dumps(instance))

        instance_list = json.loads(kv.get("instance-list", "[]"))
        instance_list.append(instance_id)

        kv.set("instance-list", json.dumps(instance_list))

        return {
            "success": True,
            "instance_id": instance_id,
            "red_pw": instance["red_pw"],
            "blue_pw": instance["blue_pw"],
            "red_spectator_pw": instance["red_spectator_pw"],
            "blue_spectator_pw": instance["blue_spectator_pw"],
            "admin_pw": instance["admin_pw"],
        }
    def handle_create_instance_request(self, msg):
        instance_id = kv.get("next_instance_id") or "1"
        kv.set("next_instance_id", base36encode(int(instance_id, 36) + 1))

        instance = {}
        instance["id"] = instance_id
        instance["schema_version"] = 1
        instance["mizname"] = msg["filename"]
        instance["mizhash"] = msg["md5hash"]
        if msg["no_passwords"]:
            instance["red_pw"] = ""
            instance["blue_pw"] = ""
            instance["admin_pw"] = ""
        else:
            instance["red_pw"] = util.makepw()
            instance["blue_pw"] = util.makepw()
            instance["admin_pw"] = util.makepw()
        instance["red_spectator_pw"] = util.makepw()
        instance["blue_spectator_pw"] = util.makepw()

        instance["data"] = msg["data"]

        for obj in instance["data"]["objects"].values():
            if "x" in obj and "z" in obj:
                lon, lat = dcs_proj(obj["z"], obj["x"], inverse=True)
                obj["lon"] = lon
                obj["lat"] = lat
                del obj["z"]
                del obj["x"]

        kv.set("instance-" + instance_id, json.dumps(instance))

        instance_list = json.loads(kv.get("instance-list", "[]"))
        instance_list.append(instance_id)

        kv.set("instance-list", json.dumps(instance_list))

        return {
            "success": True,
            "instance_id": instance_id,
            "red_pw": instance["red_pw"],
            "blue_pw": instance["blue_pw"],
            "red_spectator_pw": instance["red_spectator_pw"],
            "blue_spectator_pw": instance["blue_spectator_pw"],
            "admin_pw": instance["admin_pw"],
        }
示例#4
0
文件: model.py 项目: carinaj/pyrocko
 def get_hash(self):
     e = self
     return util.base36encode(
         abs(
             hash(
                 (
                     util.time_to_str(e.time),
                     str(e.lat),
                     str(e.lon),
                     str(e.depth),
                     str(e.magnitude),
                     e.catalog,
                     e.name,
                     e.region,
                 )
             )
         )
     ).lower()
示例#5
0
def mock_login():
    global fake
    if os.environ.get('MOCK') != '1':
        abort(404)
    if not fake:
        _init()
    session['me'] = {
        'comment_karma':
        fake.random.randrange(100, 1000),
        'created_utc':
        fake.date_time_between(start_date='-10y', end_date='-1y').timestamp()
        // 1000,
        'id':
        base36encode(fake.random.randrange(100000)),
        'link_karma':
        fake.random.randrange(100, 1000),
        'name':
        fake.user_name()
    }
    return make_response(redirect(url_for('home')))
    def handle_login_request(self, msg):
        global next_id_prefix_int

        instance_json = kv.get("instance-" + msg["instance_id"])
        if not instance_json:
            return {"success": False, "error_msg": "instance does not exist."}
        instance = json.loads(instance_json)
        if (
            instance[msg["coalition"] + "_pw"] == msg["password"]
            or instance[msg["coalition"] + "_spectator_pw"] == msg["password"]
        ):
            self.instance_id = msg["instance_id"]
            self.spectator_mode = instance[msg["coalition"] + "_spectator_pw"] == msg["password"]
            self.coalition = msg["coalition"]
            logged_in_websockets.append(self)
            id_prefix = base36encode(next_id_prefix_int) + "/"
            next_id_prefix_int += 1
            return {"success": True, "data": self.filter_data(instance["data"]), "id_prefix": id_prefix}
        else:
            return {"success": False, "error_msg": "invalid password."}
示例#7
0
    def handle_login_request(self, msg):
        global next_id_prefix_int

        instance_json = kv.get("instance-" + msg["instance_id"])
        if not instance_json:
            return {"success": False, "error_msg": "instance does not exist."}
        instance = json.loads(instance_json)
        if instance[msg["coalition"]+"_pw"] == msg["password"] or \
           instance[msg["coalition"]+"_spectator_pw"] == msg["password"]:
            self.instance_id = msg["instance_id"]
            self.spectator_mode = (
                instance[msg["coalition"] +
                         "_spectator_pw"] == msg["password"])
            self.coalition = msg["coalition"]
            logged_in_websockets.append(self)
            id_prefix = base36encode(next_id_prefix_int) + "/"
            next_id_prefix_int += 1
            return {
                "success": True,
                "data": self.filter_data(instance["data"]),
                "id_prefix": id_prefix
            }
        else:
            return {"success": False, "error_msg": "invalid password."}