A simple list of the functions provided by PmWiki. Eventually to be fleshed out with more descriptions, and links to appropriate pages.
pmwiki.php:
Helper functions
| SDV(&$v,$x)? | "set default value" -- assigns $x to $v only if $v isn't already defined |
| SDVA(&$var,$val) | "set default value array" -- assign array $val to $var for undefined elements |
| PUE($x) | url encode $x |
| IsEnabled?(&$var,$f=0) | returns $var if it's set, otherwise returns $f |
| mkdirp($dir) | create $dir if it doesn't exist (with appropriate permissions) |
| fixperms($fname, $add = 0) | correct file permissions on $fname |
| stripmagic($x) | undo any effects of PHP's (broken) magic_quotes setting |
| Lock($op) | provide a semaphore for wiki processes (avoid read/write conflicts) |
| ParseArgs($x) | parse strings containing lists of arguments |
| StopWatch?($x) | mark elapsed time in processing |
| pmcrypt($pass, $salt) | create or check a password hash |
Markup helper functions
PSS($x) - strip backslashes (added by the /e option to preg_replace) from $x. functions
PVS($x) - Convert \n\n sequences to <:vspace>
PVSE($x) - Convert special characters to HTML entities (excluding quotes) and convert \n\n sequences to <:vspace>
PZZ($x,$y='') - return a null string (used for its side effect of evaluating $x and $y)
PRR($x=NULL) - indicate that we need to restart markup processing
PQA($x) - "prepare quoted arguments" -- quote any attributes in HTML tags
NoCache?($x='') - indicate that current page is not to be cached
Markup functions
CompareArgs?($arg)
CondAuth($pagename, $condparm)
CondExpr($pagename, $condname, $condparm)
SetTmplDisplay?($var, $val)
AsSpaced?($text)
MatchNames?($pagelist, $pat, $caseinsensitive = true)
$pagelist is an array of strings (tokens etc) to be matched.
$pat is a pattern string (e.g. "example,exemplar"), or an array of pattern strings (that can include wild cards * and ?). When $pat is an array of patterns, a $pagelist item must match every pattern from the array.
MatchNames? returns an array of the $pagelist items that match the pattern.
MatchPageNames?($pagelist, $pat, $caseinsensitive = true)
FixGlob?($x, $rep = '$1*.$2')
ResolvePageName?($pagename) - "normalizes" a pagename based on the current settings of $DefaultPage and $PagePathFmt. It's normally used during initialization to fix up any missing or partial pagenames.
MakePageName?($basepage,$str) - to convert a string $str into a fully-qualified pagename. If $str doesn't contain a group qualifier, then MakePageName? uses $basepage and $PagePathFmt to determine the group of the returned pagename.
PCache?($pagename, $page)
SetProperty?($pagename, $prop, $value, $sep = NULL)
PageVar?($pagename, $var, $pn = '')
FmtPageName($fmt, $pagename) - handles internationalization and $Variable substitutions in strings based on the $pagename argument.
XL($key)
XLSDV($lang,$a)
XLPage?($lang,$p)
CmpPageAttr?($a, $b)
PageStore?($d='$WorkDir/$FullName', $w=0)
pagefile($pagename)
read($pagename, $since=0)
write($pagename,$page)
exists($pagename)
delete($pagename)
ls($pats=NULL)
ReadPage?($pagename, $since=0) - returns array, each element contains a single line split by '=' to array($key => $value)
WritePage?($pagename,$page)
PageExists?($pagename)
ListPages?($pat=NULL)
RetrieveAuthPage?($pagename, $level, $authprompt=true, $since=0) - recieve page by using authentication mechanisms (hookable) (reference)
Abort($msg)
Redirect($pagename,$urlfmt='$PageUrl')
PrintFmt?($pagename,$fmt)
PrintWikiPage?($pagename, $wikilist=NULL, $auth='read')
Keep($x, $pool=NULL) - the $x string is passed on unaltered to the output
CondText?($pagename,$condspec,$condtext)
IncludeText?($pagename, $inclspec)
RedirectMarkup?($pagename, $opt)
Block($b)
FormatTableRow?($x)
WikiLink?($pagename, $word)
LinkIMap($pagename,$imap,$path,$title,$txt,$fmt=NULL)
LinkPage?($pagename,$imap,$path,$title,$txt,$fmt=NULL)
MakeLink($pagename,$tgt,$txt=NULL,$suffix=NULL,$fmt=NULL) - creates a link with the proper site info, see MakeLink
Markup($id,$cmd,$pat=NULL,$rep=NULL)
DisableMarkup?()
mpcmp($a,$b) { return @strcmp($a['seq'].'=',$b['seq'].'='); }
BuildMarkupRules?()
MarkupToHTML?($pagename, $text, $opt = NULL)
HandleBrowse?($pagename, $auth = 'read')
EditTemplate?($pagename, &$page, &$new)
RestorePage?($pagename,&$page,&$new,$restore=NULL)
ReplaceOnSave?($pagename,&$page,&$new)
SaveAttributes?($pagename,&$page,&$new)
PostPage?($pagename, &$page, &$new)
PostRecentChanges?($pagename,&$page,&$new)
PreviewPage?($pagename,&$page,&$new)
HandleEdit?($pagename, $auth = 'edit')
HandleSource?($pagename, $auth = 'read')
PmWikiAuth?($pagename, $level, $authprompt=true, $since=0) - recieve page by using authentication mechanisms
IsAuthorized?($chal, $source, &$from)
SessionAuth?($pagename, $auth = NULL)
PrintAttrForm?($pagename)
HandleAttr?($pagename, $auth = 'attr')
HandlePostAttr?($pagename, $auth = 'attr')
HandleLogoutA?($pagename, $auth = 'read')
HandleLoginA?($pagename, $auth = 'login')
scripts/author.php:
RequireAuthor?($pagename, &$page, &$new)
scripts/authuser.php:
AuthUserId?($pagename, $id, $pw=NULL)
AuthUserConfig?($pagename, $id, $pw, $pwlist)
AuthUserHtPasswd?($pagename, $id, $pw, $pwlist)
AuthUserLDAP?($pagename, $id, $pw, $pwlist)
_crypt($plain, $salt=null)
scripts/compat1x.php:
ConvertV1WikiD?($path) is a that allows pages to be converted
read($pagename)
UseV1WikiD?($path)
ConvertV1WikiD?($path)
scripts/crypt.php:
HandleCrypt?($pagename, $auth='read')
scripts/diag.php:
Ruleset()
HandleRuleset?($pagename)
StopWatchHTML?()
scripts/draft.php:
EditDraft?(&$pagename, &$page, &$new)
scripts/feeds.php:
HandleFeed?($pagename, $auth = 'read')
RSSEnclosure?($pagename, &$page, $k)
scripts/forms.php:
InputMarkup?($pagename, $type, $args)
scripts/guiedit.php:
GUIButtonCode?($pagename)
scripts/httpauth.php:
HTTPBasicAuthPrompt?($pagename)
scripts/notify.php:
NotifyCheck?($pagename)
PostNotify?($pagename, &$page, &$new)
NotifyUpdate?($pagename, $dir='')
scripts/pagelist.php:
SearchBox?($pagename, $opt)
FmtPageList?($outfmt, $pagename, $opt)
MakePageList?($pagename, $opt, $retpages = 1)
SortPageList?(&$matches, $order)
HandleSearchA?($pagename, $level = 'read')
FPLTemplate?($pagename, &$matches, $opt)
PageIndexTerms?($terms) - see $PageIndexTermsFunction
PageIndexUpdate?($pagelist, $dir = '')
PageIndexGrep?($terms, $invert = false)
PostPageIndex?($pagename, &$page, &$new)
scripts/pagerev.php:
LinkSuppress?($pagename,$imap,$path,$title,$txt,$fmt=NULL)
PrintDiff?($pagename)
HandleDiff?($pagename, $auth='read')
scripts/phpdiff.php:
PHPDiff?($old,$new)
scripts/simuledit.php:
Merge($newtext,$oldtext,$pagetext)
MergeSimulEdits?($pagename,&$page,&$new)
scripts/skins.php:
SetSkin?($pagename, $skin)
LoadPageTemplate?($pagename,$tfilefmt)
PrintSkin?($pagename, $arg)
Associated with
$PageEndFmt = "function:PrintSkin? End"
$PageStartFmt = "function:PrintSkin? Start"
scripts/stdmarkup.php:
PreserveText?($sigil, $text, $lead)
PrintMetaTags?($pagename, $args)
TrackAnchors?($x) { global $SeenAnchor; return @$SeenAnchor[$x]++; }
WSIndent?($i)
Cells($name,$attr)
MarkupMarkup?($pagename, $text, $opt = '')
CondDate?($condparm)
scripts/trails.php:
ReadTrail?($pagename,$trailname)
MakeTrailStop?($pagename,$trailname)
MakeTrailStopB?($pagename,$trailname)
MakeTrailPath?($pagename,$trailname)
scripts/transition.php:
FPLByGroup?($pagename, &$matches, $opt)
GUIEdit?($pagename, &$page, &$new)
scripts/upload.php:
MakeUploadName?($pagename,$x)
LinkUpload?($pagename, $imap, $path, $title, $txt, $fmt=NULL)
HandleUpload?($pagename, $auth = 'upload')
HandleDownload?($pagename, $auth = 'read')
HandlePostUpload?($pagename, $auth = 'upload')
UploadVerifyBasic?($pagename,$uploadfile,$filepath)
dirsize($dir)
FmtUploadList?($pagename, $args)
AttachExist?($pagename)
scripts/urlapprove.php:
LinkHTTP?($pagename,$imap,$path,$title,$txt,$fmt=NULL)
ReadApprovedUrls?($pagename)
HandleApprove?($pagename, $auth='edit')
BlockUnapprovedPosts?($pagename, &$page, &$new)
scripts/vardoc.php:
VarLink?($pagename,$tgt,$txt)
VarIndexLoad?($pagename)
VarIndexList?($pagename)
scripts/wikistyles.php:
ApplyStyles?($x)
scripts/xlpage-utf-8.php:
utf8toupper($x)
Category: PmWiki Internals PmWiki Developer