def get_links(self): links = Folder.get_links(self) # General informations base = self.get_canonical_path() site_root = self.get_site_root() languages = site_root.get_property('website_languages') # We update XHTMLBody links for key, datatype in self.get_metadata_schema().items(): multilingual = getattr(datatype, 'multilingual', False) langs = languages if multilingual is True else [None] if issubclass(datatype, XHTMLBody): for lang in langs: events = self.get_property(key, language=lang) if not events: continue links.extend(_get_links(base, events)) elif issubclass(datatype, PathDataType): # Relative path for lang in langs: path = self.get_property(key, language=lang) if path is None: continue links.append(str(base.resolve2(path))) elif issubclass(datatype, AbsolutePathDataTypeEnumerate): # Absolute path for lang in langs: path = self.get_property(key, language=lang) if path is None: continue links.append(str(path)) # Tagaware ? if isinstance(self, TagsAware): links.extend(TagsAware.get_links(self)) return links
def get_links(self): base = self.get_canonical_path() site_root = self.get_site_root() available_languages = site_root.get_property("website_languages") links = super(FooterMenu, self).get_links() handler = self.handler get_value = handler.get_record_value for record in handler.get_records_in_order(): for language in available_languages: html_content = get_value(record, "html_content", language=language) if html_content is None: continue links.update(_get_links(base, html_content)) return links
def get_links(self): links = super(TurningFooterTable, self).get_links() base = self.get_canonical_path() # languages site_root = self.get_site_root() available_languages = site_root.get_property('website_languages') # Append links contained in data handler = self.handler get_value = handler.get_record_value for record in handler.get_records_in_order(): for language in available_languages: data = get_value(record, 'data', language=language) if data is None: continue links.update(_get_links(base, data)) return links