changeset 35:f9af9c2dfd59

Place all files in their places relative to MoinMoin's default directory tree
author Radomir Dopieralski <devel@sheep.art.pl>
date Fri, 06 Jun 2008 21:49:11 +0200
parents be6fd654ac8e
children ec4036ef460d
files PageActions.py data/plugin/action/PageActions.py data/plugin/theme/mfact.py data/plugin/theme/mfact/background_gradient.gif data/plugin/theme/mfact/background_pattern.gif data/plugin/theme/mfact/content_background.png data/plugin/theme/mfact/content_background_bottom.png data/plugin/theme/mfact/css/common.css data/plugin/theme/mfact/css/msie.css data/plugin/theme/mfact/css/print.css data/plugin/theme/mfact/css/screen.css data/plugin/theme/mfact/img/PythonPowered.png data/plugin/theme/mfact/img/admon-caution.png data/plugin/theme/mfact/img/admon-important.png data/plugin/theme/mfact/img/admon-note.png data/plugin/theme/mfact/img/admon-tip.png data/plugin/theme/mfact/img/admon-warning.png data/plugin/theme/mfact/img/alert.png data/plugin/theme/mfact/img/angry.png data/plugin/theme/mfact/img/attach.png data/plugin/theme/mfact/img/attention.png data/plugin/theme/mfact/img/biggrin.png data/plugin/theme/mfact/img/checkmark.png data/plugin/theme/mfact/img/devil.png data/plugin/theme/mfact/img/draft.png data/plugin/theme/mfact/img/frown.png data/plugin/theme/mfact/img/icon-error.png data/plugin/theme/mfact/img/icon-info.png data/plugin/theme/mfact/img/idea.png data/plugin/theme/mfact/img/moin-attach.png data/plugin/theme/mfact/img/moin-bottom.png data/plugin/theme/mfact/img/moin-conflict.png data/plugin/theme/mfact/img/moin-deleted.png data/plugin/theme/mfact/img/moin-diff.png data/plugin/theme/mfact/img/moin-download.png data/plugin/theme/mfact/img/moin-edit.png data/plugin/theme/mfact/img/moin-email.png data/plugin/theme/mfact/img/moin-ftp.png data/plugin/theme/mfact/img/moin-help.png data/plugin/theme/mfact/img/moin-home.png data/plugin/theme/mfact/img/moin-icon.png data/plugin/theme/mfact/img/moin-info.png data/plugin/theme/mfact/img/moin-inter.png data/plugin/theme/mfact/img/moin-jabber.png data/plugin/theme/mfact/img/moin-new.png data/plugin/theme/mfact/img/moin-news.png data/plugin/theme/mfact/img/moin-parent.png data/plugin/theme/mfact/img/moin-print.png data/plugin/theme/mfact/img/moin-raw.png data/plugin/theme/mfact/img/moin-readonly.png data/plugin/theme/mfact/img/moin-renamed.png data/plugin/theme/mfact/img/moin-rss.png data/plugin/theme/mfact/img/moin-search.png data/plugin/theme/mfact/img/moin-show.png data/plugin/theme/mfact/img/moin-subscribe.png data/plugin/theme/mfact/img/moin-telnet.png data/plugin/theme/mfact/img/moin-top.png data/plugin/theme/mfact/img/moin-unsubscribe.png data/plugin/theme/mfact/img/moin-up.png data/plugin/theme/mfact/img/moin-updated.png data/plugin/theme/mfact/img/moin-www.png data/plugin/theme/mfact/img/ohwell.png data/plugin/theme/mfact/img/prio1.png data/plugin/theme/mfact/img/prio2.png data/plugin/theme/mfact/img/prio3.png data/plugin/theme/mfact/img/redface.png data/plugin/theme/mfact/img/sad.png data/plugin/theme/mfact/img/smile.png data/plugin/theme/mfact/img/smile2.png data/plugin/theme/mfact/img/smile3.png data/plugin/theme/mfact/img/smile4.png data/plugin/theme/mfact/img/star_off.png data/plugin/theme/mfact/img/star_on.png data/plugin/theme/mfact/img/thumbs-up.png data/plugin/theme/mfact/img/tired.png data/plugin/theme/mfact/img/tongue.png data/plugin/theme/mfact/menu_bar.png htdocs/mfact/background_gradient.gif htdocs/mfact/background_pattern.gif htdocs/mfact/content_background.png htdocs/mfact/content_background_bottom.png htdocs/mfact/css/common.css htdocs/mfact/css/msie.css htdocs/mfact/css/print.css htdocs/mfact/css/screen.css htdocs/mfact/img/PythonPowered.png htdocs/mfact/img/admon-caution.png htdocs/mfact/img/admon-important.png htdocs/mfact/img/admon-note.png htdocs/mfact/img/admon-tip.png htdocs/mfact/img/admon-warning.png htdocs/mfact/img/alert.png htdocs/mfact/img/angry.png htdocs/mfact/img/attach.png htdocs/mfact/img/attention.png htdocs/mfact/img/biggrin.png htdocs/mfact/img/checkmark.png htdocs/mfact/img/devil.png htdocs/mfact/img/draft.png htdocs/mfact/img/frown.png htdocs/mfact/img/icon-error.png htdocs/mfact/img/icon-info.png htdocs/mfact/img/idea.png htdocs/mfact/img/moin-attach.png htdocs/mfact/img/moin-bottom.png htdocs/mfact/img/moin-conflict.png htdocs/mfact/img/moin-deleted.png htdocs/mfact/img/moin-diff.png htdocs/mfact/img/moin-download.png htdocs/mfact/img/moin-edit.png htdocs/mfact/img/moin-email.png htdocs/mfact/img/moin-ftp.png htdocs/mfact/img/moin-help.png htdocs/mfact/img/moin-home.png htdocs/mfact/img/moin-icon.png htdocs/mfact/img/moin-info.png htdocs/mfact/img/moin-inter.png htdocs/mfact/img/moin-jabber.png htdocs/mfact/img/moin-new.png htdocs/mfact/img/moin-news.png htdocs/mfact/img/moin-parent.png htdocs/mfact/img/moin-print.png htdocs/mfact/img/moin-raw.png htdocs/mfact/img/moin-readonly.png htdocs/mfact/img/moin-renamed.png htdocs/mfact/img/moin-rss.png htdocs/mfact/img/moin-search.png htdocs/mfact/img/moin-show.png htdocs/mfact/img/moin-subscribe.png htdocs/mfact/img/moin-telnet.png htdocs/mfact/img/moin-top.png htdocs/mfact/img/moin-unsubscribe.png htdocs/mfact/img/moin-up.png htdocs/mfact/img/moin-updated.png htdocs/mfact/img/moin-www.png htdocs/mfact/img/ohwell.png htdocs/mfact/img/prio1.png htdocs/mfact/img/prio2.png htdocs/mfact/img/prio3.png htdocs/mfact/img/redface.png htdocs/mfact/img/sad.png htdocs/mfact/img/smile.png htdocs/mfact/img/smile2.png htdocs/mfact/img/smile3.png htdocs/mfact/img/smile4.png htdocs/mfact/img/star_off.png htdocs/mfact/img/star_on.png htdocs/mfact/img/thumbs-up.png htdocs/mfact/img/tired.png htdocs/mfact/img/tongue.png htdocs/mfact/menu_bar.png mfact.py mfact/background_gradient.gif mfact/background_pattern.gif mfact/content_background.png mfact/content_background_bottom.png mfact/css/common.css mfact/css/msie.css mfact/css/print.css mfact/css/screen.css mfact/img/PythonPowered.png mfact/img/admon-caution.png mfact/img/admon-important.png mfact/img/admon-note.png mfact/img/admon-tip.png mfact/img/admon-warning.png mfact/img/alert.png mfact/img/angry.png mfact/img/attach.png mfact/img/attention.png mfact/img/biggrin.png mfact/img/checkmark.png mfact/img/devil.png mfact/img/draft.png mfact/img/frown.png mfact/img/icon-error.png mfact/img/icon-info.png mfact/img/idea.png mfact/img/moin-attach.png mfact/img/moin-bottom.png mfact/img/moin-conflict.png mfact/img/moin-deleted.png mfact/img/moin-diff.png mfact/img/moin-download.png mfact/img/moin-edit.png mfact/img/moin-email.png mfact/img/moin-ftp.png mfact/img/moin-help.png mfact/img/moin-home.png mfact/img/moin-icon.png mfact/img/moin-info.png mfact/img/moin-inter.png mfact/img/moin-jabber.png mfact/img/moin-new.png mfact/img/moin-news.png mfact/img/moin-parent.png mfact/img/moin-print.png mfact/img/moin-raw.png mfact/img/moin-readonly.png mfact/img/moin-renamed.png mfact/img/moin-rss.png mfact/img/moin-search.png mfact/img/moin-show.png mfact/img/moin-subscribe.png mfact/img/moin-telnet.png mfact/img/moin-top.png mfact/img/moin-unsubscribe.png mfact/img/moin-up.png mfact/img/moin-updated.png mfact/img/moin-www.png mfact/img/ohwell.png mfact/img/prio1.png mfact/img/prio2.png mfact/img/prio3.png mfact/img/redface.png mfact/img/sad.png mfact/img/smile.png mfact/img/smile2.png mfact/img/smile3.png mfact/img/smile4.png mfact/img/star_off.png mfact/img/star_on.png mfact/img/thumbs-up.png mfact/img/tired.png mfact/img/tongue.png mfact/menu_bar.png
diffstat 226 files changed, 1887 insertions(+), 1140 deletions(-) [+]
line wrap: on
line diff
--- a/PageActions.py	Fri Jun 06 21:47:01 2008 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,68 +0,0 @@
-# -*- coding: iso-8859-1 -*-
-
-import re
-from MoinMoin import config, wikiutil
-from MoinMoin.Page import Page
-
-# Ripped from the LikePages action
-def execute(pagename, request):
-    _ = request.getText
-    from MoinMoin.formatter.text_html import Formatter
-    request.formatter = Formatter(request)
-
-    request.http_headers()
-
-    # This action generate data using the user language
-    request.setContentLanguage(request.lang)
-    request.theme.send_title(_('Actions for %s') % pagename, page_name=pagename)
-        
-    # Start content - IMPORTANT - without content div, there is no
-    # direction support!
-    request.write(request.formatter.startContent("content"))
-
-    # Just list the actions
-    request.write(availableactions(request))
-
-    # End content and send footer
-    request.write(request.formatter.endContent())
-    request.theme.send_footer(pagename)
-
-# Make a link to action
-def actionlink(request, action, title, comment=''):
-    page = request.page
-    _ = request.getText
-    # Always add spaces: AttachFile -> Attach File 
-    # XXX TODO do not make a page object just for split_title
-    title = Page(request, title).split_title(request) #, force=1)
-    # Use translated version if available
-    title = _(title, formatted=False)
-    params = '%s?action=%s' % (page.page_name, action)
-    link = wikiutil.link_tag(request, params, _(title))
-    return u''.join([ u'<li>', link, comment, u'</li>' ])
-
-
-# Rippped from the theme code
-def availableactions(request):
-    page = request.page
-    _ = request.getText
-    html = ''
-    links = []
-    available = request.getAvailableActions(page)
-#    try:
-#        available = available.keys()
-#    except AttributeError:
-#        pass
-    for action in available:
-        links.append(actionlink(request, action, action))
-    if page.isWritable() and request.user.may.write(page.page_name):
-        links.append(actionlink(request, 'edit', 'EditText'))
-    if request.user.valid and request.user.email:
-        action = ("Subscribe", "Unsubscribe")[request.user.isSubscribedTo([page.page_name])]
-        links.append(actionlink(request, 'subscribe', action))
-    if request.user.valid:
-        links.append(actionlink(request, 'userform&logout=logout', 'Logout'))
-    links.append(actionlink(request, 'print', 'PrintView'))
-    links.append(actionlink(request, 'raw', 'ViewRawText'))
-    links.append(actionlink(request, 'refresh', 'DeleteCache'))
-    html = u'<ul>%s</ul>' % u''.join(links)
-    return html
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/data/plugin/action/PageActions.py	Fri Jun 06 21:49:11 2008 +0200
@@ -0,0 +1,68 @@
+# -*- coding: iso-8859-1 -*-
+
+import re
+from MoinMoin import config, wikiutil
+from MoinMoin.Page import Page
+
+# Ripped from the LikePages action
+def execute(pagename, request):
+    _ = request.getText
+    from MoinMoin.formatter.text_html import Formatter
+    request.formatter = Formatter(request)
+
+    request.http_headers()
+
+    # This action generate data using the user language
+    request.setContentLanguage(request.lang)
+    request.theme.send_title(_('Actions for %s') % pagename, page_name=pagename)
+        
+    # Start content - IMPORTANT - without content div, there is no
+    # direction support!
+    request.write(request.formatter.startContent("content"))
+
+    # Just list the actions
+    request.write(availableactions(request))
+
+    # End content and send footer
+    request.write(request.formatter.endContent())
+    request.theme.send_footer(pagename)
+
+# Make a link to action
+def actionlink(request, action, title, comment=''):
+    page = request.page
+    _ = request.getText
+    # Always add spaces: AttachFile -> Attach File 
+    # XXX TODO do not make a page object just for split_title
+    title = Page(request, title).split_title(request) #, force=1)
+    # Use translated version if available
+    title = _(title, formatted=False)
+    params = '%s?action=%s' % (page.page_name, action)
+    link = wikiutil.link_tag(request, params, _(title))
+    return u''.join([ u'<li>', link, comment, u'</li>' ])
+
+
+# Rippped from the theme code
+def availableactions(request):
+    page = request.page
+    _ = request.getText
+    html = ''
+    links = []
+    available = request.getAvailableActions(page)
+#    try:
+#        available = available.keys()
+#    except AttributeError:
+#        pass
+    for action in available:
+        links.append(actionlink(request, action, action))
+    if page.isWritable() and request.user.may.write(page.page_name):
+        links.append(actionlink(request, 'edit', 'EditText'))
+    if request.user.valid and request.user.email:
+        action = ("Subscribe", "Unsubscribe")[request.user.isSubscribedTo([page.page_name])]
+        links.append(actionlink(request, 'subscribe', action))
+    if request.user.valid:
+        links.append(actionlink(request, 'userform&logout=logout', 'Logout'))
+    links.append(actionlink(request, 'print', 'PrintView'))
+    links.append(actionlink(request, 'raw', 'ViewRawText'))
+    links.append(actionlink(request, 'refresh', 'DeleteCache'))
+    html = u'<ul>%s</ul>' % u''.join(links)
+    return html
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/data/plugin/theme/mfact.py	Fri Jun 06 21:49:11 2008 +0200
@@ -0,0 +1,325 @@
+# -*- coding: iso-8859-1 -*-
+"""
+    MoinMoin - mfact theme
+
+    @copyright: 2007 Radomir Dopieralski
+    @license: GNU GPL, see COPYING for details.
+"""
+
+from MoinMoin.theme import ThemeBase
+from MoinMoin import wikiutil
+
+
+class Theme(ThemeBase):
+    name = "mfact"
+    _ = lambda x: x     # We don't have gettext at this moment, so we fake it
+    icons = {
+        # key         alt                        icon filename      w   h
+        # FileAttach
+        'attach':     ("%(attach_count)s",       "moin-attach.png",  7, 15),
+        'attachimg':  (_("[ATTACH]"),            "attach.png",      24, 24),
+        # RecentChanges
+        'rss':        (_("[RSS]"),               "moin-rss.png",    24, 24),
+        'deleted':    (_("[DELETED]"),           "moin-deleted.png",16, 16),
+        'updated':    (_("[UPDATED]"),           "moin-updated.png",16, 16),
+        'renamed':    (_("[RENAMED]"),           "moin-renamed.png",16, 16),
+        'conflict':   (_("[CONFLICT]"),          "moin-conflict.png", 15, 15),
+        'new':        (_("[NEW]"),               "moin-new.png",    16, 16),
+        'diffrc':     (_("[DIFF]"),              "moin-diff.png",   16, 16),
+        # General
+        'bottom':     (_("[BOTTOM]"),            "moin-bottom.png", 14, 10),
+        'top':        (_("[TOP]"),               "moin-top.png",    14, 10),
+        'www':        ("[WWW]",                  "moin-www.png",    11, 11),
+        'mailto':     ("[MAILTO]",               "moin-email.png",  14, 10),
+        'news':       ("[NEWS]",                 "moin-news.png",   10, 11),
+        'telnet':     ("[TELNET]",               "moin-telnet.png", 10, 11),
+        'ftp':        ("[FTP]",                  "moin-ftp.png",    11, 11),
+        'file':       ("[FILE]",                 "moin-ftp.png",    11, 11),
+        # search forms
+        'searchbutton': ("[?]",                  "moin-search.png", 12, 12),
+        'interwiki':  ("[%(wikitag)s]",          "moin-inter.png",  16, 16),
+        # smileys (this is CONTENT, but good looking smileys depend on looking
+        # adapted to the theme background color and theme style in general)
+        #vvv    ==      vvv  this must be the same for GUI editor converter
+        'X-(':        ("X-(",                    'angry.png',       16, 16),
+        ':D':         (":D",                     'biggrin.png',     16, 16),
+        '<:(':        ("<:(",                    'frown.png',       16, 16),
+        ':o':         (":o",                     'redface.png',     16, 16),
+        ':(':         (":(",                     'sad.png',         16, 16),
+        ':)':         (":)",                     'smile.png',       16, 16),
+        'B)':         ("B)",                     'smile2.png',      16, 16),
+        ':))':        (":))",                    'smile3.png',      16, 16),
+        ';)':         (";)",                     'smile4.png',      16, 16),
+        '/!\\':       ("/!\\",                   'alert.png',       16, 16),
+        '<!>':        ("<!>",                    'attention.png',   16, 16),
+        '(!)':        ("(!)",                    'idea.png',        16, 16),
+        ':-?':        (":-?",                    'tongue.png',      16, 16),
+        ':\\':        (":\\",                    'ohwell.png',      16, 16),
+        '>:>':        (">:>",                    'devil.png',       16, 16),
+        '|)':         ("|)",                     'tired.png',       16, 16),
+        ':-(':        (":-(",                    'sad.png',         16, 16),
+        ':-)':        (":-)",                    'smile.png',       16, 16),
+        'B-)':        ("B-)",                    'smile2.png',      16, 16),
+        ':-))':       (":-))",                   'smile3.png',      16, 16),
+        ';-)':        (";-)",                    'smile4.png',      16, 16),
+        '|-)':        ("|-)",                    'tired.png',       16, 16),
+        '(./)':       ("(./)",                   'checkmark.png',   16, 16),
+        '{OK}':       ("{OK}",                   'thumbs-up.png',   16, 16),
+        '{X}':        ("{X}",                    'icon-error.png',  16, 16),
+        '{i}':        ("{i}",                    'icon-info.png',   16, 16),
+        '{1}':        ("{1}",                    'prio1.png',       16, 16),
+        '{2}':        ("{2}",                    'prio2.png',       16, 16),
+        '{3}':        ("{3}",                    'prio3.png',       16, 16),
+        '{*}':        ("{*}",                    'star_on.png',     16, 16),
+        '{o}':        ("{o}",                    'star_off.png',    16, 16),
+    }
+    del _
+
+    def header(self, d, **kw):
+        """ Assemble wiki header
+
+        @param d: parameter dictionary
+        @rtype: unicode
+        @return: page header html
+        """
+        html = [
+            u'<div class="outer-wrap">',
+            # Pre header custom html
+            self.emit_custom_html(self.cfg.page_header1),
+            # Header
+            u'<div class="inner-wrap">',
+            u'<div id="header">',
+            self.searchform(d),
+            self.logo(),
+            u'</div>',
+            self.navibar(d),
+            # Post header custom html (not recommended)
+            self.emit_custom_html(self.cfg.page_header2),
+            # Start of page
+            self.startPage(),
+        ]
+        return u'\n'.join(html)
+
+    def editorheader(self, d, **kw):
+        """ Assemble wiki header for editor
+
+        @param d: parameter dictionary
+        @rtype: unicode
+        @return: page header html
+        """
+        html = [
+            u'<div class="outer-wrap">',
+            # Pre header custom html
+            self.emit_custom_html(self.cfg.page_header1),
+            u'<div class="inner-wrap">',
+            # Header
+            u'<div id="header">',
+            self.title(d),
+            self.msg(d),
+            u'</div>',
+            # Post header custom html (not recommended)
+            self.emit_custom_html(self.cfg.page_header2),
+            # Start of page
+            self.startPage(),
+        ]
+        return u'\n'.join(html)
+
+    def footer(self, d, **keywords):
+        """ Assemble wiki footer
+
+        @param d: parameter dictionary
+        @keyword ...:...
+        @rtype: unicode
+        @return: page footer html
+        """
+        page = d['page']
+        html = [
+            # End of page
+            self.endPage(),
+            # Pre footer custom html (not recommended!)
+            self.emit_custom_html(self.cfg.page_footer1),
+            # Footer
+            u'<div id="footer">',
+            self.credits(d),
+            self.editbar(d),
+            u'</div>',
+            u'</div>',
+            # Post footer custom html
+            self.emit_custom_html(self.cfg.page_footer2),
+            u'</div>',
+            ]
+        return u'\n'.join(html)
+
+    def editbar(self, d, **keywords):
+        if not self.shouldShowEditbar(d['page']):
+            return u''
+        page = d['page']
+        if not (page.isWritable() and
+                self.request.user.may.write(page.page_name)):
+            return u""
+        parts = [
+            u'<ul class="editbar">',
+            self.edit_link(d),
+            self.revert_link(d),
+            self.info_link(d),
+            self.admin_link(d),
+            u'</ul>',
+        ]
+        return u' '.join(parts)
+
+    def edit_link(self, d):
+        page = d['page']
+        if not (page.isWritable() and
+                self.request.user.may.write(page.page_name)):
+            return u""
+        _ = self.request.getText
+        params = (wikiutil.quoteWikinameURL(page.page_name) +
+                  '?action=edit')
+        text = _('Edit', formatted=False)
+        link = wikiutil.link_tag(self.request, params, text, css_class="edit", name="texteditlink")
+        html = u"<li>%s</li>" % link
+        return html
+
+    def info_link(self, d):
+        page = d['page']
+        _ = self.request.getText
+        params = (wikiutil.quoteWikinameURL(page.page_name) +
+                  '?action=info')
+        text = _('History', formatted=False)
+        link = wikiutil.link_tag(self.request, params, text, css_class="history")
+        html = u"<li>%s</li>" % link
+        return html
+
+    def revert_link(self, d):
+        page = d['page']
+        if not (self.request.rev and
+                page.isWritable() and
+                self.request.user.may.revert(page.page_name)):
+            return u''
+        _ = self.request.getText
+        params = (wikiutil.quoteWikinameURL(page.page_name) +
+                  '?action=revert&rev=%d' % self.request.rev)
+        text = _('Revert', formatted=False)
+        link = wikiutil.link_tag(self.request, params, text, css_class="revert")
+        html = u"<li>%s</li>" % link
+        return html
+
+    def admin_link(self, d):
+        page = d['page']
+        _ = self.request.getText
+        params = (wikiutil.quoteWikinameURL(page.page_name) +
+                  '?action=PageActions')
+        text = _('Actions', formatted=False)
+        link = wikiutil.link_tag(self.request, params, text, css_class="admin")
+        html = u"<li>%s</li>" % link
+        return html
+
+    def credits(self, d):
+        html = u"""<ul class="credits">
+    <li><a href="/Downloads">open source software</a></li>
+    <li><a href="http://www.measurement-factory.com/">&copy; The Measurement
+    Factory</a></li>
+</ul>"""
+        return html
+
+    def html_stylesheets(self, d):
+        """ Assemble html head stylesheet links
+
+        @param d: parameter dictionary
+        @rtype: string
+        @return: stylesheets links
+        """
+        link = '<link rel="stylesheet" type="text/css" charset="%s" media="%s" href="%s">'
+
+        # Check mode
+        if d.get('print_mode'):
+            media = d.get('media', 'print')
+            stylesheets = getattr(self, 'stylesheets_' + media)
+        else:
+            stylesheets = self.stylesheets
+        usercss = self.request.user.valid and self.request.user.css_url
+
+        # Create stylesheets links
+        html = []
+        prefix = self.cfg.url_prefix_static
+        csshref = '%s/%s/css' % (prefix, self.name)
+        for media, basename in stylesheets:
+            href = '%s/%s.css' % (csshref, basename)
+            html.append(link % (self.stylesheetsCharset, media, href))
+
+            # Don't add user css url if it matches one of ours
+            if usercss and usercss == href:
+                usercss = None
+
+        # admin configurable additional css (farm or wiki level)
+        for media, csshref in self.request.cfg.stylesheets:
+            html.append(link % (self.stylesheetsCharset, media, csshref))
+
+        csshref = '%s/%s/css/msie.css' % (prefix, self.name)
+#        html.append("""
+#<!-- css only for MSIE browsers -->
+#<!--[if IE 5]>
+#   %s
+#<![endif]-->
+#""" % link % (self.stylesheetsCharset, 'all', csshref))
+        html.append("""
+<!-- css only for MSIE browsers -->
+<!--[if IE 5.5]>
+   %s
+<![endif]-->
+""" % link % (self.stylesheetsCharset, 'all', csshref))
+        html.append("""
+<!-- css only for MSIE browsers -->
+<!--[if IE 6]>
+   %s
+<![endif]-->
+""" % link % (self.stylesheetsCharset, 'all', csshref))
+
+        # Add user css url (assuming that user css uses same charset)
+        if usercss and usercss.lower() != "none":
+            html.append(link % (self.stylesheetsCharset, 'all', usercss))
+
+        return '\n'.join(html)
+
+    def searchform(self, d):
+        """
+        assemble HTML code for the search forms
+
+        @param d: parameter dictionary
+        @rtype: unicode
+        @return: search form html
+        """
+        _ = self.request.getText
+        form = self.request.form
+        updates = {
+            'search_value': wikiutil.escape(form.get('value', [''])[0], 1),
+            'search_full_label': _('Search'),
+            'baseurl': self.request.getScriptname(),
+            'pagename_quoted': wikiutil.quoteWikinameURL(d['page'].page_name),
+            }
+        d.update(updates)
+
+        html = u'''
+<form id="searchform" method="get" action="%(baseurl)s/%(pagename_quoted)s">
+<div>
+<input type="hidden" name="action" value="fullsearch">
+<input type="hidden" name="context" value="180">
+<input id="searchinput" type="text" name="value" value="%(search_value)s" size="20"
+    onfocus="searchFocus(this)" onblur="searchBlur(this)"
+    onkeyup="searchChange(this)" onchange="searchChange(this)" alt="Search">
+<input id="fullsearch" name="fullsearch" type="submit"
+    value="%(search_full_label)s" alt="Search this site">
+</div>
+</form>
+''' % d
+        return html
+
+def execute(request):
+    """
+    Generate and return a theme object
+
+    @param request: the request object
+    @rtype: MoinTheme
+    @return: Theme object
+    """
+    return Theme(request)
Binary file data/plugin/theme/mfact/background_gradient.gif has changed
Binary file data/plugin/theme/mfact/background_pattern.gif has changed
Binary file data/plugin/theme/mfact/content_background.png has changed
Binary file data/plugin/theme/mfact/content_background_bottom.png has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/data/plugin/theme/mfact/css/common.css	Fri Jun 06 21:49:11 2008 +0200
@@ -0,0 +1,470 @@
+/*  common.css - MoinMoin Default Styles
+
+Copyright (c) 2001, 2002, 2003 by Juergen Hermann
+*/
+
+/* content styles */
+
+html {
+	background-color: white;
+	color: black;
+	font-family: Arial, Lucida Grande, sans-serif;
+	font-size: 1em;
+}
+
+body {
+	margin: 0;
+}
+
+/* Links */
+
+a {color: #0044B3;}
+a:visited {color: #597BB3;}
+a.nonexistent, a.badinterwiki {color: gray;}
+
+a.www:before {content: url(../img/moin-www.png); margin: 0 0.2em;}
+a.http:before {content: url(../img/moin-www.png); margin: 0 0.2em;}
+a.https:before {content: url(../img/moin-www.png); margin: 0 0.2em;}
+a.file:before {content: url(../img/moin-ftp.png); margin: 0 0.2em;}
+a.ftp:before {content: url(../img/moin-ftp.png); margin: 0 0.2em;}
+a.nntp:before {content: url(../img/moin-news.png); margin: 0 0.2em;}
+a.news:before {content: url(../img/moin-news.png); margin: 0 0.2em;}
+a.telnet:before {content: url(../img/moin-telnet.png); margin: 0 0.2em;}
+a.irc:before,a.ircs:before  {content: url(../img/moin-telnet.png); margin: 0 0.2em;}
+a.mailto:before {content: url(../img/moin-email.png); margin: 0 0.2em;}
+a.attachment:before {content: url(../img/moin-attach.png); margin: 0 0.2em;}
+a.badinterwiki:before {content: url(../img/moin-inter.png); margin: 0 0.2em;}
+a.interwiki:before {content: url(../img/moin-inter.png); margin: 0 0.2em;}
+
+li p {
+	margin: .25em 0;
+}
+
+li.gap {
+    margin-top: 0.5em;
+}
+
+dt {
+    margin-top: 0.5em;
+    font-weight: bold;
+}
+
+dd {
+    margin-top: 0;
+    margin-bottom: 0;
+}
+
+dd p {
+    margin: 0.25em 0;
+}
+   
+a, img, img.drawing {
+	border: 0;
+}
+
+pre {
+	border: 1pt solid #AEBDCC;
+	background-color: #F3F5F7;
+	padding: 5pt;
+	font-family: courier, monospace;
+	white-space: pre;
+	/* begin css 3 or browser specific rules - do not remove!
+	see: http://forums.techguy.org/archive/index.php/t-249849.html */
+    white-space: pre-wrap;
+    word-wrap: break-word;
+    white-space: -moz-pre-wrap;
+    white-space: -pre-wrap;
+    white-space: -o-pre-wrap;
+    /* end css 3 or browser specific rules */
+}
+
+pre.comment {
+    background-color: #CCCCCC;
+    color: red;
+    padding: 0;
+    margin: 0;
+    border: 0;
+}
+
+pre.comment:before {
+    content: url(../img/attention.png);
+}
+
+
+/* .comment css definition must be top of .red/.green/.blue or it won't work */
+.comment { color: #555555; background-color: #DDDDFF; }
+
+.red { background-color: #FFCCCC; }
+.green { background-color: #CCFFCC; }
+.blue { background-color: #CCCCFF; }
+
+.solid { border: 2px solid #000000; padding: 2px; }
+.dashed { border: 2px dashed #000000; padding: 2px; }
+.dotted { border: 2px dotted #000000; padding: 2px; }
+
+
+table
+{
+    background: #fff;
+	margin: 0.5em 0 0 0.5em;
+	border-collapse: collapse;
+}
+
+th, td
+{
+	padding: 0.25em 0.5em 0.25em 0.5em;
+	border: 1pt solid #ADB9CC;
+}
+
+td p {
+	margin: 0;
+	padding: 0;
+}
+
+/* TableOfContents macro */
+.table-of-contents { 
+                     color: black; 
+                     background: #fff url(../toc_background.gif) no-repeat;
+                     font-size: small;
+                     text-align:left;
+                     margin: 0.5em -188px 0.5em 0.5em; 
+                     padding: 5px;
+                     width:260px; 
+                    float: right;
+}
+.table-of-contents ol { padding: 0; margin:0; margin-left:2.5em; list-style-type:decimal; }
+.table-of-contents ul { padding: 0; margin:0; list-style-type:none; }
+.table-of-contents li { margin:0; padding: 0 }
+.table-of-contents-heading { 
+    font-weight:bold; 
+    padding:0; margin: 0.5em 0 0.75em 0.25em; 
+    color:#d42029;
+    font-size: 120%;
+    letter-spacing: 0.05em;
+}
+
+
+.footnotes div {
+	width: 5em;
+	border-top: 1pt solid gray;
+}
+
+.footnotes ol {
+	padding: 0 2em;
+	margin: 0 0 1em;
+}
+
+.footnotes li {
+}
+
+.info {
+    float: right;
+    font-size: 0.7em;
+    color: gray;
+}
+
+#pageinfo {
+    margin-top: 2em;
+}
+
+.seperator {
+    color: gray;
+}
+
+#pagebottom {clear: both;}
+
+/* standard rule ---- */
+hr {
+    height: 1pt;
+    background-color: #9C9C9C;
+    border: 0;
+}
+
+/* custom rules ----- to ---------- */
+.hr1 {height: 2pt;}
+.hr2 {height: 3pt;}
+.hr3 {height: 4pt;}
+.hr4 {height: 5pt;}
+.hr5 {height: 6pt;}
+.hr6 {height: 7pt;}
+
+/* Replacement for deprecated html 3 <u> element and html 4 <strike> */
+.u {text-decoration: underline;}
+.strike {text-decoration: line-through;}
+
+/* eye catchers */
+.warning 
+{
+	color: red;
+}
+
+.error 
+{
+	color: red;
+}
+
+strong.highlight 
+{
+	background-color: #CCE0FF;
+	padding: 1pt;
+}
+
+
+/* Recent changes */
+
+.rcrss {
+	float: right;
+	margin: 0;
+}
+
+.recentchanges[dir="rtl"] .rcrss {
+	float: left;
+}
+
+.recentchanges table {
+	clear: both;
+}
+
+.recentchanges td {
+	vertical-align: top;
+	border: none;
+	border-bottom: 1pt solid #E6EAF0;
+	background: #F2F4F7;
+}
+
+.rcdaybreak td {
+	background: #B8C5D9;
+	border: none;
+}
+
+.rcdaybreak td a {
+	font-size: 0.88em;
+}
+
+.rcicon1, .rcicon2 {
+	text-align: center;
+}
+
+.rcpagelink {
+	width: 33%;
+}
+
+.rctime {
+	font-size: 0.88em;
+	white-space: nowrap;
+}
+
+.rceditor {
+	white-space: nowrap;
+	font-size: 0.88em;
+}
+
+.rccomment {
+	width: 50%;
+	color: gray;
+	font-size: 0.88em;
+}
+
+
+/* User Preferences */
+
+.userpref table, .userpref td {
+	border: none;
+}
+
+/* CSS for new code_area markup used by Colorizer and ParserBase */
+
+div.codearea { /* the div makes the border */
+	margin: 0.5em 0;
+	padding: 0;
+	border: 1pt solid #AEBDCC;
+	background-color: #F3F5F7;
+	color: black;
+}
+
+div.codearea pre { /* the pre has no border and is inside the div */
+	margin: 0;
+	padding: 10pt;
+	border: none;
+}
+
+a.codenumbers { /* format of the line numbering link */
+	margin: 0 10pt;
+	font-size: 0.85em;
+	color: gray;
+}
+
+/* format of certain syntax spans */
+div.codearea pre span.LineNumber {color: gray;}
+div.codearea pre span.ID         {color: #000000;}
+div.codearea pre span.Operator   {color: #0000C0;}
+div.codearea pre span.Char       {color: #004080;}
+div.codearea pre span.Comment    {color: #008000;}
+div.codearea pre span.Number     {color: #0080C0;}
+div.codearea pre span.String     {color: #004080;}
+div.codearea pre span.SPChar     {color: #0000C0;}
+div.codearea pre span.ResWord    {color: #A00000;}
+div.codearea pre span.ConsWord   {color: #008080; font-weight: bold;}
+div.codearea pre span.Error      {color: #FF8080; border: solid 1.5pt #FF0000;}
+div.codearea pre span.ResWord2   {color: #0080ff; font-weight: bold;}
+div.codearea pre span.Special    {color: #0000ff;}
+div.codearea pre span.Preprc     {color: #803999;}
+
+/* for diff parser */
+div.codearea pre span.DiffAdded   {color: #4876FF;}
+div.codearea pre span.DiffRemoved {color: #FF0000;}
+div.codearea pre span.DiffChanged {color: #FF7F50;}
+div.codearea pre span.DiffSeparator {color: #228B22; font-weight: bold}
+
+/* Search results */
+.advancedsearch {
+    border: 1pt solid #ADB9CC;
+}
+
+.advancedsearch td {
+    vertical-align: top;
+    background-color: #E7E7E7;    
+    border: 0px;
+}
+
+.advancedsearch td.searchfor {
+    font-weight: bold;
+}
+
+.advancedsearch input {
+    border: 1px solid #ADB9CC;
+    background-color: #fff;
+}
+
+.advancedsearch input[disabled] {
+    background-color: #eee;
+}
+
+.advancedsearch td.submit {
+    border-top: 1px solid #ADB9CC;
+    background-color: #fff;
+    text-align: right;
+}
+
+.advancedsearch optioni, select {
+    border: 1px solid #ADB9CC;
+    background-color: #fff;
+}
+
+
+.searchresults dt {
+    margin-top: 1em;
+    font-weight: normal;
+}
+
+.searchresults dd, .searchresults p {
+    font-size: 0.85em;
+}
+
+.searchresults .searchhitinfobar {
+    color: #008000;
+    margin-left: 15px;
+    margin-top: 0;
+}
+
+p.searchstats {
+    font-size: 0.8em;
+    text-align: right;
+    width: 100%;
+    background-color: #E6EAF0;
+    border-top: 1px solid #9088DC;
+    padding: 2px;
+}
+
+p.searchhint {
+    background-color: #E6EAF0;
+    border: 1px solid #9088DC;
+    padding: 2px;
+}
+
+.searchpages {
+    margin-left: auto;
+    margin-right: auto;
+}
+
+.searchpages tr, .searchpages td {
+    border: 0;
+    padding: 5px;
+    margin: 0;
+    text-align: center;
+    vertical-align: middle;
+    color: #b93a58;
+    font-weight: bold;
+    font-size: 1.05em;
+}
+
+.searchpages td a, .searchpages td a:link {
+    text-decoration: underline;
+}
+
+/* MonthCalendar css */
+
+/* days without and with pages linked to them */
+a.cal-emptyday {
+    color: #777777;
+    text-align: center;
+}
+a.cal-usedday {
+    color: #000000;
+    font-weight: bold;
+    text-align: center;
+}
+/* general stuff: workdays, weekend, today */
+td.cal-workday {
+    background-color: #DDDDFF;
+    text-align: center;
+}
+td.cal-weekend {
+    background-color: #FFDDDD;
+    text-align: center;
+}
+td.cal-today {
+    background-color: #CCFFCC;
+    border-style: solid;
+    border-width: 2pt;
+    text-align: center;
+}
+/* invalid places on the monthly calendar sheet */
+td.cal-invalidday {
+    background-color: #CCCCCC;
+}
+/* links to prev/next month/year */
+a.cal-link {
+    color: #000000;
+    text-decoration: none;
+}
+th.cal-header {
+    background-color: #DDBBFF;
+    text-align: center;
+}
+
+/* for MonthCalendar mouseover info boxes */
+TABLE.tip {
+    color: black;
+    background-color: #FF8888;
+    font-size: small;
+    font-weight: normal;
+    border-style: solid;
+    border-width: 1px;
+}
+
+TH.tip {
+    background-color: #FF4444;
+    font-weight: bold;
+    text-align: center;
+}
+
+TD.tip {
+    text-align: left;
+}
+*[dir="rtl"] TD.tip {
+    text-align: right;
+}
+
+/* end MonthCalendar stuff */
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/data/plugin/theme/mfact/css/msie.css	Fri Jun 06 21:49:11 2008 +0200
@@ -0,0 +1,42 @@
+/*  msie.css - MoinMoin MS Internet explorer bug workarounds */
+
+/* We need PNG transparency for shadows */
+/* XXX for some reason relative URLs won't work with Lighttpd web server. */
+
+ul#navibar {
+    background-image: none;
+    filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled=true, sizingMethod='crop', src='../menu_bar.png');
+}
+
+/* The ALphaImageLoader makes links inactive, we need to bring them up. */
+ul#navibar li {
+    position: relative;
+}
+
+div#content {
+    background-image: none; 
+    filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled='true', sizingMethod='scale', src='../content_background.png');
+}
+
+div#footer {
+    background-image: none;
+    filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled='true', sizingMethod='crop', src='../content_background_bottom.png');
+    height: 1px; /* Needed for HasLayout. */
+}
+
+/* Alternate method of centering that works well in msie 5 */
+div.inner-wrap {
+    width: 801px;
+    margin: 0 0 0 -401px;
+    position: relative;
+    left: 50%;
+}
+
+/* MSIE doesn't have min-height, use heighti nstead */
+div#content {
+    height: 360px;
+}
+
+div.table-of-contents { 
+    margin: 0.5em -112px 0.5em 0.5em; 
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/data/plugin/theme/mfact/css/print.css	Fri Jun 06 21:49:11 2008 +0200
@@ -0,0 +1,53 @@
+/*  print.css - MoinMoin Default Styles
+
+Copyright (c) 2001, 2002, 2003 by Juergen Hermann
+*/
+
+/* content styles */
+
+html {
+	font-family: Times, serif;
+	font-size: 12pt;
+}
+
+body {
+    /* Give about 3.4cm in Mozilla/Firefox and about 2.2cm in Safari */
+	margin: 1.5cm;
+}
+
+a, a:visited, a.nonexistent, a.badinterwiki {
+	color: black;
+	text-decoration: none;
+}
+
+a:hover {
+	text-decoration: underline;
+}
+
+.info a {
+    color: gray;
+}
+
+pre {
+	font-size: 10pt;
+}
+
+a.interwiki:before, a.badinterwiki:before {
+	content: attr(title) ":";
+}
+
+a.interwiki img, a.badinterwiki img {
+	display: none;
+}
+
+.footnotes div {
+	width: 5em;
+	border-top: 1pt solid gray;
+}
+
+/* user interface styles */
+
+#header, #sidebar, #footer, #timings, #credits, #interwiki, #pagelocation {
+	display: none;
+}
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/data/plugin/theme/mfact/css/screen.css	Fri Jun 06 21:49:11 2008 +0200
@@ -0,0 +1,182 @@
+
+/** General layout **/
+
+html {
+    background: #fff url(../background_pattern.gif) 50% 0;
+}
+
+body {
+    color:#3f4e67;
+    margin: 0;
+    padding: 0;
+    font-size: 88%;
+    font-family: arial, verdana, sans-serif;
+}
+
+div.outer-wrap {
+    background: url(../background_gradient.gif) repeat-x 50% 0;
+}
+
+div.inner-wrap {
+    width: 801px;
+    margin: 0 auto;
+}
+
+div#header {
+    position: relative;
+    padding: 1em 1.5em 0.25em 1.5em;
+}
+
+div#logo {
+    font-weight: bold;
+    font-size: 200%;
+    color:#d42029;
+}
+
+div#logo img {
+    vertical-align: middle;
+}
+
+form#searchform {
+    margin: 0;
+    position: absolute;
+    bottom: 0.25em;
+    right: 1.5em;
+}
+
+form#searchform input {
+    font-size: 90%;
+    border: 1px solid #6c7896;
+    color: #3f4e67;
+    background: #e0e1ea;
+    border-radius: 2px;
+    -moz-border-radius: 2px;
+}
+form#searchform input#searchinput {
+    background: #fff;
+}
+
+ul#navibar {
+    clear: both;
+    padding: 14px 1.25em 0 1.25em;
+    margin: 0;
+    height: 40px;
+    background: url(../menu_bar.png) no-repeat;
+}
+ul#navibar li {
+    display: inline;
+    padding: 0;
+    margin: 0;
+}
+
+ul#navibar a {
+    padding:  0 1.25em 0 1.25em;
+    font-weight: bold;
+    color: #fff;
+    text-decoration: none;
+    letter-spacing: 0.05em;
+}
+
+ul#navibar a:hover {
+    color:#3f4e67;
+}
+
+div#content {
+    padding: 0.5em 224px 1.5em 32px;
+    background: url(../content_background.png) repeat-y;
+    min-height: 360px;
+}
+
+div#footer {
+    background: url(../content_background_bottom.png) no-repeat;
+    text-align: center;
+    padding: 16px 0 3em 0;
+    color: #fff;
+    font-size: 90%;
+}
+
+div#footer a {
+    color: #fff;
+    text-decoration: none;
+}
+
+div#footer a:hover {
+    text-decoration: underline;
+}
+
+ul.credits, ul.editbar {
+    margin: 0;
+    padding: 0;
+}
+
+ul.credits li, ul.editbar li {
+    display: inline;
+    margin: 0 0.5em;
+    padding: 0;
+}
+
+/** Styling the content text **/
+
+div#content {
+    line-height:1.35em;
+    font-size: 99%;
+}
+div#content a {
+    color:#4c6dcd;
+    text-decoration: none;
+}
+div#content a:visited {
+    color: #75507b;
+}
+div#content a:hover {
+    color:#d41f28;
+    text-decoration:underline;
+}
+
+h1, h2, h3, h4, h5, h6 {
+    color:#d42029;
+    margin:15px 0 10px 0;
+}
+h1 {
+    margin:0;
+}
+h2 {
+    font-weight:normal;
+}
+h3 {
+    font-size:120%;
+    color:#3f4e67;
+}
+
+div#content li p { margin: 0 }
+
+/** The editor **/
+
+form#editor {
+    margin: 0;
+}
+
+form#editor input#editor-comment,
+form#editor textarea {
+    width: 720px;
+}
+div#message {
+    background: url(../content_background_top.png) no-repeat 0 100%;
+    padding: 0 32px 12px 32px;
+}
+div#message p {
+    margin: 0;
+}
+
+ul#pagelocation {
+    margin: 0 0 0 32px;
+    padding: 16px 0 0 0;
+}
+ul#pagelocation li {
+    display: inline;
+    margin: 0;
+    padding: 0;
+    font-weight: bold;
+    font-size: 200%;
+    color:#d42029;
+}
Binary file data/plugin/theme/mfact/img/PythonPowered.png has changed
Binary file data/plugin/theme/mfact/img/admon-caution.png has changed
Binary file data/plugin/theme/mfact/img/admon-important.png has changed
Binary file data/plugin/theme/mfact/img/admon-note.png has changed
Binary file data/plugin/theme/mfact/img/admon-tip.png has changed
Binary file data/plugin/theme/mfact/img/admon-warning.png has changed
Binary file data/plugin/theme/mfact/img/alert.png has changed
Binary file data/plugin/theme/mfact/img/angry.png has changed
Binary file data/plugin/theme/mfact/img/attach.png has changed
Binary file data/plugin/theme/mfact/img/attention.png has changed
Binary file data/plugin/theme/mfact/img/biggrin.png has changed
Binary file data/plugin/theme/mfact/img/checkmark.png has changed
Binary file data/plugin/theme/mfact/img/devil.png has changed
Binary file data/plugin/theme/mfact/img/draft.png has changed
Binary file data/plugin/theme/mfact/img/frown.png has changed
Binary file data/plugin/theme/mfact/img/icon-error.png has changed
Binary file data/plugin/theme/mfact/img/icon-info.png has changed
Binary file data/plugin/theme/mfact/img/idea.png has changed
Binary file data/plugin/theme/mfact/img/moin-attach.png has changed
Binary file data/plugin/theme/mfact/img/moin-bottom.png has changed
Binary file data/plugin/theme/mfact/img/moin-conflict.png has changed
Binary file data/plugin/theme/mfact/img/moin-deleted.png has changed
Binary file data/plugin/theme/mfact/img/moin-diff.png has changed
Binary file data/plugin/theme/mfact/img/moin-download.png has changed
Binary file data/plugin/theme/mfact/img/moin-edit.png has changed
Binary file data/plugin/theme/mfact/img/moin-email.png has changed
Binary file data/plugin/theme/mfact/img/moin-ftp.png has changed
Binary file data/plugin/theme/mfact/img/moin-help.png has changed
Binary file data/plugin/theme/mfact/img/moin-home.png has changed
Binary file data/plugin/theme/mfact/img/moin-icon.png has changed
Binary file data/plugin/theme/mfact/img/moin-info.png has changed
Binary file data/plugin/theme/mfact/img/moin-inter.png has changed
Binary file data/plugin/theme/mfact/img/moin-jabber.png has changed
Binary file data/plugin/theme/mfact/img/moin-new.png has changed
Binary file data/plugin/theme/mfact/img/moin-news.png has changed
Binary file data/plugin/theme/mfact/img/moin-parent.png has changed
Binary file data/plugin/theme/mfact/img/moin-print.png has changed
Binary file data/plugin/theme/mfact/img/moin-raw.png has changed
Binary file data/plugin/theme/mfact/img/moin-readonly.png has changed
Binary file data/plugin/theme/mfact/img/moin-renamed.png has changed
Binary file data/plugin/theme/mfact/img/moin-rss.png has changed
Binary file data/plugin/theme/mfact/img/moin-search.png has changed
Binary file data/plugin/theme/mfact/img/moin-show.png has changed
Binary file data/plugin/theme/mfact/img/moin-subscribe.png has changed
Binary file data/plugin/theme/mfact/img/moin-telnet.png has changed
Binary file data/plugin/theme/mfact/img/moin-top.png has changed
Binary file data/plugin/theme/mfact/img/moin-unsubscribe.png has changed
Binary file data/plugin/theme/mfact/img/moin-up.png has changed
Binary file data/plugin/theme/mfact/img/moin-updated.png has changed
Binary file data/plugin/theme/mfact/img/moin-www.png has changed
Binary file data/plugin/theme/mfact/img/ohwell.png has changed
Binary file data/plugin/theme/mfact/img/prio1.png has changed
Binary file data/plugin/theme/mfact/img/prio2.png has changed
Binary file data/plugin/theme/mfact/img/prio3.png has changed
Binary file data/plugin/theme/mfact/img/redface.png has changed
Binary file data/plugin/theme/mfact/img/sad.png has changed
Binary file data/plugin/theme/mfact/img/smile.png has changed
Binary file data/plugin/theme/mfact/img/smile2.png has changed
Binary file data/plugin/theme/mfact/img/smile3.png has changed
Binary file data/plugin/theme/mfact/img/smile4.png has changed
Binary file data/plugin/theme/mfact/img/star_off.png has changed
Binary file data/plugin/theme/mfact/img/star_on.png has changed
Binary file data/plugin/theme/mfact/img/thumbs-up.png has changed
Binary file data/plugin/theme/mfact/img/tired.png has changed
Binary file data/plugin/theme/mfact/img/tongue.png has changed
Binary file data/plugin/theme/mfact/menu_bar.png has changed
Binary file htdocs/mfact/background_gradient.gif has changed
Binary file htdocs/mfact/background_pattern.gif has changed
Binary file htdocs/mfact/content_background.png has changed
Binary file htdocs/mfact/content_background_bottom.png has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/htdocs/mfact/css/common.css	Fri Jun 06 21:49:11 2008 +0200
@@ -0,0 +1,470 @@
+/*  common.css - MoinMoin Default Styles
+
+Copyright (c) 2001, 2002, 2003 by Juergen Hermann
+*/
+
+/* content styles */
+
+html {
+	background-color: white;
+	color: black;
+	font-family: Arial, Lucida Grande, sans-serif;
+	font-size: 1em;
+}
+
+body {
+	margin: 0;
+}
+
+/* Links */
+
+a {color: #0044B3;}
+a:visited {color: #597BB3;}
+a.nonexistent, a.badinterwiki {color: gray;}
+
+a.www:before {content: url(../img/moin-www.png); margin: 0 0.2em;}
+a.http:before {content: url(../img/moin-www.png); margin: 0 0.2em;}
+a.https:before {content: url(../img/moin-www.png); margin: 0 0.2em;}
+a.file:before {content: url(../img/moin-ftp.png); margin: 0 0.2em;}
+a.ftp:before {content: url(../img/moin-ftp.png); margin: 0 0.2em;}
+a.nntp:before {content: url(../img/moin-news.png); margin: 0 0.2em;}
+a.news:before {content: url(../img/moin-news.png); margin: 0 0.2em;}
+a.telnet:before {content: url(../img/moin-telnet.png); margin: 0 0.2em;}
+a.irc:before,a.ircs:before  {content: url(../img/moin-telnet.png); margin: 0 0.2em;}
+a.mailto:before {content: url(../img/moin-email.png); margin: 0 0.2em;}
+a.attachment:before {content: url(../img/moin-attach.png); margin: 0 0.2em;}
+a.badinterwiki:before {content: url(../img/moin-inter.png); margin: 0 0.2em;}
+a.interwiki:before {content: url(../img/moin-inter.png); margin: 0 0.2em;}
+
+li p {
+	margin: .25em 0;
+}
+
+li.gap {
+    margin-top: 0.5em;
+}
+
+dt {
+    margin-top: 0.5em;
+    font-weight: bold;
+}
+
+dd {
+    margin-top: 0;
+    margin-bottom: 0;
+}
+
+dd p {
+    margin: 0.25em 0;
+}
+   
+a, img, img.drawing {
+	border: 0;
+}
+
+pre {
+	border: 1pt solid #AEBDCC;
+	background-color: #F3F5F7;
+	padding: 5pt;
+	font-family: courier, monospace;
+	white-space: pre;
+	/* begin css 3 or browser specific rules - do not remove!
+	see: http://forums.techguy.org/archive/index.php/t-249849.html */
+    white-space: pre-wrap;
+    word-wrap: break-word;
+    white-space: -moz-pre-wrap;
+    white-space: -pre-wrap;
+    white-space: -o-pre-wrap;
+    /* end css 3 or browser specific rules */
+}
+
+pre.comment {
+    background-color: #CCCCCC;
+    color: red;
+    padding: 0;
+    margin: 0;
+    border: 0;
+}
+
+pre.comment:before {
+    content: url(../img/attention.png);
+}
+
+
+/* .comment css definition must be top of .red/.green/.blue or it won't work */
+.comment { color: #555555; background-color: #DDDDFF; }
+
+.red { background-color: #FFCCCC; }
+.green { background-color: #CCFFCC; }
+.blue { background-color: #CCCCFF; }
+
+.solid { border: 2px solid #000000; padding: 2px; }
+.dashed { border: 2px dashed #000000; padding: 2px; }
+.dotted { border: 2px dotted #000000; padding: 2px; }
+
+
+table
+{
+    background: #fff;
+	margin: 0.5em 0 0 0.5em;
+	border-collapse: collapse;
+}
+
+th, td
+{
+	padding: 0.25em 0.5em 0.25em 0.5em;
+	border: 1pt solid #ADB9CC;
+}
+
+td p {
+	margin: 0;
+	padding: 0;
+}
+
+/* TableOfContents macro */
+.table-of-contents { 
+                     color: black; 
+                     background: #fff url(../toc_background.gif) no-repeat;
+                     font-size: small;
+                     text-align:left;
+                     margin: 0.5em -188px 0.5em 0.5em; 
+                     padding: 5px;
+                     width:260px; 
+                    float: right;
+}
+.table-of-contents ol { padding: 0; margin:0; margin-left:2.5em; list-style-type:decimal; }
+.table-of-contents ul { padding: 0; margin:0; list-style-type:none; }
+.table-of-contents li { margin:0; padding: 0 }
+.table-of-contents-heading { 
+    font-weight:bold; 
+    padding:0; margin: 0.5em 0 0.75em 0.25em; 
+    color:#d42029;
+    font-size: 120%;
+    letter-spacing: 0.05em;
+}
+
+
+.footnotes div {
+	width: 5em;
+	border-top: 1pt solid gray;
+}
+
+.footnotes ol {
+	padding: 0 2em;
+	margin: 0 0 1em;
+}
+
+.footnotes li {
+}
+
+.info {
+    float: right;
+    font-size: 0.7em;
+    color: gray;
+}
+
+#pageinfo {
+    margin-top: 2em;
+}
+
+.seperator {
+    color: gray;
+}
+
+#pagebottom {clear: both;}
+
+/* standard rule ---- */
+hr {
+    height: 1pt;
+    background-color: #9C9C9C;
+    border: 0;
+}
+
+/* custom rules ----- to ---------- */
+.hr1 {height: 2pt;}
+.hr2 {height: 3pt;}
+.hr3 {height: 4pt;}
+.hr4 {height: 5pt;}
+.hr5 {height: 6pt;}
+.hr6 {height: 7pt;}
+
+/* Replacement for deprecated html 3 <u> element and html 4 <strike> */
+.u {text-decoration: underline;}
+.strike {text-decoration: line-through;}
+
+/* eye catchers */
+.warning 
+{
+	color: red;
+}
+
+.error 
+{
+	color: red;
+}
+
+strong.highlight 
+{
+	background-color: #CCE0FF;
+	padding: 1pt;
+}
+
+
+/* Recent changes */
+
+.rcrss {
+	float: right;
+	margin: 0;
+}
+
+.recentchanges[dir="rtl"] .rcrss {
+	float: left;
+}
+
+.recentchanges table {
+	clear: both;
+}
+
+.recentchanges td {
+	vertical-align: top;
+	border: none;
+	border-bottom: 1pt solid #E6EAF0;
+	background: #F2F4F7;
+}
+
+.rcdaybreak td {
+	background: #B8C5D9;
+	border: none;
+}
+
+.rcdaybreak td a {
+	font-size: 0.88em;
+}
+
+.rcicon1, .rcicon2 {
+	text-align: center;
+}
+
+.rcpagelink {
+	width: 33%;
+}
+
+.rctime {
+	font-size: 0.88em;
+	white-space: nowrap;
+}
+
+.rceditor {
+	white-space: nowrap;
+	font-size: 0.88em;
+}
+
+.rccomment {
+	width: 50%;
+	color: gray;
+	font-size: 0.88em;
+}
+
+
+/* User Preferences */
+
+.userpref table, .userpref td {
+	border: none;
+}
+
+/* CSS for new code_area markup used by Colorizer and ParserBase */
+
+div.codearea { /* the div makes the border */
+	margin: 0.5em 0;
+	padding: 0;
+	border: 1pt solid #AEBDCC;
+	background-color: #F3F5F7;
+	color: black;
+}
+
+div.codearea pre { /* the pre has no border and is inside the div */
+	margin: 0;
+	padding: 10pt;
+	border: none;
+}
+
+a.codenumbers { /* format of the line numbering link */
+	margin: 0 10pt;
+	font-size: 0.85em;
+	color: gray;
+}
+
+/* format of certain syntax spans */
+div.codearea pre span.LineNumber {color: gray;}
+div.codearea pre span.ID         {color: #000000;}
+div.codearea pre span.Operator   {color: #0000C0;}
+div.codearea pre span.Char       {color: #004080;}
+div.codearea pre span.Comment    {color: #008000;}
+div.codearea pre span.Number     {color: #0080C0;}
+div.codearea pre span.String     {color: #004080;}
+div.codearea pre span.SPChar     {color: #0000C0;}
+div.codearea pre span.ResWord    {color: #A00000;}
+div.codearea pre span.ConsWord   {color: #008080; font-weight: bold;}
+div.codearea pre span.Error      {color: #FF8080; border: solid 1.5pt #FF0000;}
+div.codearea pre span.ResWord2   {color: #0080ff; font-weight: bold;}
+div.codearea pre span.Special    {color: #0000ff;}
+div.codearea pre span.Preprc     {color: #803999;}
+
+/* for diff parser */
+div.codearea pre span.DiffAdded   {color: #4876FF;}
+div.codearea pre span.DiffRemoved {color: #FF0000;}
+div.codearea pre span.DiffChanged {color: #FF7F50;}
+div.codearea pre span.DiffSeparator {color: #228B22; font-weight: bold}
+
+/* Search results */
+.advancedsearch {
+    border: 1pt solid #ADB9CC;
+}
+
+.advancedsearch td {
+    vertical-align: top;
+    background-color: #E7E7E7;    
+    border: 0px;
+}
+
+.advancedsearch td.searchfor {
+    font-weight: bold;
+}
+
+.advancedsearch input {
+    border: 1px solid #ADB9CC;
+    background-color: #fff;
+}
+
+.advancedsearch input[disabled] {
+    background-color: #eee;
+}
+
+.advancedsearch td.submit {
+    border-top: 1px solid #ADB9CC;
+    background-color: #fff;
+    text-align: right;
+}
+
+.advancedsearch optioni, select {
+    border: 1px solid #ADB9CC;
+    background-color: #fff;
+}
+
+
+.searchresults dt {
+    margin-top: 1em;
+    font-weight: normal;
+}
+
+.searchresults dd, .searchresults p {
+    font-size: 0.85em;
+}
+
+.searchresults .searchhitinfobar {
+    color: #008000;
+    margin-left: 15px;
+    margin-top: 0;
+}
+
+p.searchstats {
+    font-size: 0.8em;
+    text-align: right;
+    width: 100%;
+    background-color: #E6EAF0;
+    border-top: 1px solid #9088DC;
+    padding: 2px;
+}
+
+p.searchhint {
+    background-color: #E6EAF0;
+    border: 1px solid #9088DC;
+    padding: 2px;
+}
+
+.searchpages {
+    margin-left: auto;
+    margin-right: auto;
+}
+
+.searchpages tr, .searchpages td {
+    border: 0;
+    padding: 5px;
+    margin: 0;
+    text-align: center;
+    vertical-align: middle;
+    color: #b93a58;
+    font-weight: bold;
+    font-size: 1.05em;
+}
+
+.searchpages td a, .searchpages td a:link {
+    text-decoration: underline;
+}
+
+/* MonthCalendar css */
+
+/* days without and with pages linked to them */
+a.cal-emptyday {
+    color: #777777;
+    text-align: center;
+}
+a.cal-usedday {
+    color: #000000;
+    font-weight: bold;
+    text-align: center;
+}
+/* general stuff: workdays, weekend, today */
+td.cal-workday {
+    background-color: #DDDDFF;
+    text-align: center;
+}
+td.cal-weekend {
+    background-color: #FFDDDD;
+    text-align: center;
+}
+td.cal-today {
+    background-color: #CCFFCC;
+    border-style: solid;
+    border-width: 2pt;
+    text-align: center;
+}
+/* invalid places on the monthly calendar sheet */
+td.cal-invalidday {
+    background-color: #CCCCCC;
+}
+/* links to prev/next month/year */
+a.cal-link {
+    color: #000000;
+    text-decoration: none;
+}
+th.cal-header {
+    background-color: #DDBBFF;
+    text-align: center;
+}
+
+/* for MonthCalendar mouseover info boxes */
+TABLE.tip {
+    color: black;
+    background-color: #FF8888;
+    font-size: small;
+    font-weight: normal;
+    border-style: solid;
+    border-width: 1px;
+}
+
+TH.tip {
+    background-color: #FF4444;
+    font-weight: bold;
+    text-align: center;
+}
+
+TD.tip {
+    text-align: left;
+}
+*[dir="rtl"] TD.tip {
+    text-align: right;
+}
+
+/* end MonthCalendar stuff */
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/htdocs/mfact/css/msie.css	Fri Jun 06 21:49:11 2008 +0200
@@ -0,0 +1,42 @@
+/*  msie.css - MoinMoin MS Internet explorer bug workarounds */
+
+/* We need PNG transparency for shadows */
+/* XXX for some reason relative URLs won't work with Lighttpd web server. */
+
+ul#navibar {
+    background-image: none;
+    filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled=true, sizingMethod='crop', src='../menu_bar.png');
+}
+
+/* The ALphaImageLoader makes links inactive, we need to bring them up. */
+ul#navibar li {
+    position: relative;
+}
+
+div#content {
+    background-image: none; 
+    filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled='true', sizingMethod='scale', src='../content_background.png');
+}
+
+div#footer {
+    background-image: none;
+    filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled='true', sizingMethod='crop', src='../content_background_bottom.png');
+    height: 1px; /* Needed for HasLayout. */
+}
+
+/* Alternate method of centering that works well in msie 5 */
+div.inner-wrap {
+    width: 801px;
+    margin: 0 0 0 -401px;
+    position: relative;
+    left: 50%;
+}
+
+/* MSIE doesn't have min-height, use heighti nstead */
+div#content {
+    height: 360px;
+}
+
+div.table-of-contents { 
+    margin: 0.5em -112px 0.5em 0.5em; 
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/htdocs/mfact/css/print.css	Fri Jun 06 21:49:11 2008 +0200
@@ -0,0 +1,53 @@
+/*  print.css - MoinMoin Default Styles
+
+Copyright (c) 2001, 2002, 2003 by Juergen Hermann
+*/
+
+/* content styles */
+
+html {
+	font-family: Times, serif;
+	font-size: 12pt;
+}
+
+body {
+    /* Give about 3.4cm in Mozilla/Firefox and about 2.2cm in Safari */
+	margin: 1.5cm;
+}
+
+a, a:visited, a.nonexistent, a.badinterwiki {
+	color: black;
+	text-decoration: none;
+}
+
+a:hover {
+	text-decoration: underline;
+}
+
+.info a {
+    color: gray;
+}
+
+pre {
+	font-size: 10pt;
+}
+
+a.interwiki:before, a.badinterwiki:before {
+	content: attr(title) ":";
+}
+
+a.interwiki img, a.badinterwiki img {
+	display: none;
+}
+
+.footnotes div {
+	width: 5em;
+	border-top: 1pt solid gray;
+}
+
+/* user interface styles */
+
+#header, #sidebar, #footer, #timings, #credits, #interwiki, #pagelocation {
+	display: none;
+}
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/htdocs/mfact/css/screen.css	Fri Jun 06 21:49:11 2008 +0200
@@ -0,0 +1,182 @@
+
+/** General layout **/
+
+html {
+    background: #fff url(../background_pattern.gif) 50% 0;
+}
+
+body {
+    color:#3f4e67;
+    margin: 0;
+    padding: 0;
+    font-size: 88%;
+    font-family: arial, verdana, sans-serif;
+}
+
+div.outer-wrap {
+    background: url(../background_gradient.gif) repeat-x 50% 0;
+}
+
+div.inner-wrap {
+    width: 801px;
+    margin: 0 auto;
+}
+
+div#header {
+    position: relative;
+    padding: 1em 1.5em 0.25em 1.5em;
+}
+
+div#logo {
+    font-weight: bold;
+    font-size: 200%;
+    color:#d42029;
+}
+
+div#logo img {
+    vertical-align: middle;
+}
+
+form#searchform {
+    margin: 0;
+    position: absolute;
+    bottom: 0.25em;
+    right: 1.5em;
+}
+
+form#searchform input {
+    font-size: 90%;
+    border: 1px solid #6c7896;
+    color: #3f4e67;
+    background: #e0e1ea;
+    border-radius: 2px;
+    -moz-border-radius: 2px;
+}
+form#searchform input#searchinput {
+    background: #fff;
+}
+
+ul#navibar {
+    clear: both;
+    padding: 14px 1.25em 0 1.25em;
+    margin: 0;
+    height: 40px;
+    background: url(../menu_bar.png) no-repeat;
+}
+ul#navibar li {
+    display: inline;
+    padding: 0;
+    margin: 0;
+}
+
+ul#navibar a {
+    padding:  0 1.25em 0 1.25em;
+    font-weight: bold;
+    color: #fff;
+    text-decoration: none;
+    letter-spacing: 0.05em;
+}
+
+ul#navibar a:hover {
+    color:#3f4e67;
+}
+
+div#content {
+    padding: 0.5em 224px 1.5em 32px;
+    background: url(../content_background.png) repeat-y;
+    min-height: 360px;
+}
+
+div#footer {
+    background: url(../content_background_bottom.png) no-repeat;
+    text-align: center;
+    padding: 16px 0 3em 0;
+    color: #fff;
+    font-size: 90%;
+}
+
+div#footer a {
+    color: #fff;
+    text-decoration: none;
+}
+
+div#footer a:hover {
+    text-decoration: underline;
+}
+
+ul.credits, ul.editbar {
+    margin: 0;
+    padding: 0;
+}
+
+ul.credits li, ul.editbar li {
+    display: inline;
+    margin: 0 0.5em;
+    padding: 0;
+}
+
+/** Styling the content text **/
+
+div#content {
+    line-height:1.35em;
+    font-size: 99%;
+}
+div#content a {
+    color:#4c6dcd;
+    text-decoration: none;
+}
+div#content a:visited {
+    color: #75507b;
+}
+div#content a:hover {
+    color:#d41f28;
+    text-decoration:underline;
+}
+
+h1, h2, h3, h4, h5, h6 {
+    color:#d42029;
+    margin:15px 0 10px 0;
+}
+h1 {
+    margin:0;
+}
+h2 {
+    font-weight:normal;
+}
+h3 {
+    font-size:120%;
+    color:#3f4e67;
+}
+
+div#content li p { margin: 0 }
+
+/** The editor **/
+
+form#editor {
+    margin: 0;
+}
+
+form#editor input#editor-comment,
+form#editor textarea {
+    width: 720px;
+}
+div#message {
+    background: url(../content_background_top.png) no-repeat 0 100%;
+    padding: 0 32px 12px 32px;
+}
+div#message p {
+    margin: 0;
+}
+
+ul#pagelocation {
+    margin: 0 0 0 32px;
+    padding: 16px 0 0 0;
+}
+ul#pagelocation li {
+    display: inline;
+    margin: 0;
+    padding: 0;
+    font-weight: bold;
+    font-size: 200%;
+    color:#d42029;
+}
Binary file htdocs/mfact/img/PythonPowered.png has changed
Binary file htdocs/mfact/img/admon-caution.png has changed
Binary file htdocs/mfact/img/admon-important.png has changed
Binary file htdocs/mfact/img/admon-note.png has changed
Binary file htdocs/mfact/img/admon-tip.png has changed
Binary file htdocs/mfact/img/admon-warning.png has changed
Binary file htdocs/mfact/img/alert.png has changed
Binary file htdocs/mfact/img/angry.png has changed
Binary file htdocs/mfact/img/attach.png has changed
Binary file htdocs/mfact/img/attention.png has changed
Binary file htdocs/mfact/img/biggrin.png has changed
Binary file htdocs/mfact/img/checkmark.png has changed
Binary file htdocs/mfact/img/devil.png has changed
Binary file htdocs/mfact/img/draft.png has changed
Binary file htdocs/mfact/img/frown.png has changed
Binary file htdocs/mfact/img/icon-error.png has changed
Binary file htdocs/mfact/img/icon-info.png has changed
Binary file htdocs/mfact/img/idea.png has changed
Binary file htdocs/mfact/img/moin-attach.png has changed
Binary file htdocs/mfact/img/moin-bottom.png has changed
Binary file htdocs/mfact/img/moin-conflict.png has changed
Binary file htdocs/mfact/img/moin-deleted.png has changed
Binary file htdocs/mfact/img/moin-diff.png has changed
Binary file htdocs/mfact/img/moin-download.png has changed
Binary file htdocs/mfact/img/moin-edit.png has changed
Binary file htdocs/mfact/img/moin-email.png has changed
Binary file htdocs/mfact/img/moin-ftp.png has changed
Binary file htdocs/mfact/img/moin-help.png has changed
Binary file htdocs/mfact/img/moin-home.png has changed
Binary file htdocs/mfact/img/moin-icon.png has changed
Binary file htdocs/mfact/img/moin-info.png has changed
Binary file htdocs/mfact/img/moin-inter.png has changed
Binary file htdocs/mfact/img/moin-jabber.png has changed
Binary file htdocs/mfact/img/moin-new.png has changed
Binary file htdocs/mfact/img/moin-news.png has changed
Binary file htdocs/mfact/img/moin-parent.png has changed
Binary file htdocs/mfact/img/moin-print.png has changed
Binary file htdocs/mfact/img/moin-raw.png has changed
Binary file htdocs/mfact/img/moin-readonly.png has changed
Binary file htdocs/mfact/img/moin-renamed.png has changed
Binary file htdocs/mfact/img/moin-rss.png has changed
Binary file htdocs/mfact/img/moin-search.png has changed
Binary file htdocs/mfact/img/moin-show.png has changed
Binary file htdocs/mfact/img/moin-subscribe.png has changed
Binary file htdocs/mfact/img/moin-telnet.png has changed
Binary file htdocs/mfact/img/moin-top.png has changed
Binary file htdocs/mfact/img/moin-unsubscribe.png has changed
Binary file htdocs/mfact/img/moin-up.png has changed
Binary file htdocs/mfact/img/moin-updated.png has changed
Binary file htdocs/mfact/img/moin-www.png has changed
Binary file htdocs/mfact/img/ohwell.png has changed
Binary file htdocs/mfact/img/prio1.png has changed
Binary file htdocs/mfact/img/prio2.png has changed
Binary file htdocs/mfact/img/prio3.png has changed
Binary file htdocs/mfact/img/redface.png has changed
Binary file htdocs/mfact/img/sad.png has changed
Binary file htdocs/mfact/img/smile.png has changed
Binary file htdocs/mfact/img/smile2.png has changed
Binary file htdocs/mfact/img/smile3.png has changed
Binary file htdocs/mfact/img/smile4.png has changed
Binary file htdocs/mfact/img/star_off.png has changed
Binary file htdocs/mfact/img/star_on.png has changed
Binary file htdocs/mfact/img/thumbs-up.png has changed
Binary file htdocs/mfact/img/tired.png has changed
Binary file htdocs/mfact/img/tongue.png has changed
Binary file htdocs/mfact/menu_bar.png has changed
--- a/mfact.py	Fri Jun 06 21:47:01 2008 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,325 +0,0 @@
-# -*- coding: iso-8859-1 -*-
-"""
-    MoinMoin - mfact theme
-
-    @copyright: 2007 Radomir Dopieralski
-    @license: GNU GPL, see COPYING for details.
-"""
-
-from MoinMoin.theme import ThemeBase
-from MoinMoin import wikiutil
-
-
-class Theme(ThemeBase):
-    name = "mfact"
-    _ = lambda x: x     # We don't have gettext at this moment, so we fake it
-    icons = {
-        # key         alt                        icon filename      w   h
-        # FileAttach
-        'attach':     ("%(attach_count)s",       "moin-attach.png",  7, 15),
-        'attachimg':  (_("[ATTACH]"),            "attach.png",      24, 24),
-        # RecentChanges
-        'rss':        (_("[RSS]"),               "moin-rss.png",    24, 24),
-        'deleted':    (_("[DELETED]"),           "moin-deleted.png",16, 16),
-        'updated':    (_("[UPDATED]"),           "moin-updated.png",16, 16),
-        'renamed':    (_("[RENAMED]"),           "moin-renamed.png",16, 16),
-        'conflict':   (_("[CONFLICT]"),          "moin-conflict.png", 15, 15),
-        'new':        (_("[NEW]"),               "moin-new.png",    16, 16),
-        'diffrc':     (_("[DIFF]"),              "moin-diff.png",   16, 16),
-        # General
-        'bottom':     (_("[BOTTOM]"),            "moin-bottom.png", 14, 10),
-        'top':        (_("[TOP]"),               "moin-top.png",    14, 10),
-        'www':        ("[WWW]",                  "moin-www.png",    11, 11),
-        'mailto':     ("[MAILTO]",               "moin-email.png",  14, 10),
-        'news':       ("[NEWS]",                 "moin-news.png",   10, 11),
-        'telnet':     ("[TELNET]",               "moin-telnet.png", 10, 11),
-        'ftp':        ("[FTP]",                  "moin-ftp.png",    11, 11),
-        'file':       ("[FILE]",                 "moin-ftp.png",    11, 11),
-        # search forms
-        'searchbutton': ("[?]",                  "moin-search.png", 12, 12),
-        'interwiki':  ("[%(wikitag)s]",          "moin-inter.png",  16, 16),
-        # smileys (this is CONTENT, but good looking smileys depend on looking
-        # adapted to the theme background color and theme style in general)
-        #vvv    ==      vvv  this must be the same for GUI editor converter
-        'X-(':        ("X-(",                    'angry.png',       16, 16),
-        ':D':         (":D",                     'biggrin.png',     16, 16),
-        '<:(':        ("<:(",                    'frown.png',       16, 16),
-        ':o':         (":o",                     'redface.png',     16, 16),
-        ':(':         (":(",                     'sad.png',         16, 16),
-        ':)':         (":)",                     'smile.png',       16, 16),
-        'B)':         ("B)",                     'smile2.png',      16, 16),
-        ':))':        (":))",                    'smile3.png',      16, 16),
-        ';)':         (";)",                     'smile4.png',      16, 16),
-        '/!\\':       ("/!\\",                   'alert.png',       16, 16),
-        '<!>':        ("<!>",                    'attention.png',   16, 16),
-        '(!)':        ("(!)",                    'idea.png',        16, 16),
-        ':-?':        (":-?",                    'tongue.png',      16, 16),
-        ':\\':        (":\\",                    'ohwell.png',      16, 16),
-        '>:>':        (">:>",                    'devil.png',       16, 16),
-        '|)':         ("|)",                     'tired.png',       16, 16),
-        ':-(':        (":-(",                    'sad.png',         16, 16),
-        ':-)':        (":-)",                    'smile.png',       16, 16),
-        'B-)':        ("B-)",                    'smile2.png',      16, 16),
-        ':-))':       (":-))",                   'smile3.png',      16, 16),
-        ';-)':        (";-)",                    'smile4.png',      16, 16),
-        '|-)':        ("|-)",                    'tired.png',       16, 16),
-        '(./)':       ("(./)",                   'checkmark.png',   16, 16),
-        '{OK}':       ("{OK}",                   'thumbs-up.png',   16, 16),
-        '{X}':        ("{X}",                    'icon-error.png',  16, 16),
-        '{i}':        ("{i}",                    'icon-info.png',   16, 16),
-        '{1}':        ("{1}",                    'prio1.png',       16, 16),
-        '{2}':        ("{2}",                    'prio2.png',       16, 16),
-        '{3}':        ("{3}",                    'prio3.png',       16, 16),
-        '{*}':        ("{*}",                    'star_on.png',     16, 16),
-        '{o}':        ("{o}",                    'star_off.png',    16, 16),
-    }
-    del _
-
-    def header(self, d, **kw):
-        """ Assemble wiki header
-
-        @param d: parameter dictionary
-        @rtype: unicode
-        @return: page header html
-        """
-        html = [
-            u'<div class="outer-wrap">',
-            # Pre header custom html
-            self.emit_custom_html(self.cfg.page_header1),
-            # Header
-            u'<div class="inner-wrap">',
-            u'<div id="header">',
-            self.searchform(d),
-            self.logo(),
-            u'</div>',
-            self.navibar(d),
-            # Post header custom html (not recommended)
-            self.emit_custom_html(self.cfg.page_header2),
-            # Start of page
-            self.startPage(),
-        ]
-        return u'\n'.join(html)
-
-    def editorheader(self, d, **kw):
-        """ Assemble wiki header for editor
-
-        @param d: parameter dictionary
-        @rtype: unicode
-        @return: page header html
-        """
-        html = [
-            u'<div class="outer-wrap">',
-            # Pre header custom html
-            self.emit_custom_html(self.cfg.page_header1),
-            u'<div class="inner-wrap">',
-            # Header
-            u'<div id="header">',
-            self.title(d),
-            self.msg(d),
-            u'</div>',
-            # Post header custom html (not recommended)
-            self.emit_custom_html(self.cfg.page_header2),
-            # Start of page
-            self.startPage(),
-        ]
-        return u'\n'.join(html)
-
-    def footer(self, d, **keywords):
-        """ Assemble wiki footer
-
-        @param d: parameter dictionary
-        @keyword ...:...
-        @rtype: unicode
-        @return: page footer html
-        """
-        page = d['page']
-        html = [
-            # End of page
-            self.endPage(),
-            # Pre footer custom html (not recommended!)
-            self.emit_custom_html(self.cfg.page_footer1),
-            # Footer
-            u'<div id="footer">',
-            self.credits(d),
-            self.editbar(d),
-            u'</div>',
-            u'</div>',
-            # Post footer custom html
-            self.emit_custom_html(self.cfg.page_footer2),
-            u'</div>',
-            ]
-        return u'\n'.join(html)
-
-    def editbar(self, d, **keywords):
-        if not self.shouldShowEditbar(d['page']):
-            return u''
-        page = d['page']
-        if not (page.isWritable() and
-                self.request.user.may.write(page.page_name)):
-            return u""
-        parts = [
-            u'<ul class="editbar">',
-            self.edit_link(d),
-            self.revert_link(d),
-            self.info_link(d),
-            self.admin_link(d),
-            u'</ul>',
-        ]
-        return u' '.join(parts)
-
-    def edit_link(self, d):
-        page = d['page']
-        if not (page.isWritable() and
-                self.request.user.may.write(page.page_name)):
-            return u""
-        _ = self.request.getText
-        params = (wikiutil.quoteWikinameURL(page.page_name) +
-                  '?action=edit')
-        text = _('Edit', formatted=False)
-        link = wikiutil.link_tag(self.request, params, text, css_class="edit", name="texteditlink")
-        html = u"<li>%s</li>" % link
-        return html
-
-    def info_link(self, d):
-        page = d['page']
-        _ = self.request.getText
-        params = (wikiutil.quoteWikinameURL(page.page_name) +
-                  '?action=info')
-        text = _('History', formatted=False)
-        link = wikiutil.link_tag(self.request, params, text, css_class="history")
-        html = u"<li>%s</li>" % link
-        return html
-
-    def revert_link(self, d):
-        page = d['page']
-        if not (self.request.rev and
-                page.isWritable() and
-                self.request.user.may.revert(page.page_name)):
-            return u''
-        _ = self.request.getText
-        params = (wikiutil.quoteWikinameURL(page.page_name) +
-                  '?action=revert&rev=%d' % self.request.rev)
-        text = _('Revert', formatted=False)
-        link = wikiutil.link_tag(self.request, params, text, css_class="revert")
-        html = u"<li>%s</li>" % link
-        return html
-
-    def admin_link(self, d):
-        page = d['page']
-        _ = self.request.getText
-        params = (wikiutil.quoteWikinameURL(page.page_name) +
-                  '?action=PageActions')
-        text = _('Actions', formatted=False)
-        link = wikiutil.link_tag(self.request, params, text, css_class="admin")
-        html = u"<li>%s</li>" % link
-        return html
-
-    def credits(self, d):
-        html = u"""<ul class="credits">
-    <li><a href="/Downloads">open source software</a></li>
-    <li><a href="http://www.measurement-factory.com/">&copy; The Measurement
-    Factory</a></li>
-</ul>"""
-        return html
-
-    def html_stylesheets(self, d):
-        """ Assemble html head stylesheet links
-
-        @param d: parameter dictionary
-        @rtype: string
-        @return: stylesheets links
-        """
-        link = '<link rel="stylesheet" type="text/css" charset="%s" media="%s" href="%s">'
-
-        # Check mode
-        if d.get('print_mode'):
-            media = d.get('media', 'print')
-            stylesheets = getattr(self, 'stylesheets_' + media)
-        else:
-            stylesheets = self.stylesheets
-        usercss = self.request.user.valid and self.request.user.css_url
-
-        # Create stylesheets links
-        html = []
-        prefix = self.cfg.url_prefix_static
-        csshref = '%s/%s/css' % (prefix, self.name)
-        for media, basename in stylesheets:
-            href = '%s/%s.css' % (csshref, basename)
-            html.append(link % (self.stylesheetsCharset, media, href))
-
-            # Don't add user css url if it matches one of ours
-            if usercss and usercss == href:
-                usercss = None
-
-        # admin configurable additional css (farm or wiki level)
-        for media, csshref in self.request.cfg.stylesheets:
-            html.append(link % (self.stylesheetsCharset, media, csshref))
-
-        csshref = '%s/%s/css/msie.css' % (prefix, self.name)
-#        html.append("""
-#<!-- css only for MSIE browsers -->
-#<!--[if IE 5]>
-#   %s
-#<![endif]-->
-#""" % link % (self.stylesheetsCharset, 'all', csshref))
-        html.append("""
-<!-- css only for MSIE browsers -->
-<!--[if IE 5.5]>
-   %s
-<![endif]-->
-""" % link % (self.stylesheetsCharset, 'all', csshref))
-        html.append("""
-<!-- css only for MSIE browsers -->
-<!--[if IE 6]>
-   %s
-<![endif]-->
-""" % link % (self.stylesheetsCharset, 'all', csshref))
-
-        # Add user css url (assuming that user css uses same charset)
-        if usercss and usercss.lower() != "none":
-            html.append(link % (self.stylesheetsCharset, 'all', usercss))
-
-        return '\n'.join(html)
-
-    def searchform(self, d):
-        """
-        assemble HTML code for the search forms
-
-        @param d: parameter dictionary
-        @rtype: unicode
-        @return: search form html
-        """
-        _ = self.request.getText
-        form = self.request.form
-        updates = {
-            'search_value': wikiutil.escape(form.get('value', [''])[0], 1),
-            'search_full_label': _('Search'),
-            'baseurl': self.request.getScriptname(),
-            'pagename_quoted': wikiutil.quoteWikinameURL(d['page'].page_name),
-            }
-        d.update(updates)
-
-        html = u'''
-<form id="searchform" method="get" action="%(baseurl)s/%(pagename_quoted)s">
-<div>
-<input type="hidden" name="action" value="fullsearch">
-<input type="hidden" name="context" value="180">
-<input id="searchinput" type="text" name="value" value="%(search_value)s" size="20"
-    onfocus="searchFocus(this)" onblur="searchBlur(this)"
-    onkeyup="searchChange(this)" onchange="searchChange(this)" alt="Search">
-<input id="fullsearch" name="fullsearch" type="submit"
-    value="%(search_full_label)s" alt="Search this site">
-</div>
-</form>
-''' % d
-        return html
-
-def execute(request):
-    """
-    Generate and return a theme object
-
-    @param request: the request object
-    @rtype: MoinTheme
-    @return: Theme object
-    """
-    return Theme(request)
Binary file mfact/background_gradient.gif has changed
Binary file mfact/background_pattern.gif has changed
Binary file mfact/content_background.png has changed
Binary file mfact/content_background_bottom.png has changed
--- a/mfact/css/common.css	Fri Jun 06 21:47:01 2008 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,470 +0,0 @@
-/*  common.css - MoinMoin Default Styles
-
-Copyright (c) 2001, 2002, 2003 by Juergen Hermann
-*/
-
-/* content styles */
-
-html {
-	background-color: white;
-	color: black;
-	font-family: Arial, Lucida Grande, sans-serif;
-	font-size: 1em;
-}
-
-body {
-	margin: 0;
-}
-
-/* Links */
-
-a {color: #0044B3;}
-a:visited {color: #597BB3;}
-a.nonexistent, a.badinterwiki {color: gray;}
-
-a.www:before {content: url(../img/moin-www.png); margin: 0 0.2em;}
-a.http:before {content: url(../img/moin-www.png); margin: 0 0.2em;}
-a.https:before {content: url(../img/moin-www.png); margin: 0 0.2em;}
-a.file:before {content: url(../img/moin-ftp.png); margin: 0 0.2em;}
-a.ftp:before {content: url(../img/moin-ftp.png); margin: 0 0.2em;}
-a.nntp:before {content: url(../img/moin-news.png); margin: 0 0.2em;}
-a.news:before {content: url(../img/moin-news.png); margin: 0 0.2em;}
-a.telnet:before {content: url(../img/moin-telnet.png); margin: 0 0.2em;}
-a.irc:before,a.ircs:before  {content: url(../img/moin-telnet.png); margin: 0 0.2em;}
-a.mailto:before {content: url(../img/moin-email.png); margin: 0 0.2em;}
-a.attachment:before {content: url(../img/moin-attach.png); margin: 0 0.2em;}
-a.badinterwiki:before {content: url(../img/moin-inter.png); margin: 0 0.2em;}
-a.interwiki:before {content: url(../img/moin-inter.png); margin: 0 0.2em;}
-
-li p {
-	margin: .25em 0;
-}
-
-li.gap {
-    margin-top: 0.5em;
-}
-
-dt {
-    margin-top: 0.5em;
-    font-weight: bold;
-}
-
-dd {
-    margin-top: 0;
-    margin-bottom: 0;
-}
-
-dd p {
-    margin: 0.25em 0;
-}
-   
-a, img, img.drawing {
-	border: 0;
-}
-
-pre {
-	border: 1pt solid #AEBDCC;
-	background-color: #F3F5F7;
-	padding: 5pt;
-	font-family: courier, monospace;
-	white-space: pre;
-	/* begin css 3 or browser specific rules - do not remove!
-	see: http://forums.techguy.org/archive/index.php/t-249849.html */
-    white-space: pre-wrap;
-    word-wrap: break-word;
-    white-space: -moz-pre-wrap;
-    white-space: -pre-wrap;
-    white-space: -o-pre-wrap;
-    /* end css 3 or browser specific rules */
-}
-
-pre.comment {
-    background-color: #CCCCCC;
-    color: red;
-    padding: 0;
-    margin: 0;
-    border: 0;
-}
-
-pre.comment:before {
-    content: url(../img/attention.png);
-}
-
-
-/* .comment css definition must be top of .red/.green/.blue or it won't work */
-.comment { color: #555555; background-color: #DDDDFF; }
-
-.red { background-color: #FFCCCC; }
-.green { background-color: #CCFFCC; }
-.blue { background-color: #CCCCFF; }
-
-.solid { border: 2px solid #000000; padding: 2px; }
-.dashed { border: 2px dashed #000000; padding: 2px; }
-.dotted { border: 2px dotted #000000; padding: 2px; }
-
-
-table
-{
-    background: #fff;
-	margin: 0.5em 0 0 0.5em;
-	border-collapse: collapse;
-}
-
-th, td
-{
-	padding: 0.25em 0.5em 0.25em 0.5em;
-	border: 1pt solid #ADB9CC;
-}
-
-td p {
-	margin: 0;
-	padding: 0;
-}
-
-/* TableOfContents macro */
-.table-of-contents { 
-                     color: black; 
-                     background: #fff url(../toc_background.gif) no-repeat;
-                     font-size: small;
-                     text-align:left;
-                     margin: 0.5em -188px 0.5em 0.5em; 
-                     padding: 5px;
-                     width:260px; 
-                    float: right;
-}
-.table-of-contents ol { padding: 0; margin:0; margin-left:2.5em; list-style-type:decimal; }
-.table-of-contents ul { padding: 0; margin:0; list-style-type:none; }
-.table-of-contents li { margin:0; padding: 0 }
-.table-of-contents-heading { 
-    font-weight:bold; 
-    padding:0; margin: 0.5em 0 0.75em 0.25em; 
-    color:#d42029;
-    font-size: 120%;
-    letter-spacing: 0.05em;
-}
-
-
-.footnotes div {
-	width: 5em;
-	border-top: 1pt solid gray;
-}
-
-.footnotes ol {
-	padding: 0 2em;
-	margin: 0 0 1em;
-}
-
-.footnotes li {
-}
-
-.info {
-    float: right;
-    font-size: 0.7em;
-    color: gray;
-}
-
-#pageinfo {
-    margin-top: 2em;
-}
-
-.seperator {
-    color: gray;
-}
-
-#pagebottom {clear: both;}
-
-/* standard rule ---- */
-hr {
-    height: 1pt;
-    background-color: #9C9C9C;
-    border: 0;
-}
-
-/* custom rules ----- to ---------- */
-.hr1 {height: 2pt;}
-.hr2 {height: 3pt;}
-.hr3 {height: 4pt;}
-.hr4 {height: 5pt;}
-.hr5 {height: 6pt;}
-.hr6 {height: 7pt;}
-
-/* Replacement for deprecated html 3 <u> element and html 4 <strike> */
-.u {text-decoration: underline;}
-.strike {text-decoration: line-through;}
-
-/* eye catchers */
-.warning 
-{
-	color: red;
-}
-
-.error 
-{
-	color: red;
-}
-
-strong.highlight 
-{
-	background-color: #CCE0FF;
-	padding: 1pt;
-}
-
-
-/* Recent changes */
-
-.rcrss {
-	float: right;
-	margin: 0;
-}
-
-.recentchanges[dir="rtl"] .rcrss {
-	float: left;
-}
-
-.recentchanges table {
-	clear: both;
-}
-
-.recentchanges td {
-	vertical-align: top;
-	border: none;
-	border-bottom: 1pt solid #E6EAF0;
-	background: #F2F4F7;
-}
-
-.rcdaybreak td {
-	background: #B8C5D9;
-	border: none;
-}
-
-.rcdaybreak td a {
-	font-size: 0.88em;
-}
-
-.rcicon1, .rcicon2 {
-	text-align: center;
-}
-
-.rcpagelink {
-	width: 33%;
-}
-
-.rctime {
-	font-size: 0.88em;
-	white-space: nowrap;
-}
-
-.rceditor {
-	white-space: nowrap;
-	font-size: 0.88em;
-}
-
-.rccomment {
-	width: 50%;
-	color: gray;
-	font-size: 0.88em;
-}
-
-
-/* User Preferences */
-
-.userpref table, .userpref td {
-	border: none;
-}
-
-/* CSS for new code_area markup used by Colorizer and ParserBase */
-
-div.codearea { /* the div makes the border */
-	margin: 0.5em 0;
-	padding: 0;
-	border: 1pt solid #AEBDCC;
-	background-color: #F3F5F7;
-	color: black;
-}
-
-div.codearea pre { /* the pre has no border and is inside the div */
-	margin: 0;
-	padding: 10pt;
-	border: none;
-}
-
-a.codenumbers { /* format of the line numbering link */
-	margin: 0 10pt;
-	font-size: 0.85em;
-	color: gray;
-}
-
-/* format of certain syntax spans */
-div.codearea pre span.LineNumber {color: gray;}
-div.codearea pre span.ID         {color: #000000;}
-div.codearea pre span.Operator   {color: #0000C0;}
-div.codearea pre span.Char       {color: #004080;}
-div.codearea pre span.Comment    {color: #008000;}
-div.codearea pre span.Number     {color: #0080C0;}
-div.codearea pre span.String     {color: #004080;}
-div.codearea pre span.SPChar     {color: #0000C0;}
-div.codearea pre span.ResWord    {color: #A00000;}
-div.codearea pre span.ConsWord   {color: #008080; font-weight: bold;}
-div.codearea pre span.Error      {color: #FF8080; border: solid 1.5pt #FF0000;}
-div.codearea pre span.ResWord2   {color: #0080ff; font-weight: bold;}
-div.codearea pre span.Special    {color: #0000ff;}
-div.codearea pre span.Preprc     {color: #803999;}
-
-/* for diff parser */
-div.codearea pre span.DiffAdded   {color: #4876FF;}
-div.codearea pre span.DiffRemoved {color: #FF0000;}
-div.codearea pre span.DiffChanged {color: #FF7F50;}
-div.codearea pre span.DiffSeparator {color: #228B22; font-weight: bold}
-
-/* Search results */
-.advancedsearch {
-    border: 1pt solid #ADB9CC;
-}
-
-.advancedsearch td {
-    vertical-align: top;
-    background-color: #E7E7E7;    
-    border: 0px;
-}
-
-.advancedsearch td.searchfor {
-    font-weight: bold;
-}
-
-.advancedsearch input {
-    border: 1px solid #ADB9CC;
-    background-color: #fff;
-}
-
-.advancedsearch input[disabled] {
-    background-color: #eee;
-}
-
-.advancedsearch td.submit {
-    border-top: 1px solid #ADB9CC;
-    background-color: #fff;
-    text-align: right;
-}
-
-.advancedsearch optioni, select {
-    border: 1px solid #ADB9CC;
-    background-color: #fff;
-}
-
-
-.searchresults dt {
-    margin-top: 1em;
-    font-weight: normal;
-}
-
-.searchresults dd, .searchresults p {
-    font-size: 0.85em;
-}
-
-.searchresults .searchhitinfobar {
-    color: #008000;
-    margin-left: 15px;
-    margin-top: 0;
-}
-
-p.searchstats {
-    font-size: 0.8em;
-    text-align: right;
-    width: 100%;
-    background-color: #E6EAF0;
-    border-top: 1px solid #9088DC;
-    padding: 2px;
-}
-
-p.searchhint {
-    background-color: #E6EAF0;
-    border: 1px solid #9088DC;
-    padding: 2px;
-}
-
-.searchpages {
-    margin-left: auto;
-    margin-right: auto;
-}
-
-.searchpages tr, .searchpages td {
-    border: 0;
-    padding: 5px;
-    margin: 0;
-    text-align: center;
-    vertical-align: middle;
-    color: #b93a58;
-    font-weight: bold;
-    font-size: 1.05em;
-}
-
-.searchpages td a, .searchpages td a:link {
-    text-decoration: underline;
-}
-
-/* MonthCalendar css */
-
-/* days without and with pages linked to them */
-a.cal-emptyday {
-    color: #777777;
-    text-align: center;
-}
-a.cal-usedday {
-    color: #000000;
-    font-weight: bold;
-    text-align: center;
-}
-/* general stuff: workdays, weekend, today */
-td.cal-workday {
-    background-color: #DDDDFF;
-    text-align: center;
-}
-td.cal-weekend {
-    background-color: #FFDDDD;
-    text-align: center;
-}
-td.cal-today {
-    background-color: #CCFFCC;
-    border-style: solid;
-    border-width: 2pt;
-    text-align: center;
-}
-/* invalid places on the monthly calendar sheet */
-td.cal-invalidday {
-    background-color: #CCCCCC;
-}
-/* links to prev/next month/year */
-a.cal-link {
-    color: #000000;
-    text-decoration: none;
-}
-th.cal-header {
-    background-color: #DDBBFF;
-    text-align: center;
-}
-
-/* for MonthCalendar mouseover info boxes */
-TABLE.tip {
-    color: black;
-    background-color: #FF8888;
-    font-size: small;
-    font-weight: normal;
-    border-style: solid;
-    border-width: 1px;
-}
-
-TH.tip {
-    background-color: #FF4444;
-    font-weight: bold;
-    text-align: center;
-}
-
-TD.tip {
-    text-align: left;
-}
-*[dir="rtl"] TD.tip {
-    text-align: right;
-}
-
-/* end MonthCalendar stuff */
-
--- a/mfact/css/msie.css	Fri Jun 06 21:47:01 2008 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,42 +0,0 @@
-/*  msie.css - MoinMoin MS Internet explorer bug workarounds */
-
-/* We need PNG transparency for shadows */
-/* XXX for some reason relative URLs won't work with Lighttpd web server. */
-
-ul#navibar {
-    background-image: none;
-    filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled=true, sizingMethod='crop', src='../menu_bar.png');
-}
-
-/* The ALphaImageLoader makes links inactive, we need to bring them up. */
-ul#navibar li {
-    position: relative;
-}
-
-div#content {
-    background-image: none; 
-    filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled='true', sizingMethod='scale', src='../content_background.png');
-}
-
-div#footer {
-    background-image: none;
-    filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled='true', sizingMethod='crop', src='../content_background_bottom.png');
-    height: 1px; /* Needed for HasLayout. */
-}
-
-/* Alternate method of centering that works well in msie 5 */
-div.inner-wrap {
-    width: 801px;
-    margin: 0 0 0 -401px;
-    position: relative;
-    left: 50%;
-}
-
-/* MSIE doesn't have min-height, use heighti nstead */
-div#content {
-    height: 360px;
-}
-
-div.table-of-contents { 
-    margin: 0.5em -112px 0.5em 0.5em; 
-}
--- a/mfact/css/print.css	Fri Jun 06 21:47:01 2008 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,53 +0,0 @@
-/*  print.css - MoinMoin Default Styles
-
-Copyright (c) 2001, 2002, 2003 by Juergen Hermann
-*/
-
-/* content styles */
-
-html {
-	font-family: Times, serif;
-	font-size: 12pt;
-}
-
-body {
-    /* Give about 3.4cm in Mozilla/Firefox and about 2.2cm in Safari */
-	margin: 1.5cm;
-}
-
-a, a:visited, a.nonexistent, a.badinterwiki {
-	color: black;
-	text-decoration: none;
-}
-
-a:hover {
-	text-decoration: underline;
-}
-
-.info a {
-    color: gray;
-}
-
-pre {
-	font-size: 10pt;
-}
-
-a.interwiki:before, a.badinterwiki:before {
-	content: attr(title) ":";
-}
-
-a.interwiki img, a.badinterwiki img {
-	display: none;
-}
-
-.footnotes div {
-	width: 5em;
-	border-top: 1pt solid gray;
-}
-
-/* user interface styles */
-
-#header, #sidebar, #footer, #timings, #credits, #interwiki, #pagelocation {
-	display: none;
-}
-
--- a/mfact/css/screen.css	Fri Jun 06 21:47:01 2008 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,182 +0,0 @@
-
-/** General layout **/
-
-html {
-    background: #fff url(../background_pattern.gif) 50% 0;
-}
-
-body {
-    color:#3f4e67;
-    margin: 0;
-    padding: 0;
-    font-size: 88%;
-    font-family: arial, verdana, sans-serif;
-}
-
-div.outer-wrap {
-    background: url(../background_gradient.gif) repeat-x 50% 0;
-}
-
-div.inner-wrap {
-    width: 801px;
-    margin: 0 auto;
-}
-
-div#header {
-    position: relative;
-    padding: 1em 1.5em 0.25em 1.5em;
-}
-
-div#logo {
-    font-weight: bold;
-    font-size: 200%;
-    color:#d42029;
-}
-
-div#logo img {
-    vertical-align: middle;
-}
-
-form#searchform {
-    margin: 0;
-    position: absolute;
-    bottom: 0.25em;
-    right: 1.5em;
-}
-
-form#searchform input {
-    font-size: 90%;
-    border: 1px solid #6c7896;
-    color: #3f4e67;
-    background: #e0e1ea;
-    border-radius: 2px;
-    -moz-border-radius: 2px;
-}
-form#searchform input#searchinput {
-    background: #fff;
-}
-
-ul#navibar {
-    clear: both;
-    padding: 14px 1.25em 0 1.25em;
-    margin: 0;
-    height: 40px;
-    background: url(../menu_bar.png) no-repeat;
-}
-ul#navibar li {
-    display: inline;
-    padding: 0;
-    margin: 0;
-}
-
-ul#navibar a {
-    padding:  0 1.25em 0 1.25em;
-    font-weight: bold;
-    color: #fff;
-    text-decoration: none;
-    letter-spacing: 0.05em;
-}
-
-ul#navibar a:hover {
-    color:#3f4e67;
-}
-
-div#content {
-    padding: 0.5em 224px 1.5em 32px;
-    background: url(../content_background.png) repeat-y;
-    min-height: 360px;
-}
-
-div#footer {
-    background: url(../content_background_bottom.png) no-repeat;
-    text-align: center;
-    padding: 16px 0 3em 0;
-    color: #fff;
-    font-size: 90%;
-}
-
-div#footer a {
-    color: #fff;
-    text-decoration: none;
-}
-
-div#footer a:hover {
-    text-decoration: underline;
-}
-
-ul.credits, ul.editbar {
-    margin: 0;
-    padding: 0;
-}
-
-ul.credits li, ul.editbar li {
-    display: inline;
-    margin: 0 0.5em;
-    padding: 0;
-}
-
-/** Styling the content text **/
-
-div#content {
-    line-height:1.35em;
-    font-size: 99%;
-}
-div#content a {
-    color:#4c6dcd;
-    text-decoration: none;
-}
-div#content a:visited {
-    color: #75507b;
-}
-div#content a:hover {
-    color:#d41f28;
-    text-decoration:underline;
-}
-
-h1, h2, h3, h4, h5, h6 {
-    color:#d42029;
-    margin:15px 0 10px 0;
-}
-h1 {
-    margin:0;
-}
-h2 {
-    font-weight:normal;
-}
-h3 {
-    font-size:120%;
-    color:#3f4e67;
-}
-
-div#content li p { margin: 0 }
-
-/** The editor **/
-
-form#editor {
-    margin: 0;
-}
-
-form#editor input#editor-comment,
-form#editor textarea {
-    width: 720px;
-}
-div#message {
-    background: url(../content_background_top.png) no-repeat 0 100%;
-    padding: 0 32px 12px 32px;
-}
-div#message p {
-    margin: 0;
-}
-
-ul#pagelocation {
-    margin: 0 0 0 32px;
-    padding: 16px 0 0 0;
-}
-ul#pagelocation li {
-    display: inline;
-    margin: 0;
-    padding: 0;
-    font-weight: bold;
-    font-size: 200%;
-    color:#d42029;
-}
Binary file mfact/img/PythonPowered.png has changed
Binary file mfact/img/admon-caution.png has changed
Binary file mfact/img/admon-important.png has changed
Binary file mfact/img/admon-note.png has changed
Binary file mfact/img/admon-tip.png has changed
Binary file mfact/img/admon-warning.png has changed
Binary file mfact/img/alert.png has changed
Binary file mfact/img/angry.png has changed
Binary file mfact/img/attach.png has changed
Binary file mfact/img/attention.png has changed
Binary file mfact/img/biggrin.png has changed
Binary file mfact/img/checkmark.png has changed
Binary file mfact/img/devil.png has changed
Binary file mfact/img/draft.png has changed
Binary file mfact/img/frown.png has changed
Binary file mfact/img/icon-error.png has changed
Binary file mfact/img/icon-info.png has changed
Binary file mfact/img/idea.png has changed
Binary file mfact/img/moin-attach.png has changed
Binary file mfact/img/moin-bottom.png has changed
Binary file mfact/img/moin-conflict.png has changed
Binary file mfact/img/moin-deleted.png has changed
Binary file mfact/img/moin-diff.png has changed
Binary file mfact/img/moin-download.png has changed
Binary file mfact/img/moin-edit.png has changed
Binary file mfact/img/moin-email.png has changed
Binary file mfact/img/moin-ftp.png has changed
Binary file mfact/img/moin-help.png has changed
Binary file mfact/img/moin-home.png has changed
Binary file mfact/img/moin-icon.png has changed
Binary file mfact/img/moin-info.png has changed
Binary file mfact/img/moin-inter.png has changed
Binary file mfact/img/moin-jabber.png has changed
Binary file mfact/img/moin-new.png has changed
Binary file mfact/img/moin-news.png has changed
Binary file mfact/img/moin-parent.png has changed
Binary file mfact/img/moin-print.png has changed
Binary file mfact/img/moin-raw.png has changed
Binary file mfact/img/moin-readonly.png has changed
Binary file mfact/img/moin-renamed.png has changed
Binary file mfact/img/moin-rss.png has changed
Binary file mfact/img/moin-search.png has changed
Binary file mfact/img/moin-show.png has changed
Binary file mfact/img/moin-subscribe.png has changed
Binary file mfact/img/moin-telnet.png has changed
Binary file mfact/img/moin-top.png has changed
Binary file mfact/img/moin-unsubscribe.png has changed
Binary file mfact/img/moin-up.png has changed
Binary file mfact/img/moin-updated.png has changed
Binary file mfact/img/moin-www.png has changed
Binary file mfact/img/ohwell.png has changed
Binary file mfact/img/prio1.png has changed
Binary file mfact/img/prio2.png has changed
Binary file mfact/img/prio3.png has changed
Binary file mfact/img/redface.png has changed
Binary file mfact/img/sad.png has changed
Binary file mfact/img/smile.png has changed
Binary file mfact/img/smile2.png has changed
Binary file mfact/img/smile3.png has changed
Binary file mfact/img/smile4.png has changed
Binary file mfact/img/star_off.png has changed
Binary file mfact/img/star_on.png has changed
Binary file mfact/img/thumbs-up.png has changed
Binary file mfact/img/tired.png has changed
Binary file mfact/img/tongue.png has changed
Binary file mfact/menu_bar.png has changed