web/request.py
branchstable
changeset 5770 9e4f8db66962
parent 5683 ca2badf54858
child 5774 0d792bceb25d
child 5777 941038164cf5
equal deleted inserted replaced
5769:b3b48e0b8e3b 5770:9e4f8db66962
    18 """abstract class for http request"""
    18 """abstract class for http request"""
    19 
    19 
    20 __docformat__ = "restructuredtext en"
    20 __docformat__ = "restructuredtext en"
    21 
    21 
    22 import Cookie
    22 import Cookie
    23 import sha
    23 import hashlib
    24 import time
    24 import time
    25 import random
    25 import random
    26 import base64
    26 import base64
    27 from datetime import date
    27 from datetime import date
    28 from urlparse import urlsplit
    28 from urlparse import urlsplit
   357         return "javascript:userCallbackThenReloadPage('%s', %s)" % (
   357         return "javascript:userCallbackThenReloadPage('%s', %s)" % (
   358             cbname, msg)
   358             cbname, msg)
   359 
   359 
   360     def register_onetime_callback(self, func, *args):
   360     def register_onetime_callback(self, func, *args):
   361         cbname = 'cb_%s' % (
   361         cbname = 'cb_%s' % (
   362             sha.sha('%s%s%s%s' % (time.time(), func.__name__,
   362             hashlib.sha('%s%s%s%s' % (time.time(), func.__name__,
   363                                   random.random(),
   363                                       random.random(),
   364                                   self.user.login)).hexdigest())
   364                                       self.user.login)).hexdigest())
   365         def _cb(req):
   365         def _cb(req):
   366             try:
   366             try:
   367                 ret = func(req, *args)
   367                 ret = func(req, *args)
   368             except TypeError:
   368             except TypeError:
   369                 from warnings import warn
   369                 from warnings import warn