def edit(self, account=None): c.title = "Nodetraq -- Edit Users" c.selected_page = "users" c.subpage = "edit" dh = DirectoryHelper( directoryCN, directoryPassword, directoryDomain) try: c.user = dh.ldap.findUser(account, Attrs=[ 'cn', 'uid', 'mail', 'loginShell', 'nsAccountLock', 'uidNumber', 'title', 'manager', 'departmentNumber', 'roomNumber', 'deploycode', 'orgchartmanager', 'utilityaccount' ])[1] fix_keys = ['uidNumber', 'nsAccountLock', 'mail', 'loginShell'] for key in fix_keys: if not c.user.has_key(key): c.user[key] = [''] except: c.user = None groups = dh.getAllGroups() c.group_membership = dh.getUserGroups(account) c.group_membership.sort() c.available_groups = list(set(groups) - set(c.group_membership)) c.available_groups.sort() return render('/users/edit.mako')