X-Git-Url: https://svn.cri.ensmp.fr/git/Plinn.git/blobdiff_plain/3e0a2c257d49fb162da9c70d2f70194036235166..351e9460c5a2215ba574374c37cde06f1ceb55a9:/utils.py

diff --git a/utils.py b/utils.py
index a2586c4..863b94e 100755
--- a/utils.py
+++ b/utils.py
@@ -1,3 +1,4 @@
+# -*- coding: utf-8 -*-
 #######################################################################################
 #   Plinn - http://plinn.org                                                          #
 #   Copyright (C) 2005-2007  Benoît PIN <benoit.pin@ensmp.fr>                         #
@@ -17,8 +18,8 @@
 #   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.   #
 #######################################################################################
 """ Plinn public utilities
-$Id: utils.py 1534 2009-09-07 11:05:57Z pin $
-$URL: http://svn.cri.ensmp.fr/svn/Plinn/branches/CMF-2.1/utils.py $
+
+
 """
 
 import string
@@ -35,7 +36,7 @@ from Products.CMFCore.utils import getToolByName, getUtilityByInterfaceName
 from Products.CMFCore.exceptions import BadRequest
 from Products.Utf8Splitter.Utf8Splitter import Utf8Utils
 from Globals import REPLACEABLE, NOT_REPLACEABLE, UNIQUE
-from Products.PageTemplates.GlobalTranslationService import getGlobalTranslationService
+from zope.i18n import translate as i18ntranslate
 from zope.i18n.interfaces import IUserPreferredLanguages
 from zope.i18nmessageid import MessageFactory
 from zope.component.interfaces import ComponentLookupError
@@ -86,15 +87,17 @@ def capitalizeCompoundGivenName(givenName) :
 				
 			 
 def formatFullName(memberName, memberGivenName, memberId, nameBefore=1) :
-	memberFullName = ''
+	memberName = memberName.decode('utf-8')
+	memberGivenName = memberGivenName.decode('utf-8')
+	memberFullName = u''
 	if memberName and memberGivenName :
 		if nameBefore :
-			memberFullName = memberName.capitalize() + ' ' + capitalizeCompoundGivenName(memberGivenName)
+			memberFullName = memberName.upper() + ' ' + capitalizeCompoundGivenName(memberGivenName)
 		else :
-			memberFullName = capitalizeCompoundGivenName(memberGivenName) + ' ' + memberName.capitalize() 
+			memberFullName = capitalizeCompoundGivenName(memberGivenName) + ' ' + memberName.upper() 
 		
 	elif memberName and not memberGivenName :
-		memberFullName = memberName.capitalize()
+		memberFullName = memberName.upper()
 		
 	elif not memberName and memberGivenName :
 		memberFullName = capitalizeCompoundGivenName(memberGivenName)
@@ -102,7 +105,7 @@ def formatFullName(memberName, memberGivenName, memberId, nameBefore=1) :
 	else :
 		memberFullName = memberId
 	
-	return memberFullName
+	return memberFullName.encode('utf-8')
 
 # from OFS.ObjectManager #63
 bad_url_chars = re.compile(r'[^a-zA-Z0-9-_~,.$\(\)@]')
@@ -194,13 +197,12 @@ security.declarePublic('translate')
 def translate(message, context):
 	""" Translate i18n message.
 	"""
-	GTS = getGlobalTranslationService()
 	if isinstance(message, Exception):
 		try:
 			message = message[0]
 		except (TypeError, IndexError):
 			pass
-	return GTS.translate('plinn', message, context=context)
+	return i18ntranslate(message, domain='plinn', context=context.REQUEST)
 
 security.declarePublic('desacc')
 desacc = Utf8Utils.desacc