accounts2/fas/fas controllers.py,1.1,1.2 fasLDAP.py,1.1,1.2
Michael Patrick McGrath (mmcgrath)
fedora-extras-commits at redhat.com
Mon Mar 26 16:29:45 UTC 2007
Author: mmcgrath
Update of /cvs/fedora/accounts2/fas/fas
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv819/fas
Modified Files:
controllers.py fasLDAP.py
Log Message:
fixed up fasLDAP.py section and general cvs cleanup
Index: controllers.py
===================================================================
RCS file: /cvs/fedora/accounts2/fas/fas/controllers.py,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- controllers.py 26 Mar 2007 15:11:11 -0000 1.1
+++ controllers.py 26 Mar 2007 16:29:37 -0000 1.2
@@ -57,7 +57,7 @@
raise redirect("/")
@expose(template="fas.templates.editAccount")
-# @identity.require(identity.in_group("admin"))
+ @identity.require(identity.in_group("sysadmin-main"))
# @identity.require(identity.not_anonymous())
def editAccount(self,userName=None):
if not userName:
@@ -81,8 +81,8 @@
try:
groups[0]
except:
- turbogears.flash("No Groups found matching '%s'" % search)
- groups = []
+ turbogears.flash("No Groups found matching '%s'" % search)
+ groups = []
return dict(printList=groups, search=search)
@expose(template="fas.templates.userList")
@@ -93,9 +93,8 @@
try:
users[0]
except:
- turbogears.flash("No users found matching '%s'" % search)
- users = []
-# raise ValueError("No users found matching '%s'. Please go back and search again." % search)
+ turbogears.flash("No users found matching '%s'" % search)
+ users = []
return dict(printList=users, search=search)
@expose(template='fas.templates.edit')
Index: fasLDAP.py
===================================================================
RCS file: /cvs/fedora/accounts2/fas/fas/fasLDAP.py,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- fasLDAP.py 26 Mar 2007 15:11:11 -0000 1.1
+++ fasLDAP.py 26 Mar 2007 16:29:37 -0000 1.2
@@ -21,6 +21,7 @@
class Groups:
''' Class contains group information '''
+ __userName = None
@classmethod
def byUserName(self, cn):
@@ -41,6 +42,7 @@
fedoraRoleStatus = group[0][1]['fedoraRoleStatus'][0],
fedoraRoleDomain = group[0][1]['fedoraRoleDomain'][0]
)
+ self.__userName = cn
return groups
@classmethod
@@ -58,7 +60,9 @@
return groups
@classmethod
- def remove(self, groupName, userName):
+ def remove(self, groupName, userName=None):
+ if not userName:
+ userName = self.__userName
if groupName in self.byUserName(userName):
# Probably shouldn't be 'TypeError'
delete('cn=%s,ou=Roles,cn=%s,ou=People,dc=fedoraproject,dc=org' % (groupName, userName))
@@ -66,9 +70,13 @@
raise TypeError, 'User not in that group'
@classmethod
- def apply(self, groupName, userName):
+ def apply(self, groupName, userName=None):
''' Apply for a group '''
import datetime
+
+ if not userName:
+ userName = self.__userName
+
if groupName in self.byUserName(userName):
# Probably shouldn't be 'TypeError'
raise TypeError, 'Already in that group'
@@ -95,7 +103,7 @@
'fedoraRoleType' : 'user',
'objectClass' : ('fedoraRole')}
- add('cn=%s,ou=Roles,cn=%s,ou=People,dc=fedoraproject,dc=org' % (groupName, userName), attributes)
+ add('cn=%s,ou=Roles,cn=%s,ou=People,dc=fedoraproject,dc=org' % (groupName, userName), attributes)
@classmethod
@@ -132,7 +140,8 @@
def __getattr__(self, attr):
if attr.startswith('_'):
print 'GET %s=%s' % (attr, self.__getattr__(attr))
- return self.__getattr__(attr)
+ if attr == 'userName':
+ return self.__getattr__('cn')
try:
attributes = []
attributes.append(attr)
@@ -176,10 +185,14 @@
return self.byFilter('cn=%s' % cn)
@classmethod
- def auth(self, who, password):
+ def auth(self, who, password, ldapServer=None):
''' Basic Authentication Module '''
+ if not ldapServer:
+ s = Server()
+ ldapServer = s.ldapConn
+
who = 'cn=%s,ou=People,dc=fedoraproject,dc=org' % who
- self.server.ldapConn.simple_bind_s(who, password)
+ ldapServer.simple_bind_s(who, password)
class UserAccount:
def __init__(self):
More information about the fedora-extras-commits
mailing list