Mercurial > moin > 1.9
annotate MoinMoin/theme/__init__.py @ 1752:6f8360e1a4bb
wrapping div support for wiki parser, toggling display of comment divs, show_comments user prefs
author | Thomas Waldmann <tw AT waldmann-edv DOT de> |
---|---|
date | Sun, 28 Jan 2007 22:40:49 +0100 |
parents | b7e0a36a1219 |
children | 885c97f7ba37 |
rev | line source |
---|---|
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1 # -*- coding: iso-8859-1 -*- |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
2 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
3 MoinMoin - Theme Package |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
4 |
1683
964fa7d0de32
action menu propagates rev parameter, simplify revision display
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1634
diff
changeset
|
5 @copyright: 2003-2006 by MoinMoin:ThomasWaldmann |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
6 @license: GNU GPL, see COPYING for details. |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
7 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
8 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
9 from MoinMoin import i18n, wikiutil, config, version |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
10 from MoinMoin.Page import Page |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
11 from MoinMoin.util import pysupport |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
12 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
13 modules = pysupport.getPackageModules(__file__) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
14 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
15 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
16 class ThemeBase: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
17 """ Base class for themes |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
18 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
19 This class supply all the standard template that sub classes can |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
20 use without rewriting the same code. If you want to change certain |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
21 elements, override them. |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
22 """ |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
23 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
24 name = 'base' |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
25 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
26 # fake _ function to get gettext recognize those texts: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
27 _ = lambda x: x |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
28 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
29 # TODO: remove icons that are not used any more. |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
30 icons = { |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
31 # key alt icon filename w h |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
32 # ------------------------------------------------------------------ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
33 # navibar |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
34 'help': ("%(page_help_contents)s", "moin-help.png", 12, 11), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
35 'find': ("%(page_find_page)s", "moin-search.png", 12, 12), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
36 'diff': (_("Diffs"), "moin-diff.png", 15, 11), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
37 'info': (_("Info"), "moin-info.png", 12, 11), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
38 'edit': (_("Edit"), "moin-edit.png", 12, 12), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
39 'unsubscribe':(_("Unsubscribe"), "moin-unsubscribe.png", 14, 10), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
40 'subscribe': (_("Subscribe"), "moin-subscribe.png",14, 10), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
41 'raw': (_("Raw"), "moin-raw.png", 12, 13), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
42 'xml': (_("XML"), "moin-xml.png", 20, 13), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
43 'print': (_("Print"), "moin-print.png", 16, 14), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
44 'view': (_("View"), "moin-show.png", 12, 13), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
45 'home': (_("Home"), "moin-home.png", 13, 12), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
46 'up': (_("Up"), "moin-parent.png", 15, 13), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
47 # FileAttach |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
48 'attach': ("%(attach_count)s", "moin-attach.png", 7, 15), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
49 # RecentChanges |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
50 'rss': (_("[RSS]"), "moin-rss.png", 36, 14), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
51 'deleted': (_("[DELETED]"), "moin-deleted.png",60, 12), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
52 'updated': (_("[UPDATED]"), "moin-updated.png",60, 12), |
1746
1aa9dfd0ad34
added conflict and rename icon
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1735
diff
changeset
|
53 'renamed': (_("[RENAMED]"), "moin-renamed.png",60, 12), |
1aa9dfd0ad34
added conflict and rename icon
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1735
diff
changeset
|
54 'conflict': (_("[CONFLICT]"), "moin-conflict.png", 60, 12), |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
55 'new': (_("[NEW]"), "moin-new.png", 31, 12), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
56 'diffrc': (_("[DIFF]"), "moin-diff.png", 15, 11), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
57 # General |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
58 'bottom': (_("[BOTTOM]"), "moin-bottom.png", 14, 10), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
59 'top': (_("[TOP]"), "moin-top.png", 14, 10), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
60 'www': ("[WWW]", "moin-www.png", 11, 11), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
61 'mailto': ("[MAILTO]", "moin-email.png", 14, 10), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
62 'news': ("[NEWS]", "moin-news.png", 10, 11), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
63 'telnet': ("[TELNET]", "moin-telnet.png", 10, 11), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
64 'ftp': ("[FTP]", "moin-ftp.png", 11, 11), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
65 'file': ("[FILE]", "moin-ftp.png", 11, 11), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
66 # search forms |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
67 'searchbutton': ("[?]", "moin-search.png", 12, 12), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
68 'interwiki': ("[%(wikitag)s]", "moin-inter.png", 16, 16), |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
69 |
734
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
70 # smileys (this is CONTENT, but good looking smileys depend on looking |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
71 # adapted to the theme background color and theme style in general) |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
72 #vvv == vvv this must be the same for GUI editor converter |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
73 'X-(': ("X-(", 'angry.png', 15, 15), |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
74 ':D': (":D", 'biggrin.png', 15, 15), |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
75 '<:(': ("<:(", 'frown.png', 15, 15), |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
76 ':o': (":o", 'redface.png', 15, 15), |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
77 ':(': (":(", 'sad.png', 15, 15), |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
78 ':)': (":)", 'smile.png', 15, 15), |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
79 'B)': ("B)", 'smile2.png', 15, 15), |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
80 ':))': (":))", 'smile3.png', 15, 15), |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
81 ';)': (";)", 'smile4.png', 15, 15), |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
82 '/!\\': ("/!\\", 'alert.png', 15, 15), |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
83 '<!>': ("<!>", 'attention.png', 15, 15), |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
84 '(!)': ("(!)", 'idea.png', 15, 15), |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
85 |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
86 # copied 2001-11-16 from http://pikie.darktech.org/cgi/pikie.py?EmotIcon |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
87 ':-?': (":-?", 'tongue.png', 15, 15), |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
88 ':\\': (":\\", 'ohwell.png', 15, 15), |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
89 '>:>': (">:>", 'devil.png', 15, 15), |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
90 '|)': ("|)", 'tired.png', 15, 15), |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
91 |
734
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
92 # some folks use noses in their emoticons |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
93 ':-(': (":-(", 'sad.png', 15, 15), |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
94 ':-)': (":-)", 'smile.png', 15, 15), |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
95 'B-)': ("B-)", 'smile2.png', 15, 15), |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
96 ':-))': (":-))", 'smile3.png', 15, 15), |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
97 ';-)': (";-)", 'smile4.png', 15, 15), |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
98 '|-)': ("|-)", 'tired.png', 15, 15), |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
99 |
734
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
100 # version 1.0 |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
101 '(./)': ("(./)", 'checkmark.png', 20, 15), |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
102 '{OK}': ("{OK}", 'thumbs-up.png', 14, 12), |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
103 '{X}': ("{X}", 'icon-error.png', 16, 16), |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
104 '{i}': ("{i}", 'icon-info.png', 16, 16), |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
105 '{1}': ("{1}", 'prio1.png', 15, 13), |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
106 '{2}': ("{2}", 'prio2.png', 15, 13), |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
107 '{3}': ("{3}", 'prio3.png', 15, 13), |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
108 |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
109 # version 1.3.4 (stars) |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
110 # try {*}{*}{o} |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
111 '{*}': ("{*}", 'star_on.png', 15, 15), |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
112 '{o}': ("{o}", 'star_off.png', 15, 15), |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
113 } |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
114 del _ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
115 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
116 # Style sheets - usually there is no need to override this in sub |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
117 # classes. Simply supply the css files in the css directory. |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
118 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
119 # Standard set of style sheets |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
120 stylesheets = ( |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
121 # media basename |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
122 ('all', 'common'), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
123 ('screen', 'screen'), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
124 ('print', 'print'), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
125 ('projection', 'projection'), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
126 ) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
127 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
128 # Used in print mode |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
129 stylesheets_print = ( |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
130 # media basename |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
131 ('all', 'common'), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
132 ('all', 'print'), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
133 ) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
134 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
135 # Used in slide show mode |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
136 stylesheets_projection = ( |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
137 # media basename |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
138 ('all', 'common'), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
139 ('all', 'projection'), |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
140 ) |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
141 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
142 stylesheetsCharset = 'utf-8' |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
143 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
144 def __init__(self, request): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
145 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
146 Initialize the theme object. |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
147 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
148 @param request: the request object |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
149 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
150 self.request = request |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
151 self.cfg = request.cfg |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
152 self._cache = {} # Used to cache elements that may be used several times |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
153 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
154 def img_url(self, img): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
155 """ Generate an image href |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
156 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
157 @param img: the image filename |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
158 @rtype: string |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
159 @return: the image href |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
160 """ |
1318
760002b5ffa3
use url_prefix_static = '/moin_static160' instead of url_prefix = '/wiki' to avoid user confusion and stale caches
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1015
diff
changeset
|
161 return "%s/%s/img/%s" % (self.cfg.url_prefix_static, self.name, img) |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
162 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
163 def emit_custom_html(self, html): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
164 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
165 generate custom HTML code in `html` |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
166 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
167 @param html: a string or a callable object, in which case |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
168 it is called and its return value is used |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
169 @rtype: string |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
170 @return: string with html |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
171 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
172 if html: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
173 if callable(html): html = html(self.request) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
174 return html |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
175 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
176 def logo(self): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
177 """ Assemble logo with link to front page |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
178 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
179 The logo contain an image and or text or any html markup the |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
180 admin inserted in the config file. Everything it enclosed inside |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
181 a div with id="logo". |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
182 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
183 @rtype: unicode |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
184 @return: logo html |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
185 """ |
70
36a2541550aa
src cosmetic changes, changed (c) to 2005
Thomas Waldmann <tw@waldmann-edv.de>
parents:
64
diff
changeset
|
186 html = u'' |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
187 if self.cfg.logo_string: |
1347
b65614f8a393
use page.link_to(_raw) more often
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1341
diff
changeset
|
188 page = wikiutil.getFrontPage(self.request) |
b65614f8a393
use page.link_to(_raw) more often
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1341
diff
changeset
|
189 logo = page.link_to_raw(self.request, self.cfg.logo_string) |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
190 html = u'''<div id="logo">%s</div>''' % logo |
70
36a2541550aa
src cosmetic changes, changed (c) to 2005
Thomas Waldmann <tw@waldmann-edv.de>
parents:
64
diff
changeset
|
191 return html |
161
65efc38c4e23
separated interwiki display into an own div and made its display configurable via show_interwiki [1]
Thomas Waldmann <tw@waldmann-edv.de>
parents:
160
diff
changeset
|
192 |
65efc38c4e23
separated interwiki display into an own div and made its display configurable via show_interwiki [1]
Thomas Waldmann <tw@waldmann-edv.de>
parents:
160
diff
changeset
|
193 def interwiki(self, d): |
65efc38c4e23
separated interwiki display into an own div and made its display configurable via show_interwiki [1]
Thomas Waldmann <tw@waldmann-edv.de>
parents:
160
diff
changeset
|
194 """ Assemble the interwiki name display, linking to page_front_page |
65efc38c4e23
separated interwiki display into an own div and made its display configurable via show_interwiki [1]
Thomas Waldmann <tw@waldmann-edv.de>
parents:
160
diff
changeset
|
195 |
65efc38c4e23
separated interwiki display into an own div and made its display configurable via show_interwiki [1]
Thomas Waldmann <tw@waldmann-edv.de>
parents:
160
diff
changeset
|
196 @param d: parameter dictionary |
65efc38c4e23
separated interwiki display into an own div and made its display configurable via show_interwiki [1]
Thomas Waldmann <tw@waldmann-edv.de>
parents:
160
diff
changeset
|
197 @rtype: string |
65efc38c4e23
separated interwiki display into an own div and made its display configurable via show_interwiki [1]
Thomas Waldmann <tw@waldmann-edv.de>
parents:
160
diff
changeset
|
198 @return: interwiki html |
65efc38c4e23
separated interwiki display into an own div and made its display configurable via show_interwiki [1]
Thomas Waldmann <tw@waldmann-edv.de>
parents:
160
diff
changeset
|
199 """ |
65efc38c4e23
separated interwiki display into an own div and made its display configurable via show_interwiki [1]
Thomas Waldmann <tw@waldmann-edv.de>
parents:
160
diff
changeset
|
200 if self.request.cfg.show_interwiki: |
1015
e527eea93da5
make more use of page.link_to in theme code
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1010
diff
changeset
|
201 page = wikiutil.getFrontPage(self.request) |
e527eea93da5
make more use of page.link_to in theme code
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1010
diff
changeset
|
202 text = self.request.cfg.interwikiname or 'Self' |
e527eea93da5
make more use of page.link_to in theme code
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1010
diff
changeset
|
203 link = page.link_to(self.request, text=text, rel='nofollow') |
174
51bde0757167
workaround for opera 8.5 brokenness
Thomas Waldmann <tw@waldmann-edv.de>
parents:
161
diff
changeset
|
204 html = u'<div id="interwiki"><span>%s</span></div>' % link |
1015
e527eea93da5
make more use of page.link_to in theme code
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1010
diff
changeset
|
205 else: |
e527eea93da5
make more use of page.link_to in theme code
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1010
diff
changeset
|
206 html = u'' |
161
65efc38c4e23
separated interwiki display into an own div and made its display configurable via show_interwiki [1]
Thomas Waldmann <tw@waldmann-edv.de>
parents:
160
diff
changeset
|
207 return html |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
208 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
209 def title(self, d): |
161
65efc38c4e23
separated interwiki display into an own div and made its display configurable via show_interwiki [1]
Thomas Waldmann <tw@waldmann-edv.de>
parents:
160
diff
changeset
|
210 """ Assemble the title (now using breadcrumbs) |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
211 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
212 @param d: parameter dictionary |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
213 @rtype: string |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
214 @return: title html |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
215 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
216 _ = self.request.getText |
153
c4c7dc546c65
ThemeChange, excluding optional content heading rendering change
Thomas Waldmann <tw@waldmann-edv.de>
parents:
142
diff
changeset
|
217 content = [] |
1354
26949e36ca0b
move code for title_link to theme, better escape warning
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1347
diff
changeset
|
218 if d['title_text'] == d['page_name']: # just showing a page, no action |
153
c4c7dc546c65
ThemeChange, excluding optional content heading rendering change
Thomas Waldmann <tw@waldmann-edv.de>
parents:
142
diff
changeset
|
219 curpage = '' |
182
10e033440008
fixed theme title for 'Add spaces to displayed wiki names' setting
Thomas Waldmann <tw@waldmann-edv.de>
parents:
174
diff
changeset
|
220 segments = d['page_name'].split('/') # was: title_text |
153
c4c7dc546c65
ThemeChange, excluding optional content heading rendering change
Thomas Waldmann <tw@waldmann-edv.de>
parents:
142
diff
changeset
|
221 for s in segments[:-1]: |
c4c7dc546c65
ThemeChange, excluding optional content heading rendering change
Thomas Waldmann <tw@waldmann-edv.de>
parents:
142
diff
changeset
|
222 curpage += s |
c4c7dc546c65
ThemeChange, excluding optional content heading rendering change
Thomas Waldmann <tw@waldmann-edv.de>
parents:
142
diff
changeset
|
223 content.append("<li>%s</li>" % Page(self.request, curpage).link_to(self.request, s)) |
c4c7dc546c65
ThemeChange, excluding optional content heading rendering change
Thomas Waldmann <tw@waldmann-edv.de>
parents:
142
diff
changeset
|
224 curpage += '/' |
1354
26949e36ca0b
move code for title_link to theme, better escape warning
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1347
diff
changeset
|
225 link_text = segments[-1] |
26949e36ca0b
move code for title_link to theme, better escape warning
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1347
diff
changeset
|
226 link_title = _('Click to do a full-text search for this title') |
26949e36ca0b
move code for title_link to theme, better escape warning
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1347
diff
changeset
|
227 link_query = { |
26949e36ca0b
move code for title_link to theme, better escape warning
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1347
diff
changeset
|
228 'action': 'fullsearch', |
26949e36ca0b
move code for title_link to theme, better escape warning
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1347
diff
changeset
|
229 'value': 'linkto:"%s"' % d['page_name'], |
26949e36ca0b
move code for title_link to theme, better escape warning
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1347
diff
changeset
|
230 'context': '180', |
26949e36ca0b
move code for title_link to theme, better escape warning
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1347
diff
changeset
|
231 } |
26949e36ca0b
move code for title_link to theme, better escape warning
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1347
diff
changeset
|
232 # we dont use d['title_link'] any more, but make it ourselves: |
26949e36ca0b
move code for title_link to theme, better escape warning
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1347
diff
changeset
|
233 link = d['page'].link_to(self.request, link_text, querystr=link_query, title=link_title, css_class='backlink', rel='nofollow') |
26949e36ca0b
move code for title_link to theme, better escape warning
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1347
diff
changeset
|
234 content.append(('<li>%s</li>') % link) |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
235 else: |
153
c4c7dc546c65
ThemeChange, excluding optional content heading rendering change
Thomas Waldmann <tw@waldmann-edv.de>
parents:
142
diff
changeset
|
236 content.append('<li>%s</li>' % wikiutil.escape(d['title_text'])) |
133
df2368d50468
added location breadcrumbs
Thomas Waldmann <tw@waldmann-edv.de>
parents:
128
diff
changeset
|
237 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
238 html = ''' |
153
c4c7dc546c65
ThemeChange, excluding optional content heading rendering change
Thomas Waldmann <tw@waldmann-edv.de>
parents:
142
diff
changeset
|
239 <ul id="pagelocation"> |
c4c7dc546c65
ThemeChange, excluding optional content heading rendering change
Thomas Waldmann <tw@waldmann-edv.de>
parents:
142
diff
changeset
|
240 %s |
c4c7dc546c65
ThemeChange, excluding optional content heading rendering change
Thomas Waldmann <tw@waldmann-edv.de>
parents:
142
diff
changeset
|
241 </ul> |
c4c7dc546c65
ThemeChange, excluding optional content heading rendering change
Thomas Waldmann <tw@waldmann-edv.de>
parents:
142
diff
changeset
|
242 ''' % "".join(content) |
142
0b1b06737340
separate creaetion of the location (breadcrumbs) from the title for easier theme customization
Nir Soffer <nirs@freeshell.org>
parents:
141
diff
changeset
|
243 return html |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
244 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
245 def username(self, d): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
246 """ Assemble the username / userprefs link |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
247 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
248 @param d: parameter dictionary |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
249 @rtype: unicode |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
250 @return: username html |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
251 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
252 request = self.request |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
253 _ = request.getText |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
254 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
255 userlinks = [] |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
256 # Add username/homepage link for registered users. We don't care |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
257 # if it exists, the user can create it. |
338
bf754e0d6472
don't crash in themecode if username is None
Thomas Waldmann <tw@waldmann-edv.de>
parents:
306
diff
changeset
|
258 if request.user.valid and request.user.name: |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
259 interwiki = wikiutil.getInterwikiHomePage(request) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
260 name = request.user.name |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
261 aliasname = request.user.aliasname |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
262 if not aliasname: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
263 aliasname = name |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
264 title = "%s @ %s" % (aliasname, interwiki[0]) |
511
8ee8ced7dded
moved UserPreferences back to header, add Cancel button
Thomas Waldmann <tw@waldmann-edv.de>
parents:
493
diff
changeset
|
265 # link to (interwiki) user homepage |
1529
76b4d2324d25
MoinMoin should not record the homepage links as pagelinks, fixes MoinMoinBugs/PageLinksIncludeUnrelatedLinks.
Alexander Schremmer <alex AT alexanderweb DOT de>
parents:
1425
diff
changeset
|
266 homelink = (request.formatter.interwikilink(1, title=title, id="userhome", generated=True, *interwiki) + |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
267 request.formatter.text(name) + |
569
6c572f52899f
fixed missing </a> formatter bug
Thomas Waldmann <tw@waldmann-edv.de>
parents:
515
diff
changeset
|
268 request.formatter.interwikilink(0, title=title, id="userhome", *interwiki)) |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
269 userlinks.append(homelink) |
511
8ee8ced7dded
moved UserPreferences back to header, add Cancel button
Thomas Waldmann <tw@waldmann-edv.de>
parents:
493
diff
changeset
|
270 # link to userprefs action |
512
3ede5fa7001a
shorter name for User Preferences, updated i18n
Thomas Waldmann <tw@waldmann-edv.de>
parents:
511
diff
changeset
|
271 userlinks.append(d['page'].link_to(request, text=_('Preferences'), |
869
0152984f76ee
use rel nofollow for action links
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
826
diff
changeset
|
272 querystr={'action': 'userprefs'}, id='userprefs', rel='nofollow')) |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
273 |
297
fe57f191672e
make login/logout showing configurable, update CHANGES
Thomas Waldmann <tw@waldmann-edv.de>
parents:
296
diff
changeset
|
274 if request.cfg.show_login: |
296
4e08178a630c
moving logout to a visible place
Thomas Waldmann <tw@waldmann-edv.de>
parents:
286
diff
changeset
|
275 if request.user.valid: |
483
a594780d5e64
Login macro, login/logout/UserPreferences actions
Thomas Waldmann <tw@waldmann-edv.de>
parents:
471
diff
changeset
|
276 userlinks.append(d['page'].link_to(request, text=_('Logout', formatted=False), |
869
0152984f76ee
use rel nofollow for action links
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
826
diff
changeset
|
277 querystr={'action': 'logout', 'logout': 'logout'}, id='logout', rel='nofollow')) |
296
4e08178a630c
moving logout to a visible place
Thomas Waldmann <tw@waldmann-edv.de>
parents:
286
diff
changeset
|
278 else: |
483
a594780d5e64
Login macro, login/logout/UserPreferences actions
Thomas Waldmann <tw@waldmann-edv.de>
parents:
471
diff
changeset
|
279 userlinks.append(d['page'].link_to(request, text=_("Login", formatted=False), |
869
0152984f76ee
use rel nofollow for action links
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
826
diff
changeset
|
280 querystr={'action': 'login'}, id='login', rel='nofollow')) |
296
4e08178a630c
moving logout to a visible place
Thomas Waldmann <tw@waldmann-edv.de>
parents:
286
diff
changeset
|
281 |
306
4e5e4fc9f7fa
fixed rendering of modern for IE, Opera, Konqueror (as far as possible). TODO: other themes
Thomas Waldmann <tw@waldmann-edv.de>
parents:
298
diff
changeset
|
282 userlinks = [u'<li>%s</li>' % link for link in userlinks] |
4e5e4fc9f7fa
fixed rendering of modern for IE, Opera, Konqueror (as far as possible). TODO: other themes
Thomas Waldmann <tw@waldmann-edv.de>
parents:
298
diff
changeset
|
283 html = u'<ul id="username">%s</ul>' % ''.join(userlinks) |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
284 return html |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
285 |
237
ccfa707e7064
added builtin support for linking irc:// URLs
Thomas Waldmann <tw@waldmann-edv.de>
parents:
221
diff
changeset
|
286 # Schemas supported in toolbar links, using [url label] format |
1692
73f12c0dda0d
support for ircs: URLs (thanks to Thilo Pfennig)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1684
diff
changeset
|
287 linkSchemas = [r'http://', r'https://', r'ftp://', 'mailto:', r'irc://', r'ircs://', ] + \ |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
288 [x + ':' for x in config.url_schemas] |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
289 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
290 def splitNavilink(self, text, localize=1): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
291 """ Split navibar links into pagename, link to page |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
292 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
293 Admin or user might want to use shorter navibar items by using |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
294 the [page title] or [url title] syntax. In this case, we don't |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
295 use localization, and the links goes to page or to the url, not |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
296 the localized version of page. |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
297 |
1630
9a8fdd5a03d3
theme code: add comment for refactoring
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1560
diff
changeset
|
298 TODO: refactor/cleanup! |
9a8fdd5a03d3
theme code: add comment for refactoring
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1560
diff
changeset
|
299 * the ItemCache is seeing 3 requests for a normal navi_bar entry |
9a8fdd5a03d3
theme code: add comment for refactoring
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1560
diff
changeset
|
300 * for user quicklinks stuff, ItemCache is seeing a 1st request for |
9a8fdd5a03d3
theme code: add comment for refactoring
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1560
diff
changeset
|
301 WikiName:PageName, then a 2nd (correct) one for PageName |
9a8fdd5a03d3
theme code: add comment for refactoring
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1560
diff
changeset
|
302 * page object gets recreated at the end, although we already have |
9a8fdd5a03d3
theme code: add comment for refactoring
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1560
diff
changeset
|
303 one for some cases |
9a8fdd5a03d3
theme code: add comment for refactoring
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1560
diff
changeset
|
304 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
305 @param text: the text used in config or user preferences |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
306 @rtype: tuple |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
307 @return: pagename or url, link to page or url |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
308 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
309 request = self.request |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
310 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
311 # Handle [pagename title] or [url title] formats |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
312 if text.startswith('[') and text.endswith(']'): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
313 try: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
314 pagename, title = text[1:-1].strip().split(' ', 1) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
315 title = title.strip() |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
316 localize = 0 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
317 except (ValueError, TypeError): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
318 # Just use the text as is. |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
319 pagename = title = text |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
320 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
321 # Handle regular pagename like "FrontPage" |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
322 else: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
323 # Use localized pages for the current user |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
324 if localize: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
325 page = wikiutil.getSysPage(request, text) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
326 else: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
327 page = Page(request, text) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
328 pagename = page.page_name |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
329 title = page.split_title(request) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
330 title = self.shortenPagename(title) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
331 link = page.link_to(request, title) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
332 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
333 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
334 from MoinMoin import config |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
335 for scheme in self.linkSchemas: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
336 if pagename.startswith(scheme): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
337 title = wikiutil.escape(title) |
1382
c3c8ff25e979
make more use of formatter / link_to for link rendering
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1354
diff
changeset
|
338 link = self.request.formatter.url(1, pagename) + \ |
c3c8ff25e979
make more use of formatter / link_to for link rendering
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1354
diff
changeset
|
339 self.request.formatter.text(title) +\ |
c3c8ff25e979
make more use of formatter / link_to for link rendering
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1354
diff
changeset
|
340 self.request.formatter.url(0) |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
341 return pagename, link |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
342 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
343 # remove wiki: url prefix |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
344 if pagename.startswith("wiki:"): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
345 pagename = pagename[5:] |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
346 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
347 # try handling interwiki links |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
348 try: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
349 interwiki, page = pagename.split(':', 1) |
22
a47550d21d2d
quicklinks: avoid dupes, dont render as interwiki if wiki == self
Thomas Waldmann <tw@waldmann-edv.de>
parents:
18
diff
changeset
|
350 thiswiki = request.cfg.interwikiname |
a47550d21d2d
quicklinks: avoid dupes, dont render as interwiki if wiki == self
Thomas Waldmann <tw@waldmann-edv.de>
parents:
18
diff
changeset
|
351 if interwiki == thiswiki: |
a47550d21d2d
quicklinks: avoid dupes, dont render as interwiki if wiki == self
Thomas Waldmann <tw@waldmann-edv.de>
parents:
18
diff
changeset
|
352 pagename = page |
23
aee8b13fbb0b
quicklinks: only use pagename as title, if wiki == self
Thomas Waldmann <tw@waldmann-edv.de>
parents:
22
diff
changeset
|
353 title = page |
22
a47550d21d2d
quicklinks: avoid dupes, dont render as interwiki if wiki == self
Thomas Waldmann <tw@waldmann-edv.de>
parents:
18
diff
changeset
|
354 else: |
a47550d21d2d
quicklinks: avoid dupes, dont render as interwiki if wiki == self
Thomas Waldmann <tw@waldmann-edv.de>
parents:
18
diff
changeset
|
355 return (pagename, |
a47550d21d2d
quicklinks: avoid dupes, dont render as interwiki if wiki == self
Thomas Waldmann <tw@waldmann-edv.de>
parents:
18
diff
changeset
|
356 self.request.formatter.interwikilink(True, interwiki, page) + |
a47550d21d2d
quicklinks: avoid dupes, dont render as interwiki if wiki == self
Thomas Waldmann <tw@waldmann-edv.de>
parents:
18
diff
changeset
|
357 page + |
569
6c572f52899f
fixed missing </a> formatter bug
Thomas Waldmann <tw@waldmann-edv.de>
parents:
515
diff
changeset
|
358 self.request.formatter.interwikilink(False, interwiki, page) |
22
a47550d21d2d
quicklinks: avoid dupes, dont render as interwiki if wiki == self
Thomas Waldmann <tw@waldmann-edv.de>
parents:
18
diff
changeset
|
359 ) |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
360 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
361 except ValueError: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
362 pass |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
363 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
364 pagename = request.normalizePagename(pagename) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
365 link = Page(request, pagename).link_to(request, title) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
366 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
367 return pagename, link |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
368 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
369 def shortenPagename(self, name): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
370 """ Shorten page names |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
371 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
372 Shorten very long page names that tend to break the user |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
373 interface. The short name is usually fine, unless really stupid |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
374 long names are used (WYGIWYD). |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
375 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
376 If you don't like to do this in your theme, or want to use |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
377 different algorithm, override this method. |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
378 |
490
ca35d9e6d63e
eypdoc comments: fixed some warnings/errors
Thomas Waldmann <tw@waldmann-edv.de>
parents:
483
diff
changeset
|
379 @param name: page name, unicode |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
380 @rtype: unicode |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
381 @return: shortened version. |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
382 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
383 maxLength = self.maxPagenameLength() |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
384 # First use only the sub page name, that might be enough |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
385 if len(name) > maxLength: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
386 name = name.split('/')[-1] |
70
36a2541550aa
src cosmetic changes, changed (c) to 2005
Thomas Waldmann <tw@waldmann-edv.de>
parents:
64
diff
changeset
|
387 # If it's not enough, replace the middle with '...' |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
388 if len(name) > maxLength: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
389 half, left = divmod(maxLength - 3, 2) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
390 name = u'%s...%s' % (name[:half + left], name[-half:]) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
391 return name |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
392 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
393 def maxPagenameLength(self): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
394 """ Return maximum length for shortened page names """ |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
395 return 25 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
396 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
397 def navibar(self, d): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
398 """ Assemble the navibar |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
399 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
400 @param d: parameter dictionary |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
401 @rtype: unicode |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
402 @return: navibar html |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
403 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
404 request = self.request |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
405 found = {} # pages we found. prevent duplicates |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
406 items = [] # navibar items |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
407 item = u'<li class="%s">%s</li>' |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
408 current = d['page_name'] |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
409 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
410 # Process config navi_bar |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
411 if request.cfg.navi_bar: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
412 for text in request.cfg.navi_bar: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
413 pagename, link = self.splitNavilink(text) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
414 if pagename == current: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
415 cls = 'wikilink current' |
70
36a2541550aa
src cosmetic changes, changed (c) to 2005
Thomas Waldmann <tw@waldmann-edv.de>
parents:
64
diff
changeset
|
416 else: |
36a2541550aa
src cosmetic changes, changed (c) to 2005
Thomas Waldmann <tw@waldmann-edv.de>
parents:
64
diff
changeset
|
417 cls = 'wikilink' |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
418 items.append(item % (cls, link)) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
419 found[pagename] = 1 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
420 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
421 # Add user links to wiki links, eliminating duplicates. |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
422 userlinks = request.user.getQuickLinks() |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
423 for text in userlinks: |
22
a47550d21d2d
quicklinks: avoid dupes, dont render as interwiki if wiki == self
Thomas Waldmann <tw@waldmann-edv.de>
parents:
18
diff
changeset
|
424 # Split text without localization, user knows what he wants |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
425 pagename, link = self.splitNavilink(text, localize=0) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
426 if not pagename in found: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
427 if pagename == current: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
428 cls = 'userlink current' |
70
36a2541550aa
src cosmetic changes, changed (c) to 2005
Thomas Waldmann <tw@waldmann-edv.de>
parents:
64
diff
changeset
|
429 else: |
36a2541550aa
src cosmetic changes, changed (c) to 2005
Thomas Waldmann <tw@waldmann-edv.de>
parents:
64
diff
changeset
|
430 cls = 'userlink' |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
431 items.append(item % (cls, link)) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
432 found[pagename] = 1 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
433 |
160
b18ec46a7b1d
we need current page in navibar as long as unknown users have no trail or trail doesnt get updated on actions
Thomas Waldmann <tw@waldmann-edv.de>
parents:
153
diff
changeset
|
434 # Add current page at end |
b18ec46a7b1d
we need current page in navibar as long as unknown users have no trail or trail doesnt get updated on actions
Thomas Waldmann <tw@waldmann-edv.de>
parents:
153
diff
changeset
|
435 if not current in found: |
b18ec46a7b1d
we need current page in navibar as long as unknown users have no trail or trail doesnt get updated on actions
Thomas Waldmann <tw@waldmann-edv.de>
parents:
153
diff
changeset
|
436 title = d['page'].split_title(request) |
b18ec46a7b1d
we need current page in navibar as long as unknown users have no trail or trail doesnt get updated on actions
Thomas Waldmann <tw@waldmann-edv.de>
parents:
153
diff
changeset
|
437 title = self.shortenPagename(title) |
b18ec46a7b1d
we need current page in navibar as long as unknown users have no trail or trail doesnt get updated on actions
Thomas Waldmann <tw@waldmann-edv.de>
parents:
153
diff
changeset
|
438 link = d['page'].link_to(request, title) |
b18ec46a7b1d
we need current page in navibar as long as unknown users have no trail or trail doesnt get updated on actions
Thomas Waldmann <tw@waldmann-edv.de>
parents:
153
diff
changeset
|
439 cls = 'current' |
b18ec46a7b1d
we need current page in navibar as long as unknown users have no trail or trail doesnt get updated on actions
Thomas Waldmann <tw@waldmann-edv.de>
parents:
153
diff
changeset
|
440 items.append(item % (cls, link)) |
b18ec46a7b1d
we need current page in navibar as long as unknown users have no trail or trail doesnt get updated on actions
Thomas Waldmann <tw@waldmann-edv.de>
parents:
153
diff
changeset
|
441 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
442 # Assemble html |
306
4e5e4fc9f7fa
fixed rendering of modern for IE, Opera, Konqueror (as far as possible). TODO: other themes
Thomas Waldmann <tw@waldmann-edv.de>
parents:
298
diff
changeset
|
443 items = u''.join(items) |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
444 html = u''' |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
445 <ul id="navibar"> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
446 %s |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
447 </ul> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
448 ''' % items |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
449 return html |
153
c4c7dc546c65
ThemeChange, excluding optional content heading rendering change
Thomas Waldmann <tw@waldmann-edv.de>
parents:
142
diff
changeset
|
450 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
451 def get_icon(self, icon): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
452 """ Return icon data from self.icons |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
453 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
454 If called from [[Icon(file)]] we have a filename, not a |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
455 key. Using filenames is deprecated, but for now, we simulate old |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
456 behavior. |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
457 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
458 @param icon: icon name or file name (string) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
459 @rtype: tuple |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
460 @return: alt (unicode), href (string), width, height (int) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
461 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
462 if icon in self.icons: |
734
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
463 alt, icon, w, h = self.icons[icon] |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
464 else: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
465 # Create filenames to icon data mapping on first call, then |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
466 # cache in class for next calls. |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
467 if not getattr(self.__class__, 'iconsByFile', None): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
468 d = {} |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
469 for data in self.icons.values(): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
470 d[data[1]] = data |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
471 self.__class__.iconsByFile = d |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
472 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
473 # Try to get icon data by file name |
734
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
474 if icon in self.iconsByFile: |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
475 alt, icon, w, h = self.iconsByFile[icon] |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
476 else: |
734
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
477 alt, icon, w, h = '', icon, '', '' |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
478 |
734
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
479 return alt, self.img_url(icon), w, h |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
480 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
481 def make_icon(self, icon, vars=None): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
482 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
483 This is the central routine for making <img> tags for icons! |
734
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
484 All icons stuff except the top left logo and search field icons are |
bf2435e61f97
moved smileys from MoinMoin.config to theme, fixed smiley text_python caching bug
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
669
diff
changeset
|
485 handled here. |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
486 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
487 @param icon: icon id (dict key) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
488 @param vars: ... |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
489 @rtype: string |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
490 @return: icon html (img tag) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
491 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
492 if vars is None: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
493 vars = {} |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
494 alt, img, w, h = self.get_icon(icon) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
495 try: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
496 alt = alt % vars |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
497 except KeyError, err: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
498 alt = 'KeyError: %s' % str(err) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
499 if self.request: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
500 alt = self.request.getText(alt, formatted=False) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
501 try: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
502 tag = self.request.formatter.image(src=img, alt=alt, width=w, height=h) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
503 except AttributeError: # XXX FIXME if we have no formatter or no request |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
504 tag = '<img src="%s" alt="%s" width="%s" height="%s">' % ( |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
505 img, alt, w, h) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
506 import warnings |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
507 warnings.warn("calling themes without correct request", DeprecationWarning) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
508 return tag |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
509 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
510 def make_iconlink(self, which, d): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
511 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
512 Make a link with an icon |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
513 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
514 @param which: icon id (dictionary key) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
515 @param d: parameter dictionary |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
516 @rtype: string |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
517 @return: html link tag |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
518 """ |
1684
aadc8b0e11cf
change classic theme to propagate rev, too
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1683
diff
changeset
|
519 querystr, title, icon = self.cfg.page_icons_table[which] |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
520 d['title'] = title % d |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
521 d['i18ntitle'] = self.request.getText(d['title'], formatted=False) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
522 img_src = self.make_icon(icon, d) |
1684
aadc8b0e11cf
change classic theme to propagate rev, too
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1683
diff
changeset
|
523 rev = d['rev'] |
aadc8b0e11cf
change classic theme to propagate rev, too
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1683
diff
changeset
|
524 if rev and which in ['raw', 'print', ]: |
aadc8b0e11cf
change classic theme to propagate rev, too
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1683
diff
changeset
|
525 querystr['rev'] = str(rev) |
aadc8b0e11cf
change classic theme to propagate rev, too
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1683
diff
changeset
|
526 attrs = {'rel': 'nofollow', 'title': d['i18ntitle'], } |
aadc8b0e11cf
change classic theme to propagate rev, too
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1683
diff
changeset
|
527 page = d['page'] |
aadc8b0e11cf
change classic theme to propagate rev, too
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1683
diff
changeset
|
528 return page.link_to_raw(self.request, text=img_src, querystr=querystr, **attrs) |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
529 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
530 def msg(self, d): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
531 """ Assemble the msg display |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
532 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
533 Display a message with a widget or simple strings with a clear message link. |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
534 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
535 @param d: parameter dictionary |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
536 @rtype: unicode |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
537 @return: msg display html |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
538 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
539 _ = self.request.getText |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
540 msg = d['msg'] |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
541 if not msg: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
542 return u'' |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
543 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
544 if isinstance(msg, (str, unicode)): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
545 # Render simple strings with a close link |
1339
544b931cd965
new setting url_prefix_action, cleanup page.url/link_to, wikiutil.link_tag
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1318
diff
changeset
|
546 close = d['page'].link_to(self.request, text=_('Clear message')) |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
547 html = u'<p>%s</p>\n<div class="buttons">%s</div>\n' % (msg, close) |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
548 else: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
549 # msg is a widget |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
550 html = msg.render() |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
551 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
552 return u'<div id="message">\n%s\n</div>\n' % html |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
553 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
554 def trail(self, d): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
555 """ Assemble page trail |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
556 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
557 @param d: parameter dictionary |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
558 @rtype: unicode |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
559 @return: trail html |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
560 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
561 request = self.request |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
562 user = request.user |
70
36a2541550aa
src cosmetic changes, changed (c) to 2005
Thomas Waldmann <tw@waldmann-edv.de>
parents:
64
diff
changeset
|
563 html = '' |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
564 if user.valid and user.show_page_trail: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
565 trail = user.getTrail() |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
566 if trail: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
567 items = [] |
153
c4c7dc546c65
ThemeChange, excluding optional content heading rendering change
Thomas Waldmann <tw@waldmann-edv.de>
parents:
142
diff
changeset
|
568 for pagename in trail: |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
569 try: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
570 interwiki, page = pagename.split(":", 1) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
571 if request.cfg.interwikiname != interwiki: |
569
6c572f52899f
fixed missing </a> formatter bug
Thomas Waldmann <tw@waldmann-edv.de>
parents:
515
diff
changeset
|
572 link = (self.request.formatter.interwikilink(True, interwiki, page) + |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
573 self.shortenPagename(page) + |
569
6c572f52899f
fixed missing </a> formatter bug
Thomas Waldmann <tw@waldmann-edv.de>
parents:
515
diff
changeset
|
574 self.request.formatter.interwikilink(False, interwiki, page)) |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
575 items.append('<li>%s</li>' % link) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
576 continue |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
577 else: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
578 pagename = page |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
579 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
580 except ValueError: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
581 pass |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
582 page = Page(request, pagename) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
583 title = page.split_title(request) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
584 title = self.shortenPagename(title) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
585 link = page.link_to(request, title) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
586 items.append('<li>%s</li>' % link) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
587 html = ''' |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
588 <ul id="pagetrail"> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
589 %s |
306
4e5e4fc9f7fa
fixed rendering of modern for IE, Opera, Konqueror (as far as possible). TODO: other themes
Thomas Waldmann <tw@waldmann-edv.de>
parents:
298
diff
changeset
|
590 </ul>''' % ''.join(items) |
70
36a2541550aa
src cosmetic changes, changed (c) to 2005
Thomas Waldmann <tw@waldmann-edv.de>
parents:
64
diff
changeset
|
591 return html |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
592 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
593 def html_stylesheets(self, d): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
594 """ Assemble html head stylesheet links |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
595 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
596 @param d: parameter dictionary |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
597 @rtype: string |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
598 @return: stylesheets links |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
599 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
600 link = '<link rel="stylesheet" type="text/css" charset="%s" media="%s" href="%s">' |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
601 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
602 # Check mode |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
603 if d.get('print_mode'): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
604 media = d.get('media', 'print') |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
605 stylesheets = getattr(self, 'stylesheets_' + media) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
606 else: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
607 stylesheets = self.stylesheets |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
608 usercss = self.request.user.valid and self.request.user.css_url |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
609 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
610 # Create stylesheets links |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
611 html = [] |
1318
760002b5ffa3
use url_prefix_static = '/moin_static160' instead of url_prefix = '/wiki' to avoid user confusion and stale caches
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1015
diff
changeset
|
612 prefix = self.cfg.url_prefix_static |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
613 csshref = '%s/%s/css' % (prefix, self.name) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
614 for media, basename in stylesheets: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
615 href = '%s/%s.css' % (csshref, basename) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
616 html.append(link % (self.stylesheetsCharset, media, href)) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
617 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
618 # Don't add user css url if it matches one of ours |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
619 if usercss and usercss == href: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
620 usercss = None |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
621 |
221
b1d744e2fd29
cfg.stylesheets for admin configurable additional style sheets
Thomas Waldmann <tw@waldmann-edv.de>
parents:
182
diff
changeset
|
622 # admin configurable additional css (farm or wiki level) |
b1d744e2fd29
cfg.stylesheets for admin configurable additional style sheets
Thomas Waldmann <tw@waldmann-edv.de>
parents:
182
diff
changeset
|
623 for media, csshref in self.request.cfg.stylesheets: |
b1d744e2fd29
cfg.stylesheets for admin configurable additional style sheets
Thomas Waldmann <tw@waldmann-edv.de>
parents:
182
diff
changeset
|
624 html.append(link % (self.stylesheetsCharset, media, csshref)) |
b1d744e2fd29
cfg.stylesheets for admin configurable additional style sheets
Thomas Waldmann <tw@waldmann-edv.de>
parents:
182
diff
changeset
|
625 |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
626 |
1634
2161d292e1af
move IE hacks to msie.css and include it if IE
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1630
diff
changeset
|
627 # tribute to the most sucking browser: MS IE6 |
1010
2e7a3dd04833
don't use IE7 hack when editing (IE7+FCKeditor -> IE crash)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1008
diff
changeset
|
628 if self.cfg.hacks.get('ie7', False) and self.request.action != 'edit': |
2e7a3dd04833
don't use IE7 hack when editing (IE7+FCKeditor -> IE crash)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1008
diff
changeset
|
629 # using FCKeditor and IE7 at the same time makes nices crashes in IE |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
630 html.append(""" |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
631 <!-- compliance patch for microsoft browsers --> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
632 <!--[if lt IE 7]> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
633 <script src="%s/common/ie7/ie7-standard-p.js" type="text/javascript"></script> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
634 <![endif]--> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
635 """ % prefix) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
636 |
1634
2161d292e1af
move IE hacks to msie.css and include it if IE
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1630
diff
changeset
|
637 csshref = '%s/%s/css/msie.css' % (prefix, self.name) |
2161d292e1af
move IE hacks to msie.css and include it if IE
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1630
diff
changeset
|
638 html.append(""" |
2161d292e1af
move IE hacks to msie.css and include it if IE
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1630
diff
changeset
|
639 <!-- css only for MSIE browsers --> |
2161d292e1af
move IE hacks to msie.css and include it if IE
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1630
diff
changeset
|
640 <!--[if IE]> |
2161d292e1af
move IE hacks to msie.css and include it if IE
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1630
diff
changeset
|
641 %s |
2161d292e1af
move IE hacks to msie.css and include it if IE
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1630
diff
changeset
|
642 <![endif]--> |
2161d292e1af
move IE hacks to msie.css and include it if IE
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1630
diff
changeset
|
643 """ % link % (self.stylesheetsCharset, 'all', csshref)) |
2161d292e1af
move IE hacks to msie.css and include it if IE
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1630
diff
changeset
|
644 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
645 # Add user css url (assuming that user css uses same charset) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
646 if usercss and usercss.lower() != "none": |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
647 html.append(link % (self.stylesheetsCharset, 'all', usercss)) |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
648 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
649 return '\n'.join(html) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
650 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
651 def shouldShowPageinfo(self, page): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
652 """ Should we show page info? |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
653 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
654 Should be implemented by actions. For now, we check here by action |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
655 name and page. |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
656 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
657 @param page: current page |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
658 @rtype: bool |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
659 @return: true if should show page info |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
660 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
661 if page.exists() and self.request.user.may.read(page.page_name): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
662 # These actions show the page content. |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
663 # TODO: on new action, page info will not show. A better |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
664 # solution will be if the action itself answer the question: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
665 # showPageInfo(). |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
666 contentActions = [u'', u'show', u'refresh', u'preview', u'diff', |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
667 u'subscribe', u'RenamePage', u'DeletePage', |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
668 u'SpellCheck', u'print'] |
1008
43279823cf24
use request.action
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1003
diff
changeset
|
669 return self.request.action in contentActions |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
670 return False |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
671 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
672 def pageinfo(self, page): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
673 """ Return html fragment with page meta data |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
674 |
393
f25101c236bb
optimized footer display and print view, removed some ancient code
Thomas Waldmann <tw@waldmann-edv.de>
parents:
338
diff
changeset
|
675 Since page information uses translated text, it uses the ui |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
676 language and direction. It looks strange sometimes, but |
393
f25101c236bb
optimized footer display and print view, removed some ancient code
Thomas Waldmann <tw@waldmann-edv.de>
parents:
338
diff
changeset
|
677 translated text using page direction looks worse. |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
678 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
679 @param page: current page |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
680 @rtype: unicode |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
681 @return: page last edit information |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
682 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
683 _ = self.request.getText |
70
36a2541550aa
src cosmetic changes, changed (c) to 2005
Thomas Waldmann <tw@waldmann-edv.de>
parents:
64
diff
changeset
|
684 html = '' |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
685 if self.shouldShowPageinfo(page): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
686 info = page.lastEditInfo() |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
687 if info: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
688 if info['editor']: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
689 info = _("last edited %(time)s by %(editor)s") % info |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
690 else: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
691 info = _("last modified %(time)s") % info |
393
f25101c236bb
optimized footer display and print view, removed some ancient code
Thomas Waldmann <tw@waldmann-edv.de>
parents:
338
diff
changeset
|
692 pagename = page.page_name |
f25101c236bb
optimized footer display and print view, removed some ancient code
Thomas Waldmann <tw@waldmann-edv.de>
parents:
338
diff
changeset
|
693 if self.request.cfg.show_interwiki: |
f25101c236bb
optimized footer display and print view, removed some ancient code
Thomas Waldmann <tw@waldmann-edv.de>
parents:
338
diff
changeset
|
694 pagename = "%s: %s" % (self.request.cfg.interwikiname, pagename) |
f25101c236bb
optimized footer display and print view, removed some ancient code
Thomas Waldmann <tw@waldmann-edv.de>
parents:
338
diff
changeset
|
695 info = "%s (%s)" % (pagename, info) |
70
36a2541550aa
src cosmetic changes, changed (c) to 2005
Thomas Waldmann <tw@waldmann-edv.de>
parents:
64
diff
changeset
|
696 html = '<p id="pageinfo" class="info"%(lang)s>%(info)s</p>\n' % { |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
697 'lang': self.ui_lang_attr(), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
698 'info': info |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
699 } |
70
36a2541550aa
src cosmetic changes, changed (c) to 2005
Thomas Waldmann <tw@waldmann-edv.de>
parents:
64
diff
changeset
|
700 return html |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
701 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
702 def searchform(self, d): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
703 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
704 assemble HTML code for the search forms |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
705 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
706 @param d: parameter dictionary |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
707 @rtype: unicode |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
708 @return: search form html |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
709 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
710 _ = self.request.getText |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
711 form = self.request.form |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
712 updates = { |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
713 'search_label': _('Search:'), |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
714 'search_value': wikiutil.escape(form.get('value', [''])[0], 1), |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
715 'search_full_label': _('Text', formatted=False), |
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
716 'search_title_label': _('Titles', formatted=False), |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
717 } |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
718 d.update(updates) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
719 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
720 html = u''' |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
721 <form id="searchform" method="get" action=""> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
722 <div> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
723 <input type="hidden" name="action" value="fullsearch"> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
724 <input type="hidden" name="context" value="180"> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
725 <label for="searchinput">%(search_label)s</label> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
726 <input id="searchinput" type="text" name="value" value="%(search_value)s" size="20" |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
727 onfocus="searchFocus(this)" onblur="searchBlur(this)" |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
728 onkeyup="searchChange(this)" onchange="searchChange(this)" alt="Search"> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
729 <input id="titlesearch" name="titlesearch" type="submit" |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
730 value="%(search_title_label)s" alt="Search Titles"> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
731 <input id="fullsearch" name="fullsearch" type="submit" |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
732 value="%(search_full_label)s" alt="Search Full Text"> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
733 </div> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
734 </form> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
735 <script type="text/javascript"> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
736 <!--// Initialize search form |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
737 var f = document.getElementById('searchform'); |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
738 f.getElementsByTagName('label')[0].style.display = 'none'; |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
739 var e = document.getElementById('searchinput'); |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
740 searchChange(e); |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
741 searchBlur(e); |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
742 //--> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
743 </script> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
744 ''' % d |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
745 return html |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
746 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
747 def showversion(self, d, **keywords): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
748 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
749 assemble HTML code for copyright and version display |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
750 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
751 @param d: parameter dictionary |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
752 @rtype: string |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
753 @return: copyright and version display html |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
754 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
755 html = '' |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
756 if self.cfg.show_version and not keywords.get('print_mode', 0): |
669
e3b84c7488e8
show_version shows version info similar to SystemInfo now
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
622
diff
changeset
|
757 html = (u'<div id="version">MoinMoin Release %s [Revision %s], ' |
e3b84c7488e8
show_version shows version info similar to SystemInfo now
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
622
diff
changeset
|
758 'Copyright 2000-2006 by Juergen Hermann</div>') % (version.release, version.revision, ) |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
759 return html |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
760 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
761 def headscript(self, d): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
762 """ Return html head script with common functions |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
763 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
764 @param d: parameter dictionary |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
765 @rtype: unicode |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
766 @return: script for html head |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
767 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
768 # Don't add script for print view |
1008
43279823cf24
use request.action
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1003
diff
changeset
|
769 if self.request.action == 'print': |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
770 return u'' |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
771 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
772 _ = self.request.getText |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
773 script = u""" |
1425
b1c380a4cdb0
move some js to common.js
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1419
diff
changeset
|
774 <script type="text/javascript"> |
b1c380a4cdb0
move some js to common.js
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1419
diff
changeset
|
775 <!-- |
b1c380a4cdb0
move some js to common.js
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1419
diff
changeset
|
776 var search_hint = "%(search_hint)s"; |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
777 //--> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
778 </script> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
779 """ % { |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
780 'search_hint': _('Search', formatted=False), |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
781 } |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
782 return script |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
783 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
784 def shouldUseRSS(self): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
785 """ Return True if rss feature is available, or False |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
786 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
787 Currently rss is broken on plain Python, and works only when |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
788 installing PyXML. Return true if PyXML is installed. |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
789 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
790 # Stolen from wikitest.py |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
791 try: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
792 import xml |
1419
f7f415cc1332
replace most find() calls by in/index()
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1382
diff
changeset
|
793 return '_xmlplus' in xml.__file__ |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
794 except ImportError: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
795 # This error reported on Python 2.2 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
796 return False |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
797 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
798 def rsshref(self): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
799 """ Create rss href, used for rss button and head link |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
800 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
801 @rtype: unicode |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
802 @return: rss href |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
803 """ |
1382
c3c8ff25e979
make more use of formatter / link_to for link rendering
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1354
diff
changeset
|
804 request = self.request |
c3c8ff25e979
make more use of formatter / link_to for link rendering
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1354
diff
changeset
|
805 url = Page(request, 'RecentChanges').url(request, querystr={ |
c3c8ff25e979
make more use of formatter / link_to for link rendering
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1354
diff
changeset
|
806 'action':'rss_rc', 'ddiffs': '1', 'unique': '1', }, escape=0, relative=False) |
c3c8ff25e979
make more use of formatter / link_to for link rendering
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1354
diff
changeset
|
807 return url |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
808 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
809 def rsslink(self): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
810 """ Create rss link in head, used by FireFox |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
811 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
812 RSS link for FireFox. This shows an rss link in the bottom of |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
813 the page and let you subscribe to the wiki rss feed. |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
814 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
815 @rtype: unicode |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
816 @return: html head |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
817 """ |
70
36a2541550aa
src cosmetic changes, changed (c) to 2005
Thomas Waldmann <tw@waldmann-edv.de>
parents:
64
diff
changeset
|
818 link = u'' |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
819 if self.shouldUseRSS(): |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
820 link = (u'<link rel="alternate" title="%s Recent Changes" ' |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
821 u'href="%s" type="application/rss+xml">') % ( |
70
36a2541550aa
src cosmetic changes, changed (c) to 2005
Thomas Waldmann <tw@waldmann-edv.de>
parents:
64
diff
changeset
|
822 self.cfg.sitename, |
36a2541550aa
src cosmetic changes, changed (c) to 2005
Thomas Waldmann <tw@waldmann-edv.de>
parents:
64
diff
changeset
|
823 self.rsshref() ) |
36a2541550aa
src cosmetic changes, changed (c) to 2005
Thomas Waldmann <tw@waldmann-edv.de>
parents:
64
diff
changeset
|
824 return link |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
825 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
826 def html_head(self, d): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
827 """ Assemble html head |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
828 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
829 @param d: parameter dictionary |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
830 @rtype: unicode |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
831 @return: html head |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
832 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
833 html = [ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
834 u'<title>%(title)s - %(sitename)s</title>' % d, |
128
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
835 self.externalScript('common'), |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
836 self.headscript(d), # Should move to separate .js file |
128
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
837 self.guiEditorScript(d), |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
838 self.html_stylesheets(d), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
839 self.rsslink(), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
840 ] |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
841 return '\n'.join(html) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
842 |
128
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
843 def externalScript(self, name): |
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
844 """ Format external script html """ |
1318
760002b5ffa3
use url_prefix_static = '/moin_static160' instead of url_prefix = '/wiki' to avoid user confusion and stale caches
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1015
diff
changeset
|
845 src = '%s/common/js/%s.js' % (self.request.cfg.url_prefix_static, name) |
128
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
846 return '<script type="text/javascript" src="%s"></script>' % src |
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
847 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
848 def credits(self, d, **keywords): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
849 """ Create credits html from credits list """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
850 if isinstance(self.cfg.page_credits, (list, tuple)): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
851 items = ['<li>%s</li>' % i for i in self.cfg.page_credits] |
306
4e5e4fc9f7fa
fixed rendering of modern for IE, Opera, Konqueror (as far as possible). TODO: other themes
Thomas Waldmann <tw@waldmann-edv.de>
parents:
298
diff
changeset
|
852 html = '<ul id="credits">\n%s\n</ul>\n' % ''.join(items) |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
853 else: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
854 # Old config using string, output as is |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
855 html = self.cfg.page_credits |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
856 return html |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
857 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
858 def actionsMenu(self, page): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
859 """ Create actions menu list and items data dict |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
860 |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
861 The menu will contain the same items always, but items that are |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
862 not available will be disabled (some broken browsers will let |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
863 you select disabled options though). |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
864 |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
865 The menu should give best user experience for javascript |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
866 enabled browsers, and acceptable behavior for those who prefer |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
867 not to use Javascript. |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
868 |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
869 TODO: Move actionsMenuInit() into body onload. This require |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
870 that the theme will render body, its currently done on |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
871 wikiutil/page. |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
872 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
873 @param page: current page, Page object |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
874 @rtype: unicode |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
875 @return: actions menu html fragment |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
876 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
877 request = self.request |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
878 _ = request.getText |
1683
964fa7d0de32
action menu propagates rev parameter, simplify revision display
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1634
diff
changeset
|
879 rev = request.rev |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
880 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
881 menu = [ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
882 'raw', |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
883 'print', |
493
993d53631fee
make some action menu entries translatable
Thomas Waldmann <tw@waldmann-edv.de>
parents:
490
diff
changeset
|
884 'RenderAsDocbook', |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
885 'refresh', |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
886 '__separator__', |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
887 'SpellCheck', |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
888 'LikePages', |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
889 'LocalSiteMap', |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
890 '__separator__', |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
891 'RenamePage', |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
892 'DeletePage', |
493
993d53631fee
make some action menu entries translatable
Thomas Waldmann <tw@waldmann-edv.de>
parents:
490
diff
changeset
|
893 '__separator__', |
993d53631fee
make some action menu entries translatable
Thomas Waldmann <tw@waldmann-edv.de>
parents:
490
diff
changeset
|
894 'MyPages', |
993d53631fee
make some action menu entries translatable
Thomas Waldmann <tw@waldmann-edv.de>
parents:
490
diff
changeset
|
895 'SubscribeUser', |
993d53631fee
make some action menu entries translatable
Thomas Waldmann <tw@waldmann-edv.de>
parents:
490
diff
changeset
|
896 '__separator__', |
993d53631fee
make some action menu entries translatable
Thomas Waldmann <tw@waldmann-edv.de>
parents:
490
diff
changeset
|
897 'Despam', |
1683
964fa7d0de32
action menu propagates rev parameter, simplify revision display
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1634
diff
changeset
|
898 'revert', |
493
993d53631fee
make some action menu entries translatable
Thomas Waldmann <tw@waldmann-edv.de>
parents:
490
diff
changeset
|
899 'PackagePages', |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
900 ] |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
901 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
902 titles = { |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
903 # action: menu title |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
904 '__title__': _("More Actions:", formatted=False), |
64
6483a586208d
better wording in the user interface
Nir Soffer <nirs@freeshell.org>
parents:
33
diff
changeset
|
905 # Translation may need longer or shorter separator |
6483a586208d
better wording in the user interface
Nir Soffer <nirs@freeshell.org>
parents:
33
diff
changeset
|
906 '__separator__': _('------------', formatted=False), |
6483a586208d
better wording in the user interface
Nir Soffer <nirs@freeshell.org>
parents:
33
diff
changeset
|
907 'raw': _('Raw Text', formatted=False), |
6483a586208d
better wording in the user interface
Nir Soffer <nirs@freeshell.org>
parents:
33
diff
changeset
|
908 'print': _('Print View', formatted=False), |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
909 'refresh': _('Delete Cache', formatted=False), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
910 'SpellCheck': _('Check Spelling', formatted=False), # rename action! |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
911 'RenamePage': _('Rename Page', formatted=False), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
912 'DeletePage': _('Delete Page', formatted=False), |
64
6483a586208d
better wording in the user interface
Nir Soffer <nirs@freeshell.org>
parents:
33
diff
changeset
|
913 'LikePages': _('Like Pages', formatted=False), |
6483a586208d
better wording in the user interface
Nir Soffer <nirs@freeshell.org>
parents:
33
diff
changeset
|
914 'LocalSiteMap': _('Local Site Map', formatted=False), |
493
993d53631fee
make some action menu entries translatable
Thomas Waldmann <tw@waldmann-edv.de>
parents:
490
diff
changeset
|
915 'MyPages': _('My Pages', formatted=False), |
993d53631fee
make some action menu entries translatable
Thomas Waldmann <tw@waldmann-edv.de>
parents:
490
diff
changeset
|
916 'SubscribeUser': _('Subscribe User', formatted=False), |
993d53631fee
make some action menu entries translatable
Thomas Waldmann <tw@waldmann-edv.de>
parents:
490
diff
changeset
|
917 'Despam': _('Remove Spam', formatted=False), |
1683
964fa7d0de32
action menu propagates rev parameter, simplify revision display
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1634
diff
changeset
|
918 'revert': _('Revert to this revision', formatted=False), |
493
993d53631fee
make some action menu entries translatable
Thomas Waldmann <tw@waldmann-edv.de>
parents:
490
diff
changeset
|
919 'PackagePages': _('Package Pages', formatted=False), |
993d53631fee
make some action menu entries translatable
Thomas Waldmann <tw@waldmann-edv.de>
parents:
490
diff
changeset
|
920 'RenderAsDocbook': _('Render as Docbook', formatted=False), |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
921 } |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
922 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
923 options = [] |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
924 option = '<option value="%(action)s"%(disabled)s>%(title)s</option>' |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
925 # class="disabled" is a workaround for browsers that ignore |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
926 # "disabled", e.g IE, Safari |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
927 # for XHTML: data['disabled'] = ' disabled="disabled"' |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
928 disabled = ' disabled class="disabled"' |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
929 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
930 # Format standard actions |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
931 available = request.getAvailableActions(page) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
932 for action in menu: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
933 data = {'action': action, 'disabled': '', 'title': titles[action]} |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
934 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
935 # Enable delete cache only if page can use caching |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
936 if action == 'refresh': |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
937 if not page.canUseCache(): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
938 data['action'] = 'show' |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
939 data['disabled'] = disabled |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
940 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
941 # Special menu items. Without javascript, executing will |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
942 # just return to the page. |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
943 elif action.startswith('__'): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
944 data['action'] = 'show' |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
945 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
946 # Actions which are not available for this wiki, user or page |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
947 if (action == '__separator__' or |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
948 (action[0].isupper() and not action in available)): |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
949 data['disabled'] = disabled |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
950 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
951 options.append(option % data) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
952 |
453
493972205fac
removed duplicate AttachFile entry in actions menu
Thomas Waldmann <tw@waldmann-edv.de>
parents:
393
diff
changeset
|
953 # Add custom actions not in the standard menu, except for |
493972205fac
removed duplicate AttachFile entry in actions menu
Thomas Waldmann <tw@waldmann-edv.de>
parents:
393
diff
changeset
|
954 # some actions like AttachFile (we have them on top level) |
493972205fac
removed duplicate AttachFile entry in actions menu
Thomas Waldmann <tw@waldmann-edv.de>
parents:
393
diff
changeset
|
955 more = [item for item in available if not item in titles and not item in ('AttachFile',)] |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
956 more.sort() |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
957 if more: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
958 # Add separator |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
959 separator = option % {'action': 'show', 'disabled': disabled, |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
960 'title': titles['__separator__']} |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
961 options.append(separator) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
962 # Add more actions (all enabled) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
963 for action in more: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
964 data = {'action': action, 'disabled': ''} |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
965 # Always add spaces: AttachFile -> Attach File |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
966 # XXX TODO do not create page just for using split_title |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
967 title = Page(request, action).split_title(request, force=1) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
968 # Use translated version if available |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
969 data['title'] = _(title, formatted=False) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
970 options.append(option % data) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
971 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
972 data = { |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
973 'label': titles['__title__'], |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
974 'options': '\n'.join(options), |
1683
964fa7d0de32
action menu propagates rev parameter, simplify revision display
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1634
diff
changeset
|
975 'rev_field': rev and '<input type="hidden" name="rev" value="%d">' % rev or '', |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
976 'do_button': _("Do") |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
977 } |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
978 html = ''' |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
979 <form class="actionsmenu" method="get" action=""> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
980 <div> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
981 <label>%(label)s</label> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
982 <select name="action" |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
983 onchange="if ((this.selectedIndex != 0) && |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
984 (this.options[this.selectedIndex].disabled == false)) { |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
985 this.form.submit(); |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
986 } |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
987 this.selectedIndex = 0;"> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
988 %(options)s |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
989 </select> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
990 <input type="submit" value="%(do_button)s"> |
1683
964fa7d0de32
action menu propagates rev parameter, simplify revision display
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1634
diff
changeset
|
991 %(rev_field)s |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
992 </div> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
993 <script type="text/javascript"> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
994 <!--// Init menu |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
995 actionsMenuInit('%(label)s'); |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
996 //--> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
997 </script> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
998 </form> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
999 ''' % data |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1000 |
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1001 return html |
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1002 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1003 def editbar(self, d): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1004 """ Assemble the page edit bar. |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1005 |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1006 Create html on first call, then return cached html. |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1007 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1008 @param d: parameter dictionary |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1009 @rtype: unicode |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1010 @return: iconbar html |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1011 """ |
622
8fba6d15a2f5
make request.(html_)formatter available early and use it
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
620
diff
changeset
|
1012 page = d['page'] |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1013 if not self.shouldShowEditbar(page): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1014 return '' |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1015 |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1016 html = self._cache.get('editbar') |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1017 if html is None: |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1018 # Remove empty items and format as list |
306
4e5e4fc9f7fa
fixed rendering of modern for IE, Opera, Konqueror (as far as possible). TODO: other themes
Thomas Waldmann <tw@waldmann-edv.de>
parents:
298
diff
changeset
|
1019 items = ''.join(['<li>%s</li>' % item |
4e5e4fc9f7fa
fixed rendering of modern for IE, Opera, Konqueror (as far as possible). TODO: other themes
Thomas Waldmann <tw@waldmann-edv.de>
parents:
298
diff
changeset
|
1020 for item in self.editbarItems(page) if item]) |
4e5e4fc9f7fa
fixed rendering of modern for IE, Opera, Konqueror (as far as possible). TODO: other themes
Thomas Waldmann <tw@waldmann-edv.de>
parents:
298
diff
changeset
|
1021 html = u'<ul class="editbar">%s</ul>\n' % items |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1022 self._cache['editbar'] = html |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1023 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1024 return html |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1025 |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1026 def shouldShowEditbar(self, page): |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1027 """ Should we show the editbar? |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1028 |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1029 Actions should implement this, because only the action knows if |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1030 the edit bar makes sense. Until it goes into actions, we do the |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1031 checking here. |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1032 |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1033 @param page: current page |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1034 @rtype: bool |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1035 @return: true if editbar should show |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1036 """ |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1037 # Show editbar only for existing pages, including deleted pages, |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1038 # that the user may read. If you may not read, you can't edit, |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1039 # so you don't need editbar. |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1040 if (page.exists(includeDeleted=1) and |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1041 self.request.user.may.read(page.page_name)): |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1042 form = self.request.form |
1008
43279823cf24
use request.action
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1003
diff
changeset
|
1043 action = self.request.action |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1044 # Do not show editbar on edit but on save/cancel |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1045 return not (action == 'edit' and |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1046 not form.has_key('button_save') and |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1047 not form.has_key('button_cancel')) |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1048 return False |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1049 |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1050 def editbarItems(self, page): |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1051 """ Return list of items to show on the editbar |
128
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1052 |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1053 This is separate method to make it easy to customize the |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1054 edtibar in sub classes. |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1055 """ |
1752
6f8360e1a4bb
wrapping div support for wiki parser, toggling display of comment divs, show_comments user prefs
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1747
diff
changeset
|
1056 _ = self.request.getText |
1742
7b419bd3b2cf
theme/__init__.py: edit_bar dependend on config
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
1735
diff
changeset
|
1057 editbar_actions = [] |
7b419bd3b2cf
theme/__init__.py: edit_bar dependend on config
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
1735
diff
changeset
|
1058 for editbar_item in self.request.cfg.edit_bar: |
7b419bd3b2cf
theme/__init__.py: edit_bar dependend on config
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
1735
diff
changeset
|
1059 if editbar_item == 'Discussion': |
1745
58a70ba872d6
theme/__init__: minor optimizations
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
1742
diff
changeset
|
1060 if not self.request.cfg.supplementation_page and self.request.getPragma('supplementation-page', 1) in ('on', '1'): |
58a70ba872d6
theme/__init__: minor optimizations
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
1742
diff
changeset
|
1061 editbar_actions.append(self.supplementation_page_nameLink(page)) |
58a70ba872d6
theme/__init__: minor optimizations
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
1742
diff
changeset
|
1062 elif self.request.cfg.supplementation_page and not self.request.getPragma('supplementation-page', 1) in ('off', '0'): |
58a70ba872d6
theme/__init__: minor optimizations
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
1742
diff
changeset
|
1063 editbar_actions.append(self.supplementation_page_nameLink(page)) |
1752
6f8360e1a4bb
wrapping div support for wiki parser, toggling display of comment divs, show_comments user prefs
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1747
diff
changeset
|
1064 elif editbar_item == 'Comments': |
6f8360e1a4bb
wrapping div support for wiki parser, toggling display of comment divs, show_comments user prefs
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1747
diff
changeset
|
1065 # we just use <a> to get same style as other links: |
6f8360e1a4bb
wrapping div support for wiki parser, toggling display of comment divs, show_comments user prefs
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1747
diff
changeset
|
1066 editbar_actions.append('<a id="toggleCommentsButton" onClick="toggleComments();">%s</a>' % _('Comments')) |
1742
7b419bd3b2cf
theme/__init__.py: edit_bar dependend on config
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
1735
diff
changeset
|
1067 elif editbar_item == 'Edit': |
1752
6f8360e1a4bb
wrapping div support for wiki parser, toggling display of comment divs, show_comments user prefs
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1747
diff
changeset
|
1068 editbar_actions.append(self.editorLink(page)) |
1742
7b419bd3b2cf
theme/__init__.py: edit_bar dependend on config
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
1735
diff
changeset
|
1069 elif editbar_item == 'Info': |
1752
6f8360e1a4bb
wrapping div support for wiki parser, toggling display of comment divs, show_comments user prefs
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1747
diff
changeset
|
1070 editbar_actions.append(self.infoLink(page)) |
1742
7b419bd3b2cf
theme/__init__.py: edit_bar dependend on config
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
1735
diff
changeset
|
1071 elif editbar_item == 'Subscribe': |
1752
6f8360e1a4bb
wrapping div support for wiki parser, toggling display of comment divs, show_comments user prefs
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1747
diff
changeset
|
1072 editbar_actions.append(self.subscribeLink(page)) |
1742
7b419bd3b2cf
theme/__init__.py: edit_bar dependend on config
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
1735
diff
changeset
|
1073 elif editbar_item == 'Quicklink': |
1752
6f8360e1a4bb
wrapping div support for wiki parser, toggling display of comment divs, show_comments user prefs
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1747
diff
changeset
|
1074 editbar_actions.append(self.quicklinkLink(page)) |
1742
7b419bd3b2cf
theme/__init__.py: edit_bar dependend on config
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
1735
diff
changeset
|
1075 elif editbar_item == 'Attachments': |
1752
6f8360e1a4bb
wrapping div support for wiki parser, toggling display of comment divs, show_comments user prefs
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1747
diff
changeset
|
1076 editbar_actions.append(self.attachmentsLink(page)) |
1742
7b419bd3b2cf
theme/__init__.py: edit_bar dependend on config
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
1735
diff
changeset
|
1077 elif editbar_item == 'ActionsMenu': |
7b419bd3b2cf
theme/__init__.py: edit_bar dependend on config
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
1735
diff
changeset
|
1078 editbar_actions.append(self.actionsMenu(page)) |
7b419bd3b2cf
theme/__init__.py: edit_bar dependend on config
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
1735
diff
changeset
|
1079 return editbar_actions |
1730
7487f00da9bc
theme/__init__.py: setup for a supplementation page in editbar_items
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
1715
diff
changeset
|
1080 |
7487f00da9bc
theme/__init__.py: setup for a supplementation page in editbar_items
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
1715
diff
changeset
|
1081 def supplementation_page_nameLink(self, page): |
7487f00da9bc
theme/__init__.py: setup for a supplementation page in editbar_items
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
1715
diff
changeset
|
1082 """ discussion for page """ |
7487f00da9bc
theme/__init__.py: setup for a supplementation page in editbar_items
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
1715
diff
changeset
|
1083 _ = self.request.getText |
7487f00da9bc
theme/__init__.py: setup for a supplementation page in editbar_items
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
1715
diff
changeset
|
1084 return page.link_to(self.request, |
7487f00da9bc
theme/__init__.py: setup for a supplementation page in editbar_items
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
1715
diff
changeset
|
1085 text=_(self.request.cfg.supplementation_page_name, formatted=False), |
7487f00da9bc
theme/__init__.py: setup for a supplementation page in editbar_items
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
1715
diff
changeset
|
1086 querystr={'action': 'supplementation'}, id='supplementation', rel='nofollow') |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1087 |
286
08cd0e9b9369
do not show gui editor for non-wiki format pages
Thomas Waldmann <tw@waldmann-edv.de>
parents:
237
diff
changeset
|
1088 def guiworks(self, page): |
08cd0e9b9369
do not show gui editor for non-wiki format pages
Thomas Waldmann <tw@waldmann-edv.de>
parents:
237
diff
changeset
|
1089 """ Return whether the gui editor / converter can work for that page. |
08cd0e9b9369
do not show gui editor for non-wiki format pages
Thomas Waldmann <tw@waldmann-edv.de>
parents:
237
diff
changeset
|
1090 |
08cd0e9b9369
do not show gui editor for non-wiki format pages
Thomas Waldmann <tw@waldmann-edv.de>
parents:
237
diff
changeset
|
1091 The GUI editor currently only works for wiki format. |
08cd0e9b9369
do not show gui editor for non-wiki format pages
Thomas Waldmann <tw@waldmann-edv.de>
parents:
237
diff
changeset
|
1092 """ |
08cd0e9b9369
do not show gui editor for non-wiki format pages
Thomas Waldmann <tw@waldmann-edv.de>
parents:
237
diff
changeset
|
1093 return page.pi_format == 'wiki' |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1094 |
128
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1095 def editorLink(self, page): |
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1096 """ Return a link to the editor |
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1097 |
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1098 If the user can't edit, return a disabled edit link. |
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1099 |
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1100 If the user want to show both editors, it will display "Edit |
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1101 (Text)", otherwise as "Edit". |
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1102 """ |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1103 if not (page.isWritable() and |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1104 self.request.user.may.write(page.page_name)): |
128
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1105 return self.disabledEdit() |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1106 |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1107 _ = self.request.getText |
1015
e527eea93da5
make more use of page.link_to in theme code
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1010
diff
changeset
|
1108 querystr = {'action': 'edit'} |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1109 |
286
08cd0e9b9369
do not show gui editor for non-wiki format pages
Thomas Waldmann <tw@waldmann-edv.de>
parents:
237
diff
changeset
|
1110 guiworks = self.guiworks(page) |
08cd0e9b9369
do not show gui editor for non-wiki format pages
Thomas Waldmann <tw@waldmann-edv.de>
parents:
237
diff
changeset
|
1111 if self.showBothEditLinks() and guiworks: |
128
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1112 text = _('Edit (Text)', formatted=False) |
1015
e527eea93da5
make more use of page.link_to in theme code
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1010
diff
changeset
|
1113 querystr['editor'] = 'text' |
869
0152984f76ee
use rel nofollow for action links
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
826
diff
changeset
|
1114 attrs = {'name': 'texteditlink', 'rel': 'nofollow', } |
128
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1115 else: |
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1116 text = _('Edit', formatted=False) |
286
08cd0e9b9369
do not show gui editor for non-wiki format pages
Thomas Waldmann <tw@waldmann-edv.de>
parents:
237
diff
changeset
|
1117 if guiworks: |
08cd0e9b9369
do not show gui editor for non-wiki format pages
Thomas Waldmann <tw@waldmann-edv.de>
parents:
237
diff
changeset
|
1118 # 'textonly' will be upgraded dynamically to 'guipossible' by JS |
1015
e527eea93da5
make more use of page.link_to in theme code
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1010
diff
changeset
|
1119 querystr['editor'] = 'textonly' |
869
0152984f76ee
use rel nofollow for action links
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
826
diff
changeset
|
1120 attrs = {'name': 'editlink', 'rel': 'nofollow', } |
286
08cd0e9b9369
do not show gui editor for non-wiki format pages
Thomas Waldmann <tw@waldmann-edv.de>
parents:
237
diff
changeset
|
1121 else: |
1015
e527eea93da5
make more use of page.link_to in theme code
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1010
diff
changeset
|
1122 querystr['editor'] = 'text' |
869
0152984f76ee
use rel nofollow for action links
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
826
diff
changeset
|
1123 attrs = {'name': 'texteditlink', 'rel': 'nofollow', } |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1124 |
1015
e527eea93da5
make more use of page.link_to in theme code
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1010
diff
changeset
|
1125 return page.link_to(self.request, text=text, querystr=querystr, **attrs) |
128
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1126 |
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1127 def showBothEditLinks(self): |
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1128 """ Return True if both edit links should be displayed """ |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1129 editor = self.request.user.editor_ui |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1130 if editor == '<default>': |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1131 editor = self.request.cfg.editor_ui |
128
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1132 return editor == 'freechoice' |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1133 |
128
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1134 def guiEditorScript(self, d): |
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1135 """ Return a script that set the gui editor link variables |
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1136 |
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1137 The link will be created only when javascript is enabled and |
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1138 the browser is compatible with the editor. |
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1139 """ |
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1140 page = d['page'] |
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1141 if not (page.isWritable() and |
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1142 self.request.user.may.write(page.page_name) and |
286
08cd0e9b9369
do not show gui editor for non-wiki format pages
Thomas Waldmann <tw@waldmann-edv.de>
parents:
237
diff
changeset
|
1143 self.showBothEditLinks() and |
08cd0e9b9369
do not show gui editor for non-wiki format pages
Thomas Waldmann <tw@waldmann-edv.de>
parents:
237
diff
changeset
|
1144 self.guiworks(page)): |
128
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1145 return '' |
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1146 |
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1147 _ = self.request.getText |
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1148 return """\ |
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1149 <script type="text/javascript"> |
1425
b1c380a4cdb0
move some js to common.js
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1419
diff
changeset
|
1150 <!-- // GUI edit link and i18n |
1341
f4558797325a
new page.link_to_raw function, use more page.link_to(_raw) instead of lowlevel wikiutil.link_tag, use more query dicts instead of strs
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1339
diff
changeset
|
1151 var gui_editor_link_href = "%(url)s"; |
128
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1152 var gui_editor_link_text = "%(text)s"; |
1425
b1c380a4cdb0
move some js to common.js
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1419
diff
changeset
|
1153 //--> |
128
2fba84615be7
create gui editor links by javascript and dom, tested with Safari, Firefox and IE
Nir Soffer <nirs@freeshell.org>
parents:
124
diff
changeset
|
1154 </script> |
1735
5e870f4e5d2e
theme/__init__.py: bug fixed MoinMoinBugs/1.6GuiEditorLinkBroken patch from JohannesBerg
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
1730
diff
changeset
|
1155 """ % {'url': page.url(self.request, querystr={'action': 'edit', 'editor': 'gui', }, escape=0, relative=False), |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1156 'text': _('Edit (GUI)', formatted=False), |
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1157 } |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1158 |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1159 def disabledEdit(self): |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1160 """ Return a disabled edit link """ |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1161 _ = self.request.getText |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1162 return ('<span class="disabled">%s</span>' |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1163 % _('Immutable Page', formatted=False)) |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1164 |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1165 def infoLink(self, page): |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1166 """ Return link to page information """ |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1167 _ = self.request.getText |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1168 return page.link_to(self.request, |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1169 text=_('Info', formatted=False), |
1015
e527eea93da5
make more use of page.link_to in theme code
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1010
diff
changeset
|
1170 querystr={'action': 'info'}, id='info', rel='nofollow') |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1171 |
97
539cfd9a40b2
theme: moving related edit bar methods toghether
Nir Soffer <nirs@freeshell.org>
parents:
92
diff
changeset
|
1172 def subscribeLink(self, page): |
539cfd9a40b2
theme: moving related edit bar methods toghether
Nir Soffer <nirs@freeshell.org>
parents:
92
diff
changeset
|
1173 """ Return subscribe/unsubscribe link to valid users |
539cfd9a40b2
theme: moving related edit bar methods toghether
Nir Soffer <nirs@freeshell.org>
parents:
92
diff
changeset
|
1174 |
539cfd9a40b2
theme: moving related edit bar methods toghether
Nir Soffer <nirs@freeshell.org>
parents:
92
diff
changeset
|
1175 @rtype: unicode |
539cfd9a40b2
theme: moving related edit bar methods toghether
Nir Soffer <nirs@freeshell.org>
parents:
92
diff
changeset
|
1176 @return: subscribe or unsubscribe link |
539cfd9a40b2
theme: moving related edit bar methods toghether
Nir Soffer <nirs@freeshell.org>
parents:
92
diff
changeset
|
1177 """ |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1178 if not (self.cfg.mail_enabled and self.request.user.valid): |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1179 return '' |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1180 |
97
539cfd9a40b2
theme: moving related edit bar methods toghether
Nir Soffer <nirs@freeshell.org>
parents:
92
diff
changeset
|
1181 _ = self.request.getText |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1182 if self.request.user.isSubscribedTo([page.page_name]): |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1183 text = _("Unsubscribe", formatted=False) |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1184 else: |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1185 text = _("Subscribe", formatted=False) |
1015
e527eea93da5
make more use of page.link_to in theme code
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1010
diff
changeset
|
1186 return page.link_to(self.request, text=text, querystr={'action': 'subscribe'}, id='subscribe', rel='nofollow') |
97
539cfd9a40b2
theme: moving related edit bar methods toghether
Nir Soffer <nirs@freeshell.org>
parents:
92
diff
changeset
|
1187 |
539cfd9a40b2
theme: moving related edit bar methods toghether
Nir Soffer <nirs@freeshell.org>
parents:
92
diff
changeset
|
1188 def quicklinkLink(self, page): |
539cfd9a40b2
theme: moving related edit bar methods toghether
Nir Soffer <nirs@freeshell.org>
parents:
92
diff
changeset
|
1189 """ Return add/remove quicklink link |
539cfd9a40b2
theme: moving related edit bar methods toghether
Nir Soffer <nirs@freeshell.org>
parents:
92
diff
changeset
|
1190 |
539cfd9a40b2
theme: moving related edit bar methods toghether
Nir Soffer <nirs@freeshell.org>
parents:
92
diff
changeset
|
1191 @rtype: unicode |
539cfd9a40b2
theme: moving related edit bar methods toghether
Nir Soffer <nirs@freeshell.org>
parents:
92
diff
changeset
|
1192 @return: link to add or remove a quicklink |
539cfd9a40b2
theme: moving related edit bar methods toghether
Nir Soffer <nirs@freeshell.org>
parents:
92
diff
changeset
|
1193 """ |
539cfd9a40b2
theme: moving related edit bar methods toghether
Nir Soffer <nirs@freeshell.org>
parents:
92
diff
changeset
|
1194 if not self.request.user.valid: |
539cfd9a40b2
theme: moving related edit bar methods toghether
Nir Soffer <nirs@freeshell.org>
parents:
92
diff
changeset
|
1195 return '' |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1196 |
97
539cfd9a40b2
theme: moving related edit bar methods toghether
Nir Soffer <nirs@freeshell.org>
parents:
92
diff
changeset
|
1197 _ = self.request.getText |
539cfd9a40b2
theme: moving related edit bar methods toghether
Nir Soffer <nirs@freeshell.org>
parents:
92
diff
changeset
|
1198 if self.request.user.isQuickLinkedTo([page.page_name]): |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1199 text = _("Remove Link", formatted=False) |
97
539cfd9a40b2
theme: moving related edit bar methods toghether
Nir Soffer <nirs@freeshell.org>
parents:
92
diff
changeset
|
1200 else: |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1201 text = _("Add Link", formatted=False) |
1015
e527eea93da5
make more use of page.link_to in theme code
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1010
diff
changeset
|
1202 return page.link_to(self.request, text=text, querystr={'action': 'quicklink'}, id='quicklink', rel='nofollow') |
97
539cfd9a40b2
theme: moving related edit bar methods toghether
Nir Soffer <nirs@freeshell.org>
parents:
92
diff
changeset
|
1203 |
92
92a508340932
move "Attachments" to the edit bar, its too important to hide in the menu
Nir Soffer <nirs@freeshell.org>
parents:
91
diff
changeset
|
1204 def attachmentsLink(self, page): |
92a508340932
move "Attachments" to the edit bar, its too important to hide in the menu
Nir Soffer <nirs@freeshell.org>
parents:
91
diff
changeset
|
1205 """ Return link to page attachments """ |
92a508340932
move "Attachments" to the edit bar, its too important to hide in the menu
Nir Soffer <nirs@freeshell.org>
parents:
91
diff
changeset
|
1206 _ = self.request.getText |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1207 return page.link_to(self.request, |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1208 text=_('Attachments', formatted=False), |
1015
e527eea93da5
make more use of page.link_to in theme code
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1010
diff
changeset
|
1209 querystr={'action': 'AttachFile'}, id='attachments', rel='nofollow') |
92
92a508340932
move "Attachments" to the edit bar, its too important to hide in the menu
Nir Soffer <nirs@freeshell.org>
parents:
91
diff
changeset
|
1210 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1211 def startPage(self): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1212 """ Start page div with page language and direction |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1213 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1214 @rtype: unicode |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1215 @return: page div with language and direction attribtues |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1216 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1217 return u'<div id="page"%s>\n' % self.content_lang_attr() |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1218 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1219 def endPage(self): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1220 """ End page div |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1221 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1222 Add an empty page bottom div to prevent floating elements to |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1223 float out of the page bottom over the footer. |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1224 """ |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1225 return '<div id="pagebottom"></div>\n</div>\n' |
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1226 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1227 # Public functions ##################################################### |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1228 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1229 def header(self, d, **kw): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1230 """ Assemble page header |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1231 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1232 Default behavior is to start a page div. Sub class and add |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1233 footer items. |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1234 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1235 @param d: parameter dictionary |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1236 @rtype: string |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1237 @return: page header html |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1238 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1239 return self.startPage() |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1240 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1241 editorheader = header |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1242 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1243 def footer(self, d, **keywords): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1244 """ Assemble page footer |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1245 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1246 Default behavior is to end page div. Sub class and add |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1247 footer items. |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1248 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1249 @param d: parameter dictionary |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1250 @keyword ...:... |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1251 @rtype: string |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1252 @return: page footer html |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1253 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1254 return self.endPage() |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1255 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1256 # RecentChanges ###################################################### |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1257 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1258 def recentchanges_entry(self, d): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1259 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1260 Assemble a single recentchanges entry (table row) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1261 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1262 @param d: parameter dictionary |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1263 @rtype: string |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1264 @return: recentchanges entry html |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1265 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1266 _ = self.request.getText |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1267 html = [] |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1268 html.append('<tr>\n') |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1269 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1270 html.append('<td class="rcicon1">%(icon_html)s</td>\n' % d) |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1271 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1272 html.append('<td class="rcpagelink">%(pagelink_html)s</td>\n' % d) |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1273 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1274 html.append('<td class="rctime">') |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1275 if d['time_html']: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1276 html.append("%(time_html)s" % d) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1277 html.append('</td>\n') |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1278 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1279 html.append('<td class="rcicon2">%(info_html)s</td>\n' % d) |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1280 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1281 html.append('<td class="rceditor">') |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1282 if d['editors']: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1283 html.append('<br>'.join(d['editors'])) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1284 html.append('</td>\n') |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1285 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1286 html.append('<td class="rccomment">') |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1287 if d['comments']: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1288 if d['changecount'] > 1: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1289 notfirst = 0 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1290 for comment in d['comments']: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1291 html.append('%s<tt>#%02d</tt> %s' % ( |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1292 notfirst and '<br>' or '', comment[0], comment[1])) |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1293 notfirst = 1 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1294 else: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1295 comment = d['comments'][0] |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1296 html.append('%s' % comment[1]) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1297 html.append('</td>\n') |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1298 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1299 html.append('</tr>\n') |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1300 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1301 return ''.join(html) |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1302 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1303 def recentchanges_daybreak(self, d): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1304 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1305 Assemble a rc daybreak indication (table row) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1306 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1307 @param d: parameter dictionary |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1308 @rtype: string |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1309 @return: recentchanges daybreak html |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1310 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1311 if d['bookmark_link_html']: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1312 set_bm = ' %(bookmark_link_html)s' % d |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1313 else: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1314 set_bm = '' |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1315 return ('<tr class="rcdaybreak"><td colspan="%d">' |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1316 '<strong>%s</strong>' |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1317 '%s' |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1318 '</td></tr>\n') % (6, d['date'], set_bm) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1319 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1320 def recentchanges_header(self, d): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1321 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1322 Assemble the recentchanges header (intro + open table) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1323 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1324 @param d: parameter dictionary |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1325 @rtype: string |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1326 @return: recentchanges header html |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1327 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1328 _ = self.request.getText |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1329 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1330 # Should use user interface language and direction |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1331 html = '<div class="recentchanges"%s>\n' % self.ui_lang_attr() |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1332 html += '<div>\n' |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1333 if self.shouldUseRSS(): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1334 link = [ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1335 u'<div class="rcrss">', |
1382
c3c8ff25e979
make more use of formatter / link_to for link rendering
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1354
diff
changeset
|
1336 self.request.formatter.url(1, self.rsshref()), |
c3c8ff25e979
make more use of formatter / link_to for link rendering
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1354
diff
changeset
|
1337 self.request.formatter.rawHTML(self.make_icon("rss")), |
c3c8ff25e979
make more use of formatter / link_to for link rendering
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1354
diff
changeset
|
1338 self.request.formatter.url(0), |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1339 u'</div>', |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1340 ] |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1341 html += ''.join(link) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1342 html += '<p>' |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1343 # Add day selector |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1344 if d['rc_days']: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1345 days = [] |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1346 for day in d['rc_days']: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1347 if day == d['rc_max_days']: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1348 days.append('<strong>%d</strong>' % day) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1349 else: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1350 days.append( |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@ |