web/request.py
changeset 5774 0d792bceb25d
parent 5713 605f571198eb
parent 5770 9e4f8db66962
child 5811 e77cea9721e7
equal deleted inserted replaced
5768:1e73a466aa69 5774:0d792bceb25d
    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
   362         return "javascript:userCallbackThenReloadPage('%s', %s)" % (
   362         return "javascript:userCallbackThenReloadPage('%s', %s)" % (
   363             cbname, msg)
   363             cbname, msg)
   364 
   364 
   365     def register_onetime_callback(self, func, *args):
   365     def register_onetime_callback(self, func, *args):
   366         cbname = 'cb_%s' % (
   366         cbname = 'cb_%s' % (
   367             sha.sha('%s%s%s%s' % (time.time(), func.__name__,
   367             hashlib.sha('%s%s%s%s' % (time.time(), func.__name__,
   368                                   random.random(),
   368                                       random.random(),
   369                                   self.user.login)).hexdigest())
   369                                       self.user.login)).hexdigest())
   370         def _cb(req):
   370         def _cb(req):
   371             try:
   371             try:
   372                 ret = func(req, *args)
   372                 ret = func(req, *args)
   373             except TypeError:
   373             except TypeError:
   374                 from warnings import warn
   374                 from warnings import warn