Пример #1
0
    def apply(self):
        if self._user_data.gecos and not self._user_data.name:
            username = guess_username(self._user_data.gecos)
            valid, msg = check_username(username)
            if not valid:
                self.errors.append(_("Invalid user name: %(name)s.\n%(error_message)s")
                                   % {"name": username, "error_message": msg})
            else:
                self._user_data.name = guess_username(self._user_data.gecos)

        self._user_data.groups = [g.strip() for g in self._groups.split(",") if g]

        # Add or remove the user from wheel group
        if self._is_admin and "wheel" not in self._user_data.groups:
            self._user_data.groups.append("wheel")
        elif not self._is_admin and "wheel" in self._user_data.groups:
            self._user_data.groups.remove("wheel")

        # Add or remove the user from userlist as needed
        if self._create_user and (self._user_data not in self.data.user.userList and self._user_data.name):
            self.data.user.userList.append(self._user_data)
        elif (not self._create_user) and (self._user_data in self.data.user.userList):
            self.data.user.userList.remove(self._user_data)

        # encrypt and store password only if user entered anything; this should
        # preserve passwords set via kickstart
        if self._use_password and self._user_data.password and len(self._user_data.password) > 0:
            self._user_data.password = self._user_data.password
            self._user_data.isCrypted = True
        # clear pw when user unselects to use pw
        else:
            self._user_data.password = ""
            self._user_data.isCrypted = False
Пример #2
0
    def apply(self):
        if self.args.gecos and not self.args.name:
            username = guess_username(self.args.gecos)
            valid, msg = check_username(username)
            if not valid:
                self.errors.append(_("Invalid user name: %(name)s.\n%(error_message)s")
                        % {"name": username, "error_message": msg})
            else:
                self.args.name = guess_username(self.args.gecos)

        self.args.groups = [g.strip() for g in self.args._groups.split(",") if g]

        # Add or remove the user from wheel group
        if self.args._admin and "wheel" not in self.args.groups:
            self.args.groups.append("wheel")
        elif not self.args._admin and "wheel" in self.args.groups:
            self.args.groups.remove("wheel")

        # Add or remove the user from userlist as needed
        if self.args._create and (self.args not in self.data.user.userList and self.args.name):
            self.data.user.userList.append(self.args)
        elif (not self.args._create) and (self.args in self.data.user.userList):
            self.data.user.userList.remove(self.args)

        # encrypt and store password only if user entered anything; this should
        # preserve passwords set via kickstart
        if self.args._use_password and len(self.args._password) > 0:
            self.args.password = self.args._password
            self.args.isCrypted = True
            self.args.password_kickstarted = False
        # clear pw when user unselects to use pw
        else:
            self.args.password = ""
            self.args.isCrypted = False
            self.args.password_kickstarted = False
Пример #3
0
    def _checkUsername(self, inputcheck):
        name = self.get_input(inputcheck.input_obj)
        # Allow empty usernames so the spoke can be exited without creating a user
        if name == "":
            return InputCheck.CHECK_OK

        valid, msg = check_username(name)
        if valid:
            return InputCheck.CHECK_OK
        else:
            return msg or _("Invalid user name")
Пример #4
0
    def _checkUsername(self, inputcheck):
        name = self.get_input(inputcheck.input_obj)
        # Allow empty usernames so the spoke can be exited without creating a user
        if name == "":
            return InputCheck.CHECK_OK

        valid, msg = check_username(name)
        if valid:
            return InputCheck.CHECK_OK
        else:
            return msg or _("Invalid user name")
Пример #5
0
 def run(self, check_request):
     """Check if the username is valid."""
     # in some cases an empty username is also considered valid,
     # so that the user can exit the User spoke without filling it in
     if self.success_if_username_empty and not check_request.username:
         self.result.error_message = ""
         self.result.success = True
     else:
         success, error_message = users.check_username(check_request.username)
         self.result.error_message = error_message
         self.result.success = success
Пример #6
0
 def _check_name(self, name):
     return check_username(name)
Пример #7
0
 def _check_name(self, name):
     return check_username(name)
Пример #8
0
 def _check_username(self, user_input, report_func):
     return check_username(user_input)