Mercurial > moin > 1.9
annotate MoinMoin/theme/__init__.py @ 6109:51211e70a3a8
we can always support rss, we have xml from python 2.7
author | Thomas Waldmann <tw AT waldmann-edv DOT de> |
---|---|
date | Tue, 06 Sep 2016 02:46:01 +0200 |
parents | 50e82729b826 |
children | 4716268c34e3 |
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 |
3540
7bf83cd8da79
offer the RSS feed not only when we detect PyXML, but also for Python >= 2.5.1
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3527
diff
changeset
|
5 @copyright: 2003-2008 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 |
5189
3ff40732d217
add the sidebar() method from Mandarin and Gugiel themes to ThemeBase
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
4736
diff
changeset
|
9 import StringIO |
3ff40732d217
add the sidebar() method from Mandarin and Gugiel themes to ThemeBase
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
4736
diff
changeset
|
10 |
5409
c3822eacfe4a
theme/__init__.py: Exception "Calling add_msg() after send_title(): no message can be added." is replaced with warning and call stack information in log.
Eugene Syromyatnikov <evgsyr@gmail.com>
parents:
5251
diff
changeset
|
11 from MoinMoin import log |
c3822eacfe4a
theme/__init__.py: Exception "Calling add_msg() after send_title(): no message can be added." is replaced with warning and call stack information in log.
Eugene Syromyatnikov <evgsyr@gmail.com>
parents:
5251
diff
changeset
|
12 logging = log.getLogger(__name__) |
c3822eacfe4a
theme/__init__.py: Exception "Calling add_msg() after send_title(): no message can be added." is replaced with warning and call stack information in log.
Eugene Syromyatnikov <evgsyr@gmail.com>
parents:
5251
diff
changeset
|
13 |
1787
f4a941fe32f8
added SisterSites/SisterPages support
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1784
diff
changeset
|
14 from MoinMoin import i18n, wikiutil, config, version, caching |
4173
051391d5662d
Remove deprecated calls to request.getAvailableActions
Florian Krupicka <florian.krupicka@googlemail.com>
parents:
4170
diff
changeset
|
15 from MoinMoin.action import get_available_actions |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
16 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
|
17 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
|
18 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
19 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
|
20 |
3540
7bf83cd8da79
offer the RSS feed not only when we detect PyXML, but also for Python >= 2.5.1
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3527
diff
changeset
|
21 import sys, xml |
6109
51211e70a3a8
we can always support rss, we have xml from python 2.7
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5994
diff
changeset
|
22 |
51211e70a3a8
we can always support rss, we have xml from python 2.7
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5994
diff
changeset
|
23 rss_supported = True |
1764
885c97f7ba37
RSS feed: do not announce on any page, but only on RC and _(RC) (ported from 1.5-801)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1752
diff
changeset
|
24 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
25 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
26 class ThemeBase: |
2286
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
27 """ Base class for themes |
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
28 |
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
29 This class supply all the standard template that sub classes can |
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
30 use without rewriting the same code. If you want to change certain |
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
31 elements, override them. |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
32 """ |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
33 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
34 name = 'base' |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
35 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
36 # 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
|
37 _ = lambda x: x |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
38 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
39 # 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
|
40 icons = { |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
41 # 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
|
42 # ------------------------------------------------------------------ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
43 # navibar |
2286
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
44 'help': ("%(page_help_contents)s", "moin-help.png", 12, 11), |
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
45 'find': ("%(page_find_page)s", "moin-search.png", 12, 12), |
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
46 'diff': (_("Diffs"), "moin-diff.png", 15, 11), |
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
47 'info': (_("Info"), "moin-info.png", 12, 11), |
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
48 'edit': (_("Edit"), "moin-edit.png", 12, 12), |
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
49 'unsubscribe': (_("Unsubscribe"), "moin-unsubscribe.png", 14, 10), |
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
50 'subscribe': (_("Subscribe"), "moin-subscribe.png", 14, 10), |
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
51 'raw': (_("Raw"), "moin-raw.png", 12, 13), |
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
52 'xml': (_("XML"), "moin-xml.png", 20, 13), |
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
53 'print': (_("Print"), "moin-print.png", 16, 14), |
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
54 'view': (_("View"), "moin-show.png", 12, 13), |
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
55 'home': (_("Home"), "moin-home.png", 13, 12), |
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
56 'up': (_("Up"), "moin-parent.png", 15, 13), |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
57 # FileAttach |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
58 'attach': ("%(attach_count)s", "moin-attach.png", 7, 15), |
3054
d2e9afd64276
get formatters in sync with 1.6 cs 2558:3e3a549b49f0, add attachimg icon (needed by html formatter)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3048
diff
changeset
|
59 'attachimg': ("", "attach.png", 32, 32), |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
60 # RecentChanges |
2197
9b404a43e59c
use standard RSS icon
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2009
diff
changeset
|
61 'rss': (_("[RSS]"), "moin-rss.png", 24, 24), |
2286
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
62 'deleted': (_("[DELETED]"), "moin-deleted.png", 60, 12), |
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
63 'updated': (_("[UPDATED]"), "moin-updated.png", 60, 12), |
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
64 'renamed': (_("[RENAMED]"), "moin-renamed.png", 60, 12), |
1746
1aa9dfd0ad34
added conflict and rename icon
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1735
diff
changeset
|
65 '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
|
66 '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
|
67 '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
|
68 # General |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
69 '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
|
70 '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
|
71 '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
|
72 '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
|
73 '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
|
74 '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
|
75 '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
|
76 '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
|
77 # search forms |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
78 '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
|
79 '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
|
80 |
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
|
81 # 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
|
82 # 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
|
83 #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
|
84 '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
|
85 ':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
|
86 '<:(': ("<:(", '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
|
87 ':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
|
88 ':(': (":(", '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
|
89 ':)': (":)", '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
|
90 '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
|
91 ':))': (":))", '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
|
92 ';)': (";)", '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
|
93 '/!\\': ("/!\\", '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
|
94 '<!>': ("<!>", '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
|
95 '(!)': ("(!)", '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
|
96 |
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 # 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
|
98 ':-?': (":-?", '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
|
99 ':\\': (":\\", '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
|
100 '>:>': (">:>", '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
|
101 '|)': ("|)", '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
|
102 |
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
|
103 # 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
|
104 ':-(': (":-(", '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
|
105 ':-)': (":-)", '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
|
106 '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
|
107 ':-))': (":-))", '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
|
108 ';-)': (";-)", '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
|
109 '|-)': ("|-)", '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
|
110 |
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
|
111 # 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
|
112 '(./)': ("(./)", '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
|
113 '{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
|
114 '{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
|
115 '{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
|
116 '{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
|
117 '{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
|
118 '{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
|
119 |
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
|
120 # 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
|
121 # 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
|
122 '{*}': ("{*}", '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
|
123 '{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
|
124 } |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
125 del _ |
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 # 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
|
128 # 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
|
129 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
130 # 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
|
131 stylesheets = ( |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
132 # media basename |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
133 ('all', 'common'), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
134 ('screen', 'screen'), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
135 ('print', 'print'), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
136 ('projection', 'projection'), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
137 ) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
138 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
139 # 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
|
140 stylesheets_print = ( |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
141 # media basename |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
142 ('all', 'common'), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
143 ('all', 'print'), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
144 ) |
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 # 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
|
147 stylesheets_projection = ( |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
148 # media basename |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
149 ('all', 'common'), |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
150 ('all', 'projection'), |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
151 ) |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
152 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
153 stylesheetsCharset = 'utf-8' |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
154 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
155 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
|
156 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
157 Initialize the theme object. |
2286
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
158 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
159 @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
|
160 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
161 self.request = request |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
162 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
|
163 self._cache = {} # Used to cache elements that may be used several times |
2964
49b9e807a51d
Added add_msg to the theme interface (done by Frederico Lorenzi). Should not be backported to 1.6
Alexander Schremmer <alex AT alexanderweb DOT de>
parents:
2862
diff
changeset
|
164 self._status = [] |
49b9e807a51d
Added add_msg to the theme interface (done by Frederico Lorenzi). Should not be backported to 1.6
Alexander Schremmer <alex AT alexanderweb DOT de>
parents:
2862
diff
changeset
|
165 self._send_title_called = False |
0
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 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
|
168 """ 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
|
169 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
170 @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
|
171 @rtype: string |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
172 @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
|
173 """ |
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
|
174 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
|
175 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
176 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
|
177 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
178 generate custom HTML code in `html` |
2286
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
179 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
180 @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
|
181 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
|
182 @rtype: string |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
183 @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
|
184 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
185 if html: |
1988
dbf2b7426385
fixed some pylint warnings
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1959
diff
changeset
|
186 if callable(html): |
dbf2b7426385
fixed some pylint warnings
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1959
diff
changeset
|
187 html = html(self.request) |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
188 return html |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
189 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
190 def logo(self): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
191 """ 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
|
192 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
193 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
|
194 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
|
195 a div with id="logo". |
2286
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
196 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
197 @rtype: unicode |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
198 @return: logo html |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
199 """ |
70
36a2541550aa
src cosmetic changes, changed (c) to 2005
Thomas Waldmann <tw@waldmann-edv.de>
parents:
64
diff
changeset
|
200 html = u'' |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
201 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
|
202 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
|
203 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
|
204 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
|
205 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
|
206 |
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 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
|
208 """ Assemble the interwiki name display, linking to page_front_page |
2286
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
209 |
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 @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
|
211 @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
|
212 @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
|
213 """ |
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
|
214 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
|
215 page = wikiutil.getFrontPage(self.request) |
4480
af8cea9bfcda
made cfg.interwikiname a unicode object (str only worked for ascii)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4091
diff
changeset
|
216 text = self.request.cfg.interwikiname or u'Self' |
1015
e527eea93da5
make more use of page.link_to in theme code
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1010
diff
changeset
|
217 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
|
218 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
|
219 else: |
e527eea93da5
make more use of page.link_to in theme code
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1010
diff
changeset
|
220 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
|
221 return html |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
222 |
5993
006b3a2ef9d9
move backlink computing code into method backlink(), reduce code duplication
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5982
diff
changeset
|
223 def backlink(self, page, page_name, link_text): |
006b3a2ef9d9
move backlink computing code into method backlink(), reduce code duplication
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5982
diff
changeset
|
224 """ Create html for the "backlink" part of the title. |
006b3a2ef9d9
move backlink computing code into method backlink(), reduce code duplication
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5982
diff
changeset
|
225 |
5994
50e82729b826
implement backlink_method to solve the load issues caused by crawlers triggering too many linkto-fullsearches (see docs/CHANGES for details)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5993
diff
changeset
|
226 What it will be is determined by calling cfg.backlink_method, |
50e82729b826
implement backlink_method to solve the load issues caused by crawlers triggering too many linkto-fullsearches (see docs/CHANGES for details)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5993
diff
changeset
|
227 which can return 'backlink' (render a linkto-fullsearch link), |
50e82729b826
implement backlink_method to solve the load issues caused by crawlers triggering too many linkto-fullsearches (see docs/CHANGES for details)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5993
diff
changeset
|
228 'pagelink' (render a link to same page) or 'text' (render just text). |
5993
006b3a2ef9d9
move backlink computing code into method backlink(), reduce code duplication
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5982
diff
changeset
|
229 |
006b3a2ef9d9
move backlink computing code into method backlink(), reduce code duplication
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5982
diff
changeset
|
230 @param page: page object |
006b3a2ef9d9
move backlink computing code into method backlink(), reduce code duplication
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5982
diff
changeset
|
231 @param page_name: the (full) page name |
006b3a2ef9d9
move backlink computing code into method backlink(), reduce code duplication
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5982
diff
changeset
|
232 @param link_text: the text shown for the link |
006b3a2ef9d9
move backlink computing code into method backlink(), reduce code duplication
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5982
diff
changeset
|
233 @return: html fragment |
006b3a2ef9d9
move backlink computing code into method backlink(), reduce code duplication
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5982
diff
changeset
|
234 """ |
006b3a2ef9d9
move backlink computing code into method backlink(), reduce code duplication
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5982
diff
changeset
|
235 request = self.request |
006b3a2ef9d9
move backlink computing code into method backlink(), reduce code duplication
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5982
diff
changeset
|
236 _ = request.getText |
5994
50e82729b826
implement backlink_method to solve the load issues caused by crawlers triggering too many linkto-fullsearches (see docs/CHANGES for details)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5993
diff
changeset
|
237 method = request.cfg.backlink_method(request) |
50e82729b826
implement backlink_method to solve the load issues caused by crawlers triggering too many linkto-fullsearches (see docs/CHANGES for details)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5993
diff
changeset
|
238 if method == 'backlink': |
50e82729b826
implement backlink_method to solve the load issues caused by crawlers triggering too many linkto-fullsearches (see docs/CHANGES for details)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5993
diff
changeset
|
239 link_title = _('Click to do a full-text search for this title') |
50e82729b826
implement backlink_method to solve the load issues caused by crawlers triggering too many linkto-fullsearches (see docs/CHANGES for details)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5993
diff
changeset
|
240 link_query = dict(action='fullsearch', value='linkto:"%s"' % page_name, context='180') |
50e82729b826
implement backlink_method to solve the load issues caused by crawlers triggering too many linkto-fullsearches (see docs/CHANGES for details)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5993
diff
changeset
|
241 link = page.link_to(request, link_text, querystr=link_query, title=link_title, |
50e82729b826
implement backlink_method to solve the load issues caused by crawlers triggering too many linkto-fullsearches (see docs/CHANGES for details)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5993
diff
changeset
|
242 css_class='backlink', rel='nofollow') |
50e82729b826
implement backlink_method to solve the load issues caused by crawlers triggering too many linkto-fullsearches (see docs/CHANGES for details)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5993
diff
changeset
|
243 elif method == 'pagelink': |
50e82729b826
implement backlink_method to solve the load issues caused by crawlers triggering too many linkto-fullsearches (see docs/CHANGES for details)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5993
diff
changeset
|
244 link = page.link_to(request, link_text) |
50e82729b826
implement backlink_method to solve the load issues caused by crawlers triggering too many linkto-fullsearches (see docs/CHANGES for details)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5993
diff
changeset
|
245 else: # == 'text' |
50e82729b826
implement backlink_method to solve the load issues caused by crawlers triggering too many linkto-fullsearches (see docs/CHANGES for details)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5993
diff
changeset
|
246 link = wikiutil.escape(link_text) |
5993
006b3a2ef9d9
move backlink computing code into method backlink(), reduce code duplication
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5982
diff
changeset
|
247 return link |
006b3a2ef9d9
move backlink computing code into method backlink(), reduce code duplication
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5982
diff
changeset
|
248 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
249 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
|
250 """ Assemble the title (now using breadcrumbs) |
2286
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
251 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
252 @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
|
253 @rtype: string |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
254 @return: title html |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
255 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
256 _ = self.request.getText |
153
c4c7dc546c65
ThemeChange, excluding optional content heading rendering change
Thomas Waldmann <tw@waldmann-edv.de>
parents:
142
diff
changeset
|
257 content = [] |
2991
82ac2b1b1a05
fix pagename navigation for wikiname_add_spaces == True (port from 1.6)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2987
diff
changeset
|
258 if d['title_text'] == d['page'].split_title(): # 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
|
259 curpage = '' |
182
10e033440008
fixed theme title for 'Add spaces to displayed wiki names' setting
Thomas Waldmann <tw@waldmann-edv.de>
parents:
174
diff
changeset
|
260 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
|
261 for s in segments[:-1]: |
c4c7dc546c65
ThemeChange, excluding optional content heading rendering change
Thomas Waldmann <tw@waldmann-edv.de>
parents:
142
diff
changeset
|
262 curpage += s |
c4c7dc546c65
ThemeChange, excluding optional content heading rendering change
Thomas Waldmann <tw@waldmann-edv.de>
parents:
142
diff
changeset
|
263 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
|
264 curpage += '/' |
5993
006b3a2ef9d9
move backlink computing code into method backlink(), reduce code duplication
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5982
diff
changeset
|
265 link = self.backlink(d['page'], d['page_name'], segments[-1]) |
1354
26949e36ca0b
move code for title_link to theme, better escape warning
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1347
diff
changeset
|
266 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
|
267 else: |
153
c4c7dc546c65
ThemeChange, excluding optional content heading rendering change
Thomas Waldmann <tw@waldmann-edv.de>
parents:
142
diff
changeset
|
268 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
|
269 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
270 html = ''' |
153
c4c7dc546c65
ThemeChange, excluding optional content heading rendering change
Thomas Waldmann <tw@waldmann-edv.de>
parents:
142
diff
changeset
|
271 <ul id="pagelocation"> |
c4c7dc546c65
ThemeChange, excluding optional content heading rendering change
Thomas Waldmann <tw@waldmann-edv.de>
parents:
142
diff
changeset
|
272 %s |
c4c7dc546c65
ThemeChange, excluding optional content heading rendering change
Thomas Waldmann <tw@waldmann-edv.de>
parents:
142
diff
changeset
|
273 </ul> |
c4c7dc546c65
ThemeChange, excluding optional content heading rendering change
Thomas Waldmann <tw@waldmann-edv.de>
parents:
142
diff
changeset
|
274 ''' % "".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
|
275 return html |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
276 |
5192
6af8509c5917
move title_with_separators() from Modernized theme to ThemeBase
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
5189
diff
changeset
|
277 def title_with_separators(self, d): |
6af8509c5917
move title_with_separators() from Modernized theme to ThemeBase
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
5189
diff
changeset
|
278 """ Assemble the title using slashes, not <ul> |
6af8509c5917
move title_with_separators() from Modernized theme to ThemeBase
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
5189
diff
changeset
|
279 |
6af8509c5917
move title_with_separators() from Modernized theme to ThemeBase
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
5189
diff
changeset
|
280 @param d: parameter dictionary |
6af8509c5917
move title_with_separators() from Modernized theme to ThemeBase
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
5189
diff
changeset
|
281 @rtype: string |
6af8509c5917
move title_with_separators() from Modernized theme to ThemeBase
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
5189
diff
changeset
|
282 @return: title html |
6af8509c5917
move title_with_separators() from Modernized theme to ThemeBase
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
5189
diff
changeset
|
283 """ |
6af8509c5917
move title_with_separators() from Modernized theme to ThemeBase
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
5189
diff
changeset
|
284 _ = self.request.getText |
5197
df9c332ed6a0
Modernized theme: add a span with "pagepath" class to title_with_separators
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
5192
diff
changeset
|
285 if d['title_text'] == d['page'].split_title(): |
df9c332ed6a0
Modernized theme: add a span with "pagepath" class to title_with_separators
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
5192
diff
changeset
|
286 # just showing a page, no action |
df9c332ed6a0
Modernized theme: add a span with "pagepath" class to title_with_separators
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
5192
diff
changeset
|
287 segments = d['page_name'].split('/') |
5993
006b3a2ef9d9
move backlink computing code into method backlink(), reduce code duplication
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5982
diff
changeset
|
288 link = self.backlink(d['page'], d['page_name'], segments[-1]) |
5197
df9c332ed6a0
Modernized theme: add a span with "pagepath" class to title_with_separators
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
5192
diff
changeset
|
289 if len(segments) <= 1: |
df9c332ed6a0
Modernized theme: add a span with "pagepath" class to title_with_separators
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
5192
diff
changeset
|
290 html = link |
df9c332ed6a0
Modernized theme: add a span with "pagepath" class to title_with_separators
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
5192
diff
changeset
|
291 else: |
df9c332ed6a0
Modernized theme: add a span with "pagepath" class to title_with_separators
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
5192
diff
changeset
|
292 content = [] |
df9c332ed6a0
Modernized theme: add a span with "pagepath" class to title_with_separators
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
5192
diff
changeset
|
293 curpage = '' |
df9c332ed6a0
Modernized theme: add a span with "pagepath" class to title_with_separators
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
5192
diff
changeset
|
294 for s in segments[:-1]: |
df9c332ed6a0
Modernized theme: add a span with "pagepath" class to title_with_separators
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
5192
diff
changeset
|
295 curpage += s |
df9c332ed6a0
Modernized theme: add a span with "pagepath" class to title_with_separators
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
5192
diff
changeset
|
296 content.append(Page(self.request, |
df9c332ed6a0
Modernized theme: add a span with "pagepath" class to title_with_separators
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
5192
diff
changeset
|
297 curpage).link_to(self.request, s)) |
df9c332ed6a0
Modernized theme: add a span with "pagepath" class to title_with_separators
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
5192
diff
changeset
|
298 curpage += '/' |
df9c332ed6a0
Modernized theme: add a span with "pagepath" class to title_with_separators
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
5192
diff
changeset
|
299 path_html = u'<span class="sep">/</span>'.join(content) |
df9c332ed6a0
Modernized theme: add a span with "pagepath" class to title_with_separators
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
5192
diff
changeset
|
300 html = u'<span class="pagepath">%s</span><span class="sep">/</span>%s' % (path_html, link) |
5192
6af8509c5917
move title_with_separators() from Modernized theme to ThemeBase
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
5189
diff
changeset
|
301 else: |
5197
df9c332ed6a0
Modernized theme: add a span with "pagepath" class to title_with_separators
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
5192
diff
changeset
|
302 html = wikiutil.escape(d['title_text']) |
df9c332ed6a0
Modernized theme: add a span with "pagepath" class to title_with_separators
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
5192
diff
changeset
|
303 return u'<span id="pagelocation">%s</span>' % html |
5192
6af8509c5917
move title_with_separators() from Modernized theme to ThemeBase
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
5189
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 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
|
306 """ Assemble the username / userprefs link |
2286
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
307 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
308 @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
|
309 @rtype: unicode |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
310 @return: username html |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
311 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
312 request = self.request |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
313 _ = request.getText |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
314 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
315 userlinks = [] |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
316 # 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
|
317 # 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
|
318 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
|
319 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
|
320 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
|
321 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
|
322 if not aliasname: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
323 aliasname = name |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
324 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
|
325 # 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
|
326 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
|
327 request.formatter.text(name) + |
569
6c572f52899f
fixed missing </a> formatter bug
Thomas Waldmann <tw@waldmann-edv.de>
parents:
515
diff
changeset
|
328 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
|
329 userlinks.append(homelink) |
511
8ee8ced7dded
moved UserPreferences back to header, add Cancel button
Thomas Waldmann <tw@waldmann-edv.de>
parents:
493
diff
changeset
|
330 # link to userprefs action |
3527
ca50da801291
theme.__init__: removes excluded actions from theme
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3510
diff
changeset
|
331 if 'userprefs' not in self.request.cfg.actions_excluded: |
ca50da801291
theme.__init__: removes excluded actions from theme
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3510
diff
changeset
|
332 userlinks.append(d['page'].link_to(request, text=_('Settings'), |
869
0152984f76ee
use rel nofollow for action links
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
826
diff
changeset
|
333 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
|
334 |
2009
1b14cc05a54a
refactor authentication and split out session handling
Johannes Berg <johannes AT sipsolutions DOT net>
parents:
1988
diff
changeset
|
335 if request.user.valid: |
1b14cc05a54a
refactor authentication and split out session handling
Johannes Berg <johannes AT sipsolutions DOT net>
parents:
1988
diff
changeset
|
336 if request.user.auth_method in request.cfg.auth_can_logout: |
3164
c25bc6e9ad61
i18n.getText: removing wrong (old) kw arguments from _() calls
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3139
diff
changeset
|
337 userlinks.append(d['page'].link_to(request, text=_('Logout'), |
869
0152984f76ee
use rel nofollow for action links
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
826
diff
changeset
|
338 querystr={'action': 'logout', 'logout': 'logout'}, id='logout', rel='nofollow')) |
2009
1b14cc05a54a
refactor authentication and split out session handling
Johannes Berg <johannes AT sipsolutions DOT net>
parents:
1988
diff
changeset
|
339 else: |
3139
0c0fd7c894a3
allow auth methods that don't need input at all to skip input form
Johannes Berg <johannes AT sipsolutions DOT net>
parents:
3086
diff
changeset
|
340 query = {'action': 'login'} |
0c0fd7c894a3
allow auth methods that don't need input at all to skip input form
Johannes Berg <johannes AT sipsolutions DOT net>
parents:
3086
diff
changeset
|
341 # special direct-login link if the auth methods want no input |
0c0fd7c894a3
allow auth methods that don't need input at all to skip input form
Johannes Berg <johannes AT sipsolutions DOT net>
parents:
3086
diff
changeset
|
342 if request.cfg.auth_login_inputs == ['special_no_input']: |
0c0fd7c894a3
allow auth methods that don't need input at all to skip input form
Johannes Berg <johannes AT sipsolutions DOT net>
parents:
3086
diff
changeset
|
343 query['login'] = '1' |
2009
1b14cc05a54a
refactor authentication and split out session handling
Johannes Berg <johannes AT sipsolutions DOT net>
parents:
1988
diff
changeset
|
344 if request.cfg.auth_have_login: |
3164
c25bc6e9ad61
i18n.getText: removing wrong (old) kw arguments from _() calls
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3139
diff
changeset
|
345 userlinks.append(d['page'].link_to(request, text=_("Login"), |
3139
0c0fd7c894a3
allow auth methods that don't need input at all to skip input form
Johannes Berg <johannes AT sipsolutions DOT net>
parents:
3086
diff
changeset
|
346 querystr=query, id='login', rel='nofollow')) |
296
4e08178a630c
moving logout to a visible place
Thomas Waldmann <tw@waldmann-edv.de>
parents:
286
diff
changeset
|
347 |
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
|
348 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
|
349 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
|
350 return html |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
351 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
352 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
|
353 """ 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
|
354 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
355 Admin or user might want to use shorter navibar items by using |
2728
59b3d8b8971f
remove (un)quoteName, new functions split_interwiki() and resolve_interwiki(), cleanup interwiki mess, fix some link markup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2725
diff
changeset
|
356 the [[page|title]] or [[url|title]] syntax. In this case, we don't |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
357 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
|
358 the localized version of page. |
2286
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
359 |
1827
6a162bb60560
cleaned up splitNaviLink mess
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1816
diff
changeset
|
360 Supported syntax: |
6a162bb60560
cleaned up splitNaviLink mess
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1816
diff
changeset
|
361 * PageName |
6a162bb60560
cleaned up splitNaviLink mess
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1816
diff
changeset
|
362 * WikiName:PageName |
6a162bb60560
cleaned up splitNaviLink mess
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1816
diff
changeset
|
363 * wiki:WikiName:PageName |
6a162bb60560
cleaned up splitNaviLink mess
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1816
diff
changeset
|
364 * url |
2728
59b3d8b8971f
remove (un)quoteName, new functions split_interwiki() and resolve_interwiki(), cleanup interwiki mess, fix some link markup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2725
diff
changeset
|
365 * all targets as seen above with title: [[target|title]] |
1630
9a8fdd5a03d3
theme code: add comment for refactoring
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1560
diff
changeset
|
366 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
367 @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
|
368 @rtype: tuple |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
369 @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
|
370 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
371 request = self.request |
1827
6a162bb60560
cleaned up splitNaviLink mess
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1816
diff
changeset
|
372 fmt = request.formatter |
6a162bb60560
cleaned up splitNaviLink mess
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1816
diff
changeset
|
373 title = None |
1850
3d38db210672
action CopyPage added
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
1843
diff
changeset
|
374 |
2728
59b3d8b8971f
remove (un)quoteName, new functions split_interwiki() and resolve_interwiki(), cleanup interwiki mess, fix some link markup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2725
diff
changeset
|
375 # Handle [[pagename|title]] or [[url|title]] formats |
59b3d8b8971f
remove (un)quoteName, new functions split_interwiki() and resolve_interwiki(), cleanup interwiki mess, fix some link markup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2725
diff
changeset
|
376 if text.startswith('[[') and text.endswith(']]'): |
59b3d8b8971f
remove (un)quoteName, new functions split_interwiki() and resolve_interwiki(), cleanup interwiki mess, fix some link markup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2725
diff
changeset
|
377 text = text[2:-2] |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
378 try: |
2728
59b3d8b8971f
remove (un)quoteName, new functions split_interwiki() and resolve_interwiki(), cleanup interwiki mess, fix some link markup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2725
diff
changeset
|
379 pagename, title = text.split('|', 1) |
59b3d8b8971f
remove (un)quoteName, new functions split_interwiki() and resolve_interwiki(), cleanup interwiki mess, fix some link markup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2725
diff
changeset
|
380 pagename = pagename.strip() |
59b3d8b8971f
remove (un)quoteName, new functions split_interwiki() and resolve_interwiki(), cleanup interwiki mess, fix some link markup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2725
diff
changeset
|
381 title = title.strip() |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
382 localize = 0 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
383 except (ValueError, TypeError): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
384 # Just use the text as is. |
2728
59b3d8b8971f
remove (un)quoteName, new functions split_interwiki() and resolve_interwiki(), cleanup interwiki mess, fix some link markup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2725
diff
changeset
|
385 pagename = text.strip() |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
386 else: |
1827
6a162bb60560
cleaned up splitNaviLink mess
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1816
diff
changeset
|
387 pagename = text |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
388 |
3251
ecbde828b812
improved wikiutil.is_URL, use it also in theme code
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3234
diff
changeset
|
389 if wikiutil.is_URL(pagename): |
ecbde828b812
improved wikiutil.is_URL, use it also in theme code
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3234
diff
changeset
|
390 if not title: |
ecbde828b812
improved wikiutil.is_URL, use it also in theme code
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3234
diff
changeset
|
391 title = pagename |
ecbde828b812
improved wikiutil.is_URL, use it also in theme code
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3234
diff
changeset
|
392 link = fmt.url(1, pagename) + fmt.text(title) + fmt.url(0) |
ecbde828b812
improved wikiutil.is_URL, use it also in theme code
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3234
diff
changeset
|
393 return pagename, link |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
394 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
395 # 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
|
396 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
|
397 pagename = pagename[5:] |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
398 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
399 # 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
|
400 try: |
2728
59b3d8b8971f
remove (un)quoteName, new functions split_interwiki() and resolve_interwiki(), cleanup interwiki mess, fix some link markup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2725
diff
changeset
|
401 interwiki, page = wikiutil.split_interwiki(pagename) |
22
a47550d21d2d
quicklinks: avoid dupes, dont render as interwiki if wiki == self
Thomas Waldmann <tw@waldmann-edv.de>
parents:
18
diff
changeset
|
402 thiswiki = request.cfg.interwikiname |
2728
59b3d8b8971f
remove (un)quoteName, new functions split_interwiki() and resolve_interwiki(), cleanup interwiki mess, fix some link markup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2725
diff
changeset
|
403 if interwiki == thiswiki or interwiki == 'Self': |
22
a47550d21d2d
quicklinks: avoid dupes, dont render as interwiki if wiki == self
Thomas Waldmann <tw@waldmann-edv.de>
parents:
18
diff
changeset
|
404 pagename = page |
a47550d21d2d
quicklinks: avoid dupes, dont render as interwiki if wiki == self
Thomas Waldmann <tw@waldmann-edv.de>
parents:
18
diff
changeset
|
405 else: |
1827
6a162bb60560
cleaned up splitNaviLink mess
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1816
diff
changeset
|
406 if not title: |
6a162bb60560
cleaned up splitNaviLink mess
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1816
diff
changeset
|
407 title = page |
6a162bb60560
cleaned up splitNaviLink mess
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1816
diff
changeset
|
408 link = fmt.interwikilink(True, interwiki, page) + fmt.text(title) + fmt.interwikilink(False, interwiki, page) |
6a162bb60560
cleaned up splitNaviLink mess
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1816
diff
changeset
|
409 return pagename, link |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
410 except ValueError: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
411 pass |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
412 |
1827
6a162bb60560
cleaned up splitNaviLink mess
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1816
diff
changeset
|
413 # Handle regular pagename like "FrontPage" |
4146
3b36f0cfc656
(Re)moved normalizePagename from Request into wikiutil library
Florian Krupicka <florian.krupicka@googlemail.com>
parents:
3624
diff
changeset
|
414 pagename = wikiutil.normalize_pagename(pagename, request.cfg) |
1827
6a162bb60560
cleaned up splitNaviLink mess
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1816
diff
changeset
|
415 |
6a162bb60560
cleaned up splitNaviLink mess
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1816
diff
changeset
|
416 # Use localized pages for the current user |
6a162bb60560
cleaned up splitNaviLink mess
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1816
diff
changeset
|
417 if localize: |
6a162bb60560
cleaned up splitNaviLink mess
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1816
diff
changeset
|
418 page = wikiutil.getLocalizedPage(request, pagename) |
6a162bb60560
cleaned up splitNaviLink mess
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1816
diff
changeset
|
419 else: |
6a162bb60560
cleaned up splitNaviLink mess
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1816
diff
changeset
|
420 page = Page(request, pagename) |
1850
3d38db210672
action CopyPage added
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
1843
diff
changeset
|
421 |
2987
c817a9c0d0e5
navi_bar: highlight correct tab for the current page for i18ned system pages (port from 1.6)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2964
diff
changeset
|
422 pagename = page.page_name # can be different, due to i18n |
c817a9c0d0e5
navi_bar: highlight correct tab for the current page for i18ned system pages (port from 1.6)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2964
diff
changeset
|
423 |
1827
6a162bb60560
cleaned up splitNaviLink mess
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1816
diff
changeset
|
424 if not title: |
6a162bb60560
cleaned up splitNaviLink mess
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1816
diff
changeset
|
425 title = page.split_title() |
6a162bb60560
cleaned up splitNaviLink mess
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1816
diff
changeset
|
426 title = self.shortenPagename(title) |
6a162bb60560
cleaned up splitNaviLink mess
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1816
diff
changeset
|
427 |
6a162bb60560
cleaned up splitNaviLink mess
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1816
diff
changeset
|
428 link = page.link_to(request, title) |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
429 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
430 return pagename, link |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
431 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
432 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
|
433 """ Shorten page names |
2286
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
434 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
435 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
|
436 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
|
437 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
|
438 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
439 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
|
440 different algorithm, override this method. |
2286
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
441 |
490
ca35d9e6d63e
eypdoc comments: fixed some warnings/errors
Thomas Waldmann <tw@waldmann-edv.de>
parents:
483
diff
changeset
|
442 @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
|
443 @rtype: unicode |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
444 @return: shortened version. |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
445 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
446 maxLength = self.maxPagenameLength() |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
447 # 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
|
448 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
|
449 name = name.split('/')[-1] |
70
36a2541550aa
src cosmetic changes, changed (c) to 2005
Thomas Waldmann <tw@waldmann-edv.de>
parents:
64
diff
changeset
|
450 # 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
|
451 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
|
452 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
|
453 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
|
454 return name |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
455 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
456 def maxPagenameLength(self): |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
457 """ 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
|
458 return 25 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
459 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
460 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
|
461 """ Assemble the navibar |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
462 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
463 @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
|
464 @rtype: unicode |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
465 @return: navibar html |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
466 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
467 request = self.request |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
468 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
|
469 items = [] # navibar items |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
470 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
|
471 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
|
472 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
473 # 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
|
474 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
|
475 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
|
476 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
|
477 if pagename == current: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
478 cls = 'wikilink current' |
70
36a2541550aa
src cosmetic changes, changed (c) to 2005
Thomas Waldmann <tw@waldmann-edv.de>
parents:
64
diff
changeset
|
479 else: |
36a2541550aa
src cosmetic changes, changed (c) to 2005
Thomas Waldmann <tw@waldmann-edv.de>
parents:
64
diff
changeset
|
480 cls = 'wikilink' |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
481 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
|
482 found[pagename] = 1 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
483 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
484 # 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
|
485 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
|
486 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
|
487 # 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
|
488 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
|
489 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
|
490 if pagename == current: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
491 cls = 'userlink current' |
70
36a2541550aa
src cosmetic changes, changed (c) to 2005
Thomas Waldmann <tw@waldmann-edv.de>
parents:
64
diff
changeset
|
492 else: |
36a2541550aa
src cosmetic changes, changed (c) to 2005
Thomas Waldmann <tw@waldmann-edv.de>
parents:
64
diff
changeset
|
493 cls = 'userlink' |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
494 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
|
495 found[pagename] = 1 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
496 |
1787
f4a941fe32f8
added SisterSites/SisterPages support
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1784
diff
changeset
|
497 # Add current page at end of local pages |
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
|
498 if not current in found: |
1782
6b9eefc1d67f
split_title: remove some more call's request param (see cs 1776)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1780
diff
changeset
|
499 title = d['page'].split_title() |
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
|
500 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
|
501 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
|
502 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
|
503 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
|
504 |
1787
f4a941fe32f8
added SisterSites/SisterPages support
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1784
diff
changeset
|
505 # Add sister pages. |
1959
7ccf35e8f674
use a list to have defined order for cfg.sistersites (e.g. in theme output)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1935
diff
changeset
|
506 for sistername, sisterurl in request.cfg.sistersites: |
1787
f4a941fe32f8
added SisterSites/SisterPages support
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1784
diff
changeset
|
507 if sistername == request.cfg.interwikiname: # it is THIS wiki |
f4a941fe32f8
added SisterSites/SisterPages support
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1784
diff
changeset
|
508 cls = 'sisterwiki current' |
f4a941fe32f8
added SisterSites/SisterPages support
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1784
diff
changeset
|
509 items.append(item % (cls, sistername)) |
f4a941fe32f8
added SisterSites/SisterPages support
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1784
diff
changeset
|
510 else: |
f4a941fe32f8
added SisterSites/SisterPages support
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1784
diff
changeset
|
511 # TODO optimize performance |
f4a941fe32f8
added SisterSites/SisterPages support
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1784
diff
changeset
|
512 cache = caching.CacheEntry(request, 'sisters', sistername, 'farm', use_pickle=True) |
f4a941fe32f8
added SisterSites/SisterPages support
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1784
diff
changeset
|
513 if cache.exists(): |
f4a941fe32f8
added SisterSites/SisterPages support
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1784
diff
changeset
|
514 data = cache.content() |
f4a941fe32f8
added SisterSites/SisterPages support
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1784
diff
changeset
|
515 sisterpages = data['sisterpages'] |
f4a941fe32f8
added SisterSites/SisterPages support
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1784
diff
changeset
|
516 if current in sisterpages: |
f4a941fe32f8
added SisterSites/SisterPages support
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1784
diff
changeset
|
517 cls = 'sisterwiki' |
f4a941fe32f8
added SisterSites/SisterPages support
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1784
diff
changeset
|
518 url = sisterpages[current] |
f4a941fe32f8
added SisterSites/SisterPages support
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1784
diff
changeset
|
519 link = request.formatter.url(1, url) + \ |
f4a941fe32f8
added SisterSites/SisterPages support
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1784
diff
changeset
|
520 request.formatter.text(sistername) +\ |
f4a941fe32f8
added SisterSites/SisterPages support
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1784
diff
changeset
|
521 request.formatter.url(0) |
f4a941fe32f8
added SisterSites/SisterPages support
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1784
diff
changeset
|
522 items.append(item % (cls, link)) |
f4a941fe32f8
added SisterSites/SisterPages support
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1784
diff
changeset
|
523 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
524 # 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
|
525 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
|
526 html = u''' |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
527 <ul id="navibar"> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
528 %s |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
529 </ul> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
530 ''' % items |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
531 return html |
153
c4c7dc546c65
ThemeChange, excluding optional content heading rendering change
Thomas Waldmann <tw@waldmann-edv.de>
parents:
142
diff
changeset
|
532 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
533 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
|
534 """ 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
|
535 |
2725
388204baf00f
change [[macro]] to <<macro>> in all built-in markup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2286
diff
changeset
|
536 If called from <<Icon(file)>> we have a filename, not a |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
537 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
|
538 behavior. |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
539 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
540 @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
|
541 @rtype: tuple |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
542 @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
|
543 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
544 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
|
545 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
|
546 else: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
547 # 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
|
548 # 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
|
549 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
|
550 d = {} |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
551 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
|
552 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
|
553 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
|
554 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
555 # 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
|
556 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
|
557 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
|
558 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
|
559 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
|
560 |
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
|
561 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
|
562 |
2862
8c1d40768df7
gedit formatter/converter: fix links/transclusion (suppressing default alt texts needs more work)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2832
diff
changeset
|
563 def make_icon(self, icon, vars=None, **kw): |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
564 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
565 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
|
566 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
|
567 handled here. |
2286
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
568 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
569 @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
|
570 @param vars: ... |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
571 @rtype: string |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
572 @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
|
573 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
574 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
|
575 vars = {} |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
576 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
|
577 try: |
3048
1e9444f35a22
Fix "MakeIconLinkLosesAltTitle", thanks to "bolekk". (ported from 1.6)
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3040
diff
changeset
|
578 alt = vars['icon-alt-text'] # if it is possible we take the alt-text from 'page_icons_table' |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
579 except KeyError, err: |
3048
1e9444f35a22
Fix "MakeIconLinkLosesAltTitle", thanks to "bolekk". (ported from 1.6)
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3040
diff
changeset
|
580 try: |
1e9444f35a22
Fix "MakeIconLinkLosesAltTitle", thanks to "bolekk". (ported from 1.6)
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3040
diff
changeset
|
581 alt = alt % vars # if not we just leave the alt-text from 'icons' |
1e9444f35a22
Fix "MakeIconLinkLosesAltTitle", thanks to "bolekk". (ported from 1.6)
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3040
diff
changeset
|
582 except KeyError, err: |
1e9444f35a22
Fix "MakeIconLinkLosesAltTitle", thanks to "bolekk". (ported from 1.6)
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3040
diff
changeset
|
583 alt = 'KeyError: %s' % str(err) |
3164
c25bc6e9ad61
i18n.getText: removing wrong (old) kw arguments from _() calls
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3139
diff
changeset
|
584 alt = self.request.getText(alt) |
2862
8c1d40768df7
gedit formatter/converter: fix links/transclusion (suppressing default alt texts needs more work)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2832
diff
changeset
|
585 tag = self.request.formatter.image(src=img, alt=alt, width=w, height=h, **kw) |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
586 return tag |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
587 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
588 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
|
589 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
590 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
|
591 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
592 @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
|
593 @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
|
594 @rtype: string |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
595 @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
|
596 """ |
2996
6a1b18869fe8
fix for icon bar: do not modify cfg.page_icons_table (port from 1.6)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2991
diff
changeset
|
597 qs = {} |
3541
8ff53b14fc44
UP icon is back in the iconbar for themes not using clickable title navigation
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3540
diff
changeset
|
598 pagekey, querystr, title, icon = self.cfg.page_icons_table[which] |
2996
6a1b18869fe8
fix for icon bar: do not modify cfg.page_icons_table (port from 1.6)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2991
diff
changeset
|
599 qs.update(querystr) # do not modify the querystr dict in the cfg! |
3048
1e9444f35a22
Fix "MakeIconLinkLosesAltTitle", thanks to "bolekk". (ported from 1.6)
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3040
diff
changeset
|
600 d['icon-alt-text'] = d['title'] = title % d |
3164
c25bc6e9ad61
i18n.getText: removing wrong (old) kw arguments from _() calls
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3139
diff
changeset
|
601 d['i18ntitle'] = self.request.getText(d['title']) |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
602 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
|
603 rev = d['rev'] |
aadc8b0e11cf
change classic theme to propagate rev, too
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1683
diff
changeset
|
604 if rev and which in ['raw', 'print', ]: |
2996
6a1b18869fe8
fix for icon bar: do not modify cfg.page_icons_table (port from 1.6)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2991
diff
changeset
|
605 qs['rev'] = str(rev) |
1684
aadc8b0e11cf
change classic theme to propagate rev, too
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1683
diff
changeset
|
606 attrs = {'rel': 'nofollow', 'title': d['i18ntitle'], } |
3541
8ff53b14fc44
UP icon is back in the iconbar for themes not using clickable title navigation
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3540
diff
changeset
|
607 page = d[pagekey] |
8ff53b14fc44
UP icon is back in the iconbar for themes not using clickable title navigation
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3540
diff
changeset
|
608 if isinstance(page, unicode): |
8ff53b14fc44
UP icon is back in the iconbar for themes not using clickable title navigation
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3540
diff
changeset
|
609 # e.g. d['page_parent_page'] is just the unicode pagename |
8ff53b14fc44
UP icon is back in the iconbar for themes not using clickable title navigation
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3540
diff
changeset
|
610 # while d['page'] will give a page object |
8ff53b14fc44
UP icon is back in the iconbar for themes not using clickable title navigation
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3540
diff
changeset
|
611 page = Page(self.request, page) |
2996
6a1b18869fe8
fix for icon bar: do not modify cfg.page_icons_table (port from 1.6)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2991
diff
changeset
|
612 return page.link_to_raw(self.request, text=img_src, querystr=qs, **attrs) |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
613 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
614 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
|
615 """ 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
|
616 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
617 Display a message with a widget or simple strings with a clear message link. |
2286
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
618 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
619 @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
|
620 @rtype: unicode |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
621 @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
|
622 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
623 _ = self.request.getText |
2964
49b9e807a51d
Added add_msg to the theme interface (done by Frederico Lorenzi). Should not be backported to 1.6
Alexander Schremmer <alex AT alexanderweb DOT de>
parents:
2862
diff
changeset
|
624 msgs = d['msg'] |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
625 |
2964
49b9e807a51d
Added add_msg to the theme interface (done by Frederico Lorenzi). Should not be backported to 1.6
Alexander Schremmer <alex AT alexanderweb DOT de>
parents:
2862
diff
changeset
|
626 result = u"" |
3624
2b577967030b
Add a class to the "Clear message" link, make the link text smaller and lower
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
3541
diff
changeset
|
627 close = d['page'].link_to(self.request, text=_('Clear message'), css_class="clear-link") |
2964
49b9e807a51d
Added add_msg to the theme interface (done by Frederico Lorenzi). Should not be backported to 1.6
Alexander Schremmer <alex AT alexanderweb DOT de>
parents:
2862
diff
changeset
|
628 for msg, msg_class in msgs: |
49b9e807a51d
Added add_msg to the theme interface (done by Frederico Lorenzi). Should not be backported to 1.6
Alexander Schremmer <alex AT alexanderweb DOT de>
parents:
2862
diff
changeset
|
629 try: |
49b9e807a51d
Added add_msg to the theme interface (done by Frederico Lorenzi). Should not be backported to 1.6
Alexander Schremmer <alex AT alexanderweb DOT de>
parents:
2862
diff
changeset
|
630 result += u'<p>%s</p>' % msg.render() |
49b9e807a51d
Added add_msg to the theme interface (done by Frederico Lorenzi). Should not be backported to 1.6
Alexander Schremmer <alex AT alexanderweb DOT de>
parents:
2862
diff
changeset
|
631 close = '' |
49b9e807a51d
Added add_msg to the theme interface (done by Frederico Lorenzi). Should not be backported to 1.6
Alexander Schremmer <alex AT alexanderweb DOT de>
parents:
2862
diff
changeset
|
632 except AttributeError: |
49b9e807a51d
Added add_msg to the theme interface (done by Frederico Lorenzi). Should not be backported to 1.6
Alexander Schremmer <alex AT alexanderweb DOT de>
parents:
2862
diff
changeset
|
633 if msg and msg_class: |
49b9e807a51d
Added add_msg to the theme interface (done by Frederico Lorenzi). Should not be backported to 1.6
Alexander Schremmer <alex AT alexanderweb DOT de>
parents:
2862
diff
changeset
|
634 result += u'<p><div class="%s">%s</div></p>' % (msg_class, msg) |
49b9e807a51d
Added add_msg to the theme interface (done by Frederico Lorenzi). Should not be backported to 1.6
Alexander Schremmer <alex AT alexanderweb DOT de>
parents:
2862
diff
changeset
|
635 elif msg: |
49b9e807a51d
Added add_msg to the theme interface (done by Frederico Lorenzi). Should not be backported to 1.6
Alexander Schremmer <alex AT alexanderweb DOT de>
parents:
2862
diff
changeset
|
636 result += u'<p>%s</p>\n' % msg |
49b9e807a51d
Added add_msg to the theme interface (done by Frederico Lorenzi). Should not be backported to 1.6
Alexander Schremmer <alex AT alexanderweb DOT de>
parents:
2862
diff
changeset
|
637 if result: |
49b9e807a51d
Added add_msg to the theme interface (done by Frederico Lorenzi). Should not be backported to 1.6
Alexander Schremmer <alex AT alexanderweb DOT de>
parents:
2862
diff
changeset
|
638 html = result + close |
49b9e807a51d
Added add_msg to the theme interface (done by Frederico Lorenzi). Should not be backported to 1.6
Alexander Schremmer <alex AT alexanderweb DOT de>
parents:
2862
diff
changeset
|
639 return u'<div id="message">\n%s\n</div>\n' % html |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
640 else: |
2964
49b9e807a51d
Added add_msg to the theme interface (done by Frederico Lorenzi). Should not be backported to 1.6
Alexander Schremmer <alex AT alexanderweb DOT de>
parents:
2862
diff
changeset
|
641 return u'' |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
642 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
643 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
|
644 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
645 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
|
646 """ Assemble page trail |
2286
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
647 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
648 @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
|
649 @rtype: unicode |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
650 @return: trail html |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
651 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
652 request = self.request |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
653 user = request.user |
70
36a2541550aa
src cosmetic changes, changed (c) to 2005
Thomas Waldmann <tw@waldmann-edv.de>
parents:
64
diff
changeset
|
654 html = '' |
1935
740d9939ffe9
use session object to store page trail (even for anon users, if anon sessions are enabled)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1920
diff
changeset
|
655 if not user.valid or user.show_page_trail: |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
656 trail = user.getTrail() |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
657 if trail: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
658 items = [] |
153
c4c7dc546c65
ThemeChange, excluding optional content heading rendering change
Thomas Waldmann <tw@waldmann-edv.de>
parents:
142
diff
changeset
|
659 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
|
660 try: |
2728
59b3d8b8971f
remove (un)quoteName, new functions split_interwiki() and resolve_interwiki(), cleanup interwiki mess, fix some link markup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2725
diff
changeset
|
661 interwiki, page = wikiutil.split_interwiki(pagename) |
59b3d8b8971f
remove (un)quoteName, new functions split_interwiki() and resolve_interwiki(), cleanup interwiki mess, fix some link markup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2725
diff
changeset
|
662 if interwiki != request.cfg.interwikiname and interwiki != 'Self': |
569
6c572f52899f
fixed missing </a> formatter bug
Thomas Waldmann <tw@waldmann-edv.de>
parents:
515
diff
changeset
|
663 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
|
664 self.shortenPagename(page) + |
569
6c572f52899f
fixed missing </a> formatter bug
Thomas Waldmann <tw@waldmann-edv.de>
parents:
515
diff
changeset
|
665 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
|
666 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
|
667 continue |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
668 else: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
669 pagename = page |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
670 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
671 except ValueError: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
672 pass |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
673 page = Page(request, pagename) |
1782
6b9eefc1d67f
split_title: remove some more call's request param (see cs 1776)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1780
diff
changeset
|
674 title = page.split_title() |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
675 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
|
676 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
|
677 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
|
678 html = ''' |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
679 <ul id="pagetrail"> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
680 %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
|
681 </ul>''' % ''.join(items) |
70
36a2541550aa
src cosmetic changes, changed (c) to 2005
Thomas Waldmann <tw@waldmann-edv.de>
parents:
64
diff
changeset
|
682 return html |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
683 |
4447
2254e666cea3
refactored and extended theme.html_stylesheets() to make alternate stylesheets possible
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4353
diff
changeset
|
684 def _stylesheet_link(self, theme, media, href, title=None): |
4449
9c1c823f4111
theme:__init__:PEP8 whitespace cleaned
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
4448
diff
changeset
|
685 """ |
4447
2254e666cea3
refactored and extended theme.html_stylesheets() to make alternate stylesheets possible
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4353
diff
changeset
|
686 Create a link tag for a stylesheet. |
2254e666cea3
refactored and extended theme.html_stylesheets() to make alternate stylesheets possible
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4353
diff
changeset
|
687 |
2254e666cea3
refactored and extended theme.html_stylesheets() to make alternate stylesheets possible
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4353
diff
changeset
|
688 @param theme: True: href gives the basename of a theme stylesheet, |
2254e666cea3
refactored and extended theme.html_stylesheets() to make alternate stylesheets possible
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4353
diff
changeset
|
689 False: href is a full url of a user/admin defined stylesheet. |
2254e666cea3
refactored and extended theme.html_stylesheets() to make alternate stylesheets possible
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4353
diff
changeset
|
690 @param media: 'all', 'screen', 'print', 'projection', ... |
2254e666cea3
refactored and extended theme.html_stylesheets() to make alternate stylesheets possible
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4353
diff
changeset
|
691 @param href: see param theme |
2254e666cea3
refactored and extended theme.html_stylesheets() to make alternate stylesheets possible
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4353
diff
changeset
|
692 @param title: optional title (for alternate stylesheets), see |
2254e666cea3
refactored and extended theme.html_stylesheets() to make alternate stylesheets possible
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4353
diff
changeset
|
693 http://www.w3.org/Style/Examples/007/alternatives |
2254e666cea3
refactored and extended theme.html_stylesheets() to make alternate stylesheets possible
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4353
diff
changeset
|
694 @rtype: string |
2254e666cea3
refactored and extended theme.html_stylesheets() to make alternate stylesheets possible
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4353
diff
changeset
|
695 @return: stylesheet link html |
2254e666cea3
refactored and extended theme.html_stylesheets() to make alternate stylesheets possible
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4353
diff
changeset
|
696 """ |
2254e666cea3
refactored and extended theme.html_stylesheets() to make alternate stylesheets possible
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4353
diff
changeset
|
697 if theme: |
2254e666cea3
refactored and extended theme.html_stylesheets() to make alternate stylesheets possible
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4353
diff
changeset
|
698 href = '%s/%s/css/%s.css' % (self.cfg.url_prefix_static, self.name, href) |
2254e666cea3
refactored and extended theme.html_stylesheets() to make alternate stylesheets possible
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4353
diff
changeset
|
699 attrs = 'type="text/css" charset="%s" media="%s" href="%s"' % ( |
5899
d0567fba754e
escape user- or admin-defined css url
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5850
diff
changeset
|
700 self.stylesheetsCharset, media, wikiutil.escape(href, True), ) |
4447
2254e666cea3
refactored and extended theme.html_stylesheets() to make alternate stylesheets possible
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4353
diff
changeset
|
701 if title: |
2254e666cea3
refactored and extended theme.html_stylesheets() to make alternate stylesheets possible
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4353
diff
changeset
|
702 return '<link rel="alternate stylesheet" %s title="%s">' % (attrs, title) |
2254e666cea3
refactored and extended theme.html_stylesheets() to make alternate stylesheets possible
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4353
diff
changeset
|
703 else: |
2254e666cea3
refactored and extended theme.html_stylesheets() to make alternate stylesheets possible
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4353
diff
changeset
|
704 return '<link rel="stylesheet" %s>' % attrs |
2254e666cea3
refactored and extended theme.html_stylesheets() to make alternate stylesheets possible
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4353
diff
changeset
|
705 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
706 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
|
707 """ Assemble html head stylesheet links |
2286
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
708 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
709 @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
|
710 @rtype: string |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
711 @return: stylesheets links |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
712 """ |
4447
2254e666cea3
refactored and extended theme.html_stylesheets() to make alternate stylesheets possible
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4353
diff
changeset
|
713 request = self.request |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
714 # Check mode |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
715 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
|
716 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
|
717 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
|
718 else: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
719 stylesheets = self.stylesheets |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
720 |
4447
2254e666cea3
refactored and extended theme.html_stylesheets() to make alternate stylesheets possible
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4353
diff
changeset
|
721 theme_css = [self._stylesheet_link(True, *stylesheet) for stylesheet in stylesheets] |
2254e666cea3
refactored and extended theme.html_stylesheets() to make alternate stylesheets possible
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4353
diff
changeset
|
722 cfg_css = [self._stylesheet_link(False, *stylesheet) for stylesheet in request.cfg.stylesheets] |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
723 |
4447
2254e666cea3
refactored and extended theme.html_stylesheets() to make alternate stylesheets possible
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4353
diff
changeset
|
724 msie_css = """ |
4719
f976af4e61f1
apply msie.css only for Internet Explorer older than version 8
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4481
diff
changeset
|
725 <!-- css only for MS IE6/IE7 browsers --> |
4728
4d2bc24c7723
fix typo in IE conditional comment
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4719
diff
changeset
|
726 <!--[if lt IE 8]> |
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
|
727 %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
|
728 <![endif]--> |
4447
2254e666cea3
refactored and extended theme.html_stylesheets() to make alternate stylesheets possible
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4353
diff
changeset
|
729 """ % self._stylesheet_link(True, 'all', 'msie') |
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
|
730 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
731 # Add user css url (assuming that user css uses same charset) |
4447
2254e666cea3
refactored and extended theme.html_stylesheets() to make alternate stylesheets possible
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4353
diff
changeset
|
732 href = request.user.valid and request.user.css_url |
2254e666cea3
refactored and extended theme.html_stylesheets() to make alternate stylesheets possible
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4353
diff
changeset
|
733 if href and href.lower() != "none": |
2254e666cea3
refactored and extended theme.html_stylesheets() to make alternate stylesheets possible
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4353
diff
changeset
|
734 user_css = self._stylesheet_link(False, 'all', href) |
2254e666cea3
refactored and extended theme.html_stylesheets() to make alternate stylesheets possible
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4353
diff
changeset
|
735 else: |
2254e666cea3
refactored and extended theme.html_stylesheets() to make alternate stylesheets possible
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4353
diff
changeset
|
736 user_css = '' |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
737 |
4447
2254e666cea3
refactored and extended theme.html_stylesheets() to make alternate stylesheets possible
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4353
diff
changeset
|
738 return '\n'.join(theme_css + cfg_css + [msie_css, user_css]) |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
739 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
740 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
|
741 """ 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
|
742 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
743 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
|
744 name and page. |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
745 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
746 @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
|
747 @rtype: bool |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
748 @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
|
749 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
750 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
|
751 # These actions show the page content. |
1832
b180f047d918
comments only: cleaned up TODO, XXX, ...
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1827
diff
changeset
|
752 # TODO: on new action, page info will not show. |
b180f047d918
comments only: cleaned up TODO, XXX, ...
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1827
diff
changeset
|
753 # A better solution will be if the action itself answer the question: showPageInfo(). |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
754 contentActions = [u'', u'show', u'refresh', u'preview', u'diff', |
1897
3d2dbe3e8a4c
shouldShowPageinfo: CopyPage added
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
1892
diff
changeset
|
755 u'subscribe', u'RenamePage', u'CopyPage', u'DeletePage', |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
756 u'SpellCheck', u'print'] |
1008
43279823cf24
use request.action
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1003
diff
changeset
|
757 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
|
758 return False |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
759 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
760 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
|
761 """ 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
|
762 |
393
f25101c236bb
optimized footer display and print view, removed some ancient code
Thomas Waldmann <tw@waldmann-edv.de>
parents:
338
diff
changeset
|
763 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
|
764 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
|
765 translated text using page direction looks worse. |
2286
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
766 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
767 @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
|
768 @rtype: unicode |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
769 @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
|
770 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
771 _ = self.request.getText |
70
36a2541550aa
src cosmetic changes, changed (c) to 2005
Thomas Waldmann <tw@waldmann-edv.de>
parents:
64
diff
changeset
|
772 html = '' |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
773 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
|
774 info = page.lastEditInfo() |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
775 if info: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
776 if info['editor']: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
777 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
|
778 else: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
779 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
|
780 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
|
781 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
|
782 pagename = "%s: %s" % (self.request.cfg.interwikiname, pagename) |
1766
2e640592bfd1
fix some unescaped uses of pagename (ported from 1.5-803/805/806)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1764
diff
changeset
|
783 info = "%s (%s)" % (wikiutil.escape(pagename), info) |
70
36a2541550aa
src cosmetic changes, changed (c) to 2005
Thomas Waldmann <tw@waldmann-edv.de>
parents:
64
diff
changeset
|
784 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
|
785 '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
|
786 'info': info |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
787 } |
70
36a2541550aa
src cosmetic changes, changed (c) to 2005
Thomas Waldmann <tw@waldmann-edv.de>
parents:
64
diff
changeset
|
788 return html |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
789 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
790 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
|
791 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
792 assemble HTML code for the search forms |
2286
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
793 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
794 @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
|
795 @rtype: unicode |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
796 @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
|
797 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
798 _ = self.request.getText |
4424
5ad5753ae311
pre-1.9: request.form has qs args and post data, 1.9: .form only post data, .args only qs args, .values both
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4423
diff
changeset
|
799 form = self.request.values |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
800 updates = { |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
801 'search_label': _('Search:'), |
4424
5ad5753ae311
pre-1.9: request.form has qs args and post data, 1.9: .form only post data, .args only qs args, .values both
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4423
diff
changeset
|
802 'search_value': wikiutil.escape(form.get('value', ''), 1), |
3164
c25bc6e9ad61
i18n.getText: removing wrong (old) kw arguments from _() calls
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3139
diff
changeset
|
803 'search_full_label': _('Text'), |
c25bc6e9ad61
i18n.getText: removing wrong (old) kw arguments from _() calls
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3139
diff
changeset
|
804 'search_title_label': _('Titles'), |
4235
a6c315ff8d66
Make more use of werkzeugs Href object for URL-generation in MoinMoin
Florian Krupicka <florian.krupicka@googlemail.com>
parents:
4212
diff
changeset
|
805 'url': self.request.href(d['page'].page_name) |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
806 } |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
807 d.update(updates) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
808 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
809 html = u''' |
4235
a6c315ff8d66
Make more use of werkzeugs Href object for URL-generation in MoinMoin
Florian Krupicka <florian.krupicka@googlemail.com>
parents:
4212
diff
changeset
|
810 <form id="searchform" method="get" action="%(url)s"> |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
811 <div> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
812 <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
|
813 <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
|
814 <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
|
815 <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
|
816 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
|
817 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
|
818 <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
|
819 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
|
820 <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
|
821 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
|
822 </div> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
823 </form> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
824 <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
|
825 <!--// Initialize search form |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
826 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
|
827 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
|
828 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
|
829 searchChange(e); |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
830 searchBlur(e); |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
831 //--> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
832 </script> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
833 ''' % d |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
834 return html |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
835 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
836 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
|
837 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
838 assemble HTML code for copyright and version display |
2286
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
839 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
840 @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
|
841 @rtype: string |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
842 @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
|
843 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
844 html = '' |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
845 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
|
846 html = (u'<div id="version">MoinMoin Release %s [Revision %s], ' |
3488
f3c50edd219c
theme showversion: remove year, add 'et al.'
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3473
diff
changeset
|
847 'Copyright by Juergen Hermann et al.</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
|
848 return html |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
849 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
850 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
|
851 """ 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
|
852 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
853 @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
|
854 @rtype: unicode |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
855 @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
|
856 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
857 # Don't add script for print view |
1008
43279823cf24
use request.action
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1003
diff
changeset
|
858 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
|
859 return u'' |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
860 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
861 _ = self.request.getText |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
862 script = u""" |
1425
b1c380a4cdb0
move some js to common.js
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1419
diff
changeset
|
863 <script type="text/javascript"> |
b1c380a4cdb0
move some js to common.js
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1419
diff
changeset
|
864 <!-- |
b1c380a4cdb0
move some js to common.js
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1419
diff
changeset
|
865 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
|
866 //--> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
867 </script> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
868 """ % { |
3164
c25bc6e9ad61
i18n.getText: removing wrong (old) kw arguments from _() calls
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3139
diff
changeset
|
869 'search_hint': _('Search'), |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
870 } |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
871 return script |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
872 |
1764
885c97f7ba37
RSS feed: do not announce on any page, but only on RC and _(RC) (ported from 1.5-801)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1752
diff
changeset
|
873 def shouldUseRSS(self, page): |
885c97f7ba37
RSS feed: do not announce on any page, but only on RC and _(RC) (ported from 1.5-801)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1752
diff
changeset
|
874 """ Return True if RSS feature is available and we are on the |
885c97f7ba37
RSS feed: do not announce on any page, but only on RC and _(RC) (ported from 1.5-801)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1752
diff
changeset
|
875 RecentChanges page, or False. |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
876 |
1764
885c97f7ba37
RSS feed: do not announce on any page, but only on RC and _(RC) (ported from 1.5-801)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1752
diff
changeset
|
877 Currently rss is broken on plain Python, and works only when |
885c97f7ba37
RSS feed: do not announce on any page, but only on RC and _(RC) (ported from 1.5-801)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1752
diff
changeset
|
878 installing PyXML. Return true if PyXML is installed. |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
879 """ |
1764
885c97f7ba37
RSS feed: do not announce on any page, but only on RC and _(RC) (ported from 1.5-801)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1752
diff
changeset
|
880 if not rss_supported: |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
881 return False |
5849
f7a570f3c1cb
theme: added RC RSS link for the front page, added page history RSS link for all other pages.
Eugene Syromyatnikov <evgsyr@gmail.com>
parents:
5707
diff
changeset
|
882 return page.page_name in [u'RecentChanges', |
f7a570f3c1cb
theme: added RC RSS link for the front page, added page history RSS link for all other pages.
Eugene Syromyatnikov <evgsyr@gmail.com>
parents:
5707
diff
changeset
|
883 self.request.getText(u'RecentChanges'), |
f7a570f3c1cb
theme: added RC RSS link for the front page, added page history RSS link for all other pages.
Eugene Syromyatnikov <evgsyr@gmail.com>
parents:
5707
diff
changeset
|
884 self.request.cfg.page_front_page, |
f7a570f3c1cb
theme: added RC RSS link for the front page, added page history RSS link for all other pages.
Eugene Syromyatnikov <evgsyr@gmail.com>
parents:
5707
diff
changeset
|
885 self.request.getText(self.request.cfg.page_front_page)] |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
886 |
1764
885c97f7ba37
RSS feed: do not announce on any page, but only on RC and _(RC) (ported from 1.5-801)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1752
diff
changeset
|
887 def rsshref(self, page): |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
888 """ Create rss href, used for rss button and head link |
2286
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
889 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
890 @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
|
891 @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
|
892 """ |
1382
c3c8ff25e979
make more use of formatter / link_to for link rendering
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1354
diff
changeset
|
893 request = self.request |
1813
dca96e7c8199
reuse existing page object
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1808
diff
changeset
|
894 url = page.url(request, querystr={ |
3234
a739558ca3dc
Page.url() default changed to relative=False
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3164
diff
changeset
|
895 'action': 'rss_rc', 'ddiffs': '1', 'unique': '1', }, escape=0) |
1382
c3c8ff25e979
make more use of formatter / link_to for link rendering
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1354
diff
changeset
|
896 return url |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
897 |
1764
885c97f7ba37
RSS feed: do not announce on any page, but only on RC and _(RC) (ported from 1.5-801)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1752
diff
changeset
|
898 def rsslink(self, d): |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
899 """ 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
|
900 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
901 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
|
902 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
|
903 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
904 @rtype: unicode |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
905 @return: html head |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
906 """ |
70
36a2541550aa
src cosmetic changes, changed (c) to 2005
Thomas Waldmann <tw@waldmann-edv.de>
parents:
64
diff
changeset
|
907 link = u'' |
1764
885c97f7ba37
RSS feed: do not announce on any page, but only on RC and _(RC) (ported from 1.5-801)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1752
diff
changeset
|
908 page = d['page'] |
885c97f7ba37
RSS feed: do not announce on any page, but only on RC and _(RC) (ported from 1.5-801)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1752
diff
changeset
|
909 if self.shouldUseRSS(page): |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
910 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
|
911 u'href="%s" type="application/rss+xml">') % ( |
3273
9c6900a92a64
more wikiutil.escape fixes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3270
diff
changeset
|
912 wikiutil.escape(self.cfg.sitename, True), |
9c6900a92a64
more wikiutil.escape fixes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3270
diff
changeset
|
913 wikiutil.escape(self.rsshref(page), True) ) |
5850
8b4f02226670
Option which gives ability to turn off addition of page history RSS feed link added.
Eugene Syromyatnikov <evgsyr@gmail.com>
parents:
5849
diff
changeset
|
914 elif rss_supported and self.cfg.rss_show_page_history_link: |
5849
f7a570f3c1cb
theme: added RC RSS link for the front page, added page history RSS link for all other pages.
Eugene Syromyatnikov <evgsyr@gmail.com>
parents:
5707
diff
changeset
|
915 link = (u'<link rel="alternate" title="%s: %s" ' |
f7a570f3c1cb
theme: added RC RSS link for the front page, added page history RSS link for all other pages.
Eugene Syromyatnikov <evgsyr@gmail.com>
parents:
5707
diff
changeset
|
916 u'href="%s" type="application/rss+xml">') % ( |
5900
c98ec456e493
fix XSS issue, escape page name in rss link
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5899
diff
changeset
|
917 wikiutil.escape(self.cfg.sitename, True), |
c98ec456e493
fix XSS issue, escape page name in rss link
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
5899
diff
changeset
|
918 wikiutil.escape(page.page_name, True), |
5849
f7a570f3c1cb
theme: added RC RSS link for the front page, added page history RSS link for all other pages.
Eugene Syromyatnikov <evgsyr@gmail.com>
parents:
5707
diff
changeset
|
919 wikiutil.escape(page.url(self.request, querystr={ |
f7a570f3c1cb
theme: added RC RSS link for the front page, added page history RSS link for all other pages.
Eugene Syromyatnikov <evgsyr@gmail.com>
parents:
5707
diff
changeset
|
920 'action': 'rss_rc', 'ddiffs': '1', 'unique': '0', |
f7a570f3c1cb
theme: added RC RSS link for the front page, added page history RSS link for all other pages.
Eugene Syromyatnikov <evgsyr@gmail.com>
parents:
5707
diff
changeset
|
921 'diffs': '1', 'show_att': '1', |
f7a570f3c1cb
theme: added RC RSS link for the front page, added page history RSS link for all other pages.
Eugene Syromyatnikov <evgsyr@gmail.com>
parents:
5707
diff
changeset
|
922 'page': page.page_name }, escape=0), True) ) |
70
36a2541550aa
src cosmetic changes, changed (c) to 2005
Thomas Waldmann <tw@waldmann-edv.de>
parents:
64
diff
changeset
|
923 return link |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
924 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
925 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
|
926 """ Assemble html head |
2286
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
927 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
928 @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
|
929 @rtype: unicode |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
930 @return: html head |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
931 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
932 html = [ |
3273
9c6900a92a64
more wikiutil.escape fixes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3270
diff
changeset
|
933 u'<title>%(title)s - %(sitename)s</title>' % { |
9c6900a92a64
more wikiutil.escape fixes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3270
diff
changeset
|
934 'title': wikiutil.escape(d['title']), |
9c6900a92a64
more wikiutil.escape fixes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3270
diff
changeset
|
935 'sitename': wikiutil.escape(d['sitename']), |
9c6900a92a64
more wikiutil.escape fixes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3270
diff
changeset
|
936 }, |
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
|
937 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
|
938 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
|
939 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
|
940 self.html_stylesheets(d), |
1764
885c97f7ba37
RSS feed: do not announce on any page, but only on RC and _(RC) (ported from 1.5-801)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1752
diff
changeset
|
941 self.rsslink(d), |
3723
7d77145af210
ThemeBase: add a <link> in the <header> for the editor
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
3624
diff
changeset
|
942 self.universal_edit_button(d), |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
943 ] |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
944 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
|
945 |
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
|
946 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
|
947 """ 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
|
948 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
|
949 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
|
950 |
3723
7d77145af210
ThemeBase: add a <link> in the <header> for the editor
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
3624
diff
changeset
|
951 def universal_edit_button(self, d, **keywords): |
7d77145af210
ThemeBase: add a <link> in the <header> for the editor
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
3624
diff
changeset
|
952 """ Generate HTML for an edit link in the header.""" |
7d77145af210
ThemeBase: add a <link> in the <header> for the editor
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
3624
diff
changeset
|
953 page = d['page'] |
7d77145af210
ThemeBase: add a <link> in the <header> for the editor
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
3624
diff
changeset
|
954 if 'edit' in self.request.cfg.actions_excluded: |
7d77145af210
ThemeBase: add a <link> in the <header> for the editor
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
3624
diff
changeset
|
955 return "" |
7d77145af210
ThemeBase: add a <link> in the <header> for the editor
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
3624
diff
changeset
|
956 if not (page.isWritable() and |
7d77145af210
ThemeBase: add a <link> in the <header> for the editor
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
3624
diff
changeset
|
957 self.request.user.may.write(page.page_name)): |
7d77145af210
ThemeBase: add a <link> in the <header> for the editor
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
3624
diff
changeset
|
958 return "" |
7d77145af210
ThemeBase: add a <link> in the <header> for the editor
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
3624
diff
changeset
|
959 _ = self.request.getText |
7d77145af210
ThemeBase: add a <link> in the <header> for the editor
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
3624
diff
changeset
|
960 querystr = {'action': 'edit'} |
7d77145af210
ThemeBase: add a <link> in the <header> for the editor
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
3624
diff
changeset
|
961 text = _(u'Edit') |
7d77145af210
ThemeBase: add a <link> in the <header> for the editor
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
3624
diff
changeset
|
962 url = page.url(self.request, querystr=querystr, escape=0) |
7d77145af210
ThemeBase: add a <link> in the <header> for the editor
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
3624
diff
changeset
|
963 return (u'<link rel="alternate" type="application/wiki" ' |
4091
087eac1e1497
fix application/wiki link rel to be html4
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3814
diff
changeset
|
964 u'title="%s" href="%s">' % (text, url)) |
3723
7d77145af210
ThemeBase: add a <link> in the <header> for the editor
Radomir Dopieralski <moindev@sheep.art.pl>
parents:
3624
diff
changeset
|
965 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
966 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
|
967 """ 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
|
968 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
|
969 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
|
970 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
|
971 else: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
972 # 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
|
973 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
|
974 return html |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
975 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
976 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
|
977 """ Create actions menu list and items data dict |
2286
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
978 |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
979 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
|
980 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
|
981 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
|
982 |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
983 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
|
984 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
|
985 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
|
986 |
1832
b180f047d918
comments only: cleaned up TODO, XXX, ...
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1827
diff
changeset
|
987 TODO: Move actionsMenuInit() into body onload - requires that the theme will render body, |
b180f047d918
comments only: cleaned up TODO, XXX, ...
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1827
diff
changeset
|
988 it is currently done in wikiutil/page. |
2286
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
989 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
990 @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
|
991 @rtype: unicode |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
992 @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
|
993 """ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
994 request = self.request |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
995 _ = request.getText |
1683
964fa7d0de32
action menu propagates rev parameter, simplify revision display
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1634
diff
changeset
|
996 rev = request.rev |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
997 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
998 menu = [ |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
999 'raw', |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1000 'print', |
493
993d53631fee
make some action menu entries translatable
Thomas Waldmann <tw@waldmann-edv.de>
parents:
490
diff
changeset
|
1001 'RenderAsDocbook', |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1002 'refresh', |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1003 '__separator__', |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1004 'SpellCheck', |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1005 'LikePages', |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1006 'LocalSiteMap', |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1007 '__separator__', |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1008 'RenamePage', |
1850
3d38db210672
action CopyPage added
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
1843
diff
changeset
|
1009 'CopyPage', |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1010 'DeletePage', |
493
993d53631fee
make some action menu entries translatable
Thomas Waldmann <tw@waldmann-edv.de>
parents:
490
diff
changeset
|
1011 '__separator__', |
993d53631fee
make some action menu entries translatable
Thomas Waldmann <tw@waldmann-edv.de>
parents:
490
diff
changeset
|
1012 'MyPages', |
993d53631fee
make some action menu entries translatable
Thomas Waldmann <tw@waldmann-edv.de>
parents:
490
diff
changeset
|
1013 'SubscribeUser', |
993d53631fee
make some action menu entries translatable
Thomas Waldmann <tw@waldmann-edv.de>
parents:
490
diff
changeset
|
1014 '__separator__', |
993d53631fee
make some action menu entries translatable
Thomas Waldmann <tw@waldmann-edv.de>
parents:
490
diff
changeset
|
1015 'Despam', |
1683
964fa7d0de32
action menu propagates rev parameter, simplify revision display
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1634
diff
changeset
|
1016 'revert', |
493
993d53631fee
make some action menu entries translatable
Thomas Waldmann <tw@waldmann-edv.de>
parents:
490
diff
changeset
|
1017 'PackagePages', |
1808
e43e65d90f26
action menu: speed up, add entry for SyncPages, longer separator
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1802
diff
changeset
|
1018 'SyncPages', |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1019 ] |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1020 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1021 titles = { |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1022 # action: menu title |
3164
c25bc6e9ad61
i18n.getText: removing wrong (old) kw arguments from _() calls
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3139
diff
changeset
|
1023 '__title__': _("More Actions:"), |
64
6483a586208d
better wording in the user interface
Nir Soffer <nirs@freeshell.org>
parents:
33
diff
changeset
|
1024 # Translation may need longer or shorter separator |
3164
c25bc6e9ad61
i18n.getText: removing wrong (old) kw arguments from _() calls
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3139
diff
changeset
|
1025 '__separator__': _('------------------------'), |
c25bc6e9ad61
i18n.getText: removing wrong (old) kw arguments from _() calls
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3139
diff
changeset
|
1026 'raw': _('Raw Text'), |
c25bc6e9ad61
i18n.getText: removing wrong (old) kw arguments from _() calls
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3139
diff
changeset
|
1027 'print': _('Print View'), |
c25bc6e9ad61
i18n.getText: removing wrong (old) kw arguments from _() calls
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3139
diff
changeset
|
1028 'refresh': _('Delete Cache'), |
c25bc6e9ad61
i18n.getText: removing wrong (old) kw arguments from _() calls
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3139
diff
changeset
|
1029 'SpellCheck': _('Check Spelling'), # rename action! |
c25bc6e9ad61
i18n.getText: removing wrong (old) kw arguments from _() calls
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3139
diff
changeset
|
1030 'RenamePage': _('Rename Page'), |
c25bc6e9ad61
i18n.getText: removing wrong (old) kw arguments from _() calls
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3139
diff
changeset
|
1031 'CopyPage': _('Copy Page'), |
c25bc6e9ad61
i18n.getText: removing wrong (old) kw arguments from _() calls
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3139
diff
changeset
|
1032 'DeletePage': _('Delete Page'), |
c25bc6e9ad61
i18n.getText: removing wrong (old) kw arguments from _() calls
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3139
diff
changeset
|
1033 'LikePages': _('Like Pages'), |
c25bc6e9ad61
i18n.getText: removing wrong (old) kw arguments from _() calls
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3139
diff
changeset
|
1034 'LocalSiteMap': _('Local Site Map'), |
c25bc6e9ad61
i18n.getText: removing wrong (old) kw arguments from _() calls
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3139
diff
changeset
|
1035 'MyPages': _('My Pages'), |
c25bc6e9ad61
i18n.getText: removing wrong (old) kw arguments from _() calls
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3139
diff
changeset
|
1036 'SubscribeUser': _('Subscribe User'), |
c25bc6e9ad61
i18n.getText: removing wrong (old) kw arguments from _() calls
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3139
diff
changeset
|
1037 'Despam': _('Remove Spam'), |
c25bc6e9ad61
i18n.getText: removing wrong (old) kw arguments from _() calls
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3139
diff
changeset
|
1038 'revert': _('Revert to this revision'), |
c25bc6e9ad61
i18n.getText: removing wrong (old) kw arguments from _() calls
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3139
diff
changeset
|
1039 'PackagePages': _('Package Pages'), |
c25bc6e9ad61
i18n.getText: removing wrong (old) kw arguments from _() calls
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3139
diff
changeset
|
1040 'RenderAsDocbook': _('Render as Docbook'), |
c25bc6e9ad61
i18n.getText: removing wrong (old) kw arguments from _() calls
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3139
diff
changeset
|
1041 'SyncPages': _('Sync Pages'), |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1042 } |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1043 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1044 options = [] |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1045 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
|
1046 # 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
|
1047 # "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
|
1048 # 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
|
1049 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
|
1050 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1051 # Format standard actions |
4173
051391d5662d
Remove deprecated calls to request.getAvailableActions
Florian Krupicka <florian.krupicka@googlemail.com>
parents:
4170
diff
changeset
|
1052 available = get_available_actions(request.cfg, page, request.user) |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1053 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
|
1054 data = {'action': action, 'disabled': '', 'title': titles[action]} |
3527
ca50da801291
theme.__init__: removes excluded actions from theme
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3510
diff
changeset
|
1055 # removes excluded actions from the more actions menu |
ca50da801291
theme.__init__: removes excluded actions from theme
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3510
diff
changeset
|
1056 if action in request.cfg.actions_excluded: |
ca50da801291
theme.__init__: removes excluded actions from theme
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3510
diff
changeset
|
1057 continue |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1058 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1059 # 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
|
1060 if action == 'refresh': |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1061 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
|
1062 data['action'] = 'show' |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1063 data['disabled'] = disabled |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1064 |
3472
4abf8492a665
theme.__init__:revert action enabled only if user can revert
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3428
diff
changeset
|
1065 # revert action enabled only if user can revert |
4abf8492a665
theme.__init__:revert action enabled only if user can revert
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3428
diff
changeset
|
1066 if action == 'revert' and not request.user.may.revert(page.page_name): |
4abf8492a665
theme.__init__:revert action enabled only if user can revert
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3428
diff
changeset
|
1067 data['action'] = 'show' |
4abf8492a665
theme.__init__:revert action enabled only if user can revert
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3428
diff
changeset
|
1068 data['disabled'] = disabled |
4abf8492a665
theme.__init__:revert action enabled only if user can revert
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3428
diff
changeset
|
1069 |
3473
59a4005672d3
theme.__init__: action enabled dependent of rights
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3472
diff
changeset
|
1070 # SubscribeUser action enabled only if user has admin rights |
59a4005672d3
theme.__init__: action enabled dependent of rights
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3472
diff
changeset
|
1071 if action == 'SubscribeUser' and not request.user.may.admin(page.page_name): |
59a4005672d3
theme.__init__: action enabled dependent of rights
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3472
diff
changeset
|
1072 data['action'] = 'show' |
59a4005672d3
theme.__init__: action enabled dependent of rights
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3472
diff
changeset
|
1073 data['disabled'] = disabled |
59a4005672d3
theme.__init__: action enabled dependent of rights
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3472
diff
changeset
|
1074 |
59a4005672d3
theme.__init__: action enabled dependent of rights
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3472
diff
changeset
|
1075 # Despam action enabled only for superusers |
59a4005672d3
theme.__init__: action enabled dependent of rights
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3472
diff
changeset
|
1076 if action == 'Despam' and not request.user.isSuperUser(): |
59a4005672d3
theme.__init__: action enabled dependent of rights
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3472
diff
changeset
|
1077 data['action'] = 'show' |
59a4005672d3
theme.__init__: action enabled dependent of rights
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3472
diff
changeset
|
1078 data['disabled'] = disabled |
59a4005672d3
theme.__init__: action enabled dependent of rights
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3472
diff
changeset
|
1079 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1080 # 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
|
1081 # just return to the page. |
3473
59a4005672d3
theme.__init__: action enabled dependent of rights
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3472
diff
changeset
|
1082 if action.startswith('__'): |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1083 data['action'] = 'show' |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1084 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1085 # 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
|
1086 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
|
1087 (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
|
1088 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
|
1089 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1090 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
|
1091 |
453
493972205fac
removed duplicate AttachFile entry in actions menu
Thomas Waldmann <tw@waldmann-edv.de>
parents:
393
diff
changeset
|
1092 # 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
|
1093 # some actions like AttachFile (we have them on top level) |
2286
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
1094 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
|
1095 more.sort() |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1096 if more: |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1097 # Add separator |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1098 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
|
1099 'title': titles['__separator__']} |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1100 options.append(separator) |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1101 # 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
|
1102 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
|
1103 data = {'action': action, 'disabled': ''} |
2286
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
1104 # Always add spaces: AttachFile -> Attach File |
1808
e43e65d90f26
action menu: speed up, add entry for SyncPages, longer separator
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1802
diff
changeset
|
1105 # XXX do not create page just for using split_title - |
2775 | 1106 # creating pages for non-existent does 2 storage lookups |
1808
e43e65d90f26
action menu: speed up, add entry for SyncPages, longer separator
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1802
diff
changeset
|
1107 #title = Page(request, action).split_title(force=1) |
e43e65d90f26
action menu: speed up, add entry for SyncPages, longer separator
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1802
diff
changeset
|
1108 title = action |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1109 # Use translated version if available |
3164
c25bc6e9ad61
i18n.getText: removing wrong (old) kw arguments from _() calls
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3139
diff
changeset
|
1110 data['title'] = _(title) |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1111 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
|
1112 |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1113 data = { |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1114 'label': titles['__title__'], |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1115 '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
|
1116 'rev_field': rev and '<input type="hidden" name="rev" value="%d">' % rev or '', |
3164
c25bc6e9ad61
i18n.getText: removing wrong (old) kw arguments from _() calls
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3139
diff
changeset
|
1117 'do_button': _("Do"), |
4235
a6c315ff8d66
Make more use of werkzeugs Href object for URL-generation in MoinMoin
Florian Krupicka <florian.krupicka@googlemail.com>
parents:
4212
diff
changeset
|
1118 'url': self.request.href(page.page_name) |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1119 } |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1120 html = ''' |
4235
a6c315ff8d66
Make more use of werkzeugs Href object for URL-generation in MoinMoin
Florian Krupicka <florian.krupicka@googlemail.com>
parents:
4212
diff
changeset
|
1121 <form class="actionsmenu" method="GET" action="%(url)s"> |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1122 <div> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1123 <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
|
1124 <select name="action" |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1125 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
|
1126 (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
|
1127 this.form.submit(); |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1128 } |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1129 this.selectedIndex = 0;"> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1130 %(options)s |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1131 </select> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1132 <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
|
1133 %(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
|
1134 </div> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1135 <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
|
1136 <!--// Init menu |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1137 actionsMenuInit('%(label)s'); |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1138 //--> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1139 </script> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1140 </form> |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1141 ''' % data |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1142 |
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1143 return html |
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1144 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1145 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
|
1146 """ 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
|
1147 |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1148 Create html on first call, then return cached html. |
2286
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
1149 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1150 @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
|
1151 @rtype: unicode |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1152 @return: iconbar html |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1153 """ |
622
8fba6d15a2f5
make request.(html_)formatter available early and use it
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
620
diff
changeset
|
1154 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
|
1155 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
|
1156 return '' |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
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 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
|
1159 if html is None: |
4346
dfb09cf670f9
fix editbar hidden comment link cosmetics for sidebar themes (hide the complete list element)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4091
diff
changeset
|
1160 # Remove empty items and format as list. The item for showing inline comments |
dfb09cf670f9
fix editbar hidden comment link cosmetics for sidebar themes (hide the complete list element)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4091
diff
changeset
|
1161 # is hidden by default. It gets activated through javascript only if inline |
dfb09cf670f9
fix editbar hidden comment link cosmetics for sidebar themes (hide the complete list element)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4091
diff
changeset
|
1162 # comments exist on the page. |
dfb09cf670f9
fix editbar hidden comment link cosmetics for sidebar themes (hide the complete list element)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4091
diff
changeset
|
1163 items = [] |
dfb09cf670f9
fix editbar hidden comment link cosmetics for sidebar themes (hide the complete list element)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4091
diff
changeset
|
1164 for item in self.editbarItems(page): |
dfb09cf670f9
fix editbar hidden comment link cosmetics for sidebar themes (hide the complete list element)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4091
diff
changeset
|
1165 if item: |
dfb09cf670f9
fix editbar hidden comment link cosmetics for sidebar themes (hide the complete list element)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4091
diff
changeset
|
1166 if 'nbcomment' in item: |
dfb09cf670f9
fix editbar hidden comment link cosmetics for sidebar themes (hide the complete list element)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4091
diff
changeset
|
1167 # hiding the complete list item is cosmetically better than just |
dfb09cf670f9
fix editbar hidden comment link cosmetics for sidebar themes (hide the complete list element)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4091
diff
changeset
|
1168 # hiding the contents (e.g. for sidebar themes). |
4353
df1ba1ddf050
bumped version to 1.8.0beta3, minor PEP8 fix
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4346
diff
changeset
|
1169 items.append('<li class="toggleCommentsButton" style="display:none;">%s</li>' % item) |
4346
dfb09cf670f9
fix editbar hidden comment link cosmetics for sidebar themes (hide the complete list element)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4091
diff
changeset
|
1170 else: |
dfb09cf670f9
fix editbar hidden comment link cosmetics for sidebar themes (hide the complete list element)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4091
diff
changeset
|
1171 items.append('<li>%s</li>' % item) |
dfb09cf670f9
fix editbar hidden comment link cosmetics for sidebar themes (hide the complete list element)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4091
diff
changeset
|
1172 html = u'<ul class="editbar">%s</ul>\n' % ''.join(items) |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1173 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
|
1174 |
0
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1175 return html |
77665d8e2254
tag of nonpublic@localhost--archive/moin--enterprise--1.5--base-0
Thomas Waldmann <tw-public@gmx.de>
parents:
diff
changeset
|
1176 |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1177 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
|
1178 """ 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
|
1179 |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1180 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
|
1181 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
|
1182 checking here. |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1183 |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1184 @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
|
1185 @rtype: bool |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1186 @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
|
1187 """ |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1188 # 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
|
1189 # 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
|
1190 # 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
|
1191 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
|
1192 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
|
1193 form = self.request.form |
1008
43279823cf24
use request.action
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1003
diff
changeset
|
1194 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
|
1195 # 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
|
1196 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
|
1197 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
|
1198 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
|
1199 return False |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1200 |
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1201 def editbarItems(self, page): |
2286
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
1202 """ 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
|
1203 |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1204 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
|
1205 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
|
1206 """ |
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
|
1207 _ = 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
|
1208 editbar_actions = [] |
7b419bd3b2cf
theme/__init__.py: edit_bar dependend on config
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
1735
diff
changeset
|
1209 for editbar_item in self.request.cfg.edit_bar: |
4448
a0864c9c4752
theme:__init__: fixed and simplified getPragma calls for supplementation
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
4447
diff
changeset
|
1210 if (editbar_item == 'Discussion' and |
a0864c9c4752
theme:__init__: fixed and simplified getPragma calls for supplementation
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
4447
diff
changeset
|
1211 (self.request.getPragma('supplementation-page', self.request.cfg.supplementation_page) |
a0864c9c4752
theme:__init__: fixed and simplified getPragma calls for supplementation
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
4447
diff
changeset
|
1212 in (True, 1, 'on', '1'))): |
1920
b06ef2a53efa
'make pylint', fixed lots of minor stuff found by pylint (and there is still lots left to do)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1918
diff
changeset
|
1213 editbar_actions.append(self.supplementation_page_nameLink(page)) |
b06ef2a53efa
'make pylint', fixed lots of minor stuff found by pylint (and there is still lots left to do)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1918
diff
changeset
|
1214 elif editbar_item == 'Comments': |
b06ef2a53efa
'make pylint', fixed lots of minor stuff found by pylint (and there is still lots left to do)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1918
diff
changeset
|
1215 # we just use <a> to get same style as other links, but we add some dummy |
b06ef2a53efa
'make pylint', fixed lots of minor stuff found by pylint (and there is still lots left to do)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1918
diff
changeset
|
1216 # link target to get correct mouseover pointer appearance. return false |
2286
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
1217 # keeps the browser away from jumping to the link target:: |
4346
dfb09cf670f9
fix editbar hidden comment link cosmetics for sidebar themes (hide the complete list element)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
4091
diff
changeset
|
1218 editbar_actions.append('<a href="#" class="nbcomment" onClick="toggleComments();return false;">%s</a>' % _('Comments')) |
1920
b06ef2a53efa
'make pylint', fixed lots of minor stuff found by pylint (and there is still lots left to do)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1918
diff
changeset
|
1219 elif editbar_item == 'Edit': |
b06ef2a53efa
'make pylint', fixed lots of minor stuff found by pylint (and there is still lots left to do)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1918
diff
changeset
|
1220 editbar_actions.append(self.editorLink(page)) |
b06ef2a53efa
'make pylint', fixed lots of minor stuff found by pylint (and there is still lots left to do)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1918
diff
changeset
|
1221 elif editbar_item == 'Info': |
b06ef2a53efa
'make pylint', fixed lots of minor stuff found by pylint (and there is still lots left to do)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1918
diff
changeset
|
1222 editbar_actions.append(self.infoLink(page)) |
b06ef2a53efa
'make pylint', fixed lots of minor stuff found by pylint (and there is still lots left to do)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1918
diff
changeset
|
1223 elif editbar_item == 'Subscribe': |
b06ef2a53efa
'make pylint', fixed lots of minor stuff found by pylint (and there is still lots left to do)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1918
diff
changeset
|
1224 editbar_actions.append(self.subscribeLink(page)) |
b06ef2a53efa
'make pylint', fixed lots of minor stuff found by pylint (and there is still lots left to do)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1918
diff
changeset
|
1225 elif editbar_item == 'Quicklink': |
b06ef2a53efa
'make pylint', fixed lots of minor stuff found by pylint (and there is still lots left to do)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1918
diff
changeset
|
1226 editbar_actions.append(self.quicklinkLink(page)) |
b06ef2a53efa
'make pylint', fixed lots of minor stuff found by pylint (and there is still lots left to do)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1918
diff
changeset
|
1227 elif editbar_item == 'Attachments': |
b06ef2a53efa
'make pylint', fixed lots of minor stuff found by pylint (and there is still lots left to do)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1918
diff
changeset
|
1228 editbar_actions.append(self.attachmentsLink(page)) |
b06ef2a53efa
'make pylint', fixed lots of minor stuff found by pylint (and there is still lots left to do)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1918
diff
changeset
|
1229 elif editbar_item == 'ActionsMenu': |
b06ef2a53efa
'make pylint', fixed lots of minor stuff found by pylint (and there is still lots left to do)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1918
diff
changeset
|
1230 editbar_actions.append(self.actionsMenu(page)) |
1742
7b419bd3b2cf
theme/__init__.py: edit_bar dependend on config
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
1735
diff
changeset
|
1231 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
|
1232 |
7487f00da9bc
theme/__init__.py: setup for a supplementation page in editbar_items
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
1715
diff
changeset
|
1233 def supplementation_page_nameLink(self, page): |
3038
07ab9d4b8bb8
bug fix for 1.6.0SupplementationAndAccessRights (thanks to Boleslaw Kulbabinski) (ported from 1.6)
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3036
diff
changeset
|
1234 """Return a link to the discussion page |
07ab9d4b8bb8
bug fix for 1.6.0SupplementationAndAccessRights (thanks to Boleslaw Kulbabinski) (ported from 1.6)
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3036
diff
changeset
|
1235 |
07ab9d4b8bb8
bug fix for 1.6.0SupplementationAndAccessRights (thanks to Boleslaw Kulbabinski) (ported from 1.6)
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3036
diff
changeset
|
1236 If the discussion page doesn't exist and the user |
07ab9d4b8bb8
bug fix for 1.6.0SupplementationAndAccessRights (thanks to Boleslaw Kulbabinski) (ported from 1.6)
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3036
diff
changeset
|
1237 has no right to create it, show a disabled link. |
3070 | 1238 """ |
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
|
1239 _ = self.request.getText |
3038
07ab9d4b8bb8
bug fix for 1.6.0SupplementationAndAccessRights (thanks to Boleslaw Kulbabinski) (ported from 1.6)
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3036
diff
changeset
|
1240 suppl_name = self.request.cfg.supplementation_page_name |
07ab9d4b8bb8
bug fix for 1.6.0SupplementationAndAccessRights (thanks to Boleslaw Kulbabinski) (ported from 1.6)
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3036
diff
changeset
|
1241 suppl_name_full = "%s/%s" % (page.page_name, suppl_name) |
07ab9d4b8bb8
bug fix for 1.6.0SupplementationAndAccessRights (thanks to Boleslaw Kulbabinski) (ported from 1.6)
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3036
diff
changeset
|
1242 |
07ab9d4b8bb8
bug fix for 1.6.0SupplementationAndAccessRights (thanks to Boleslaw Kulbabinski) (ported from 1.6)
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3036
diff
changeset
|
1243 test = Page(self.request, suppl_name_full) |
07ab9d4b8bb8
bug fix for 1.6.0SupplementationAndAccessRights (thanks to Boleslaw Kulbabinski) (ported from 1.6)
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3036
diff
changeset
|
1244 if not test.exists() and not self.request.user.may.write(suppl_name_full): |
3164
c25bc6e9ad61
i18n.getText: removing wrong (old) kw arguments from _() calls
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3139
diff
changeset
|
1245 return ('<span class="disabled">%s</span>' % _(suppl_name)) |
3038
07ab9d4b8bb8
bug fix for 1.6.0SupplementationAndAccessRights (thanks to Boleslaw Kulbabinski) (ported from 1.6)
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3036
diff
changeset
|
1246 else: |
3164
c25bc6e9ad61
i18n.getText: removing wrong (old) kw arguments from _() calls
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3139
diff
changeset
|
1247 return page.link_to(self.request, text=_(suppl_name), |
3038
07ab9d4b8bb8
bug fix for 1.6.0SupplementationAndAccessRights (thanks to Boleslaw Kulbabinski) (ported from 1.6)
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3036
diff
changeset
|
1248 querystr={'action': 'supplementation'}, css_class='nbsupplementation', 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
|
1249 |
286
08cd0e9b9369
do not show gui editor for non-wiki format pages
Thomas Waldmann <tw@waldmann-edv.de>
parents:
237
diff
changeset
|
1250 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
|
1251 """ 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
|
1252 |
08cd0e9b9369
do not show gui editor for non-wiki format pages
Thomas Waldmann <tw@waldmann-edv.de>
parents:
237
diff
changeset
|
1253 The GUI editor currently only works for wiki format. |
3000
344e33587519
do not show 2 editor links in edit_bar if text editor is forced by admin (port from 1.6)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2996
diff
changeset
|
1254 For simplicity, we also tell it does not work if the admin forces the text editor. |
286
08cd0e9b9369
do not show gui editor for non-wiki format pages
Thomas Waldmann <tw@waldmann-edv.de>
parents:
237
diff
changeset
|
1255 """ |
3000
344e33587519
do not show 2 editor links in edit_bar if text editor is forced by admin (port from 1.6)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2996
diff
changeset
|
1256 is_wiki = page.pi['format'] == 'wiki' |
344e33587519
do not show 2 editor links in edit_bar if text editor is forced by admin (port from 1.6)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2996
diff
changeset
|
1257 gui_disallowed = self.cfg.editor_force and self.cfg.editor_default == 'text' |
344e33587519
do not show 2 editor links in edit_bar if text editor is forced by admin (port from 1.6)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2996
diff
changeset
|
1258 return is_wiki and not gui_disallowed |
344e33587519
do not show 2 editor links in edit_bar if text editor is forced by admin (port from 1.6)
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2996
diff
changeset
|
1259 |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1260 |
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
|
1261 def editorLink(self, page): |
2286
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
1262 """ Return a link to the editor |
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
1263 |
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
|
1264 If the user can't edit, return a disabled edit link. |
2286
01f05e74aa9c
Big PEP8 and whitespace cleanup
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
2197
diff
changeset
|
1265 |
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
|
1266 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
|
1267 (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
|
1268 """ |
3527
ca50da801291
theme.__init__: removes excluded actions from theme
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3510
diff
changeset
|
1269 if 'edit' in self.request.cfg.actions_excluded: |
ca50da801291
theme.__init__: removes excluded actions from theme
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3510
diff
changeset
|
1270 return "" |
ca50da801291
theme.__init__: removes excluded actions from theme
Reimar Bauer <rb.proj AT googlemail DOT com>
parents:
3510
diff
changeset
|
1271 |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1272 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
|
1273 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
|
1274 return self.disabledEdit() |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1275 |
98
8375a3795ff8
theme: refactor editabr to make it easier to customize by theme authors
Nir Soffer <nirs@freeshell.org>
parents:
97
diff
changeset
|
1276 _ = 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
|
1277 querystr = {'action': 'edit'} |
1003
e8aef4cb2b34
whitespace-only cleanup and minor style changes
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
992
diff
changeset
|
1278 |
286
08cd0e9b9369
do not show gui editor for non-wiki format pages
Thomas Waldmann <tw@waldmann-edv.de>
parents:
237
diff
changeset
|
1279 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
|
1280 if self.showBothEditLinks() and guiworks: |
3164
c25bc6e9ad61
i18n.getText: removing wrong (old) kw arguments from _() calls
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
3139
diff
changeset
|
1281 text = _('Edit (Text)') |
1015
e527eea93da5
make more use of page.link_to in theme code
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
1010
diff
changeset
|
1282 querystr['editor'] = 'text' |
869
0152984f76ee
use rel nofollow for action links
Thomas Waldmann <tw AT waldmann-edv DOT de>
parents:
826
diff
changeset
|
1283 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
|
1284 else: |
3164
c25bc6e9ad61
i18n |