Exemplo n.º 1
0
 def GET(self):
     import vilidate,time,io
     if hasattr(web.ctx.session,'codeTime'):
         if (time.time() - web.ctx.session.codeTime) < 0.1:
             return public.getMsg('CODE_BOOM');
     vie = vilidate.vieCode();
     codeImage = vie.GetCodeImage(80,4)
     out = io.BytesIO();
     codeImage[0].save(out, "png")
     web.ctx.session.codeStr  = public.md5("".join(codeImage[1]).lower())
     web.ctx.session.codeTime = time.time()
     web.header('Cache-Control', 'private, max-age=0, no-store, no-cache, must-revalidate, post-check=0, pre-check=0');
     web.header('Pragma', 'no-cache');
     web.header('Content-Type','image/png');
     return out.getvalue();
Exemplo n.º 2
0
def code():
    import vilidate
    vie = vilidate.vieCode()
    codeImage = vie.GetCodeImage(80, 4)
    try:
        from cStringIO import StringIO
    except:
        from StringIO import StringIO

    out = StringIO()
    codeImage[0].save(out, "png")

    session['code'] = mw.md5(''.join(codeImage[1]).lower())

    img = Response(out.getvalue(), headers={'Content-Type': 'image/png'})
    return make_response(img)
Exemplo n.º 3
0
 def GET(self):
     import vilidate,time
     if hasattr(web.ctx.session,'codeTime'):
         if (time.time() - web.ctx.session.codeTime) < 0.1:
             return public.getMsg('CODE_BOOM');
     vie = vilidate.vieCode();
     codeImage = vie.GetCodeImage(80,4);
     try:
         from cStringIO import StringIO
     except:
         from StringIO import StringIO
     out = StringIO();
     codeImage[0].save(out, "png")
     web.ctx.session.codeStr  = public.md5("".join(codeImage[1]).lower())
     web.ctx.session.codeTime = time.time()
     web.header('Cache-Control', 'private, max-age=0, no-store, no-cache, must-revalidate, post-check=0, pre-check=0');
     web.header('Pragma', 'no-cache');
     web.header('Content-Type','image/png');
     return out.getvalue();
Exemplo n.º 4
0
def code():
    import vilidate, time
    code_time = cache.get('codeOut')
    if code_time: return u'Error: Don\'t request validation codes frequently'
    vie = vilidate.vieCode()
    codeImage = vie.GetCodeImage(80, 4)
    if sys.version_info[0] == 2:
        try:
            from cStringIO import StringIO
        except:
            from StringIO import StringIO
        out = StringIO()
    else:
        from io import BytesIO
        out = BytesIO()
    codeImage[0].save(out, "png")
    cache.set("codeStr", public.md5("".join(codeImage[1]).lower()), 180)
    cache.set("codeOut", 1, 0.1)
    out.seek(0)
    return send_file(out, mimetype='image/png', cache_timeout=0)