2 // Avoid direct call to this file.
3 // PHPWIKI_VERSION is defined in lib/prepend.php
4 if (!defined('PHPWIKI_VERSION')) {
12 * This file defines an appearance ("theme") of PhpWiki similar to the
13 * Wordpress Pattern Repository.
14 * @author: Mike Pickering
17 require_once('lib/WikiTheme.php');
19 class WikiTheme_Wordpress extends WikiTheme {
21 function linkUnknownWikiWord($wikiword, $linktext = '') {
23 if (isa($wikiword, 'WikiPageName')) {
24 $default_text = $wikiword->shortName;
25 $wikiword = $wikiword->name;
28 $default_text = $wikiword;
31 $url = WikiURL($wikiword, array('action' => 'create'));
32 $link = HTML::span(HTML::a(array('href' => $url, 'rel' => 'nofollow'), '?'));
34 if (!empty($linktext)) {
35 $link->unshiftContent(HTML::u($linktext));
36 $link->setAttr('class', 'named-wikiunknown');
39 $link->unshiftContent(HTML::u($this->maybeSplitWikiWord($default_text)));
40 $link->setAttr('class', 'wikiunknown');
42 if ($request->getArg('frame'))
43 $link->setAttr('target', '_top');
47 function getRecentChangesFormatter ($format) {
48 include_once($this->file('lib/RecentChanges.php'));
49 if (preg_match('/^rss|^sidebar/', $format))
50 return false; // use default
51 return '_Wordpress_RecentChanges_Formatter';
54 function getPageHistoryFormatter ($format) {
55 include_once($this->file('lib/RecentChanges.php'));
56 if (preg_match('/^rss|^sidebar/', $format))
57 return false; // use default
58 return '_Wordpress_PageHistory_Formatter';
62 // CSS file defines fonts, colors and background images for this
63 // style. The companion '*-heavy.css' file isn't defined, it's just
64 // expected to be in the same directory that the base style is in.
66 $this->setDefaultCSS('Wordpress', 'Wordpress.css');
67 $this->addAlternateCSS(_("Printer"), 'phpwiki-printer.css', 'print, screen');
68 $this->addAlternateCSS(_("Modern"), 'phpwiki-modern.css');
69 $this->addAlternateCSS('PhpWiki', 'phpwiki.css');
72 * The logo image appears on every page and links to the HomePage.
74 //$this->addImageAlias('logo', 'logo.png');
77 * The Signature image is shown after saving an edited page. If this
78 * is not set, any signature defined in index.php will be used. If it
79 * is not defined by index.php or in here then the "Thank you for
80 * editing..." screen will be omitted.
82 $this->addImageAlias('signature', 'signature.png');
87 //$this->setLinkIcon('http');
88 //$this->setLinkIcon('https');
89 //$this->setLinkIcon('ftp');
90 //$this->setLinkIcon('mailto');
91 //$this->setLinkIcon('interwiki');
92 //$this->setLinkIcon('*', 'url');
94 $this->setButtonSeparator(' ');
97 * WikiWords can automatically be split by inserting spaces between
98 * the words. The default is to leave WordsSmashedTogetherLikeSo.
100 $this->setAutosplitWikiWords(false);
103 * You may adjust the formats used for formatting dates and times
104 * below. (These examples give the default formats.)
105 * Formats are given as format strings to PHP strftime() function See
106 * http://www.php.net/manual/en/function.strftime.php for details.
107 * Do not include the server's zone (%Z), times are converted to the
110 $this->setDateFormat("%B %d, %Y", false);
114 $WikiTheme = new WikiTheme_Wordpress('Wordpress');
117 // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
118 // (c-file-style: "gnu")
123 // c-hanging-comment-ender-p: nil
124 // indent-tabs-mode: nil