コード例 #1
0
ファイル: recover.py プロジェクト: jobin-sun/QQ-Group-Job
    def put(self, request):
        uf = RecoverForm(loads(request.body.decode("utf-8")))
        if not uf.is_valid():
            return JsonResponse({"status": "error", "msg": "表单格式不正确"})

        token_str = uf.cleaned_data["token"]
        token = parse_token(token_str, "recover")
        if token is None:
            msg = {"status": "error", "msg": "error token"}
        else:
            if token.is_expired():
                msg = {"status": "error", "msg": "token is expired"}
            else:
                user = User.objects.filter(id__exact=token.id).first()
                if user is None:
                    msg = {"status": "error", "msg": "user not exsist"}
                else:
                    if token.is_user(user):
                        password = db_password(uf.cleaned_data["password"])
                        user.password = password
                        user.save()
                        msg = {"status": "success", "msg": "authentication is successful"}
                    else:
                        msg = {"status": "error", "msg": "error token"}
        return JsonResponse(msg)
コード例 #2
0
ファイル: recover.py プロジェクト: fplust/QQ-Group-Job
 def put(self, request):
     uf = RecoverForm(loads(request.body.decode("utf-8")))
     if not uf.is_valid():
         return JsonResponse({"status": "success", "msg": "表单提交有误"})
     token_str = uf.cleaned_data['token']
     token = parse_token(token_str, 'recover')
     if token is None:
         msg = {"status": "error", "msg": "error token"}
     else:
         if token.is_expired():
             msg = {"status": "error", "msg": "token is expired"}
         else:
             admin = GroupAdmin.objects.filter(id__exact=token.id).first()
             if admin is None:
                 msg = {"status": "error", "msg": "group not exsist"}
             else:
                 if token.is_user(admin):
                     password = db_password(uf.cleaned_data['password'])
                     admin.password = password
                     admin.save()
                     msg = {
                         "status": "success",
                         "msg": "authentication is successful"
                     }
                 else:
                     msg = {"status": "error", "msg": "error token"}
     return JsonResponse(msg)
コード例 #3
0
    def __init__(self, request):
        self.msg = "" #用户状态或,错误信息
        self.jsonForm = {} # 解析GET或POST等方法中参数
        self.user = None
        if request.method == "GET" or request.method == "DELETE":
            self.jsonForm = request.GET.dict()
        else:
            self.jsonForm = loads(request.body.decode("utf-8"))
        if "token" in self.jsonForm:
            token = self.jsonForm["token"]
        else:
            token = request.COOKIES.get('token')
        if not token:
            self.msg = "Token not found"
            return
        user_token = parse_token(token, 'login')
        if not user_token:
            self.msg = "Format of token is not correct, Check your token(%s)" % token
            return

        if user_token.is_expired():
            self.msg = "Token is expired, Your time is %s" % datetime.fromtimestamp(
                user_token.timestamp).strftime('%Y-%m-%d %H:%M:%S')
            return

        user = User.objects.filter(id__exact = user_token.id).first()
        if not user:
            self.msg = "User not found, Check your id(%s)." % user_token.id
            return

        if user_token.is_user(user):
            self.msg = "User(%s) logined" % user_token.id
            self.user = user
        else:
            self.msg = "Token is illegal, Check your token(%s)" % token
コード例 #4
0
 def post(self, request):
     uf = RecoverForm(loads(request.body.decode("utf-8")))
     token_str = uf.cleaned_data['token']
     token = parse_token(token_str, 'recover')
     if token is None:
         msg = {"status": "error", "msg": "error token"}
     else:
         if token.is_expired():
             msg = {"status": "error", "msg": "token is expired"}
         else:
             user = User.objects.filter(id__exact=token.id).first()
             if user is None:
                 msg = {"status": "error", "msg": "user not exsist"}
             else:
                 if token.is_user(user):
                     password = db_password(uf.cleaned_data['password'])
                     user.password = password
                     user.save()
                     msg = {
                         "status": "success",
                         "msg": "authentication is successful"
                     }
                 else:
                     msg = {"status": "error", "msg": "error token"}
     return JsonResponse(msg)
