def createPage(self, title, purpose, text): #log.debug("create page %s %s %s", title, purpose, text) if purpose == 'faq': self.faq_pages[title] = text log.debug("%d %d", len(self.faq_pages), len(self.faq_list)) #log.debug(self.faq_pages.keys()) #log.debug(self.faq_list) if len(self.faq_pages) != len(self.faq_list): return faq = self.page_widgets['FAQ'] for l in self.faq_list: question = l[0] answer = self.faq_pages[question] html = faq.getHTML() html += "<h3>%s</h3>\n" % question html += "\n%s\n\n" % answer faq.setHTML(html) html = "<div class='faq'>\n%s</div>\n" % html faq.setHTML(html) faq.replaceLinks(use_page_href=False) return if title == 'header': self.header.setHTML(text) return elif title == 'footer': self.footer.setHTML(text) return elif title == 'sidebar': self.sidebar.setHTML(text) return # Main content case - tabs etc. self.pages[title] = text if len(self.pages) != len(self.page_list): return self.page_widgets = {} self.tab_index = {} for (idx, l) in enumerate(self.page_list): title = l[0] text = self.pages[title] self.tab_index[title] = idx widget = HTMLLinkPanel(text) self.fTabs.add(widget, title, True) self.page_widgets[title] = widget if title == 'FAQ': HTTPRequest().asyncGet("faq/questions.txt", PageListLoader(self, "faq")) else: widget.replaceLinks(use_page_href=False) self.fTabs.selectTab(0) History.addHistoryListener(self) initToken = History.getToken() log.debug("initial token: '%s'", initToken) self.onHistoryChanged(initToken) self.fTabs.addTabListener(self)
def createPage(self, title, purpose, text): if purpose == 'faq': self.faq_pages[title] = text if len(self.faq_pages) != len(self.faq_list): return faq = self.page_widgets['FAQ'] for l in self.faq_list: question = l[0] answer = self.faq_pages[question] html = faq.getHTML() html += "<h3>%s</h3>\n" % question html += "\n%s\n\n" % answer faq.setHTML(html) html = "<div class='faq'>\n%s</div>\n" % html faq.setHTML(html) faq.replaceLinks(use_page_href=False) return if title == 'header': self.header.setHTML(text) return elif title == 'footer': self.footer.setHTML(text) return elif title == 'sidebar': self.sidebar.setHTML(text) return self.pages[title] = text if len(self.pages) != len(self.page_list): return self.page_widgets = {} self.tab_index = {} for (idx, l) in enumerate(self.page_list): title = l[0] text = self.pages[title] self.tab_index[title] = idx widget = HTMLLinkPanel(text) self.fTabs.add(widget, title, True) self.page_widgets[title] = widget if title == 'FAQ': HTTPRequest().asyncGet("faq/questions.txt", PageListLoader(self, "faq")) else: widget.replaceLinks(use_page_href=False) self.fTabs.selectTab(0)
def createPage(self, ref, html, title): htp = HTMLLinkPanel(html) htp.replaceLinks() htp.setWidth("100%") self.pages[ref] = htp
def setHTML(self, text): text = makeWikiLinks(text) text = makeHTML(text) HTMLLinkPanel.setHTML(self, text) self.replaceLinks(use_page_href=False)