Changeset 890

Show
Ignore:
Timestamp:
06/21/07 10:34:37
Author:
crchemist
Message:

Fix translation problem in plone-2.1.4.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • qPloneCaptchas/trunk/__init__.py

    r665 r890  
    11from Products.CMFCore.DirectoryView import registerDirectory 
     2from App.version_txt import getZopeVersion 
    23from Products.CMFCore.utils import ToolInit 
    3 from AccessControl import allow_module 
     4import logging 
     5from AccessControl import allow_module, ModuleSecurityInfo 
    46import config 
    57import CaptchaTool 
     
    1517             product_name=config.PRODUCT_NAME, 
    1618             icon=config.TOOL_ICON,).initialize(context) 
     19 
     20def MessageFactory(projectname): 
     21    "Get a i18n message factory" 
     22    vmajor, vminor, vmicro, vstatus, vrelease = getZopeVersion() 
     23    MessageFactory = lambda : "no message factory found" 
     24    if (vmajor > 2) or ((vmajor, vminor) == (2,9)): 
     25        from zope.i18nmessageid import MessageFactory 
     26    elif (vmajor, vminor) == (2,8): 
     27        from zope.i18nmessageid import MessageIDFactory as MessageFactory 
     28    else: 
     29        try: 
     30           from Products.PlacelessTranslationService.MessageID import MessageIDFactory as MessageFactory 
     31        except: 
     32           logging.info("[qPloneCaptchas] No i18n Message Factory found -> cannot provide translations!") 
     33    return MessageFactory(projectname.lower()) 
     34 
     35ProductMessageFactory = MessageFactory('%s' % config.PRODUCT_NAME) 
     36ModuleSecurityInfo('Products.%s' % config.PRODUCT_NAME).declarePublic("ProductMessageFactory") 
  • qPloneCaptchas/trunk/skins/plone_captchas/dynamic/captcha_validator.vpy

    r784 r890  
     1from Products.qPloneCaptchas import ProductMessageFactory 
    12from Products.qPloneCaptchas.utils import decrypt, parseKey, \ 
    23     encrypt1, getWord 
    34from DateTime import DateTime 
    45from Products.CMFCore.utils import getToolByName 
    5 try: 
    6     from Products.CMFPlone import MessageFactory 
    7     _ = MessageFactory('qplonecaptchas') 
    8 except ImportError: 
    9     from Products.PlacelessTranslationService.MessageID import MassageIDFactory 
    10     _ = MessageIDFactory('qplonecaptchas') 
    116 
    127if state.getStatus()=='failure': 
     
    2722if (enc != solution) or (captcha_tool.has_key(decrypted_key)) \ 
    2823    or (DateTime().timeTime() - float(date)>3600): 
    29     state.setError('key', _("Please re-enter validation code."), 'key_required') 
    30     return state.set(status="failure", portal_status_message = _("Please re-enter validation code.")) 
     24    state.setError('key', ProductMessageFactory("Please re-enter validation code."), 'key_required') 
     25    return state.set(status="failure", portal_status_message = ProductMessageFactory("Please re-enter validation code.")) 
    3126else: 
    3227    captcha_tool.addExpiredKey(decrypted_key) 
  • qPloneCaptchas/trunk/skins/plone_captchas/static/captcha_validator.vpy

    r784 r890  
     1from Products.qPloneCaptchas import ProductMessageFactory 
    12from Products.CMFCore.utils import getToolByName 
    23from Products.qPloneCaptchas.utils import decrypt, parseKey, \ 
    34     encrypt1, getWord 
    45from DateTime import DateTime 
    5 try: 
    6     from Products.CMFPlone import MessageFactory 
    7     _ = MessageFactory('qplonecaptchas') 
    8 except ImportError: 
    9     from Products.PlacelessTranslationService.MessageID import MessageIDFactory 
    10     _ = MessageIDFactory('qplonecaptchas') 
    11  
    126 
    137if state.getStatus()=='failure': 
     
    2923if (enc != solution) or (captcha_tool.has_key(decrypted_key)) \ 
    3024    or (DateTime().timeTime() - float(date)>3600): 
    31     state.setError('key', _("Please re-enter validation code."), 'key_required') 
    32     return state.set(status="failure", portal_status_message = _("Please re-enter validation code.")) 
     25    state.setError('key', ProductMessageFactory("Please re-enter validation code."), 'key_required') 
     26    return state.set(status="failure", portal_status_message = ProductMessageFactory("Please re-enter validation code.")) 
    3327else: 
    3428    captcha_tool.addExpiredKey(decrypted_key)