Ejemplo n.º 1
0
def logout(req):
    """
    登出账号
    """
    Util.delUserForSession(req)

    return HttpResponse('succeed')
Ejemplo n.º 2
0
def delUserByID(req):
    """
    根据ID删除用户
    """
    userID = int(req.POST.get("userID"))

    err, curID = Util.getUserIDBySession(req)

    if (err != 'succeed'):
        return HttpResponse("请先登录")

    err, cur = UserManager.getUserByID(curID)
    if (err != 'succeed'):
        return HttpResponse("Error")

    err, user = UserManager.getUserByID(userID)
    if (err != 'succeed'):
        return HttpResponse("Error")

    if (curID != userID and not cur.isAdmin):
        return HttpResponse("权限不足")

    err = UserManager.delUserByID(curID, userID)

    if (err != 'succeed'):
        return HttpResponse('Error')

    if (curID == userID):
        Util.delUserForSession(req)

    return HttpResponse("删除成功")
Ejemplo n.º 3
0
def login(req):
    """
    登录
    """
    userName = str(req.POST.get('userName'))
    password = str(req.POST.get('password'))

    err, curUser = UserManager.login(userName, password)

    if (err != "succeed"):
        print('!!!!!!!')
        return HttpResponse(err)

    Util.setUserForSession(req, curUser.id)

    return HttpResponse(err)
Ejemplo n.º 4
0
def createUser(req):
    """
    创建用户
    """
    userName = str(req.POST.get('userName'))
    password = str(req.POST.get('password'))

    err, curUser = UserManager.createUser(userName, password)

    if (err != 'succeed'):
        return HttpResponse("注册失败")

    email = str(req.POST.get('email'))
    avatar = str(req.POST.get('avatar'))
    if (avatar == ""):
        avatar = "https://cube.elemecdn.com/0/88/03b0d39583f48206768a7534e55bcpng.png"

    err = UserManager.changeInfo(curUser.id, curUser.userName, password,
                                 avatar, email)

    if (err != 'succeed'):
        return HttpResponse("注册成功!")

    ret = HttpResponse("注册成功!")

    print(Util.setUserForSession(req, curUser.id), "===set session here")
    return ret
Ejemplo n.º 5
0
def createUser(userName, password):
    '''
    描述:
    该函数传入用户名和密码,根据该用户名创建一个新用户(或者返回用户名已重复)
    返回值:
    (errorMessage: string, user: models.user)
    '''
    try:
        findUser = User.objects.get(userName=userName)
    except:
        pass
    else:
        return ("user name has already been used", None)
    print('???', Util.cryToMD5(password))
    user = User(userName=userName, password=Util.cryToMD5(password))

    user.save()
    return ("succeed", user)
Ejemplo n.º 6
0
def changePassword(userID, oldPassword, newPassword):
    '''
    描述:
    更改用户user的密码
    (需要先验证oldPassword是否和user中保存的密码相同)
    返回值:
    errorMessage: string
    '''
    try:
        user = User.objects.get(id=userID)
    except:
        return "can't find user with given id"

    if (user.password == Util.cryToMD5(oldPassword)):
        user.password = Util.cryToMD5(newPassword)
        user.save()
        return "succeed"
    pass
Ejemplo n.º 7
0
def getCurUserID(req):
    response = {}
    err, curUser = Util.getUserIDBySession(req)
    if err == 'succeed':
        response['userID'] = curUser
        response['msg'] = 'succeed'
        response['err_num'] = 0
    else:
        response['err_num'] = 1
        response['msg'] = 'error'
    # print(response)
    return JsonResponse(response)
Ejemplo n.º 8
0
def changeInfo(userID, userName, pwd, avatar, email):
    '''
    描述:
    更改用户user的基本信息
    返回值:
    errorMessage: string
    '''

    user = User.objects.get(id=userID)
    user.userName = userName
    user.password = Util.cryToMD5(pwd)
    user.avatar = avatar
    user.email = email
    user.save()
    return "succeed"
Ejemplo n.º 9
0
def isValide(userId, pwd):
    '''
        描述:
        验证输入的密码是否正确
        返回值:
        errorMessage: string
        '''
    err, user = getUserByID(userId)
    print(user.password)
    md5pwd = Util.cryToMD5(pwd)
    print(md5pwd)
    if (md5pwd == user.password):
        return 'succeed'
    else:
        return 'failed'
Ejemplo n.º 10
0
def login(userName, password):
    '''
    描述:
    尝试使用该账号密码进行登录,登录成功的话返回对应的用户(models.user),否则返回None

    返回值:
    (errorMessage: string, user: models.user)
    '''
    try:
        user = User.objects.get(userName=userName)
    except:
        print('wrong name')
        return ("no user named " + userName, None)
    else:
        realPassword = user.password
        # realPassword = user.password
        if (realPassword == Util.cryToMD5(password)):
            return ("succeed", user)
        else:
            print('wrong pwd')
            return ("wrong password for user " + userName, None)