def party(request, room_name): if room_name is None: return redirect("/p/rdio") connection = StrictRedis(connection_pool=redis_connection_pool) party = Party.get(connection, room_name) if not party: party = Party() party.id = room_name party.name = room_name party.save(connection) user = User.from_request(connection, request) party.add_user(connection, user) party.broadcast_user_list_state(connection) party.save(connection) context = { "room_name": room_name, "body_class": "party", "room_id": room_name, "initial_player_state_json": json.dumps(party.get_player_state_payload()), "initial_queue_state_json": json.dumps(party.get_queue_state_payload()), "initial_user_list_state_json": json.dumps(party.get_user_list_state_payload()), "initial_messages_state_json": json.dumps(party.get_messages_state_payload(connection)), "initial_theme_state_json": json.dumps(party.get_theme_state_payload()), "current_user": json.dumps(user.to_dict()), } make_room_daemon(room_name) return render(request, "party.html", context)
def create_a_party(self, party_id, name): party = Party() party.id = party_id party.name = name party.save(self.redis) return party