def main(request): if request.user.is_authenticated: room = None if 'room_id' in request.POST: try: room = Room.get_by_id(request.POST['room_id']) except: return apiRespond(400, msg='invalid room_id') if room == None: room = request.user.room if room != None: members = room.get_members() friends = [] others = [] for member in members: friend_status, friend_obj = member.friendship_status( request.user) if friend_status == 3: friends.append(member.get_profile_min()) else: others.append(member.get_profile_min()) return apiRespond(200, friends=friends, others=others) else: return apiRespond(400, msg='Not a member of any room and no room_id provided') else: # user is already logged in, redirect to root return apiRespond(401, msg='User not logged in')
def p_skipto(request): if "access_key" in request.POST and request.POST["access_key"] == LIVE_ACCESS_KEY: if "room_id" in request.POST: try: room = Room.get_by_id(request.POST['room_id']) except: return apiRespond(400, msg='room_id invalid') else: curr_time = timezone.now() if not room.is_paused: dur = room.duration_to_complete if curr_time >= (room.play_start_time+datetime.timedelta(seconds=dur.second, minutes=dur.minute)-datetime.timedelta(seconds=5, minutes=0)): print('valid time to skipto') room.skip_to_next() return apiRespond(201, msg='skipped to next') else: print('NOT valid time to skipto', curr_time-(room.play_start_time + datetime.timedelta(seconds=dur.second, minutes=dur.minute))) return apiRespond(400, msg='NOT valid time to skipto') else: print('skipto canceled, playback is paused') return apiRespond(400, msg='playback is paused') else: return apiRespond(400, msg='room_id missing') else: return apiRespond(400, msg='access_key invalid')
def main(request): if request.user.is_authenticated: if "room_id" in request.POST: try: room = Room.get_by_id(request.POST['room_id']) except: return apiRespond(400, msg='invalid room_id') else: try: room = request.user.join_room(room) except: return apiRespond(400, msg='Access denied') else: return apiRespond(201, **room.get_state_obj()) else: return apiRespond(400, msg='room_id missing') else: # user is already logged in, redirect to root return apiRespond(401, msg='User not logged in')