def create_minimal_user(self, email, groups=[], save_now=False) -> User: """Previous create_user method""" validator = TracimValidator() validator.add_validator('email', email, user_email_validator) validator.validate_all() self._check_email(email) user = User() user.email = email # TODO - G.M - 2018-11-29 - Check if this default_value can be # incorrect according to user_public_name_validator user.display_name = email.split('@')[0] user.created = datetime.datetime.utcnow() if not groups: gapi = GroupApi( current_user=self._user, # User session=self._session, config=self._config, ) groups = [gapi.get_one(Group.TIM_USER)] for group in groups: user.groups.append(group) self._session.add(user) if save_now: self._session.flush() return user
def create_minimal_user( self, email, groups=[], save_now=False ) -> User: """Previous create_user method""" validator = TracimValidator() validator.add_validator('email', email, user_email_validator) validator.validate_all() self._check_email(email) user = User() user.email = email # TODO - G.M - 2018-11-29 - Check if this default_value can be # incorrect according to user_public_name_validator user.display_name = email.split('@')[0] user.created = datetime.datetime.utcnow() if not groups: gapi = GroupApi( current_user=self._user, # User session=self._session, config=self._config, ) groups = [gapi.get_one(Group.TIM_USER)] for group in groups: user.groups.append(group) self._session.add(user) if save_now: self._session.flush() return user
def create_minimal_user(self, email, profile: typing.Optional[Profile] = None, save_now=False) -> User: """Previous create_user method""" lowercase_email = email.lower() if email is not None else None validator = TracimValidator() validator.add_validator("email", lowercase_email, user_email_validator) validator.validate_all() self._check_email(lowercase_email) user = User() user.email = lowercase_email # TODO - G.M - 2018-11-29 - Check if this default_value can be # incorrect according to user_public_name_validator user.display_name = email.split("@")[0] user.created = datetime.datetime.utcnow() if not profile: profile = Profile.get_profile_from_slug( self._config.USER__DEFAULT_PROFILE) user.profile = profile self._session.add(user) if save_now: self._session.flush() return user
def create_minimal_user( self, email: typing.Optional[str] = None, username: typing.Optional[str] = None, profile: typing.Optional[Profile] = None, save_now=False, ) -> User: """Previous create_user method""" if not email: if self._config.EMAIL__REQUIRED: raise EmailRequired("Email is required to create an user") if not username: raise EmailOrUsernameRequired( "Email or username is required to create an user") lowercase_email = email.lower() if email is not None else None validator = TracimValidator() validator.add_validator("email", lowercase_email, user_email_validator) validator.validate_all() if lowercase_email is not None: self._check_email(lowercase_email) if username is not None: self.check_username(username) user = User() user.email = lowercase_email user.username = username # TODO - G.M - 2018-11-29 - Check if this default_value can be # incorrect according to user_public_name_validator user.display_name = email.split("@")[0] if email else username user.created = datetime.datetime.utcnow() if not profile: profile = Profile.get_profile_from_slug( self._config.USER__DEFAULT_PROFILE) user.profile = profile if save_now: self.save(user) return user