def create(self, password, mail, display_name, first_name, last_name, tidy_contact_number=None): entry = Directory().writer("person").new(self.dn()) entry.uid = self._name entry.cn = self._name entry.userPassword = password entry.mail = mail entry.displayName = display_name entry.givenName = first_name entry.sn = last_name entry.homeDirectory = "/home/%s" % self._name entry.loginShell = "/bin/zsh" entry.memberUid = self._name if tidy_contact_number is not None: entry.neatTidyContactNumber = tidy_contact_number next = User.next() entry.uidNumber = next entry.gidNumber = next entry.entry_commit_changes()