def init_resource(self, **kw): kw['website_is_open'] = 'extranet' # TODO allow to choose language at website creation default_language = 'en' # Initialize ikaaro website (Parent class) WebSite.init_resource(self, **kw) # Init bars Website_BarAware.init_resource(self, **kw) # Add a sitemap self.make_resource('sitemap.xml', self.sitemap_class) # Create Robots.txt self.make_resource('robots.txt', RobotsTxt) # Add an image folder self.make_resource('images', Folder) # Tags self.make_resource('tags', self.tagsfolder_class, language=default_language) # Add default news folder self.make_resource('news', self.newsfolder_class) # About self.make_resource('about-itws', AboutITWS, title={default_language: MSG(u'About ITWS').gettext()}) # Add link to news in menu theme = self.get_resource('theme') menu = theme.get_resource('menu/menu') menu.add_new_record({'path': '/news/', 'title': Property(MSG(u'News').gettext(), language='en')}) # Create a 'Welcome' html-content item in ws-data # Order this item in the contentbar path = get_abspath(self.first_contenbar) handler = ro_database.get_handler('%s.%s' % (path, default_language), XHTMLFile) ws_data = self.get_resource('ws-data') ws_data.make_resource('welcome', HTMLContent, title={default_language: MSG(u'Welcome').gettext()}, state='public', display_title=True, body=handler.to_str(), language=default_language) table = ws_data.get_resource('order-contentbar') table.add_new_record({'name': 'welcome'}) # Create a 'Welcome' html-content item in repository # Order this item in the sidebar path = get_abspath(self.first_sidebar) handler = ro_database.get_handler('%s.%s' % (path, default_language), XHTMLFile) repository = self.get_resource('repository') repository.make_resource('first-sidebar', HTMLContent, title={default_language: MSG(u'My first sidebar').gettext()}, state='public', display_title=True, body=handler.to_str(), language=default_language) table = ws_data.get_resource('order-sidebar') table.add_new_record({'name': 'first-sidebar'})
def get_internal_use_resource_names(self): return freeze(Website_BarAware.get_internal_use_resource_names(self) + ['robots.txt', 'sitemap.xml', 'theme/', 'tags/', 'repository/'])
def get_catalog_values(self): return merge_dicts(WebSite.get_catalog_values(self), Website_BarAware.get_catalog_values(self))