def index(self): context = aq_inner(self.context) container = aq_parent(context) if isDefaultPage(container, context): context = container originalcontext = context # avoid redirecting if we are visiting an url different from the url of the context viewname = self.context.getLayout() if self.request.URL != self.context.absolute_url() and self.request.URL != self.context.absolute_url() + '/' + viewname: return '' while all([not INavigationRoot.providedBy(context), IRedirectToParent.providedBy(context)]): # contextid = context.id context = aq_parent(context) if context != originalcontext: viewurl = getMultiAdapter((context, self.request), name='plone_context_state').view_url() return u'<a class="redirect-to-parent" href="%s">%s</a>' % (viewurl + '#content=' + originalcontext.absolute_url(),context.Title()) else: return ''
def index(self): sm = getSecurityManager() context = aq_inner(self.context) container = aq_parent(context) if isDefaultPage(container, context): context = container # avoid redirecting if we are visiting an url different from the url of the context viewname = self.context.getLayout() if self.request.URL != self.context.absolute_url() and self.request.URL != self.context.absolute_url() + '/' + viewname: return '' originalcontext = context while all([not INavigationRoot.providedBy(context), IRedirectToParent.providedBy(context), not sm.checkPermission(ModifyPortalContent, context)]): # contextid = context.id context = aq_parent(context) if context != originalcontext: viewurl = getMultiAdapter((context, self.request), name='plone_context_state').view_url() self.request.RESPONSE.redirect(viewurl + '#content=' + originalcontext.absolute_url()) return ''
def __call__(self): context = aq_inner(self.context) container = aq_parent(context) if isDefaultPage(container, context): context = container return IRedirectToParent.providedBy(context)
def __call__(self): context = aq_inner(self.context) container = aq_parent(context) if isDefaultPage(container, context): context = container if IPloneSiteRoot.providedBy(context) or INavigationRoot.providedBy(context): self.request.RESPONSE.redirect(self.viewurl) if IRedirectToParent.providedBy(context): noLongerProvides(context, IRedirectToParent) else: alsoProvides(context, IRedirectToParent) self.request.RESPONSE.redirect(self.viewurl)