Installation Instructions

Installation instructions for FixFlow skin

Install in the usual way by unzipping into skin directory. A directory named fixflow will be created with all the files. Upload the files in this folder, except the sample pages in the folder wiki.d, which can be uploaded into wiki.d. or created from the wiki, as described below.

If you have installed FixFlow version 1 then please rename this skin directory first. You may later want to delete it. Version 2 has a number of files renamed, so an installation on top of the previous one is not recommended

I advise to read the following instructions first and create the foot menu and top menu pages first using your current skin or the pmwiki default skin, since these pages are needed to display the links for edit, history, print view and other page-actions. See the sample page contents below.

If you have installed the GeminiTwo skin then you got already the menu pages for FixFlow. FixFlow and GeminiTwo share the same menu pages and RightBar pages and can co-exist together. They share the same cookies for setting style options, so a colour or font change in FixFlow effects also GeminiTwo.

Files included

 
README.txt        this readme file.
skin.php          skin script with lots of configuration settings.
skin-fixflow.tmpl skin html template file.
stylechange.php   script for changing the style options, based on setting cookies.
altforms.php      script with alternative forms for edit, history and uploads window.
layout-main.css   main layout css file (Cascading Style Sheet).
layout-left.css   layout css file for layout with sidebar left.
layout-right.css  layout css file for layout with sidebar right.
ie*.css files for fixing the layout for use with Internet Explorer. 
c-*.css files for various colour schemes.
font-*.css files for various font schemes.
rb-*.css files for various rightbar styles.
images/*.gif *.jpg images for various colour schemes in image folder.
wiki.d/* sample wiki pages for configuring the top and bottom action link menu
and the page header and footer. 

Editing configuration files

To set up FixFlow as the default skin add to config.php:

 $Skin = 'fixflow';

If you use skinchange.php add 'fixflow' => 'fixflow'; to the $PageSkinList array.

To set new defaults for font and color scheme you need to edit the skin.php file in skins/fixflow. Near the top you find the lines where you can replace the default file names with the ones of you preference. you need to enter the exact filename (not the path or folder name).

Underneath are arrays for the various options, which can be expanded to include different custom files for colour and font schemes, and layouts.

Setting up the pages containing action links

All the page actions are configured on wiki pages, not in the template, so they are easily customisable. If you wish your site to look more "normal" without displaying any edit links you can remove these. This will just hide the links, but is not a replacement for proper site security, in case that is needed. You can also add your favourite links etc. You are not restricted to page actions!

Create a page called PmWikiAdmin.PageFootMenu with the following content for the standard page actions: These will appear in the page foot.

 
*[[{$Name}?action=edit | Edit]]
*[[{$Name}?action=diff | History]] 
*[[{$Name}?action=print | Print View]]
*[[{$Name}?action=upload | Attach File]]
*[[Main.SearchWiki?q={$Name} | Cross Ref]]
*[[Main.SearchWiki?q={$Group}/ | List Group]]
*[[Main.Search | Wiki Search]] 

[[<<]]
->''Page last modified {$LastModified}''

Create a page called PmWikiAdmin.PageTopMenu with the following content for the main actions: These will apear in the top right corner.

 
*[[{$Name}?action=edit | Edit]]
*[[{$Name}?action=diff | History]]
*[[{$Name}?action=print | Print View]]
*[[RecentChanges]] 

Setting up the Header (header title and logo)

Previously the template contained a link to a logo image, and its location was specified in config.php. With FixFlow 8 onwards the header is configured from a wiki page:

Create a page called PmWikiAdmin.PageHeader with a link to the logo image and/or any header title text. Example of logo image, linking to Main.Homepage, and uploaded to the PmWikiadmin group:

 [[Main.HomePage| Attach:PmWikiAdmin.PageHeader/logo.gif]]

Best effect is achieved by creating a transparent gif image for the logo. To fit the logo into the sidebar it should not be wider than 160px. A short title-text can be used instead, or in addition, to a logo.

PageHeader pages can also be created in wiki groups, and any such page will be displayed instead of the default on ein the PmwikiAdmin group. This allows for customising the header for various groups.

Setting up a Page Footer

Create a page called PmwikiAdmin.PageFooter for any wiki-site wide footer information (like copyright notices etc). Groups can also have their own PageFooter pages for showing group-specific footer information.

Setting up different defaults in skin.php

Different defaults can be set in skin.php by setting different keywords for the $Default*** variables near the top of the file.

Style options can be limited by commenting out lines from the option arrays ($PageColorList etc) or expanded by adding new options and adding new css files for colour or font schemes.

Style switching (using the cookie script stylechange.php) can be disabled by setting

 $EnableStyleOptions = 0;

The display of the group name in the titlebar can be disabled by setting

 $EnableGroupTitle = 0;

The group name (as link) can be alternatively displayed in the top menu bar by adding

 *[[{$Group}]] to the PageTopMenu page. Likewise adding *{$Name} adds the full page name

of the current page to the top menu, which may be different from the page title displayed in the titlebar.

The display of the small searchbox at the top of the sidebar can be disabled by setting

 $EnableSidebarSearchbox = 0;

As an alternative a small searchbox can be added anywhere into the sidebar (for instance the bottom of the sidebar), or the top menu, or foot menu, by adding markup (:searchbox:) to the relevant configuration page. If alternative skins are used for the wiki and a searchbox added through (:searchbox:) markup, this searchbox can be prevented from showing in the other skins by doing the following: Add the markup to the sidebar in this way:

 (:if enabled smallsearchbox:)(:searchbox:)(:if:)

Define in config.php the 'if enabled' conditional in this way:

 
 # adds 'enabled' conditional markup:
 $Conditions['enabled'] = "(boolean)\$GLOBALS[\$condparm]";

A RightBar page can be shown for all pages by setting

 SetTmplDisplay('PageRightFmt', 1);

You can still disable the rightbar for selected pages using markup (:noright:).

Setting up a page with options for switching styles

For all the different style switch settings I use a page called Main.StyleOptions. Here is the current content (some lines removed, note that this is slightly different than the one used for the GeminiTwo skin):

 
(:table width=70% :)
(:cell valign=top:)
'''Colour Schemes'''
*[[{$Name}?setcolor=blue | Blue colours]] 
*[[{$Name}?setcolor=sand | Sand colours]] 
*[[{$Name}?setcolor=sky| Sky colours]]
*[[{$Name}?setcolor=sky-blue| Sky-Blue colours]]
*[[{$Name}?setcolor=lavender | Lavender colours]]
*[[{$Name}?setcolor=lilac | Lilac colours]]
*[[{$Name}?setcolor=parch-blue | Parchment Blue]]
*[[{$Name}?setcolor=parch-red| Parchment Red]]
*[[{$Name}?setcolor=parch-yellow | Parchment Yellow]]
*[[{$Name}?setcolor=pink| Pink colours]]
*[[{$Name}?setcolor=red-gold| Red-Gold colours]]
*[[{$Name}?setcolor=green-gold| Green-Gold colours]]
*[[{$Name}?setcolor=night| Night colours]]

'''Fonts'''
*[[{$Name}?setfont=verdana | Verdana Font]]
*[[{$Name}?setfont=sans | Sans mixed]]
*[[{$Name}?setfont=times| Times Font]]
*[[{$Name}?setfont=palatino| Palatino Linotype]]
*[[{$Name}?setfont=monospace | Lucida Monospace]]
*[[{$Name}?setfont=courier | Typewriter]]
*[[{$Name}?setfont=comic | Comic Font]]

(:cell valign=top:)
'''Layout'''
*[[{$Name}?setlayout=left| Sidebar left]]
*[[{$Name}?setlayout=right | Sidebar right]]
*[[{$Name}?setmenu=fixed| Sidebar fixed]]
*[[{$Name}?setmenu=scroll| Sidebar scrolls]]

'''Right Bar'''
*[[{$Name}?setrb=3 | Wide ]]
*[[{$Name}?setrb=2| Normal ]]
*[[{$Name}?setrb=1| Narrow ]]
*[[{$Name}?setrb=0| Hide ]]

'''Menus''' 
*[[Main/SideBar?action=edit | Edit Sidebar]]
*[[Main/RightBar| Right Bar]]
*[[PmWikiAdmin/PageTopMenu?action=edit | Page Top Menu]]
*[[PmWikiAdmin/PageFootMenu?action=edit | Page Foot Menu]]
*[[PmWikiAdmin/PageFooter?action=edit | Page Footer]]
*[[PmWikiAdmin/PageHeader?action=edit | Page Header]]
(:tableend:)

Setting up RightBar pages

For the right bar box you can create a page called Main.RightBar and add content or use (:include ..mypage.. :) there.

The rightbar is displayed as default only for specific pages or groups which have the custom markup (:showright: included. To show the rightbar as default on all pages change in skin.php SetTmplDisplay(...) to SetTmplDisplay('PageRightFmt', 1);

A small red cross gif image redbt.gif is included in th eimage folder, which could be used to create a visual button for switching the rightbar off. Upload the image into some image folder and in the page RightBar put:

  urlpathto/redbt.gif"Close Rightbar" 

The ?rb=0 switches the page to show it with no rightbar displayed. If you click on the page title to reload the page, or go to a different page, the rightbar will be shown again.

Loading order of configuration pages

PmWiki will use any group specific pages for page actions, right bar, page footer and header, like Mygroup.RightBar, Mygroup.PageTopMenu, Mygroup.PageFootMenu, Mygroup.PageFooter, MyGroup.PageHeader, in preference to those pages in the Main group, and those in preference to those pages in the PmWikiAdmin group. The loading of the configuration pages from the Main group as a secondary default page location has been kept to help upgrading from older versions, but the new PmWikiAdmin group is the preferred page location for configuration files, as it will receive special protection in future Pmwiki versions. You can create configuration pages in any group, setting up custom actions for those groups, or custom right bars, or custom footers.

Special directives and edit forms

The directives (:nofooter:), (:noheader:), (:noleft:), (:noright:), (:notitle:) etc work well with this skin. I added custom markup (:notopmenu:) and (:nofootmenu:), which may disable the top and bottom page menus, defined in Main.PageTopMenu and Main.PageFootMenu. A custom markup (:showright:) can be used on pages or in a GroupHeader page to show the rightbar, if the rightbar is by default not shown through SetTmplDisplay('PageRightFmt', 0); in skin.php.

The following markups are included in altforms.php, as are a number of modified forms for edit, history and uploads. If any of these are already in your config.php you may need to comment out those lines in skin.php. (:noleft:) and (:noright:) (:notopmenmu:) (:nofootmenu:) (:showright:)

Categories: Skins