src/pyams_skin/configuration.py
changeset 157 c716d9f34203
parent 134 d227e7037aa4
child 181 2a582df9842b
equal deleted inserted replaced
156:b8b688fc964e 157:c716d9f34203
    47 #
    47 #
    48 # Static configuration
    48 # Static configuration
    49 #
    49 #
    50 
    50 
    51 @adapter_config(context=(IStaticConfigurationManager, Interface, Interface), provides=IStaticConfiguration)
    51 @adapter_config(context=(IStaticConfigurationManager, Interface, Interface), provides=IStaticConfiguration)
    52 class StaticConfiguration(object):
    52 class StaticConfiguration(ContextRequestViewAdapter):
    53     """Default static configuration"""
    53     """Default static configuration"""
    54 
    54 
    55     application_package = 'pyams_skin'
    55     application_package = 'pyams_skin'
    56     application_name = 'PyAMS'
    56     application_name = 'PyAMS'
    57 
    57 
    58     version_location = 'menus'
    58     version_location = 'menus'
    59 
    59 
       
    60     include_header = True
    60     include_top_links = True
    61     include_top_links = True
    61     include_site_search = True
    62     include_site_search = True
    62     site_search_placeholder = _("Search...")
    63     site_search_placeholder = _("Search...")
    63     site_search_handler = '#search.html'
    64     site_search_handler = '#search.html'
    64     include_mobile_search = True
    65     include_mobile_search = True
    72     include_menus = True
    73     include_menus = True
    73     include_ribbon = True
    74     include_ribbon = True
    74     include_reload_button = True
    75     include_reload_button = True
    75     body_css_class = 'fixed-header fixed-ribbon fixed-navigation'
    76     body_css_class = 'fixed-header fixed-ribbon fixed-navigation'
    76 
    77 
    77     def __init__(self, context, request, view):
       
    78         self.context = context
       
    79         self.request = request
       
    80         self.view = view
       
    81 
       
    82     @property
    78     @property
    83     def version(self):
    79     def version(self):
    84         return pkg_resources.get_distribution(self.application_package).version
    80         return pkg_resources.get_distribution(self.application_package).version
    85 
    81 
    86 
    82 
   104 @implementer(IConfiguration)
   100 @implementer(IConfiguration)
   105 class Configuration(Persistent, Contained):
   101 class Configuration(Persistent, Contained):
   106     """Manageable configuration"""
   102     """Manageable configuration"""
   107 
   103 
   108     title = FieldProperty(IConfiguration['title'])
   104     title = FieldProperty(IConfiguration['title'])
       
   105     short_title = FieldProperty(IConfiguration['short_title'])
   109     description = FieldProperty(IConfiguration['description'])
   106     description = FieldProperty(IConfiguration['description'])
   110     author = FieldProperty(IConfiguration['author'])
   107     author = FieldProperty(IConfiguration['author'])
   111     icon = FileProperty(IConfiguration['icon'])
   108     icon = FileProperty(IConfiguration['icon'])
   112     logo = FileProperty(IConfiguration['logo'])
   109     logo = FileProperty(IConfiguration['logo'])
       
   110 
       
   111     @staticmethod
       
   112     def get_title_prefix(request):
       
   113         adapter = get_current_registry().queryMultiAdapter((request.context, request), IContextTitlePrefix)
       
   114         if adapter is not None:
       
   115             return adapter.prefix
   113 
   116 
   114 
   117 
   115 @adapter_config(context=IConfigurationManager, provides=IConfiguration)
   118 @adapter_config(context=IConfigurationManager, provides=IConfiguration)
   116 def ConfigurationFactory(context):
   119 def ConfigurationFactory(context):
   117     """Configuration factory"""
   120     """Configuration factory"""