예제 #1
0
def checkLogin(id, password):
    db = connectDB()
    password = hashlib.md5(password.encode()).hexdigest()
    result = db.users.count_documents({'$and': [{'username': id}, {'password': password}]})
    if result == 1:
        return True
    return False
예제 #2
0
def setNeedChange(username):
    db = connectDB()
    password = hashlib.md5("P@ssw0rd".encode()).hexdigest()
    where = {'username': username}
    setTo = {'$set': {'password': password, 'needChange': 1}}
    db.users.update_one(where, setTo)
    return True
예제 #3
0
def checkIfNeedChange(username):
    db = connectDB()
    where = {'$and': [{'username': username}, {'needChange': 1}]}
    cursor = db.users.count_documents(where)
    if cursor == 1:
        return True
    return False
예제 #4
0
def changePassword(username, password):
    db = connectDB()
    password = hashlib.md5(password.encode()).hexdigest()
    where = {'username': username}
    setTo = {'$set': {'password': password, 'needChange': 0}}
    db.users.update_one(where, setTo)
    return True
예제 #5
0
def checkAdmin(id):
    db = connectDB()
    result = db.users.find({'username': id})
    for i in result:
        if i['isAdmin'] == 1:
            return True
    return False
예제 #6
0
def deleteTask(_id):
    id = ObjectId(_id)
    db = connectDB()
    where = {'_id' : id}
    try:
        db.alltasks.delete_one(where)
        return True
    except:
        return False
예제 #7
0
def getAllGeneralUser():
    data = []
    db = connectDB()
    where = {'isAdmin': 0}
    cursor = db.users.find(where)
    for i in cursor:
        user = {'username': i['username'], 'name': i['name'], 'lastname': i['lastname'], 'email': i['email'],
                'phone': i['phone']}
        data.append(user)
    return data
예제 #8
0
def getAllTasks():
    tasks = []
    db = connectDB()
    where = {}
    cursor = db.alltasks.find(where)
    for i in cursor:
        task = {'_id': i['_id'], 'topic': i['topic'], 'detail': i['detail'], 'status': i['status'], 'owner': i['owner'],
                'createdate': i['createdate'], 'deadline': i['deadline']}
        tasks.append(task)
    return tasks
예제 #9
0
def createTask(data):
    db = connectDB()
    try:
        db.alltasks.insert_one(
            {'topic': data['topic'], 'detail': data['detail'], 'status': data['status'], 'owner': data['owner'],
             'createdate': data['createdate'], 'deadline': data['deadline']}
        )
        return True
    except:
        return False
예제 #10
0
def updateTask(_id,data):
    id = ObjectId(_id)
    try:
        db = connectDB()
        where = {'_id': id}
        setTo = {'$set': {'topic': data['topic'], 'detail': data['detail'], 'status': data['status'], 'owner': data['owner'],
             'createdate': data['createdate'], 'deadline': data['deadline']}}
        db.alltasks.update_one(where, setTo)
        return True
    except:
        return False
예제 #11
0
def insetUser(info):
    password = hashlib.md5(info['password'].encode()).hexdigest()
    db = connectDB()
    s = "ghktr"
    s.lower()
    finddub = db.users.count_documents({'username': info['username'].lower()})
    if finddub > 0:
        return False
    else:
        db.users.insert_one(
            {'username': info['username'], 'password': password, 'name': info['name'], 'lastname': info['lastname'],
             'email': info['email'], 'phone': info['phone'], 'isAdmin': info['isAdmin'], 'needChange': 0})
        return True
예제 #12
0
def updateUser(data):
    db = connectDB()
    where = {'username': data[0]}
    setTo = {'$set': {'name': data[1], 'lastname': data[2], 'phone': data[3], 'email': data[4]}}
    db.users.update_one(where, setTo)
    return True
예제 #13
0
def deleteUser(username):
    db = connectDB()
    where = {'username': username}
    cursor = db.users.delete_one(where)
    return True
예제 #14
0
def getUserCount():
    db = connectDB()
    where = {'isAdmin': 0}
    total = db.users.count_documents(where)
    return total
예제 #15
0
def promoteToAdmin(username):
    db = connectDB()
    where = {'username': username}
    setTo = {'$set': {'isAdmin': 1}}
    db.users.update_one(where, setTo)
    return True