[pmwiki-users] Playing with "Site" before it comes
Dominique Faure
dominique.faure.1 at free.fr
Wed Jun 22 16:55:12 CDT 2005
Hi,
Few days ago, I tried to configure myself a beta38 version to handle the
mythic "Site" group, and I've been happily surprised is was so easy: The
resulting wiki is almost functional since I only tested what I need
everyday. I surely have forgotten things (noticeably nothing has been done
concerning i18n).
Here's the required steps:
1/ Depending on its storage location (wiki.d or wikilib.d directories),
rename or copy following wikipages (a big thanks to the
RenamePage/DeletePage cookbook recipes here...):
Main.PageNotFound => Site.PageNotFound
Main.AllRecentChanges => Site.AllRecentChanges
Main.Blocklist => Site.Blocklist
Main.SearchWiki => Site.Search
Main.WikiSandbox => Site.WikiSandbox
Main.ApprovedUrls => Site.ApprovedUrls
Main.SideBar => Site.SideBar
PmWiki.EditQuickReference => Site.EditQuickReference
PmWiki.UploadQuickReference => Site.UploadQuickReference
PmWiki.WikiHelp => Site.WikiHelp
2/ Edit your config.php file to include following code subsets:
===8<---
# Before all, set the global variable...
SDV($SiteGroup, 'Site');
# ...and make it available for wikipages.
Markup('{$var}','>{$fmt}',
'/{\\$(Version|Author|UrlPage|DefaultName|DefaultGroup|AuthId|SiteGroup)}/e',
"\$GLOBALS['$1']");
# Fix renamed pages code references (1)
$PageNotFound = "$SiteGroup.PageNotFound";
$RecentChangesFmt["$SiteGroup.AllRecentChanges"] =
$RecentChangesFmt['Main.AllRecentChanges'];
unset($RecentChangesFmt['Main.AllRecentChanges']);
# Fix upload page
$PageUploadFmt = array("
<div id='wikiupload'>
<h2 class='wikiaction'>$[Attachments for] \$FullName</h2>
<h3>\$UploadResult</h3>
<form enctype='multipart/form-data' action='\$PageUrl' method='post'>
<input type='hidden' name='n' value='\$FullName' />
<input type='hidden' name='action' value='postupload' />
<table border='0'>
<tr><td align='right'>$[File to upload:]</td><td><input
name='uploadfile' type='file' /></td></tr>
<tr><td align='right'>$[Name attachment as:]</td>
<td><input type='text' name='upname' value='\$UploadName' /><input
type='submit' value=' $[Upload] ' /><br />
</td></tr></table></form></div>",
'wiki:$[$SiteGroup.UploadQuickReference]');
[...]
# Fix renamed pages code references (2)
$ApprovedUrlPagesFmt = array("$SiteGroup.ApprovedUrls");
$HandleEditFmt = array(&$PageStartFmt, &$PageEditFmt,
'wiki:$[$SiteGroup.EditQuickReference]',
&$PagePreviewFmt, &$PageEndFmt);
[...]
# Following alterations are only needed for specific Cookbook recipes
# [Cookbook.Blocklist]
$BlocklistPages = "$SiteGroup.Blocklist";
include_once('cookbook/blocklist.php');
# [Cookbook.EditTemplates]
$EditTemplatesFmt = array('$Group.Template','$SiteGroup.MasterTemplate');
# [Cookbook.AllGroupHeader]
$GroupHeaderFmt = '(:include $SiteGroup.AllGroupHeader:)(:nl:)(:include
$Group.GroupHeader:)(:nl:)';
$GroupFooterFmt = '(:include $SiteGroup.AllGroupFooter:)(:nl:)(:include
$Group.GroupFooter:)(:nl:)';
[...]
===8<---
3/ Edit your skin .tmpl file to handle moved pages. Modifications given
below are for default pmwiki skin, you must adapt them to your config.
Change search form:
===8<---
[...]
<form action='$ScriptUrl/$[Main/SearchWiki]'>
<input type='hidden' name='n' value='$[Main/SearchWiki]' />
<a href='$ScriptUrl/$[Main/SearchWiki]'>$[SearchWiki]</a>:
[...]
===8<---
to:
===8<---
<form action='$ScriptUrl/$[$SiteGroup/Search]'>
<input type='hidden' name='n' value='$[$SiteGroup/Search]' />
<a href='$ScriptUrl/$[$SiteGroup/Search]'>$[Search]</a>:
===8<---
Change footer:
===8<---
[...]
<a href='$ScriptUrl/$[PmWiki/WikiHelp]'>$[WikiHelp]</a> -
<a href='$ScriptUrl/$[Main/SearchWiki]'>$[SearchWiki]</a></div>
[...]
===8<---
to:
===8<---
<a href='$ScriptUrl/$[$SiteGroup/Help]'>$[WikiHelp]</a> -
<a href='$ScriptUrl/$[$SiteGroup/Search]'>$[Search]</a></div>
===8<---
4/ That's all!
Regards,
Dominique
More information about the pmwiki-users
mailing list