[pmwiki-users] Setting Skins for Individual Groups

Patrick R. Michaud pmichaud at pobox.com
Sat Mar 11 07:07:30 CST 2006


On Sat, Mar 11, 2006 at 09:32:54AM +0000, Hans wrote:
> Saturday, March 11, 2006, 9:18:54 AM, Philip wrote:
> > Anyway, here's what I'm trying to do: I'd like it so that an individual
> > group, or an individual page, can have it's own unique skin. I'd prefer
> > not to use cookies (unless I have to), and I especially don't want to
> > have to use actions, like ?setskin="" or ?skin="" (or anything that
> > changes the pages URL). And, finally, I'd need it so that a "non-admin"
> > user can set the skin for that particular group or page.
> 
> On pmwiki.org the skins for individual pages are set by the admin.
> To set a skin from the wiki page itself you can add markup by ading to
> config.php:
> 
> # Add a (:skin skinname:) markup
> Markup('skin', 'fulltext',
>   '/\\(:skin\\s+([-\\w]+)\\s*:\\)/e',
>   "PZZ(SetSkin(\$pagename,'$1'))");
> 
> Then you can use in a page (for the page) or in a group's GroupHeader
> (for the group) markup like (:skin EasySkin:) to set the skin to
> EasySkin.

While I designed PmWiki so that something like this might be
possible, I wonder what happens when using (:skin xyz:) on a
skin that defines custom markup?

My guess is that any skin-defined markups won't work, since the skin
isn't loaded until after markup processing has begin and the markup
tables have been built.

Does this seem like it would be a problem for any skins...?

We could see about adjusting the MarkupToHTML function to 
reload the markup rules and rebuild the markup table if the 
rules change in the middle of processing.  But I'm curious to
know if it's a problem at all -- could someone test it and
let me know?

Pm




More information about the pmwiki-users mailing list