def create_room(): message = '' rooms = get_rooms_for_user(current_user.username) if request.method == "POST": room_name = request.form.get('room_name') usernames = [username.strip() for username in request.form.get('members').split(',')] if len(room_name): for username in usernames: user = check_user(username) if username == "": break elif user ==None : print("bruhh") message = f"user:\"{username}\" doesn't exist" return render_template('index.html', message1=message, have_rooms=True, rooms=rooms) break room_id = save_room(room_name, current_user.username) if current_user.username in usernames: usernames.remove(current_user.username) add_room_members(room_id, room_name, usernames, current_user.username) return redirect(url_for('chat_room', room_id=room_id)) else: message = 'Failed to Create room' return render_template('index.html', message1=message, have_rooms=True, rooms=rooms)
def create_room(): message = '' if request.method == 'POST': room_name = request.form.get('room_name') usernames = [ username.strip() for username in request.form.get('members').split(',') ] rolelist = request.form.getlist('role') cunmin_count = request.form.get('cunmin').strip() langren_count = request.form.get('langren').strip() cunmin = ['普通村民'] * int(cunmin_count) rolelist.extend(cunmin) langren = ['狼人'] * int(langren_count) rolelist.extend(langren) nvwu_flag = request.form['nvwu1save'] shangjing_flag = request.form['shangjing'] if len(room_name) and len(usernames) and len( rolelist) and nvwu_flag and shangjing_flag: room_id = save_room(room_name, current_user.username, rolelist, nvwu_flag, shangjing_flag) if current_user.username in usernames: usernames.remove(current_user.username) add_room_members(room_id, room_name, usernames, current_user.username) return redirect(url_for('view_room', room_id=room_id)) else: message = 'Failed to create room' return render_template('create_room.html', message=message)
def add_room(): json_input = request.get_json(force=True) try: token = json_input['token'] child = json_input['child'] room_name = child['name'] room_members = child['members'] except: return Response(400, 'unable to parse request').get_json() usernames = [ username.strip() for username in request.form.get('members').split(',') ] if request.method == 'POST': if len(room_name) and len(room_members): room_id = save_room(room_name, current_user.username) if current_user.username in usernames: room_members.remove(current_user.username) add_room_members(room_id, room_name, usernames, current_user.username) return Response(200, 'New room created').get_json() return Response(500, 'Error creating new room').get_json()
def edit_room(room_id): room = get_room(room_id) if room and is_room_admin(room_id, current_user.username): existing_room_members = [ member["_id"]["username"] for member in get_room_members(room_id) ] room_members_str = ",".join(existing_room_members) message = "" if request.method == "POST": room_name = request.form.get("room_name") room["name"] = room_name update_room(room_id, room_name) new_members = [ username.strip() for username in request.form.get("members").split(",") ] members_to_add = list(set(new_members) - set(existing_room_members)) members_to_remove = list(set(existing_room_members) - set(new_members)) if len(members_to_add): add_room_members( room_id, room_name, members_to_add, current_user.username ) if len(members_to_remove): remove_room_members(room_id, members_to_remove) message = "Room edited successfully" room_members_str = ",".join(new_members) return render_template( "edit_room.html", room=room, room_members_str=room_members_str, message=message, ) else: return "Room not found", 404
def create_room(): message = '' if request.method == 'POST': room_name = request.form.get('room_name') usernames = [ username.strip() for username in request.form.get('members').split(',') ] print(usernames) if len(room_name) and len(usernames): room_id = save_room(room_name, current_user.username) if current_user.username in usernames: usernames.remove(current_user.username) print(room_id) print(room_name) print(usernames) print(current_user.username) add_room_members(room_id, room_name, usernames, current_user.username) return redirect(url_for('view_room'), room_id=room_id) else: message = "Failed to create room" return render_template('create-room.html', message=message)
def room_add_members(room_id): user_id = get_jwt_identity() json_input = request.get_json(force=True) current_app.logger.info('{} wants to add member(s) to {}'.format( user_id, room_id)) try: new_members = json_input['add_members'] except Exception as e: return jsonify({'Error': 'Bad input'}), 400 try: target_room = get_room(room_id) except Exception as e: return jsonify({'Error': 'Room not found'}), 400 # room_id, room_name, user_id, added_by, is_admin=False, is_owner=False try: if len(new_members) == 1: add_room_member(room_id, target_room.name, new_members[0], user_id) current_app.logger.info('Added a user to {}'.format(room_id)) elif len(new_members) > 1: add_room_members(room_id, target_room.name, new_members, user_id) current_app.logger.info('Added {} users to {}'.format( len(new_members), room_id)) else: return jsonify({'Error': 'Bad input'}), 400 except Exception as e: return jsonify({'Error': 'Failed to add user. {}'.format(e)}), 500 return jsonify({'Success': 'User(s) added'}), 200
def edit_room(room_id): room = get_room(room_id) if room and is_room_admin(room_id, current_user.username): existing_room_members = [ member['_id']['username'] for member in get_room_members(room_id) ] room_members_str = ",".join(existing_room_members) message = '' if request.method == 'POST': room_name = request.form.get('room_name') room['name'] = room_name update_room(room_id, room_name) new_members = [ username.strip() for username in request.form.get('members').split(',') ] members_to_add = list( set(new_members) - set(existing_room_members)) members_to_remove = list( set(existing_room_members) - set(new_members)) if len(members_to_add): add_room_members(room_id, room_name, members_to_add, current_user.username) if len(members_to_remove): remove_room_members(room_id, members_to_remove) message = 'Room edited successfully' room_members_str = ",".join(new_members) return render_template('edit_room.html', room=room, room_members_str=room_members_str, message=message) else: return "Room not found", 404
def edit_room(room_id): room = get_room(room_id) if room and is_room_admin(room_id, current_user.username): existing_room_members = [ member['_id']['username'] for member in get_room_members(room_id) ] room_members_str = ",".join(existing_room_members) message = '' if request.method == 'POST': room_name = request.form.get('room_name') if (len(request.form.get('room_name'))) == 0: message = "Room name cannot be empty" return render_template('edit_room.html', room=room, room_members_str=room_members_str, message=message) room['name'] = room_name update_room(room_id, room_name) if len(request.form.get('members')) == 0: message = "Edit unsuccessful" return render_template('edit_room.html', room=room, room_members_str=room_members_str, message=message) new_members = [ username.strip() for username in request.form.get('members').split(',') ] members_to_add = list( set(new_members) - set(existing_room_members)) members_to_remove = list( set(existing_room_members) - set(new_members)) if current_user.username in members_to_remove: message = "Cannot remove admin from room" return render_template('edit_room.html', room=room, room_members_str=room_members_str, message=message) if len(members_to_add): add_room_members(room_id, room_name, members_to_add, current_user.username) if len(members_to_remove): remove_room_members(room_id, members_to_remove) message = 'Room edited successfully' room_members_str = ",".join(new_members) return redirect(url_for('view_room', room_id=room_id)) return render_template('edit_room.html', room=room, room_members_str=room_members_str, message=message) else: message = "Not the admin for this room" return render_template('error.html', message=message)
def create_room(): if request.method=='POST': room_name=request.form.get('room_name') usernames=[ username.strip() for username in request.form.get('members').split(',')] created_by=current_user.username if len(room_name) and len(usernames): room_id=save_room(room_name,created_by) if current_user.username in usernames: usernames.remove(current_user.username) add_room_members(room_id,room_name,usernames,current_user.username) flash('Room is created !','success') return redirect(url_for('view_room',room_id=room_id)) else: flash('failed to create a room !','danger') return render_template('create_room.html')
def create_room(): message = "" if request.method == "POST": room_name = request.form.get("room_name") usernames = [ username.strip() for username in request.form.get("members").split(",") ] if len(room_name) and len(usernames): room_id = save_room(room_name, current_user.username) if current_user.username in usernames: usernames.remove(current_user.username) add_room_members(room_id, room_name, usernames, current_user.username) return redirect(url_for("view_room", room_id=room_id)) else: message = "Failed to create room" return render_template("create_room.html", message=message)
def create_room(): message = 'Create your own Rooms' if request.method == 'POST': room_name = request.form.get('room_name') usernames = [username.strip() for username in request.form.get('members').split(',')] if len(room_name) and len(usernames): room_id = save_room(room_name, current_user.username) if current_user.username in usernames: usernames.remove(current_user.username) add_room_members(room_id, room_name, usernames, current_user.username) flash('Room created successfully', 'success') return redirect(url_for('view_room', room_id=room_id)) else: message = "Failed to create room" flash('Failed to create room', 'danger') return render_template('create_room.html', message=message)
def edit_room(room_id): room = get_room(room_id) room_members = [ member['_id']['username'] for member in get_room_members(room_id) ] print('room members are ==', room_members) is_room_admin = check_if_room_admin(room_id, current_user.username) if request.method == 'POST': new_room_name = request.form.get('new_room_name') change_room_name(room_id, new_room_name) room['room_name'] = new_room_name new_room_members = [ username.strip() for username in request.form.get('members').split(',') ] members_to_add = list(set(new_room_members) - set(room_members)) members_to_remove = list(set(room_members) - set(new_room_members)) if members_to_add: add_room_members(room_id, new_room_name, members_to_add, current_user.username) if members_to_remove: remove_room_members(room_id, members_to_remove) room_members = get_room_members(room_id) return render_template('view_room.html', username=current_user.username, room=room, room_members=room_members, is_room_admin=is_room_admin) else: room_members = ','.join(room_members) if room and is_room_member(room_id, current_user.username): return render_template('edit_room.html', username=current_user.username, room=room, room_members=room_members) else: return redirect(url_for('home'))
def create_room(): message = '' if request.method == 'POST': room_name = request.form['room_name'] usernames = [ username.strip() for username in request.form['members'].split(',') ] if len(room_name) and len(usernames): room_id = db.save_room(room_name, current_user.username) if current_user.username in usernames: usernames.remove(current_user.username) db.add_room_members(room_id, room_name, usernames, current_user.username) return redirect(url_for('view-room', room_id=room_id)) else: message = 'Faild to create room.' return render_template('create-room.html', message=message)
def create_room(): message = '' if request.method == 'POST': room_name = request.form.get('room_name') redusernames = [username.strip() for username in request.form.get('redmembers').split(',')] redSpy = request.form.get('redspymaster') blueusernames = [username.strip() for username in request.form.get('bluemembers').split(',')] blueSpy = request.form.get('bluespymaster') room_id = '' if blueSpy in blueusernames: blueusernames.remove(blueSpy) if redSpy in redusernames: redusernames.remove(redSpy) if len(room_name): if current_user.username == redSpy: room_id = save_room(room_name, current_user.username, 'red', True) add_room_member(room_id, room_name, blueSpy,redSpy,'False', 'blue', True) elif current_user.username == blueSpy: room_id = save_room(room_name, current_user.username, 'blue', True) add_room_member(room_id, room_name, redSpy, blueSpy,'False', 'red', True) else: if current_user.username in redusernames: if not room_id: room_id = save_room(room_name, current_user.username, 'red', False) redusernames.remove(current_user.username) elif current_user.username in blueusernames: if not room_id: room_id = save_room(room_name, current_user.username, 'red', False) blueusernames.remove(current_user.username) add_room_member(room_id, room_name, redSpy, current_user.username, 'False', 'red', True) add_room_member(room_id, room_name, blueSpy, current_user.username, 'False','blue', True) if len(redusernames): add_room_members(room_id, room_name, redusernames, current_user.username, 'red', False) if len(blueusernames): add_room_members(room_id, room_name, blueusernames, current_user.username, 'blue', False) else: message = "Failed to create room" return redirect(url_for('view_room', room_id=room_id,blueSpy=blueSpy,redSpy=redSpy)) return render_template('create_room.html', message=message)
def create_new_room(): create_room_message = '' if request.method == 'POST': room_name = request.form.get('room_name') usernames = [ username.strip() for username in request.form.get('members').split(',') ] if len(room_name) and len(usernames): room_id = create_room(room_name, current_user.username) if current_user.username in usernames: usernames.remove(current_user.username) add_room_members(room_id, room_name, usernames, current_user.username) return redirect(url_for('home')) else: create_room_message = 'Failed to create room' return render_template('create_room.html', create_room_message=create_room_message)
def books(): if request.method == "POST": books = get_all_books() val = [] for i in books: option = request.form[i[0] + i[1]] val.append(option) for i, book in enumerate(books): if (val[i] == '1'): print("liked", book[2]) like(session['username'], book[2], like=1) elif (val[i] == '-1'): print("disliked", book[2]) like(session['username'], book[2], like=-1) elif (val[i] == '0'): print("No Reaction", book[2]) like(session['username'], book[2], like=0) book_id_to_new_book_id = get_book_id_to_new_book_id(get_book_ids()) gid = get_group_id_of_new_user( clf, clusters, session['username'], get_like_dislike(session['username'], 'Like'), get_like_dislike(session['username'], 'DisLike'), book_id_to_new_book_id) group_new_user(session['username'], gid) room_id = get_id(gid)['_id'] add_room_members(room_id, gid, [session['username']], 'system') room_members = get_room_members(room_id) messages = get_messages(room_id) books = get_all_books() return render_template('view_room.html', username=session['username'], room=gid, room_members=room_members, books=books, messages=messages) else: books = get_all_books() return render_template('books.html', books=books)
def edit_room(room_id): room = get_room(room_id) print(room) print(is_room_admin(room_id, current_user.username)) if room and is_room_admin(room_id, current_user.username): existing_room_members = [ member['_id']['username'] for member in get_room_members(room_id) ] message = '' if request.method == 'POST': room_name = request.form.get('room_name') update_room(room_id, room_name) new_members = [ username.strip() for username in request.form.get('members').split(',') ] print(new_members) members_to_add = list( set(new_members) - set(existing_room_members)) members_to_remove = list( set(existing_room_members) - set(new_members)) print(members_to_remove, members_to_remove) if len(members_to_add): add_room_members(room_id, room_name, members_to_add, current_user.username) if len(members_to_remove): remove_room_members(room_id, members_to_remove) return redirect(url_for('home')) room_members_str = ",".join(existing_room_members) print(room_members_str) return render_template('edit_room.html', message=message, room=room, room_members_str=room_members_str) return "Room not found", 404
def create_room(): message = '' if request.method == 'POST': room_name = request.form.get('room_name') if len(room_name) == 0: message = "Room Name cannot be empty" return render_template('create_room.html', message=message) if len(request.form.get('members')) == 0: message = "Add more members" return render_template('create_room.html', message=message) if (request.form.get('members')).find(',') != -1: usernames = [ username.strip() for username in request.form.get('members').split(',') ] else: usernames = [ username.strip() for username in request.form.get('members').split(' ') ] if current_user.username in usernames: usernames.remove(current_user.username) if not len(usernames): message = "Add more members" return render_template('create_room.html', message=message) if not len(usernames): message = "Add more members" return render_template('create_room.html', message=message) if len(room_name) and len(usernames): room_id = save_room(room_name, current_user.username) add_room_members(room_id, room_name, usernames, current_user.username) return redirect(url_for('view_room', room_id=room_id)) else: message = "Failed to create room" return render_template('create_room.html', message=message)
def edit_room(room_id): room = [i for i in db.get_room(room_id)] if room and db.is_room_admin(room_id, current_user.username): existing_room_members = [ member for member in db.get_room_members(room_id) ] existing_members = [ str(member['_id']['username']) for member in existing_room_members[0] ] if request.method == 'POST': room_name = request.form['room_name'] db.update_room(room_id, room_name) new_members = [ username.strip() for username in request.form['members'].split(',') ] members_to_add = list(set(new_members) - set(existing_members)) members_to_remove = list(set(existing_members) - set(new_members)) if len(members_to_add): db.add_room_members(room_id, room_name, members_to_add, current_user.username) if len(members_to_remove): db.remove_room_members(room_id, members_to_remove) return redirect('/') room_members_str = ', '.join(existing_members) return render_template('edit-room.html', room=room[0], room_members_str=room_members_str) return 'Room not fould', 404
def create_room(): user_id = get_jwt_identity() json_input = request.get_json(force=True) try: name = json_input['name'] except Exception as e: return jsonify({'Error': 'Issue parsing JSON.'}), 400 room_id = save_room(name, user_id) add_room_member(room_id, name, user_id, user_id, True, True) try: members = json_input['members'] if len(members) == 1: add_room_member(room_id, name, members[0], user_id) elif len(members) > 1: add_room_members(room_id, name, members, user_id) except Exception as e: current_app.logger.info( 'No members passed or incorrect args {}'.format(e)) return jsonify({'Success': '{}'.format(room_id)}), 200 return jsonify({'Success': '{}'.format(room_id)}), 200
def edit_room(room_id): room = get_room(room_id) admins = [] not_admin = [] error_msg = '' message = '' if room and is_room_admin(room_id, current_user.username): members = get_room_members(room_id) members_list = [username['_id']['username'] for username in members] for member in members: if is_room_admin(room_id, member['_id']['username']): admins.append(member['_id']['username']) else: not_admin.append(member['_id']['username']) if request.method == "POST": room_name = request.form.get('room_name') room['name'] = room_name update_room(room_id, room_name) make_admin = request.form.get('makeAdmin') removeAdmin = request.form.get('removeAdmin') add_member = request.form.get('addmember') rem_mem = request.form.get('remove_user') rem_room = request.form.get('delete_room') if make_admin: try: update_admin(room_id, make_admin) message = '{} is now an Admin🥳'.format(make_admin) except: error_msg = 'Some error occured' if removeAdmin: try: if len(admins) > 1: remove_admin(room_id, removeAdmin) message = '{} is no longer an Admin'.format( removeAdmin) else: message = 'Atleast one admin should be present' except: error_msg = 'Some error occured' if add_member: try: user = check_user(add_member) if user: if add_member not in members_list: add_mems = [username.strip() for username in add_member.split(',')] add_room_members(room_id, room_name, add_mems, current_user.username) message = '\"{}\" added successfully'.format( add_member) else: message = "\"{}\" already in room".format( add_member) else: message = "\"{}\" does not exist :(".format(add_member) except: error_msg = "Some error occured" if rem_mem: is_admin = is_room_admin(room_id, rem_mem) try: if len(members_list) > 1: if is_admin and len(admins) == 1: message = 'Atleast one Admin should be present ' else: remove_room_member(room_id, rem_mem) message = '{} removed successfully'.format(rem_mem) else: message = 'Atleast one member should be present' except: error_msg = "Some error occured" if rem_room == 'Remove': try: for member in members_list: print("hi") remove_room_member(room_id, member) delete_room(room_id) return redirect(url_for('home')) except: error_msg = "Some error oocured" # return redirect(url_for('edit_room',room_id=room_id,message = message)) return render_template('edit_room.html', not_admin=not_admin, admins=admins, room=room, members=members, error_msg=error_msg, room_id=room_id, message=message) else: return render_template('404.html', message='Only admins can Edit Room', room_id=room_id)
def assign_room(clusters): for i in clusters.keys(): room_id = save_room(i, 'system', i) add_room_members(room_id, i, clusters[i], 'system')