From 17eafd789581ea0d166c322c9434d06278819095 Mon Sep 17 00:00:00 2001 From: Helmut Merz Date: Thu, 9 Jun 2016 08:30:19 +0200 Subject: [PATCH] provide 'view/requestUrl' method to be used instead of 'request/URL' --- browser/common.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/browser/common.py b/browser/common.py index daa8ef1..1dfddf5 100755 --- a/browser/common.py +++ b/browser/common.py @@ -1,5 +1,5 @@ # -# Copyright (c) 2015 Helmut Merz helmutm@cy55.de +# Copyright (c) 2016 Helmut Merz helmutm@cy55.de # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -42,6 +42,7 @@ from zope.formlib.namedtemplate import NamedTemplate from zope.interface import Interface, implements from zope.proxy import removeAllProxies from zope.publisher.browser import applySkin +from zope.publisher.http import URLGetter as BaseURLGetter from zope.publisher.interfaces.browser import IBrowserSkinType, IBrowserView from zope import schema from zope.schema.vocabulary import SimpleTerm @@ -187,6 +188,12 @@ class SortableMixin(object): return '/@@/cybertools.icons/arrowup.gif' +class URLGetter(BaseURLGetter): + + def __str__(self): + return self.__request.getURL().rstrip('/@@index.html') + + class BaseView(GenericView, I18NView, SortableMixin): actions = {} @@ -209,6 +216,10 @@ class BaseView(GenericView, I18NView, SortableMixin): pass saveRequest(request) + @property + def requestUrl(self): + return URLGetter(self.request) + def todayFormatted(self): return formatDate(date.today(), 'date', 'short', self.languageInfo.language)