[silva.core.references][Sylvain Viollon] Update code to fetch re...
[email protected] Mon, 09 Dec 2013 11:22:06 +0100
| Newsgroups | gmane.comp.web.zope.silva.cvs |
|---|---|
| Message-ID | <[email protected]> |
author: Sylvain Viollon
date: Mon Dec 09 11:22:09 2013 +0100
revision: 317:b45358442c1c in silva.core.references
branch: 2.4
details: https://hg.infrae.com/silva.core.references?cmd=changeset;node=b45358442c1c
modified: src/silva/core/references/widgets/__init__.py src/silva/core/references/widgets/formulator_templates/reference_input.cpt src/silva/core/references/widgets/zeamform_templates/referencewidgetinput.cpt
added:
removed:
log: Update code to fetch reference path.
diffstat:
src/silva/core/references/widgets/__init__.py | 18 +++++++--
src/silva/core/references/widgets/formulator_templates/reference_input.cpt | 2 +-
src/silva/core/references/widgets/zeamform_templates/referencewidgetinput.cpt | 2 +-
3 files changed, 15 insertions(+), 7 deletions(-)
diffs (66 lines):
diff -r 2c55eae09d13 -r b45358442c1c src/silva/core/references/widgets/__init__.py
--- a/src/silva/core/references/widgets/__init__.py Mon Nov 11 14:48:43 2013 +0100
+++ b/src/silva/core/references/widgets/__init__.py Mon Dec 09 11:22:09 2013 +0100
@@ -11,6 +11,7 @@
from silva.core.references.reference import get_content_id
from silva.core.views.interfaces import IVirtualSite
from silva.ui.interfaces import ISilvaUI
+from silva.ui.rest.helper import UIHelper
from silva.translations import translate as _
@@ -35,6 +36,15 @@
_marker = object()
+class ReferencePathResolver(UIHelper):
+ # UIHelper uses super, as it was intended to use as a
+ # mixing. However it is not here.
+
+ def __init__(self, context, request):
+ self.context = context
+ self.request = request
+
+
class ReferenceInfoResolver(object):
"""This resolve information about a reference and set them on an
object.
@@ -48,11 +58,9 @@
self.request = request
self.multiple = multiple
self.message = message
- self.get_icon_tag = IIconResolver(self.request).get_tag
- self.root_path = IVirtualSite(self.request).get_root_path()
-
- def get_content_path(self, content):
- return content.absolute_url_path()[len(self.root_path):] or '/'
+ self.get_icon_tag = IIconResolver(request).get_tag
+ self.get_content_path = ReferencePathResolver(
+ context, request).get_content_path
def set_lookup_url(self, content):
self.widget.context_lookup_url = absoluteURL(
diff -r 2c55eae09d13 -r b45358442c1c src/silva/core/references/widgets/formulator_templates/reference_input.cpt
--- a/src/silva/core/references/widgets/formulator_templates/reference_input.cpt Mon Nov 11 14:48:43 2013 +0100
+++ b/src/silva/core/references/widgets/formulator_templates/reference_input.cpt Mon Dec 09 11:22:09 2013 +0100
@@ -8,7 +8,7 @@
title="Edit item" tabindex="-1"
id="#" href="#"
tal:attributes="id string:${view.id}-edit-link;
- style item.value_path and '' or 'display: none';
+ style None if item.value_path else 'display: none';
href item.value_path"
i18n:attributes="title">
</a>
diff -r 2c55eae09d13 -r b45358442c1c src/silva/core/references/widgets/zeamform_templates/referencewidgetinput.cpt
--- a/src/silva/core/references/widgets/zeamform_templates/referencewidgetinput.cpt Mon Nov 11 14:48:43 2013 +0100
+++ b/src/silva/core/references/widgets/zeamform_templates/referencewidgetinput.cpt Mon Dec 09 11:22:09 2013 +0100
@@ -7,7 +7,7 @@
title="Edit item" tabindex="-1"
id="#" href="#"
tal:attributes="id string:${id}-edit-link;
- style widget.value_path or 'display: none';
+ style None if widget.value_path else 'display: none';
href widget.value_path"
i18n:attributes="title">
</a>