def get_latex_heading(context, layout, toc=None): title = layout.get_converter().convert(context.pretty_title_or_id()) # level: depth of rendering level = -1 max_level = len(HEADING_COMMANDS) - 1 obj = context while obj and not IBook.providedBy(obj) and level != max_level: obj = aq_parent(aq_inner(obj)) level += 1 if INavigationRoot.providedBy(obj): # cancel, use section level = 1 break command = HEADING_COMMANDS[level] hide_from_toc_field = context.Schema().getField('hideFromTOC') hide_from_toc = hide_from_toc_field and hide_from_toc_field.get(context) # generate latex tocmark = '' if toc is None and hide_from_toc is True or toc is False: tocmark = '*' latex = '\\%s%s{%s}\n' % ( command, tocmark, title) return latex
def get_latex_heading(context, layout, toc=True): title = layout.get_converter().convert(context.pretty_title_or_id()) # level: depth of rendering level = -1 max_level = len(HEADING_COMMANDS) - 1 obj = context while obj and not IBook.providedBy(obj) and level != max_level: obj = aq_parent(aq_inner(obj)) level += 1 if INavigationRoot.providedBy(obj): # cancel, use section level = 1 break command = HEADING_COMMANDS[level] # generate latex tocmark = '' if not toc: tocmark = '*' latex = '\%s%s{%s}\n' % ( command, tocmark, title) return latex
def get_latex_heading(context, layout, toc=None): title = layout.get_converter().convert(context.pretty_title_or_id()) # level: depth of rendering level = -1 max_level = len(HEADING_COMMANDS) - 1 obj = context while obj and not IBook.providedBy(obj) and level != max_level: obj = aq_parent(aq_inner(obj)) level += 1 if INavigationRoot.providedBy(obj): # cancel, use section level = 1 break command = HEADING_COMMANDS[level] hide_from_toc_field = context.Schema().getField('hideFromTOC') hide_from_toc = hide_from_toc_field and hide_from_toc_field.get(context) # generate latex tocmark = '' if toc is None and hide_from_toc is True or toc is False: tocmark = '*' latex = '\\%s%s{%s}\n' % (command, tocmark, title) return latex
def get_parent_book(self): context = self.context while context and not ISiteRoot.providedBy(context): if IBook.providedBy(context): return context context = aq_parent(aq_inner(context)) return None
def is_first_level_chapter(self,context): """Check if the context is Chapter in the first level of book """ #If the context is None or it is not a chpater if context == None or not IChapter.providedBy(context): return False par = aq_parent(aq_inner(context)) if par and IBook.providedBy(par): return True return False
def _get_hierarchy_titles(self, obj): """ Get all titles in the hierarchy in a list: ['first', 'second'] """ titles = [] parent = obj while not IPloneSiteRoot.providedBy(parent): titles.insert(0, parent.Title()) if IBook.providedBy(parent): break else: parent = aq_parent(aq_inner(parent)) return titles
def get_book(self): obj = self.context while obj is not None: if IBook.providedBy(obj): return obj elif IPloneSiteRoot.providedBy(obj): return None else: obj = aq_parent(aq_inner(obj)) return None
def get_book_obj(self): obj = self.context while obj is not None: if IBook.providedBy(obj): return obj elif IPloneSiteRoot.providedBy(obj): raise Exception('Could not find book.') else: obj = aq_parent(aq_inner(obj)) raise Exception('Could not find book.')
def get_chapter_level(self, obj): """ Return the chapterlevel in a list of int """ chapter_level = [] parent = obj while not IPloneSiteRoot.providedBy(parent): if IBook.providedBy(parent): break else: chapter_level.insert( 0, self._get_filtered_folder_position(parent)) parent = aq_parent(aq_inner(parent)) return chapter_level
def get_book(self): obj = self.context while obj and not IBook.providedBy(obj): obj = aq_parent(aq_inner(obj)) return obj