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
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