Exemple #1
0
 def clean_username(self):
     validate_username(self.cleaned_data['username'])
     new_user = User.objects.get_blank_user()
     new_user.set_username(self.cleaned_data['username'])
     try:
         new_user.full_clean()
     except ValidationError as e:
         new_user.is_username_valid(e)
     return self.cleaned_data['username']
Exemple #2
0
 def clean_username(self):
     validate_username(self.cleaned_data['username'])
     new_user = User.objects.get_blank_user()
     new_user.set_username(self.cleaned_data['username'])
     try:
         new_user.full_clean()
     except ValidationError as e:
         new_user.is_username_valid(e)
     return self.cleaned_data['username']
Exemple #3
0
    def create_user(self, username, email, password, timezone=False, ip='127.0.0.1', agent='', no_roles=False, activation=0, request=False):
        token = ''
        if activation > 0:
            token = random_string(12)

        timezone = timezone or settings.default_timezone

        # Get first rank
        try:
            from misago.models import Rank
            default_rank = Rank.objects.filter(special=0).order_by('-order')[0]
        except IndexError:
            default_rank = None

        # Store user in database
        new_user = User(
                        last_sync=tz_util.now(),
                        join_date=tz_util.now(),
                        join_ip=ip,
                        join_agent=agent,
                        activation=activation,
                        token=token,
                        timezone=timezone,
                        rank=default_rank,
                        subscribe_start=settings.subscribe_start,
                        subscribe_reply=settings.subscribe_reply,
                        )

        validate_username(username)
        validate_password(password)
        new_user.set_username(username)
        new_user.set_email(email)
        new_user.set_password(password)
        new_user.full_clean()
        new_user.default_avatar()
        new_user.save(force_insert=True)

        # Set user roles?
        if not no_roles:
            from misago.models import Role
            new_user.roles.add(Role.objects.get(_special='registered'))
            new_user.make_acl_key()
            new_user.save(force_update=True)

        # Update forum stats
        with UpdatingMonitor() as cm:
            if activation == 0:
                monitor.increase('users')
                monitor['last_user'] = new_user.pk
                monitor['last_user_name'] = new_user.username
                monitor['last_user_slug'] = new_user.username_slug
            else:
                monitor.increase('users_inactive')

        # Return new user
        return new_user
Exemple #4
0
    def create_user(self, username, email, password, timezone=False, ip='127.0.0.1', agent='', no_roles=False, activation=0, request=False):
        token = ''
        if activation > 0:
            token = random_string(12)

        timezone = timezone or settings.default_timezone

        # Get first rank
        try:
            from misago.models import Rank
            default_rank = Rank.objects.filter(special=0).order_by('-order')[0]
        except IndexError:
            default_rank = None

        # Store user in database
        new_user = User(
                        last_sync=tz_util.now(),
                        join_date=tz_util.now(),
                        join_ip=ip,
                        join_agent=agent,
                        activation=activation,
                        token=token,
                        timezone=timezone,
                        rank=default_rank,
                        subscribe_start=settings.subscribe_start,
                        subscribe_reply=settings.subscribe_reply,
                        )

        validate_username(username)
        validate_password(password)
        new_user.set_username(username)
        new_user.set_email(email)
        new_user.set_password(password)
        new_user.full_clean()
        new_user.default_avatar()
        new_user.save(force_insert=True)

        # Set user roles?
        if not no_roles:
            from misago.models import Role
            new_user.roles.add(Role.objects.get(_special='registered'))
            new_user.make_acl_key()
            new_user.save(force_update=True)

        # Update forum stats
        with UpdatingMonitor() as cm:
            if activation == 0:
                monitor.increase('users')
                monitor['last_user'] = new_user.pk
                monitor['last_user_name'] = new_user.username
                monitor['last_user_slug'] = new_user.username_slug
            else:
                monitor.increase('users_inactive')

        # Return new user
        return new_user
Exemple #5
0
 def clean_username(self):
     org_username = self.user.username
     validate_username(self.cleaned_data['username'])
     self.user.set_username(self.cleaned_data['username'])
     try:
         self.user.full_clean()
     except ValidationError as e:
         self.user.is_username_valid(e)
         self.user.set_username(org_username)
     return self.cleaned_data['username']
Exemple #6
0
 def clean_username(self):
     org_username = self.user.username
     validate_username(self.cleaned_data['username'])
     self.user.set_username(self.cleaned_data['username'])
     try:
         self.user.full_clean()
     except ValidationError as e:
         self.user.is_username_valid(e)
         self.user.set_username(org_username)
     return self.cleaned_data['username']
Exemple #7
0
 def clean_username(self):
     org_username = self.request.user.username
     if org_username == self.cleaned_data['username']:
         raise ValidationError(_("Your new username is same as current one."))
     validate_username(self.cleaned_data['username'])
     self.request.user.set_username(self.cleaned_data['username'])
     try:
         self.request.user.full_clean()
     except ValidationError as e:
         self.request.user.is_username_valid(e)
         self.request.user.set_username(org_username)
     return self.cleaned_data['username']
Exemple #8
0
 def clean_username(self):
     org_username = self.request.user.username
     if org_username == self.cleaned_data['username']:
         raise ValidationError(_("Your new username is same as current one."))
     validate_username(self.cleaned_data['username'], self.request.settings)
     self.request.user.set_username(self.cleaned_data['username'])
     try:
         self.request.user.full_clean()
     except ValidationError as e:
         self.request.user.is_username_valid(e)
         self.request.user.set_username(org_username)
     return self.cleaned_data['username']
Exemple #9
0
    def create_user(self, username, email, password, timezone=False, ip='127.0.0.1', agent='', no_roles=False, activation=0, request=False):
        token = ''
        if activation > 0:
            token = random_string(12)

        try:
            db_settings = request.settings
        except AttributeError:
            from misago.dbsettings import DBSettings
            db_settings = DBSettings()

        if timezone == False:
            timezone = db_settings['default_timezone']

        # Get first rank
        try:
            from misago.models import Rank
            default_rank = Rank.objects.filter(special=0).order_by('order')[0]
        except IndexError:
            default_rank = None

        # Store user in database
        new_user = User(
                        last_sync=tz_util.now(),
                        join_date=tz_util.now(),
                        join_ip=ip,
                        join_agent=agent,
                        activation=activation,
                        token=token,
                        timezone=timezone,
                        rank=default_rank,
                        subscribe_start=db_settings['subscribe_start'],
                        subscribe_reply=db_settings['subscribe_reply'],
                        )

        validate_username(username, db_settings)
        validate_password(password, db_settings)
        new_user.set_username(username)
        new_user.set_email(email)
        new_user.set_password(password)
        new_user.full_clean()
        new_user.default_avatar(db_settings)
        new_user.save(force_insert=True)

        # Set user roles?
        if not no_roles:
            from misago.models import Role
            new_user.roles.add(Role.objects.get(_special='registered'))
            new_user.make_acl_key()
            new_user.save(force_update=True)

        # Load monitor
        try:
            monitor = request.monitor
        except AttributeError:
            from misago.monitor import Monitor
            monitor = Monitor()

        # Update forum stats
        if activation == 0:
            monitor['users'] = int(monitor['users']) + 1
            monitor['last_user'] = new_user.pk
            monitor['last_user_name'] = new_user.username
            monitor['last_user_slug'] = new_user.username_slug
        else:
            monitor['users_inactive'] = int(monitor['users_inactive']) + 1

        # Return new user
        return new_user