def get_editable_icon(self, filename, name): if has_file(self.request, self.images_pagename, filename): if not self.request.config.logo_sizes.has_key(filename): wikiutil.init_logo_sizes(self.request) if not self.request.config.theme_files_last_modified.has_key( filename): wikiutil.init_theme_files_last_modified(self.request) width, height = self.request.config.logo_sizes[filename] last_modified = self.request.config.theme_files_last_modified[ filename] if self.request.isSSL(): icon = ( '<img class="borderless" src="%s" alt="%s" style="%s" ' 'height="%s" width="%s"/><span>%s</span>' % (self.request.getQualifiedURL( uri=getAttachUrl( self.images_pagename, filename, self.request, ts=last_modified), ), name, self.png_behavior, height, width, name)) else: icon = ( '<img class="borderless" src="%s" alt="%s" style="%s" ' 'height="%s" width="%s"/><span>%s</span>' % (getAttachUrl(self.images_pagename, filename, self.request, ts=last_modified), name, self.png_behavior, height, width, name)) else: # we just show text when we don't have an icon to show icon = name return icon
def banner(self,d): """ Assemble the banner @rtype: string @return: banner html """ if d['script_name']: html = ['<a class="nostyle" href="%(script_name)s">' % d] else: html = ['<a class="nostyle" href="%s/Front_Page">' % self.request.getScriptname()] if has_file(self.request, self.images_pagename, 'logo.png'): if not self.request.config.logo_sizes.has_key('logo.png'): wikiutil.init_logo_sizes(self.request) if not self.request.config.theme_files_last_modified.has_key( 'logo.png'): wikiutil.init_theme_files_last_modified(self.request) width, height = self.request.config.logo_sizes['logo.png'] last_modified = self.request.config.theme_files_last_modified[ 'logo.png'] if self.request.isSSL(): html.append( '<img align="middle" src="%s" alt="wiki logo" style="%s" ' 'height="%s" width="%s"></a>' % (self.request.getQualifiedURL( uri=getAttachUrl( self.images_pagename, 'logo.png', self.request, ts=last_modified), ), self.png_behavior, height, width)) else: html.append( '<img align="middle" src="%s" alt="wiki logo" style="%s" ' 'height="%s" width="%s"></a>' % (getAttachUrl(self.images_pagename, 'logo.png', self.request, ts=last_modified), self.png_behavior, height, width)) else: html.append('<div id="logo_text">%s</div></a>' % wikiutil.escape(self.request.config.sitename)) return ''.join(html)
def interwikilink(self, url, text, **kw): """ Return the HTML linking to the interwiki page. """ href, wikitag, wikiurl, wikitail, wikitag_bad, wikitype = \ self.interwikiurl(url, **kw) # link to self? if wikitag is None: return self._word_repl(wikitail) # return InterWiki hyperlink if wikitag_bad: text = "No Interwiki entry for: " + wikitag html_class = 'badinterwiki' else: html_class = 'interwiki' # if the wiki they're linking to is in our farm and if they have a # defined icon then display that if not kw.get('no_icon'): if wikitype == wikiutil.INTERWIKI_FARM_TYPE: current_wiki = self.request.config.wiki_name image_pagename = '%s/%s' % (config.wiki_settings_page, config.wiki_settings_page_images) self.request.switch_wiki(wikitag) if wikiutil.hasFile(image_pagename, 'tinylogo.png', self.request): icon_url = getAttachUrl(image_pagename, 'tinylogo.png', self.request, base_url=farm.getWikiURL( wikitag, self.request), escaped=0) icon = self.image(html_class="interwiki_icon", src=icon_url, alt=wikitag, height='16', width='16') else: icon = self.request.theme.make_icon('interwiki', {'wikitag': wikitag}, html_class="interwiki_icon") self.request.switch_wiki(current_wiki) else: icon = self.request.theme.make_icon('interwiki', {'wikitag': wikitag}, html_class="interwiki_icon") else: icon = '' return self.url(href, icon + text, title=wikitag, unescaped=1, pretty_url=kw.get('pretty_url', 0), css=html_class, show_image=False)