[Zope3-checkins] SVN: ldapauth/trunk/browser/principals.p Fix ldap user (contents) view

Roger Ineichen roger at projekt01.ch
Tue Jul 20 18:36:36 EDT 2004


Log message for revision 26643:
  Fix ldap user (contents) view


Changed:
  U   ldapauth/trunk/browser/principals.pt
  U   ldapauth/trunk/browser/principals.py


-=-
Modified: ldapauth/trunk/browser/principals.pt
===================================================================
--- ldapauth/trunk/browser/principals.pt	2004-07-20 21:48:46 UTC (rev 26642)
+++ ldapauth/trunk/browser/principals.pt	2004-07-20 22:36:36 UTC (rev 26643)
@@ -6,14 +6,23 @@
            i18n:attributes="summary">
       <thead>
         <tr>
-          <th i18n:translate="">Login</th>
+          <th><span i18n:translate="">Login Attribute: </span>
+						(<span tal:content="view/getLoginAttribute" tal:omit-tag="">cn</span>=*)</th>
+          <th i18n:translate="">Title</th>
+          <th i18n:translate="">Description</th>
         </tr>
       </thead>
       <tbody>
-        <tr tal:repeat="principal view/getPrincipals" >
+        <tr tal:repeat="info python:view.getUserInfos()" >
           <td>
-					  <!--<span tal:content="python:principal.getLogin()">login</span>-->
+					  <span tal:content="python:info['login']">login</span>
           </td>
+          <td>
+					  <span tal:content="python:info['title']">title</span>
+          </td>
+          <td>
+					  <span tal:content="python:info['description']">description</span>
+          </td>
         </tr>
       </tbody>
     </table>

Modified: ldapauth/trunk/browser/principals.py
===================================================================
--- ldapauth/trunk/browser/principals.py	2004-07-20 21:48:46 UTC (rev 26642)
+++ ldapauth/trunk/browser/principals.py	2004-07-20 22:36:36 UTC (rev 26643)
@@ -17,6 +17,7 @@
 """
 
 from zope.exceptions import NotFoundError
+from zope.security.proxy import trustedRemoveSecurityProxy
 
 from zope.app import zapi
 from zope.app.size.interfaces import ISized
@@ -33,24 +34,33 @@
 
     error = ""
 
-    def getPrincipals(self):
+    def getUserInfos(self):
         context = self.context
         request = self.request
+        infoList = []
         try:
-            print "START Principals getPrincipals"
             principals = self.context.getPrincipals(name='')
-            print "END Principals getPrincipals"
         except :
             principals = []
             self.error = _("Error, No LDAP server or connection found")
         
-        return principals
+        for principal in principals:
+            info = trustedRemoveSecurityProxy(principal)
+            entry = {}
+            entry['login'] = info.getLogin()
+            entry['title'] = info.title
+            entry['description'] = info.description
+            infoList.append(entry)
+        
+        return infoList
 
-    principals = ViewPageTemplateFile('principals.pt')
 
-    def index(self):
-        if 'index.html' in self.context:
-            self.request.response.redirect('index.html')
-            return ''
+    def getLoginAttribute(self):
+        context = self.context
+        try:
+            return context.login_attribute
+        except:
+            return "Lookup Error"
 
-        return self._index()
+
+    principals = ViewPageTemplateFile('principals.pt')



More information about the Zope3-Checkins mailing list