コード例 #5
0
ファイル: activate.py プロジェクト: fplust/QQ-Group-Job
    def get(self, request):
        token_str = request.GET['token']
        token = parse_token(token_str, 'activate')

        if token is None:
            msg = {"status": "error", "msg": "error token"}
        else:
            if token.is_expired():
                msg = {"status": "error", "msg": "token is expired"}
            else:
                admin = GroupAdmin.objects.filter(id__exact=token.id).first()
                if admin is None:
                    msg = {"status": "error", "msg": "group not exsist"}
                else:
                    if admin.status == 1:
                        msg = {
                            "status": "error",
                            "msg": "The admin already activated"
                        }
                    else:
                        if token.is_user(admin):
                            admin.status = 1
                            admin.save()
                            if admin.userType == 0:
                                token = new_token(admin, 'recover')
                                token.id = admin.id
                                token = token.get_token()
                                return HttpResponseRedirect(
                                    '/#/group/new_pwd/' + token)
                            else:
                                return HttpResponseRedirect('/#/group/login')
                        else:
                            msg = {"status": "error", "msg": "error token"}
        return JsonResponse(msg)
コード例 #6
0
 def get(self, request):
     token_str = request.GET['token']
     token = parse_token(token_str, 'activate')
     if token is None:
         msg = {"status": "error", "msg": "error token"}
     else:
         if token.is_expired():
             msg = {"status": "error", "msg": "token is expired"}
         else:
             user = User.objects.filter(id__exact=token.id).first()
             if user is None:
                 msg = {"status": "error", "msg": "user not exsist"}
             else:
                 if user.status == 1:
                     msg = {
                         "status": "error",
                         "msg": "user already activated"
                     }
                 else:
                     if token.is_user(user):
                         user.status = 1
                         user.save()
                         msg = {"status": "success", "msg": "activated"}
                     else:
                         msg = {"status": "error", "msg": "error token"}
     return JsonResponse(msg)
コード例 #7
0
ファイル: activate.py プロジェクト: jobin-sun/QQ-Group-Job
    def get(self, request):
        token_str = request.GET['token']
        token = parse_token(token_str, 'activate')

        if token is None:
            msg = {
                "status" : "error",
                "msg" : "error token"
            }
        else:
            if token.is_expired():
                msg = {
                    "status" : "error",
                    "msg" : "token is expired"
                }
            else:
                admin = GroupAdmin.objects.filter(id__exact = token.id).first()
                if admin is None:
                    msg = {
                        "status" : "error",
                        "msg" : "group not exsist"
                    }
                else:
                    if admin.status == 1:
                        msg = {
                            "status" : "error",
                            "msg" : "The admin already activated"
                        }
                    else:
                        if token.is_user(admin):
                            admin.status = 1
                            admin.save()
                            if admin.userType == 0:
                                token = new_token(admin, 'recover')
                                token.id = admin.id
                                token = token.get_token()
                                return HttpResponseRedirect('/#/group/new_pwd/'+token)
                            else:
                                return HttpResponseRedirect('/#/group/login')
                        else:
                            msg = {
                                "status" : "error",
                                "msg" : "error token"
                            }
        return JsonResponse(msg)
コード例 #8
0
    def get(self, request):
        token_str = request.GET['token']
        token = parse_token(token_str, 'activate')

        if token is None:
            msg = {
                "status" : "error",
                "msg" : "error token"
            }
        else:
            if token.is_expired():
                msg = {
                    "status" : "error",
                    "msg" : "token is expired"
                }
            else:
                owner = GroupAdmin.objects.filter(groupId__exact = token.id, userType__exact = 1).first()
                if owner is None:
                    msg = {
                        "status" : "error",
                        "msg" : "group not exsist"
                    }
                else:
                    if owner.status == 1:
                        msg = {
                            "status" : "error",
                            "msg" : "the group owner already activated"
                        }
                    else:
                        if token.is_user(owner):
                            owner.status = 1
                            owner.save()
                            msg = {
                                "status" : "success",
                                "msg" : "activated"
                            }
                        else:
                            msg = {
                                "status" : "error",
                                "msg" : "error token"
                            }
        return JsonResponse(msg)
コード例 #9
0
ファイル: recover.py プロジェクト: jobin-sun/QQ-Group-Job
 def put(self, request):
     uf = RecoverForm(loads(request.body.decode("utf-8")))
     if not uf.is_valid():
         return JsonResponse({
             "status": "success",
             "msg": "表单提交有误"
         })
     token_str = uf.cleaned_data['token']
     token = parse_token(token_str, 'recover')
     if token is None:
         msg = {
             "status" : "error",
             "msg" : "error token"
         }
     else:
         if token.is_expired():
             msg = {
                 "status" : "error",
                 "msg" : "token is expired"
             }
         else:
             admin = GroupAdmin.objects.filter(id__exact = token.id).first()
             if admin is None:
                 msg = {
                     "status" : "error",
                     "msg" : "group not exsist"
                 }
             else:
                 if token.is_user(admin):
                     password = db_password(uf.cleaned_data['password'])
                     admin.password = password
                     admin.save()
                     msg = {
                         "status" : "success",
                         "msg" : "authentication is successful"
                     }
                 else:
                     msg = {
                         "status" : "error",
                         "msg" : "error token"
                     }
     return JsonResponse(msg)
