]> CyberLeo.Net >> Repos - SourceForge/phpwiki.git/blob - themes/Portland/themeinfo.php
Harmonize file footer
[SourceForge/phpwiki.git] / themes / Portland / themeinfo.php
1 <?php
2 // Avoid direct call to this file.
3 // PHPWIKI_VERSION is defined in lib/prepend.php
4 if (!defined('PHPWIKI_VERSION')) {
5     header("Location: /");
6     exit;
7 }
8
9 // rcs_id('$Id$');
10
11 /*
12  * This file defines an appearance ("theme") of PhpWiki similar to the Portland Pattern Repository.
13  */
14
15 require_once('lib/WikiTheme.php');
16
17 class WikiTheme_Portland extends WikiTheme {
18
19     function linkUnknownWikiWord($wikiword, $linktext = '') {
20         global $request;
21         if (isa($wikiword, 'WikiPageName')) {
22             $default_text = $wikiword->shortName;
23             $wikiword = $wikiword->name;
24         }
25         else {
26             $default_text = $wikiword;
27         }
28       
29         $url = WikiURL($wikiword, array('action' => 'create'));
30         $link = HTML::span(HTML::a(array('href' => $url, 'rel' => 'nofollow'), '?'));
31
32         if (!empty($linktext)) {
33             $link->unshiftContent(HTML::u($linktext));
34             $link->setAttr('class', 'named-wikiunknown');
35         }
36         else {
37             $link->unshiftContent(HTML::u($this->maybeSplitWikiWord($default_text)));
38             $link->setAttr('class', 'wikiunknown');
39         }
40
41         return $link;
42     }
43     function getRecentChangesFormatter ($format) {
44         include_once($this->file('lib/RecentChanges.php'));
45         if (preg_match('/^rss|^sidebar/', $format))
46             return false;       // use default
47         return '_Portland_RecentChanges_Formatter';
48     }
49
50     function getPageHistoryFormatter ($format) {
51         include_once($this->file('lib/RecentChanges.php'));
52         if (preg_match('/^rss|^sidebar/', $format))
53             return false;       // use default
54         return '_Portland_PageHistory_Formatter';
55     }
56
57     function load() {
58         // CSS file defines fonts, colors and background images for this
59         // style.  The companion '*-heavy.css' file isn't defined, it's just
60         // expected to be in the same directory that the base style is in.
61
62         $this->setDefaultCSS('Portland', 'portland.css');
63         $this->addAlternateCSS(_("Printer"), 'phpwiki-printer.css', 'print, screen');
64         $this->addAlternateCSS(_("Modern"), 'phpwiki-modern.css');
65         $this->addAlternateCSS('PhpWiki', 'phpwiki.css');
66
67         /**
68          * The logo image appears on every page and links to the HomePage.
69          */
70         $this->addImageAlias('logo', WIKI_NAME . 'logo.png');
71
72         /**
73          * The Signature image is shown after saving an edited page. If this
74          * is set to false then the "Thank you for editing..." screen will
75          * be omitted.
76          */
77         $this->addImageAlias('signature', WIKI_NAME . "Signature.png");
78         // Uncomment this next line to disable the signature.
79         //$this->addImageAlias('signature', false);
80
81         /*
82          * Link icons.
83          */
84         //$this->setLinkIcon('http');
85         //$this->setLinkIcon('https');
86         //$this->setLinkIcon('ftp');
87         //$this->setLinkIcon('mailto');
88         //$this->setLinkIcon('interwiki');
89         //$this->setLinkIcon('*', 'url');
90
91         $this->setButtonSeparator(' ');
92
93         /**
94          * WikiWords can automatically be split by inserting spaces between
95          * the words. The default is to leave WordsSmashedTogetherLikeSo.
96          */
97         $this->setAutosplitWikiWords(false);
98
99         /*
100          * You may adjust the formats used for formatting dates and times
101          * below.  (These examples give the default formats.)
102          * Formats are given as format strings to PHP strftime() function See
103          * http://www.php.net/manual/en/function.strftime.php for details.
104          * Do not include the server's zone (%Z), times are converted to the
105          * user's time zone.
106          */
107         $this->setDateFormat("%B %d, %Y", false);
108
109     }
110 }
111
112 $WikiTheme = new WikiTheme_Portland('Portland');
113
114 // Local Variables:
115 // mode: php
116 // tab-width: 8
117 // c-basic-offset: 4
118 // c-hanging-comment-ender-p: nil
119 // indent-tabs-mode: nil
120 // End: 
121 ?>