def receive_new_game_from_instructor(data): # Set all games to passed Games.objects.update(isCurrent=False) # Post only gameId here to current Games.objects(gameId=data).update(isCurrent=True) Users.objects(userType="Instructor").update(gamePlayed=data) # Remove all student users Users.objects(userType="Student").delete() send_broadcast_message_game_room(data)
def add_user(): user = request.get_json() newUser = Users(userId=user["userId"], userType=user["userType"], username=user["username"], email=user["email"], password=user["password"], fullName=user["fullName"], studentClass=user["studentClass"], studentNumber=user["studentNumber"], gamePlayed=user["gamePlayed"]) newUser.save() return jsonify(newUser)
def add_rip(): reason = request.get_json() rip = None userRip = Users.objects(username=reason["description"]).first() userId = userRip.userId if userRip else 1 if reason["ripId"] == 0: newId = ReasonInPlays.objects.count() + 1 rip = ReasonInPlays(ripId=newId, mainClaimId=reason["mainClaimId"], studentId=userId, reasonStatement=reason["reasonStatement"], description=reason["description"], logicSide=reason["logicSide"]) rip.save() else: rip = ReasonInPlays.objects(ripId=reason["ripId"]).first() rip.update(mainClaimId=reason["mainClaimId"], studentId=reason["studentId"], reasonStatement=reason["reasonStatement"], description=reason["description"], logicSide=reason["logicSide"]) return jsonify(rip)
def init_data(self): for num, user in enumerate(Users.list()): self.table.insertRow(num) self.table.setItem(num, 0, QTableWidgetItem(str(user.ID))) self.table.setItem(num, 1, QTableWidgetItem(user.name)) self.table.setItem(num, 2, QTableWidgetItem(user.login)) self.table.setItem(num, 3, QTableWidgetItem('Да' if user.admin else 'Нет'))
def login(): requestUser = request.get_json() user = Users.objects(username=requestUser["username"], password=requestUser["password"]).first() if not user: return jsonify({'error': 'User and password are invalid!'}) return jsonify(user)
def delete_user(): user = request.get_json() deletedUser = Users.objects(userId=user["userId"]).first() if not deletedUser: return jsonify({'error': 'data not found'}) else: deletedUser.delete() return jsonify(deletedUser)
def update_user(): user = request.get_json() updateUser = Users.objects(userId=user["userId"]).first() if not updateUser: return jsonify({'error': 'data not found'}) else: updateUser.update(password=user["password"], fullName=user["fullName"], studentClass=user["studentClass"], studentNumber=user["studentNumber"], gamePlayed=user["gamePlayed"]) return jsonify(updateUser)
def receive_new_user_from_student(data): userGame = data.split(':') existedUser = Users.objects(username=userGame[0], gamePlayed=userGame[1]).first() if not existedUser: newId = Users.objects.count() + 1 newUser = Users(userId=newId, userType="Student", username=userGame[0], email=userGame[0], fullName=userGame[0], gamePlayed=userGame[1]) newUser.save() userData = Users.objects(gamePlayed=int(userGame[1])).only('username') listUsers = [] for u in userData: listUsers.append(u.username) send_broadcast_message_user(format(listUsers))
def get_rip_by_user(username): user = Users.objects(username=username).first() reason = ReasonInPlays.objects(studentId=user.userId) if user else ReasonInPlays.objects return jsonify(reason)
def get_users_in_game(gameId): user = Users.objects(gamePlayed=gameId) return jsonify(user)
def get_user(id): user = Users.objects(userId=id).first() return jsonify(user)