Beispiel #1
0
    def post(self):
        data = _user_parser.parse_args()
        data["lozinka"]= (encrypt(data["lozinka"]))
        
        if UserModel.find_by_email(data["email"]):
            return {"message":"Korisnik s tim emailom već postoji"},400
        trajanje= datetime.timedelta(minutes=60)
        user = UserModel(data["email"], data["lozinka"], data["ime"], data["prezime"], data["mobitel"])
        user.save_to_db()
        newuser= UserModel.find_by_email(data["email"])
        access_token= create_access_token(identity=newuser.id, fresh=True, expires_delta=trajanje)
        refresh_token = create_refresh_token(newuser.id)
        rola= RoleModel.find_by_rolaID(3)


        return {
                "message":"Korisnički račun uspješno stvoren",
                "access_token": access_token,
                "refresh_token": refresh_token,
                "user":{"ime":user.ime,
                        "role":rola.rola}
                    
            }, 201
Beispiel #2
0
    def post(self):
        trajanje= datetime.timedelta(minutes=60)
        data=_user_parser.parse_args()
        user = UserModel.find_by_email(data["email"])
        if user!=None:
            rola= RoleModel.find_by_rolaID(user.roleID)
            enpass = user.lozinka
            


        
        if (data["admin_required"]==0) or (data["admin_required"]==None):
            if user and ( decrypt(enpass , data["lozinka"])==True):
                access_token=create_access_token(identity=user.id, fresh=True, expires_delta=trajanje)
                refresh_token=create_refresh_token(identity=user.id)
                return {"message":"Uspješna prijava.",
                        "access_token": access_token,
                        "refresh_token": refresh_token,
                        "user":
                            {"ime":user.ime,
                            "role":rola.rola}
                        },200
            return {"message": "Pogrešan email ili lozinka"}, 401 
        
        if (data["admin_required"]==1):
            if user and decrypt(enpass, data["lozinka"])==True and (user.roleID!=1 and user.roleID!=2):
                return {"message":"Samo administratori imaju pristup!!!"}, 401
            elif user and decrypt(enpass, data["lozinka"])==True and (user.roleID==1 or user.roleID==2):
                access_token=create_access_token(identity=user.id, fresh=True, expires_delta=trajanje)
                refresh_token=create_refresh_token(identity=user.id)
                return {"message":"Uspješna prijava.",
                        "access_token": access_token,
                        "refresh_token": refresh_token,
                        "user":
                            {"ime":user.ime,
                            "role":rola.rola}
                        },200