Howtos, keep that body moving, or freeze, a dream of productivity, frozen illusions.
Keep an eye on this page for all the site specifics that are not in the general PmWiki help pages.
Also keep an eye on The Dreams, the info is spread a bit over two places.
For bug reports or security issues please use the Discuss link (top right), for feature requests please use Help.Todo, feel free to add items, either in the (talk) page here or there.
The idea is to mostly have a manual for working stuff here and a wish list there as good as it goes ...
The Creole markup extensions have been switched on, this allows for some easier markup in places. See the cheat sheet on the right.
Every wiki page has an associated talk page which is meant to discuss the actual page. You can reach the talk page by using the Discuss link from the page menu in the top right corner of each page.
Talk pages can be edited by registered and logged-in forum members only. To make a link to a talk page just append -Talk to the page name. For instance use [[Help.SiteSpecificMarkup-Talk | this]] to get this.
It is considered to be polite to sign your messages on a Talk page. To sign a message you can just use three tildes in row (~
~
~
) which will be expanded to your forum user name when the page is saved. To get a timestamped sign you can use four tildes instead (~
~
~
~
).
This currently does not work properly for user names having brackets in them, the underlying [[~user name]] markup breaks on that (this is an item in the Todo list already).
See below for a fix of this.
Be sure to read the uploads help for the wiki at http://www.pmwiki.org/wiki/PmWiki/Uploads - especially the bit about no spaces in file names.
Site wide icons are to be found in Site.Icons
To include a site wide icon use markup like
Attach:Site.Icons/download.gif
to get
Please upload icon like images to be used on many pages to Site.Icons
Use {track: xxxxx | track title} to link to music posted on the forums, xxxxx being the track ID.
For example the forum track http://electro-music.com/forum/download.php?id=33479 (from this page) has track ID 33479 and is called Muied Lumens - music for walkmen.
To get a listen and download link for this track use the markup
{track: 33479 | Muied Lumens - music for walkmen}
which results in
Where the first icon is a direct listen and the second a download - the direct listen seems to not work in chrome.
You can look up track IDs in the forum's media page by hovering your mouse over the track title or the speaker symbol in front of it.
By using links this way the listen counts on the forum will be maintained.
Use this sparingly, forum posts are preferred, yet local audio illustrations could make sense. Use the audio tags
(:audio myaudio.mp3:) or (:audio myaudio.ogg:)
(where ogg is preferred over mp3 as it works in most browsers) to define an inline audio element. After that the audio file will need to be uploaded, it works the same way as an image attach / upload. Wav files should work too btw ... but they are getting large quickly ...
You can also not specify a file extension in the the argument, like
(:audio myaudio:)
and then upload both an mp3 and an ogg file, the user's browser will then select what it likes best.
For extra options have a look at http://www.pmwiki.org/wiki/Cookbook/Audio5 , please do not use auto starting audio.
the following setup is in confg.php:
$AudioPreload = 'auto'; // (auto|metadata|none) $AudioAutoplay = 0; $AudioControls = 1; $AudioLoop = 0;
Audio uploaded to the wiki is not shared with the forum.
An example:
(:audio test07.ogg:) - Blue Hell - test07
gives: - Blue Hell - test07
Just use a YouTube, Vimeo, GoogleVideo or FlickrVid link - it should expand into a player box. For an example see http://electro-music.com/wiki/pmwiki.php?n=Articles.FeedbackOrNoInputMixing - scroll down a bit.
For an example see the NM Classic Archive. This works by first making a special page in the JavaScript section, in this case JavaScript.NordModularArchive and then including that page in the page that is to show the embedded site, i.e. that NM Classic Archive article mentioned before.
The special page builds an iFrame that is automatically resized depending on the contents of the frame. This special page can only be made by a wiki admin - so if you want something like this please ask an admin for support.
forum color example
The following CSS styles have been added to the main style sheet:
* electro_blue is #255293 or rgb( 37, 82, 147) dark blue site color * electro_back is #ffffff or rgb( 255, 255, 255) white * electro_light is #efefef or rgb( 239, 239, 239) lightest table cell color * electro_mid is #dee3e7 or rgb( 222, 227, 231) a mid color for table cells * electro_dark is #d2d6df or rgb( 210, 214, 223) the darker table cell color * electro_hover is #eb6f6f or rgb( 204, 111, 111) sort of red, link hover color
So, for instance, to make a bit of text electro_hover you can use
%class=electro_hover%a bit of text electro_hover%%
for the markup.
The following extensions were installed 1
name | version | web-link | comment |
---|---|---|---|
AuthPhpbb2Sso | 080401 | http://www.pmwiki.org/wiki/Cookbook/AuthPhpbb2Sso2 | for coupling to forum accounts - for access control forum groups can be used, replace spaces in forum group names with underscores please. |
debug | 130129 | not published 3 | for debugging to a file: also see http://www.pmwiki.org/wiki/Cookbook/Stopwatch for profiling stuff |
Toggle | 2011-04-06 | http://www.pmwiki.org/wiki/Cookbook/Toggle | for sections to be switched in or out |
FootNotes | 1.0.0 | http://www.pmwiki.org/wiki/Cookbook/Footnotes | for footnotes e.g 4 |
SimplePageCounter | 2007-11-24 | http://www.pmwiki.org/wiki/Cookbook/SimplePageCounter | for page counts |
SWFSites | 2011-06-16b | http://www.pmwiki.org/wiki/Cookbook/Flash#swfsites5 | emebed YouTube, Vimeo, GoogleVideo, and FlickrVid video |
Audio5 | 2012-11-01 | http://www.pmwiki.org/wiki/Cookbook/Audio56 | html5 audio support |
WikiCalendar | 0.3.43 | http://www.pmwiki.org/wiki/Cookbook/WikiCalendar7 | Calendar functions - see Calendar |
qdig8 | 1.2.9.4 | http://netcologne.dl.sourceforge.net/project/qdig/qdig/Qdig%201.2.9.4/qdig-1.2.9.4.zip | for viewing uploaded pics .. gallery like. See here |
PowerTools | 2011-03-08 | http://www.pmwiki.org/wiki/Cookbook/PowerTools | some tools, see link - lots of new warnings too .. will need fixes |
Discuss link | 2007-07-25 | http://www.pmwiki.org/wiki/Cookbook/SimpleDiscussLink | adds a discuss link to all pages to have auto talk pages. Only viewers with edit rights can actually see the talk pages, even when the link is always present. |
Creole | 1.0 | http://www.wikicreole.org/ and http://www.pmwiki.org/wiki/Cookbook/Creole | the Creole markup is somewhat easier than the PmWiki standard stuff, see the cheat sheet near the top of this page |
numtoc | V 0.7 - 2 dec. 2006 | http://www.pmwiki.org/wiki/Cookbook/NumberedHeaders | simple table of contents |
HTML | 2013-02-23 | http://www.pmwiki.org/wiki/Cookbook/EnableHTML-Talk9 | to get HTML and JavaScript into pages |
jQuery | v1.9.1 | http://jquery.com/download/ | jQuery, also see previous item |
Mini | 20121204 | http://www.pmwiki.org/wiki/Cookbook/Mini | Very basic, but automatic, image gallery |
Smileys | 23-Feb-2004 | http://www.pmwiki.org/wiki/Cookbook/WikiSmileys | ![]() |
DynTrailMenu | 2008-09-02 | http://www.pmwiki.org/wiki/Cookbook/DynTrailMenu | Collapsible menus |
The skin used is emwiki, an edit of the standard pmwiki skin - it is not complete yet.
look here, the config stuff needed is in place. Note that the Random Page link in the sidebar works differently (see here).
use
{_live_schedule_}
to get in a table with the radio live schedule. There are no parameters currently.
use
{_playlist_schedule_}
to get in a table with the radio playlist schedule. There are no parameters currently.
use
{_group_list_}
to get a comma separated list of groups the user is a member of
use
{_clock_}
to display
. | .
This needs JavaScript to be enabled on the reader's computer.
use
{_now_playing_}
to get
waiting for song title ...This needs JavaScript to be enabled on the reader's computer. If you want to change the looks .. it looks like you'll have to change JavaScript.StreamInfo (you need be a WikiAdmin for that).
use
{_chat_room_}
to get
Chat Room, a link to the chat room ... the actual link is set in local/config.php - it might point to a wiki chatroom page later to have all chat information in one place.
HTML and JavaScript are restricted to be used by WikiAdmins and forum admins only.
When regular users will enter HTML markup it will be broken into something innocent on save. So this leaves the problem that when there is direct HTML markup on a user editable page the page will get broken after an edit. To avoid this problem I made a new group called JavaScript which is world readable but editable by WikiAdmins and forum admins only. To get the contents on a user editable page the wiki include mechanism can be used:
(:include JavaScript.SomePageWithHtml:)
The group name JavaScript may be confusing, as it will allow for HTML to be used directly in a wiki page ... however the primary reason for this was to allow for user defined JavaScript to be present in wiki pages.
Please note that it is still possible for admin leveled users to write HTML and JavaScript into almost every wiki page, it is just that as soon as a less privileged user will edit and save such a page the code will be broken (it is easy to fix, but still).
I made an example page JavaScript.TestPage that has a canvas element with some basic drawing on it. This page can be included in other pages with (:include JavaScript:TestPage:) to get the image on the right (oh how nicely it floats there ...). This, of course, needs javaScript to be enabled on the client computer. Anyway ... you can draw and you can animate
One starts a HTML code section with
(:html:)
and ends it with
(:htmlend:)
and in between goes arbitrary HTML code including <script> elements; edit the test page to see an example.
When a JavaScript code library is needed it can be included with code like
{script: common.js}
The library will have to be uploaded to the server before being able to do this - only admins can perform the upload. This way the Wiki software will keep track of the included files and will include them only once.
This one just supports multiple "onPageLoad" callbacks to be present in a page and some helper stuff for date and time translations, something more elaborate will be needed later on (see next pargraph). When you need code to be uploaded to the server please ask Blue Hell - it is preferred to not link to external scripts, but to have them uploaded to the server rather.
jQuery JavaScript Library v1.9.1 is available already as http://electro-music.com/wiki/pub/jquery-1.9.1.js for the uncompressed (debug) version and http://electro-music.com/wiki/pub/jquery-1.9.1.min.js for the compressed (production) version. Not sure how well this combines with the GMT / local clock, we'll see. Cooperation between various JavaScript includes seems to be working ok now.
Some help on canvas stuff can be found here
{_rss_}
or when you want to specify some details 10
Attach:Site.Icons/feed-icon-14x14.png [[Help.SiteSpecificMarkup?action=rss | RSS]]
or with the large icon
Attach:Site.Icons/feed-icon-28x28.png [[Help.SiteSpecificMarkup?action=rss | RSS]]
which then looks like
Not that RSS is too useful for this specific page, but for an example see Articles, which uses an unnumbered list. Wiki trails can also be used as an RSS source, for help on this see PmWiki.WebFeeds and RSS links work on Category pages too, see the Category / DIY page for instance (which has automatically generated contents and an RSS feed on those contents).
Something along these lines ... added {_stub_} markup ... I will not add that as an example here as I do not see this page as a stub, you can find examples through the Stub List.
There is a {_stubs_} macro as well, it points to the Stub List without opening a new browser window.
I mainly needed this to get an overview of the images in Site.Icons, but it may be useful elsewhere too. Help about this can be found at http://www.pmwiki.org/wiki/Cookbook/Mini. In it's most basic form just use Mini:* to get a thumbnail view of all image attachments present on the page - when the images should not be downloadable apparently mini:* (lowercase M) can be used; I did not test this, and it may need some other changes too.
When you change thumbnail settings the cached thumbnails need be purged with an action like PageName?action=purgethumbs.
To get a good looking layout you probably will want to place the uploaded images into a different page than the one you put the Mini:* in, otherwise the Attachments will show outside the gallery as well. For Site.Icons this was not needed.
When a user has JavaScript enabled all time stamps should be in user local time, when JavaScript is not enabled they are in server time. This was made to work on Blue Hell's versions of FF, IE, Chrome and Safari. This works by changing all server supplied time stamps on the client side with some JavaScript, for pages with many timestamps this may take some time.
Timestamp specs can now be specified with a time zone offset. The Wiki generated time stamps are in server time which is [UTC-7], but the replacement code will see other offsets from UTC as well. The technical (regular expression) specification is :
\d\d\d\d-\d\d-\d\d\s\d\d:\d\d\s\[UTC[+-]?\d{0,2}\]
or more informally:
dddd-dd-dd dd:dd [UTCspec] where UTC spec is an optional + or - followed by zero to two digits.
Which is a standard date and time specified like yyyy-mm-dd hh:mm followed by an UTC offset spec, the spec must start with [UTC then an optional + or - and then zero, one or two digits. For example [UTC] is valid and specifies a zero offset from UTC; [UTC+1] is valid and it specifies central european time.
Specifically this will make it possible to use UTC times in the wiki and have them presented to readers in their local time (use a notation like 2013-01-01 00:00 [UTC] to get 2013-01-01 00:00 [UTC]).
To prevent automatic translations you can add an extra space between date and time or between time and timezone offset.
Note that this rule will also accept [UTC+] or [UTC99] which are not too useful.
The system can not support timezone specs like [AST] as such specifications are ambiguous (African Standard Time, Asian, Australian?, summer time?).
Use {_page_views_} to get a list of page views for the whole site, see Site.PageViews for an example.
The complete set of defined smileys is:
:-)
;-)
:-(
:p
:o
:D
{cool}
{confused}
{eek}
{angry}
{rolleyes}
I've made a new table markup based on comma separated (CSV) lists. The notation is like
(:data:) "the", "headers" "and", "data" "for", "the" "thing", "." (:dataend:)
it then makes :
the | headers |
---|---|
and | data |
for | the |
thing | . |
There is some special stuff in this in that these tables can be used as data lookup tables. The column header values can be used to set a class for the table elements in each column. There is some special markup like 'port=Radio.PortData' which causes a translation of the port column values from definitions in Radio.PortData (in this example).
Like :
(:data:) "the" , "port=Radio.PortData" "and" , "p8052" "for" , "public_1" "thing", "8056" (:dataend:)
makes:
the | port |
---|---|
and | 8052 playlist DJ1 [sc_trans 9876] - switched |
for | 8130 public 1 (connect info) |
thing | 8056 open [public] |
I needed this for event pages.
Oh, and it will do row separators too:
(:data:) "the" , "port=Radio.PortData" "and" , "p8052" "for" , "public_1" "thing", "p8056" (:dataend:)
makes:
the | port |
---|---|
and | 8052 playlist DJ1 [sc_trans 9876] - switched |
for | 8130 public 1 (connect info) |
thing | 8056 open [public] |
(as long as vspace markup is on).
In the SideBar you can now enter markup like
(:pagelist trail=Site.MenuRadio fmt=dyntrailmenu:)
to get a collapsible menu, see Site.MenuRadio for an example of how to create the menu.
In addition to the standard calendar markup there now is
(:wikilogsidebar:)
Which is the calendar entry used in the sidebar with a 1 - 2 month look ahead
(:wikilogoverview:)
Which basically is the same thing with 11-12 months of look ahead
These are not really site specific .. a list is handy anyway:
& trade; | ™ |
& copy; | © |
& reg; | ® |
& micro; | µ |
& sect; | § |
& euro; | € |
& pound; | £ |
& yen; | ¥ |
& nbsp; | non-breaking space |
& forall; | ∀ |
& part; | ∂ |
& exist; | ∃ |
& empty; | ∅ |
& nabla; | ∇ |
& isin; | ∈ |
& notin; | ∉ |
& ni; | ∋ |
& prod; | ∏ |
& sum; | ∑ |
& minus; | − |
& lowast; | ∗ |
& radic; | √ |
& prop; | ∝ |
& infin; | ∞ |
& ang; | ∠ |
& and; | ∧ |
& or; | ∨ |
& cap; | ∩ |
& cup; | ∪ |
& int; | ∫ |
& there4; | ∴ |
& sim; | ∼ |
& cong; | ≅ |
& asymp; | ≈ |
& ne; | ≠ |
& equiv; | ≡ |
& le; | ≤ |
& ge; | ≥ |
& sub; | ⊂ |
& sup; | ⊃ |
& nsub; | ⊄ |
& sube; | ⊆ |
& supe; | ⊇ |
& oplus; | ⊕ |
& otimes; | ⊗ |
& perp; | ⊥ |
& sdot; | ⋅ |
& Alpha; | Α |
& Beta; | Β |
& Gamma; | Γ |
& Delta; | Δ |
& Epsilon; | Ε |
& Zeta; | Ζ |
& Eta; | Η |
& Theta; | Θ |
& Iota; | Ι |
& Kappa; | Κ |
& Lambda; | Λ |
& Mu; | Μ |
& Nu; | Ν |
& Xi; | Ξ |
& Omicron; | Ο |
& Pi; | Π |
& Rho; | Ρ |
& Sigma; | Σ |
& Tau; | Τ |
& Upsilon; | Υ |
& Phi; | Φ |
& Chi; | Χ |
& Psi; | Ψ |
& Omega; | Ω |
& alpha; | α |
& beta; | β |
& gamma; | γ |
& delta; | δ |
& epsilon; | ε |
& zeta; | ζ |
& eta; | η |
& theta; | θ |
& iota; | ι |
& kappa; | κ |
& lambda; | λ |
& mu; | μ |
& nu; | ν |
& xi; | ξ |
& omicron; | ο |
& pi; | π |
& rho; | ρ |
& sigmaf; | ς |
& sigma; | σ |
& tau; | τ |
& upsilon; | υ |
& phi; | φ |
& chi; | χ |
& psi; | ψ |
& omega; | ω |
& thetasym; | ϑ |
& upsih; | ϒ |
& piv; | ϖ |
& OElig; | Œ |
& oelig; | œ |
& Scaron; | Š |
& scaron; | š |
& Yuml; | Ÿ |
& fnof; | ƒ |
& circ; | ˆ |
& tilde; | ˜ |
& ndash; | – |
& mdash; | — |
& lsquo; | ‘ |
& rsquo; | ’ |
& sbquo; | ‚ |
& ldquo; | “ |
& rdquo; | ” |
& bdquo; | „ |
& dagger; | † |
& Dagger; | ‡ |
& bull; | • |
& hellip; | … |
& permil; | ‰ |
& prime; | ′ |
& Prime; | ″ |
& lsaquo; | ‹ |
& rsaquo; | › |
& oline; | ‾ |
& euro; | € |
& larr; | ← |
& uarr; | ↑ |
& rarr; | → |
& darr; | ↓ |
& harr; | ↔ |
& crarr; | ↵ |
& lceil; | ⌈ |
& rceil; | ⌉ |
& lfloor; | ⌊ |
& rfloor; | ⌋ |
& loz; | ◊ |
& spades; | ♠ |
& clubs; | ♣ |
& hearts; | ♥ |
& diams; | ♦ |
Some more to be typed over are @ http://www.w3schools.com/tags/ref_symbols.asp, http://www.utexas.edu/learn/html/spchar.html & http://www.nobledesktop.com/html-special-characters/ maybe
To add, remove, move or rename a page or menu.. it requires a modification on a Site.MenuXXX? page (Site.MenuRadio for instance).
This is the format for a new Page or Menu. Add or remove * to adjust the level you want the Page or Menu on.
**[[Radio.Temp | Name of New Page or Menu]]
This is the markup you need to place on a new page to create a new Radio Menu.
===Name of New Menu=== (:include Site.MenuRadio:)
User names with brackets were not handled properly, so made and alternative for it.
??~Author??
can be used for Author names with a ] in it.
Also introduced
??link | text??
as an alternative for
[[link | text]]
where text would have a ] in it.
These mods needed a change in AuthPhpbb2so to check for the ] and generate the alternate format.
And when your user name has a ] please sign with
%
%
%
or%
%
%
%
instead of
~
~
~
or~
~
~
~
This is an example with init=hide, to have the section visible rather by default use leave out the init=hide bit. The toc
bit is the the ID. it needs be the same ID in for the rframe and for toggle.
To have a button instead of a text only link set button=1 instead of button=0.
%rfloat% (:toggle toc init=hide hide="hide table of contents" show="show table of contents" button=0:) [[<<]] >>id=toc rframe font-size:smaller<< !!Contents (:num:) (:toc:) (:indent:) >><<
For more on this see http://www.pmwiki.org/wiki/Cookbook/Toggle
1 in the cookbook directory and/or the local config file ⇑
2 slightly modified, see it's talk page on the PmWiki site: http://www.pmwiki.org/wiki/Cookbook/AuthPhpbb2Sso-Talk ⇑
3 local development, to be sorted out ⇑
4 footnotes, yup, like this, just edit this page to see how ⇑
5 some small changes to get PHP undefined variable usage messages out ⇑
6 some bugs fixed on this one ⇑
7 some special needs programmed in, see calendar section ⇑
8 only the viewer - no admin interface - small modifications * suppressed a PHP warning * display image file names for captions when there are none ⇑
9 modified slightly to allow access by WikiAdmins ⇑
10 This syntax is likely to be made easier later on ⇑