예제 #1
0
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)
예제 #2
0
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)
예제 #3
0
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 'Нет'))
예제 #5
0
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)
예제 #6
0
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)
예제 #7
0
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)
예제 #8
0
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))
예제 #9
0
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)
예제 #10
0
def get_users_in_game(gameId):
    user = Users.objects(gamePlayed=gameId)
    return jsonify(user)
예제 #11
0
def get_user(id):
    user = Users.objects(userId=id).first()
    return jsonify(user)