diff options
Diffstat (limited to 'ipsilon/providers/common.py')
-rwxr-xr-x | ipsilon/providers/common.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/ipsilon/providers/common.py b/ipsilon/providers/common.py index 6bcfef8..b1968f4 100755 --- a/ipsilon/providers/common.py +++ b/ipsilon/providers/common.py @@ -118,7 +118,13 @@ class ProviderPageBase(Page): raise cherrypy.HTTPError(501) def root(self, *args, **kwargs): - op = getattr(self, cherrypy.request.method, self.GET) + method = cherrypy.request.method + + preop = getattr(self, 'pre_%s' % method, None) + if preop and callable(preop): + preop(*args, **kwargs) + + op = getattr(self, method, self.GET) if callable(op): return op(*args, **kwargs) else: |