[Checkins] SVN: Products.CMFDefault/trunk/Products/CMFDefault/ - membername now returns fullname if available

Yvo Schubbe y.2011 at wcm-solutions.de
Sat Jul 30 05:00:05 EDT 2011


Log message for revision 122430:
  - membername now returns fullname if available
  - always use membername instead of uname

Changed:
  U   Products.CMFDefault/trunk/Products/CMFDefault/browser/skins/tests/test_ursa.py
  U   Products.CMFDefault/trunk/Products/CMFDefault/browser/skins/ursa.py
  U   Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/getMainGlobals.py
  U   Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/main_template.pt

-=-
Modified: Products.CMFDefault/trunk/Products/CMFDefault/browser/skins/tests/test_ursa.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/browser/skins/tests/test_ursa.py	2011-07-30 02:36:10 UTC (rev 122429)
+++ Products.CMFDefault/trunk/Products/CMFDefault/browser/skins/tests/test_ursa.py	2011-07-30 09:00:03 UTC (rev 122430)
@@ -293,21 +293,31 @@
         tool.isAnonymousUser = lambda: False
         self.failIf(view.isAnon)
 
-    def test_uname_anonymous(self):
+    def test_membername_anonymous(self):
         view = self._makeOne()
         tool = view.context.portal_membership = DummyMembershipTool()
         tool.isAnonymousUser = lambda: True
-        self.assertEqual(view.uname, 'Guest')
+        self.assertEqual(view.membername, u'Guest')
 
-    def test_uname_not_anonymous(self):
+    def test_membername_not_anonymous(self):
         view = self._makeOne()
         tool = view.context.portal_membership = DummyMembershipTool()
         tool.isAnonymousUser = lambda: False
         member = DummyUser()
-        member.getUserName = lambda: 'luser'
+        member.getProperty = lambda x: 'John Smith'
         tool.getAuthenticatedMember = lambda: member
-        self.assertEqual(view.uname, 'luser')
+        self.assertEqual(view.membername, u'John Smith')
 
+    def test_membername_not_anonymous_wo_fullname(self):
+        view = self._makeOne()
+        tool = view.context.portal_membership = DummyMembershipTool()
+        tool.isAnonymousUser = lambda: False
+        member = DummyUser()
+        member.getId = lambda: 'luser'
+        member.getProperty = lambda x: ''
+        tool.getAuthenticatedMember = lambda: member
+        self.assertEqual(view.membername, u'luser')
+
     def test_status_message_missing(self):
         view = self._makeOne()
         view.request.form = {}

Modified: Products.CMFDefault/trunk/Products/CMFDefault/browser/skins/ursa.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/browser/skins/ursa.py	2011-07-30 02:36:10 UTC (rev 122429)
+++ Products.CMFDefault/trunk/Products/CMFDefault/browser/skins/ursa.py	2011-07-30 09:00:03 UTC (rev 122430)
@@ -175,7 +175,8 @@
     @property
     @memoize
     def membername(self):
-        return self.isAnon and 'Guest' or self.member.getUserName()
+        return self.isAnon and 'Guest' or (self.member.getProperty('fullname')
+                                           or self.member.getId())
 
     @property
     @memoize
@@ -189,11 +190,6 @@
 
     @property
     @memoize
-    def uname(self):
-        return self.isAnon and 'Guest' or self.member.getUserName()
-
-    @property
-    @memoize
     def status_message(self):
         message = self.request.form.get('portal_status_message')
         if message is not None:

Modified: Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/getMainGlobals.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/getMainGlobals.py	2011-07-30 02:36:10 UTC (rev 122429)
+++ Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/getMainGlobals.py	2011-07-30 09:00:03 UTC (rev 122430)
@@ -11,9 +11,11 @@
 ptool = getUtilityByInterfaceName('Products.CMFCore.interfaces.IPropertiesTool')
 utool = getToolByName(script, 'portal_url')
 wtool = getToolByName(script, 'portal_workflow')
-portal_object = utool.getPortalObject()
 uidtool = getToolByName(script, 'portal_uidhandler', None)
 syndtool = getToolByName(script, 'portal_syndication')
+portal_object = utool.getPortalObject()
+isAnon = mtool.isAnonymousUser()
+member = mtool.getAuthenticatedMember()
 
 if not 'charset' in (context.REQUEST.RESPONSE.getHeader('content-type') or ''):
     # Some newstyle views set a different charset - don't override it.
@@ -40,9 +42,11 @@
            'object_title': context.Title(),
            'object_description': context.Description(),
            'portal_url': utool(),
-           'member': mtool.getAuthenticatedMember(),
+           'member': member,
+           'membername': isAnon and 'Guest' or (member.getProperty('fullname')
+                                                or member.getId()),
            'membersfolder': mtool.getMembersFolder(),
-           'isAnon': mtool.isAnonymousUser(),
+           'isAnon': isAnon,
            'wf_state': wtool.getInfoFor(context, 'review_state', ''),
            'show_actionicons': ptool.getProperty('enable_actionicons'),
            'status_message': message}

Modified: Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/main_template.pt
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/main_template.pt	2011-07-30 02:36:10 UTC (rev 122429)
+++ Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/main_template.pt	2011-07-30 09:00:03 UTC (rev 122430)
@@ -100,15 +100,14 @@
 <!-- end top_bar-->
 </div>
 
-<div metal:define-macro="user_menu_bar"
-     tal:define="uname python: isAnon and 'Guest' or member.getUserName()" >
+<div metal:define-macro="user_menu_bar">
 
  <!-- user_menu_bar -->
  <table id="MemberActionsBox"
         width="100%" border="0" cellpadding="0" cellspacing="0"
         i18n:domain="cmf_default">
   <tr>
-   <td class="ActionTitle" tal:content="uname">Guest</td>
+   <td class="ActionTitle" tal:content="globals/membername">Guest</td>
    <td class="ActionLink" align="right">
     <tal:span tal:repeat="action user_actions"
     ><img src="" alt="" title=""



More information about the checkins mailing list