Changeset 3615 in products


Ignore:
Timestamp:
Jan 17, 2013 10:34:10 AM (11 years ago)
Author:
kroman0
Message:

Fixed ValueError? on validation

File:
1 edited

Legend:

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

    r1980 r3615  
    66from DateTime import DateTime 
    77 
     8def set_error(): 
     9    message = _(u"Please re-enter validation code.") 
     10    context.plone_utils.addPortalMessage(message, 'error') 
     11    state.setError('key', message, 'key_required') 
     12    return state.set(status="failure") 
     13 
    814if state.getStatus()=='failure': 
    915    return  state 
     
    1218test_key = request.get('key', '') 
    1319hashkey = request.get('hashkey', '') 
    14 decrypted_key = decrypt(context.captcha_key, hashkey) 
     20try: 
     21    decrypted_key = decrypt(context.captcha_key, hashkey) 
     22except: 
     23    return set_error() 
    1524parsed_key = parseKey(decrypted_key) 
    1625 
     
    1827date = parsed_key['date'] 
    1928 
    20 img = getattr(context, '%s.jpg' % index) 
     29try: 
     30    img = getattr(context, '%s.jpg' % index) 
     31except AttributeError: 
     32    return set_error() 
    2133solution = img.title 
    2234enc = encrypt1(test_key) 
     
    2436if (enc != solution) or (captcha_tool.has_key(decrypted_key)) \ 
    2537    or (DateTime().timeTime() - float(date)>3600): 
    26     message = _(u"Please re-enter validation code.") 
    27     context.plone_utils.addPortalMessage(message, 'error') 
    28     state.setError('key', message, 'key_required') 
    29     return state.set(status="failure") 
     38    return set_error() 
    3039else: 
    3140    captcha_tool.addExpiredKey(decrypted_key) 
Note: See TracChangeset for help on using the changeset viewer.