コード例 #10
0
 def get(self, request):
     token_str = request.GET['token']
     token = parse_token(token_str, 'activate')
     if token is None:
         msg = {
             "status" : "error",
             "msg" : "error token"
         }
     else:
         if token.is_expired():
             msg = {
                 "status" : "error",
                 "msg" : "token is expired"
             }
         else:
             user = User.objects.filter(id__exact = token.id).first()
             if user is None:
                 msg = {
                     "status" : "error",
                     "msg" : "user not exsist"
                 }
             else:
                 if user.status == 1:
                     msg = {
                         "status" : "error",
                         "msg" : "user already activated"
                     }
                 else:
                     if token.is_user(user):
                         user.status = 1
                         user.save()
                         msg = {
                             "status" : "success",
                             "msg" : "activated"
                         }
                     else:
                         msg = {
                             "status" : "error",
                             "msg" : "error token"
                         }
     return JsonResponse(msg)
コード例 #11
0
 def post(self, request):
     uf = RecoverForm(loads(request.body.decode("utf-8")))
     token_str = uf.cleaned_data['token']
     token = parse_token(token_str, 'recover')
     if token is None:
         msg = {
             "status" : "error",
             "msg" : "error token"
         }
     else:
         if token.is_expired():
             msg = {
                 "status" : "error",
                 "msg" : "token is expired"
             }
         else:
             owner = GroupAdmin.objects.filter(groupId__exact = token.id, userType__exact = 1).first()
             if owner is None:
                 msg = {
                     "status" : "error",
                     "msg" : "group not exsist"
                 }
             else:
                 if token.is_user(owner):
                     password = db_password(uf.cleaned_data['password'])
                     owner.password = password
                     owner.save()
                     msg = {
                         "status" : "success",
                         "msg" : "authentication is successful"
                     }
                 else:
                     msg = {
                         "status" : "error",
                         "msg" : "error token"
                     }
     return JsonResponse(msg)
コード例 #12
0
    def __init__(self, request):
        self.msg = "" #用户状态或,错误信息
        self.jsonForm = {} # 解析GET或POST等方法中参数
        self.admin = None
        if request.method == "GET" or request.method == "DELETE":
            self.jsonForm = request.GET.dict()
        else:
            self.jsonForm = loads(request.body.decode("utf-8"))
        if "admin_token" in self.jsonForm:
            token = self.jsonForm["admin_token"]
        else:
            token = request.COOKIES.get('admin_token')
        if not token:
            self.msg = "Token not found"
            return
        admin_token = parse_token(token, 'login')
        if admin_token is None:
            self.msg = "Format of token is not correct, Check your token(%s)" % token
            return

        if admin_token.is_expired():
            self.msg = "Token is expired, Your time is %s" % datetime.fromtimestamp(
                admin_token.timestamp).strftime('%Y-%m-%d %H:%M:%S')

            return

        admin = GroupAdmin.objects.filter(id__exact = admin_token.id).first()
        if not admin:
            self.msg = "Admin not found, id:%s." % admin_token.id
            return

        if admin_token.is_user(admin):
            self.msg = "Admin logined"
            self.admin = admin
        else:
            self.msg = "Token is illegal, Check your token(%s)" % token
コード例 #13
0
    def __init__(self, request):
        self.msg = ""  #用户状态或,错误信息
        self.jsonForm = {}  # 解析GET或POST等方法中参数
        self.admin = None
        if request.method == "GET" or request.method == "DELETE":
            self.jsonForm = request.GET.dict()
        else:
            self.jsonForm = loads(request.body.decode("utf-8"))
        if "admin_token" in self.jsonForm:
            token = self.jsonForm["admin_token"]
        else:
            token = request.COOKIES.get('admin_token')
        if not token:
            self.msg = "Token not found"
            return
        admin_token = parse_token(token, 'login')
        if admin_token is None:
            self.msg = "Format of token is not correct, Check your token(%s)" % token
            return

        if admin_token.is_expired():
            self.msg = "Token is expired, Your time is %s" % datetime.fromtimestamp(
                admin_token.timestamp).strftime('%Y-%m-%d %H:%M:%S')

            return

        admin = GroupAdmin.objects.filter(id__exact=admin_token.id).first()
        if not admin:
            self.msg = "Admin not found, id:%s." % admin_token.id
            return

        if admin_token.is_user(admin):
            self.msg = "Admin logined"
            self.admin = admin
        else:
            self.msg = "Token is illegal, Check your token(%s)" % token