Exemplo n.º 1
0
def resolve_updateSetting(_, info, **kargs):
    isauth = is_auth(info.context)
    if isauth["isAuth"]:
        id = isauth["user"]
        try:
            user = CustomUser.objects.get(pk=id)
            try:
                user_profile = UserProfile.objects.get(user=user)
                usertool.update_last_active(user_profile)
                #private_key = user_profile.private_key
                #cipher_rsa = PKCS1_v1_5.new(RSA.importKey(private_key))
                #if ENCODEDVARS in kargs:
                #kargs = decode_set(cipher_rsa, kargs, kargs[ENCODEDVARS])
                #print(kargs,'===========')
                for var in USERADD:
                    if var in kargs:
                        setattr(user_profile, var, kargs[var])
                user_profile.save()
                return {"fail": False, "message": ""}

            except:
                return {"fail": True, "message": "Account setting wrong!"}
        except:
            return {"fail": True, "message": "Account doesn't exists!"}
    else:
        return {
            "fail": True,
            "message": "Account not authenticated, please login in firstly"
        }
Exemplo n.º 2
0
def resolve_resetPassword(_, info, **kargs):
    isauth = is_auth(info.context)
    if isauth["isAuth"]:
        id = isauth["user"]
        try:
            user = CustomUser.objects.get(pk=id)
            try:
                user_profile = UserProfile.objects.get(user=user)
                usertool.update_last_active(user_profile)
                private_key = user_profile.private_key
                cipher_rsa = PKCS1_v1_5.new(RSA.importKey(private_key))
                if ENCODEDVARS in kargs:
                    kargs = decode_set(cipher_rsa, kargs, kargs[ENCODEDVARS])
                user = authenticate(email=user.email,
                                    password=kargs["opassword"])
                if user is not None:
                    user.set_password(kargs["password"])
                    user.save()
                    return {"fail": False, "message": ""}
                else:
                    return {
                        "fail": True,
                        "message": "Account not exist or password wrong!"
                    }
            except:
                return {"fail": True, "message": "Account setting wrong!"}
        except:
            return {"fail": True, "message": "Account doesn't exists!"}
    else:
        return {
            "fail": True,
            "message": "Account not authenticated, please login in firstly"
        }
Exemplo n.º 3
0
def resolve_isAuthenticated1(_, info, **kargs):
    isauth = is_auth(info.context)
    if isauth["isAuth"]:
        if isauth["needupdate"]:
            #(authToken, refreshToken) = gen_token(isauth["user"])
            return {"isAuth": True, "needUpdate": True}
            #return {"isAuth":True}
        else:
            return {"isAuth": True}
    else:
        return {"isAuth": False}
Exemplo n.º 4
0
def resolve_userProfile(_, info, **kargs):
    isauth = is_auth(info.context)
    if isauth["isAuth"]:
        id = isauth["user"]
        try:
            user = CustomUser.objects.get(pk=id)
            try:
                user_profile = UserProfile.objects.get(user=user)
                return {
                    "avatar": user_profile.avatar,
                    "nickname": user_profile.nickname,
                    "email": user.email,
                    "message": ""
                }
            except:
                return {"message": "NoUserSetting"}
        except:
            return {"message": "NoUser"}
    else:
        return {"message": "isNotAuth"}
Exemplo n.º 5
0
def resolve_postAct(_, info, action, **kwargs):
    actions = ['add','hide','delete']
    if not action in actions:
        return {'fail':True,'message':'Not allowed action'}

    '''check user'''
    isauth = is_auth(info.context)
    if isauth["isAuth"]:
        id = isauth["user"]
        try:
            user = CustomUser.objects.get(pk=id)
        except:
            return {'fail':True,'message':'User is not correct!'}
    else:
        return {'fail':True,'message':'User is not correct!'}
    #print(kwargs,'------',action)

    '''check thread'''
    if 'threadId' in kwargs:
        try:
            thread = Thread.objects.get(pk=kwargs['threadId'])
        except:
            return {'fail':True,'message':'thread is not correct!'}
    else:
        return {'fail':True,'message':'thread is not correct!'}


    if action == 'add':
        try:
            content = kwargs['content'] if 'content' in kwargs else ''
            Post.objects.create(content=content,creator=user,thread=thread)
            thread.inc_post();
            thread.update_active();
            forum = Forum.objects.get(id=thread.forum_id)
            forum.inc_post();
            #print(content)
            return {'fail':False,'message':''}
        except:
            return {'fail':True,'message':'add post failed!'}

    '''
Exemplo n.º 6
0
def resolve_threadAct(_, info, action, **kwargs):
    actions = ['new', 'hide', 'delete']
    if not action in actions:
        return {'fail': True, 'message': 'Not allowed action'}
    '''check user'''
    isauth = is_auth(info.context)
    if isauth["isAuth"]:
        id = isauth["user"]
        try:
            user = CustomUser.objects.get(pk=id)
        except:
            return {'fail': True, 'message': 'User is not correct!'}
    else:
        return {'fail': True, 'message': 'User is not correct!'}
    #print(kwargs,'------',action)
    '''check forum'''
    if 'forumName' in kwargs:
        try:
            forum = Forum.objects.get(name=kwargs['forumName'])
        except:
            return {'fail': True, 'message': 'Forum is not correct!'}
    else:
        return {'fail': True, 'message': 'Forum is not correct!'}

    if action == 'new':
        try:
            content = kwargs['content'] if 'content' in kwargs else ''
            thread = Thread.objects.create(title=kwargs['title'],
                                           content=content,
                                           creator=user,
                                           forum=forum)
            Post.objects.create(content=content, creator=user, thread=thread)
            forum.inc_thread()
            forum.inc_post()
            #print(content)
            return {'fail': False, 'message': ''}
        except:
            return {'fail': True, 'message': 'Create new thread failed!'}
    '''