--- a/src/ztfy/baseskin/metas.py Wed Nov 25 10:38:26 2015 +0100
+++ b/src/ztfy/baseskin/metas.py Fri Jan 31 12:08:47 2020 +0100
@@ -14,21 +14,14 @@
##############################################################################
-# import standard packages
-
-# import Zope3 interfaces
-
-# import local interfaces
-from ztfy.baseskin.interfaces.metas import IContentMetasHeaders, IContentMetaHeader, \
- IHTTPEquivMetaHeader, IPropertyMetaHeader, \
- ILinkMetaHeader, IPageMetasHeaders
-
-# import Zope3 packages
+from z3c.template.interfaces import IPageTemplate
+from z3c.template.template import getPageTemplate
from zope.component import adapts, getAdapters
-from zope.interface import implements, Interface
-
-# import local packages
+from zope.component._api import getMultiAdapter
+from zope.interface import Interface, implements
from ztfy.base.interfaces import IBaseContent
+from ztfy.baseskin.interfaces.metas import IContentMetaHeader, IContentMetasHeaders, \
+ IHTTPEquivMetaHeader, ILinkMetaHeader, IPageMetasHeaders, IPropertyMetaHeader, IScriptMetaHeader
class ContentMeta(object):
@@ -89,6 +82,24 @@
'href': self.href}
+class ScriptMeta(object):
+ """Script meta header, based on a template"""
+
+ implements(IScriptMetaHeader)
+
+ template = getPageTemplate()
+
+ def __init__(self, context, request):
+ self.context = context
+ self.request = request
+
+ def render(self):
+ if self.template is None:
+ template = getMultiAdapter((self, self.request), IPageTemplate)
+ return template(self)
+ return self.template()
+
+
class ContentMetasAdapter(object):
"""Generic content metas adapter"""