Ignore:
Timestamp:
Feb 11, 2013 11:12:59 AM (11 years ago)
Author:
kroman0
Message:

Fixed errors on validation

File:
1 edited

Legend:

Unmodified
Added
Removed
  • quintagroup.captcha.core/trunk/quintagroup/captcha/core/skins/captcha_core/dynamic/captcha_validator.vpy

    r1954 r3618  
    44from DateTime import DateTime 
    55from Products.CMFCore.utils import getToolByName 
     6 
     7def set_error(): 
     8    message = _(u"Please re-enter validation code.") 
     9    context.plone_utils.addPortalMessage(message, 'error') 
     10    state.setError('key', message, 'key_required') 
     11    return state.set(status="failure") 
    612 
    713if state.getStatus()=='failure': 
     
    1117test_key = request.get('key', '') 
    1218hashkey = request.get('hashkey', '') 
    13 decrypted_key = decrypt(context.captcha_key, hashkey) 
     19try: 
     20    decrypted_key = decrypt(context.captcha_key, hashkey) 
     21except: 
     22    return set_error() 
    1423parsed_key = parseKey(decrypted_key) 
    1524 
     
    1827 
    1928enc = test_key 
    20 solution = getWord(int(index)) 
     29try: 
     30    solution = getWord(int(index)) 
     31except AttributeError: 
     32    return set_error() 
    2133captcha_tool = getToolByName(context, 'portal_captchas') 
    2234if (enc != solution) or (captcha_tool.has_key(decrypted_key)) \ 
    2335    or (DateTime().timeTime() - float(date)>3600): 
    24     message = _(u"Please re-enter validation code.") 
    25     context.plone_utils.addPortalMessage(message, 'error') 
    26     state.setError('key', message, 'key_required') 
    27     return state.set(status="failure") 
     36    return set_error()  
    2837else: 
    2938    captcha_tool.addExpiredKey(decrypted_key) 
Note: See TracChangeset for help on using the changeset viewer.