[silva.ui][Sylvain Viollon] Screen is available on non-Silva con...

[email protected] Tue, 22 Oct 2013 17:29:03 +0200
Newsgroups gmane.comp.web.zope.silva.cvs
Message-ID <[email protected]>
author:    Sylvain Viollon
date:      Tue Oct 22 17:29:00 2013 +0200
revision:  666:c96ea95eae1f in silva.ui
branch:    
details:   https://hg.infrae.com/silva.ui?cmd=changeset;node=c96ea95eae1f
modified:  src/silva/ui/rest/base.py
added:     
removed:   
log:       Screen is available on non-Silva content (all grok contents). Add a
	hook to change the title of the screen.


diffstat:

 src/silva/ui/rest/base.py |  8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)

diffs (39 lines):

diff -r c5dda618ba73 -r c96ea95eae1f src/silva/ui/rest/base.py
--- a/src/silva/ui/rest/base.py	Wed Oct 09 17:29:21 2013 +0200
+++ b/src/silva/ui/rest/base.py	Tue Oct 22 17:29:00 2013 +0200
@@ -7,6 +7,7 @@
 from zope.intid.interfaces import IIntIds
 from grokcore.layout.interfaces import IPage
 from grokcore.layout.interfaces import ILayout
+from grokcore.component.interfaces import IContext
 
 from Acquisition import aq_parent
 from AccessControl import getSecurityManager
@@ -66,7 +67,7 @@
 
 
 class Screen(rest.REST):
-    grok.context(ISilvaObject)
+    grok.context(IContext)
     grok.name('silva.ui')
 
 
@@ -125,6 +126,9 @@
         parents.reverse()
         return {'current': parents}
 
+    def get_menu_title(self):
+        return self.context.get_title_or_id_editable()
+
     def get_menu_parent(self):
         return {'path': self.get_content_path(aq_parent(self.context))}
 
@@ -143,7 +147,7 @@
             'ifaces': screen.get('ifaces', []),
             'title': {
                 'ifaces': ['title'],
-                'title': self.context.get_title_or_id_editable(),
+                'title': self.get_menu_title(),
                 'icon': IIconResolver(
                     self.request).get_content_url(self.context),
             },