--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/src/pyams_skin/interfaces/configuration.py Thu Feb 19 10:59:00 2015 +0100
@@ -0,0 +1,133 @@
+#
+# Copyright (c) 2008-2015 Thierry Florac <tflorac AT ulthar.net>
+# All Rights Reserved.
+#
+# This software is subject to the provisions of the Zope Public License,
+# Version 2.1 (ZPL). A copy of the ZPL should accompany this distribution.
+# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
+# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
+# FOR A PARTICULAR PURPOSE.
+#
+
+__docformat__ = 'restructuredtext'
+
+
+# import standard library
+
+# import interfaces
+from zope.location.interfaces import IContained
+
+# import packages
+from zope.interface import Interface, Attribute
+from zope.schema import TextLine, Choice, Bool
+
+from pyams_skin import _
+
+
+class IStaticConfiguration(Interface):
+ """Static configuration interface
+
+ These configuration options are used by default presentation layout
+ """
+
+ application_package = TextLine(title="Main application package",
+ description="This package is used to get current application version",
+ required=False)
+
+ application_name = TextLine(title="Main application name",
+ description="This name is used to display application version",
+ required=False)
+
+ version = Attribute("Application version")
+
+ version_location = Choice(title="Version label location",
+ required=False,
+ values=(u'menus', u'shortcuts'),
+ default=u'menus')
+
+ include_top_links = Bool(title="Include top links?",
+ default=True,
+ required=True)
+
+ include_site_search = Bool(title="Include site search?",
+ default=True,
+ required=False)
+
+ site_search_placeholder = TextLine(title="Site search placeholder",
+ required=False,
+ default=_("Search..."))
+
+ site_search_handler = TextLine(title="Site search handler",
+ required=False,
+ default="#search.html")
+
+ include_mobile_search = Bool(title="Include mobile search?",
+ default=True,
+ required=False)
+
+ mobile_search_placeholder = TextLine(title="Mobile search placeholder",
+ required=False,
+ default=_("Search..."))
+
+ mobile_search_handler = TextLine(title="Mobile search handler",
+ required=False,
+ default='#search.html')
+
+ include_user_activity = Bool(title="Include user dropdown window?",
+ default=True,
+ required=True)
+
+ include_user_shortcuts = Bool(title="Include user shortcuts?",
+ default=True,
+ required=True)
+
+ include_logout_button = Bool(title="Include logout button?",
+ default=True,
+ required=True)
+
+ include_minify_button = Bool(title="Include minify button?",
+ default=True,
+ required=True)
+
+ include_flags = Bool(title="Include flags menu?",
+ default=True,
+ required=False)
+
+ include_menus = Bool(title="Include main menus?",
+ default=True,
+ required=True)
+
+ include_ribbon = Bool(title="Include ribbon?",
+ default=True,
+ required=True)
+
+ include_reload_button = Bool(title="Include reload button?",
+ default=True,
+ required=True)
+
+ body_css_class = TextLine(title="Body HTML tag CSS class",
+ required=False)
+
+
+SKIN_CONFIGURATION_KEY = 'pyams_skin.configuration'
+
+
+class IConfiguration(IContained):
+ """Dynamic application global configuration
+
+ These settings are generally managed by an administrator.
+ They are used by default presentation layout.
+ """
+
+ title = TextLine(title=_("Title"),
+ description=_("Application title displayed in title bar"),
+ required=False)
+
+ description = TextLine(title=_("Description"),
+ description=_("Main application description"),
+ required=False)
+
+ author = TextLine(title=_("Author"),
+ description=_("Public author name"),
+ required=False)