Ejemplo n.º 1
0
    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')