def create_super_user(self, db_session): try: from app_user.schemas import user_serializer from app_user.models import User, Person name = input("Name:") person = get_or_create(Person, db_session, Person.name == name) person.last_name = input("LastName:") password = getpass("Password: "******"Phone:") person.name = name person.email = input("Email:") db_session.add(person) user = get_or_create(User, db_session, User.phone == phone) user.username = input("UserName:"******"admin"]) user.set_password(password) user.person = person # superuser_serializer.load(user_serializer.dump(user)) db_session.add(user) db_session.commit() result = user_serializer.dump(db_session.query(User).get(user.id)) return result except Exception as e: logging.info(e.args)
def new_user(db_session, data): try: try: user_serializer.load(data) person = data['person'] person_name = person['name'] person_last_name = person['last_name'] person_phone = person['phone'] person_bio = person['bio'] username = data['username'] person = get_or_create(Person, db_session, name=person_name) person.name = person_name person.last_name = person_last_name person.phone = person_phone person.bio = person_bio db_session.add(person) user = get_or_create(User, db_session, username=username) user.username = username user.set_password(data['password']) user.person = person db_session.add(user) db_session.commit() result = user_serializer.dump(db_session.query(User).get(user.id)) rooms = get_rooms(db_session=db_session) room_serializer = RoomSchema(many=True) rooms = room_serializer.dump(rooms) result.update({"rooms": rooms}) return result except ValidationError as err: return err.messages except HTTPError as err: raise HTTPError(status=404, body="something")
def get_user_by_id(self, db_session: Session, pk): user = get_object(User, db_session, User.id == pk) dumped_user = user_serializer.dump(user) if not user: raise HTTPError(*TOKEN_EXPIRED) if not user.is_active: raise HTTPError(*USER_IS_NOT_ACTIVE) return dumped_user
def set_user_role(pk, db_session: Session, data): validate_data(set_role_serializer, data) # validate_permission("edit_roles", db_session, User) user = get_object_or_404(User, db_session, User.id == pk) user.set_roles(data['roles']) db_session.commit() result = user_serializer.dump(db_session.query(User).get(user.id)) return HTTPResponse(status=status.HTTP_201_CREATED, body=result)
def authenticate_user(self, username, password): user_obj = self.get_user_obj(username=username) if user_obj is not None: if username == user_obj.username and user_obj.check_password(password): self.user = user_serializer.dump(user_obj) return self.user return None return None
def authenticate_user(self, username, password): # self.defender.is_ip_in_blacklist() validate_data(login_serializer, data={"phone": username, "password": password}) user_obj = self.get_user_by_phone(phone=username) if user_obj is not None: if username == user_obj.phone and user_obj.check_password(password): user = user_serializer.dump(user_obj) return user # self.defender.check_ip_exceed() raise HTTPError(*AUTHENTICATION_ERROR)
def edit_user(pk, db_session: Session, data): validate_data(user_edit_serializer, data) user = get_object_or_404(User, db_session, User.id == pk) person = data['person'] user.person.name = person['name'] user.person.last_name = person['last_name'] user.person.email = person['email'] user.phone = data['phone'] user.username = data['phone'] db_session.commit() result = user_serializer.dump(db_session.query(User).get(user.id)) return HTTPResponse(status=status.HTTP_201_CREATED, body=result)
def create_super_user(self, db_session): try: name = input("Name:") person = get_or_create(Person, db_session, name=name) phone = input("Phone:") password = getpass("Password: "******"LastName:") person.name = name person.bio = "" db_session.add(person) user = get_or_create(User, db_session, phone=phone) user.phone = phone user.set_roles(["admin"]) user.set_password(password) user.person = person superuser_serializer.load(user_serializer.dump(user)) db_session.add(user) db_session.commit() result = user_serializer.dump(db_session.query(User).get(user.id)) return result except Exception as e: print(e.args)
def create_user(db_session: Session, data): validate_data(user_serializer, data) is_object_exist_409(User, db_session, User.phone == data['phone']) person = data['person'] person_obj = get_or_create(Person, db_session, name=person['name']) person_obj.name = person['name'] person_obj.last_name = person['last_name'] person_obj.email = person['email'] db_session.add(person_obj) user = get_or_create(User, db_session, phone=data['phone']) user.phone = data['phone'] user.set_roles(data['roles']) user.username = user.get_phone user.set_password(data['password']) user.person = person_obj db_session.add(user) db_session.commit() result = user_serializer.dump(db_session.query(User).get(user.id)) return HTTPResponse(status=201, body=result)
def create_user(db_session, data): try: user_serializer.load(data) except Exception as e: raise HTTPError(404, e.args) identity = get_user_identity(db_session) if identity.check_permission("add_user", User): is_object_exist_409(User, db_session, User.phone == data['phone']) person = data['person'] person_obj = get_or_create(Person, db_session, name=person['name']) person_obj.name = person['name'] person_obj.last_name = person['last_name'] person_obj.bio = person['bio'] db_session.add(person_obj) user = get_or_create(User, db_session, phone=data['phone']) user.phone = data['phone'] user.set_roles(data['roles']) user.set_password(data['password']) user.person = person_obj db_session.add(user) db_session.commit() result = user_serializer.dump(db_session.query(User).get(user.id)) return result raise HTTPError(403, "Access denied")
def get_user(pk, db_session): user = get_object_or_404(User, db_session, User.id == pk) result = user_serializer.dump(user) raise HTTPResponse(status=200, body=result)
def get_user(pk, db_session): user = get_object_or_404(User, db_session, User.id == pk) result = user_serializer.dump(user) return HTTPResponse(status=status.HTTP_200_OK, body=result)
def get_current_user(db_session: Session): req_user_json = bottle.request.get_user() current_user = db_session.query(User).get(req_user_json['id']) result = user_serializer.dump(current_user) return HTTPResponse(status=status.HTTP_200_OK, body=result)