version=pmwiki-2.2.61 ordered=1 urlencoded=1
author=XES
charset=UTF-8
csum=
name=PmWiki.BasicVariables
rev=90
targets=PmWiki.AuthoringPhilosophy,PmWiki.AuthUser,PmWiki.Categories,PmWiki.WikiFarms,PmWiki.WikiGroup,PmWiki.GroupCustomizations,PmWiki.LocalCustomizations,PmWiki.WikiWord,PmWiki.MarkupExpressions,Cookbook.LimitWikiGroups,Site.Search,Site.EditForm,Site.PageNotFound,SiteAdmin.AuthList,SiteAdmin.AuthUser,SiteAdmin.ApprovedUrls,PmWiki.PageVariables,Category.PmWikiDeveloper
text=(:Summary: core variables:)%0a%0aWhere the variables are available as wiki markup they are shown as ''Variable value "[={$=]VariableName}"''.%0a%0a:$AsSpacedFunction:The name of the function used to convert WikiWords into normal, spaced strings.  Defaults to 'AsSpaced'.%0a:{$AsSpacedFunction}      :[@$AsSpacedFunction = 'MyAsSpaced';@]%0a%0a%25rfloat%25Variable value "{$Author}"%0a:$Author [==]: Set to the current reader, who is potentially an author ([[PmWiki:AuthoringPhilosophy|see discussion]]). See also $EnablePostAuthorRequired.%0a%0a(:if ! equal '{$AuthorGroup}' '':)%25rfloat%25Variable value "{$AuthorGroup}"(:ifend:)%0a:$AuthorGroup: The WikiGroup for user profiles. Defaults to 'Profiles'. This variable is implicit in the markup [@[[~AuthorName]]@]%0a:      :[@$AuthorGroup = 'Users';@]%0a%0a(:if ! equal '{$AuthId}' '':)%25rfloat%25Variable value "{$AuthId}"(:ifend:)%0a:$AuthId: For sites using [[AuthUser | user-based authorization]], tracks the "reader" or login name.%0a:      :[@SessionAuth($pagename);@]%0a:      :[@if( isset($AuthId) ) { // this person has been authenticated@]%0a%0a(:if ! equal '{$AuthPw}' '':)%0a%25rfloat%25Variable value "{$AuthPw}"%0a(:ifend:)%0a:$AuthPw: Request for documentation, meanwhile see [[http://permalink.gmane.org/gmane.comp.web.wiki.pmwiki.user/30037|here]].%0a:      :[@SessionAuth($pagename);@]%0a:      :[@if( isset($AuthPw) ) { // this person has entered a password@] %0a%0a%25rfloat%25Variable value "{$BaseName}"%0a:$BaseName:%0a:$BaseNamePatterns:Allows population of the [@{$BaseName}@] PageVariable.  The key to the hash is the pattern to be replaced and the value is the replacement string.%0a:      :[@%0a# If {$FullName} is 'Group.Page-Draft' then {$BaseName} is 'Group.Page'%0a$BaseNamePatterns['/-Draft$/'] = '';%0a# If {$FullName} is 'Comments-Group.Page' then {$BaseName} is 'Group.Page'%0a$BaseNamePatterns['/^Comments-/'] = '';@]%0a%0a(:if ! equal '{$CategoryGroup}' '':)%0a%25rfloat%25Variable value "{$CategoryGroup}"%0a(:ifend:)%0a:$CategoryGroup: The WikiGroup used for categories. Defaults to 'Category'.  (See [[Categories]]). This variable is implicit in the markup [@[[!CategoryName]]@]%0a%0a(:if ! equal '{$CookiePrefix}' '':)%0a%25rfloat%25Variable value "{$CookiePrefix}"%0a(:ifend:)%0a:$CookiePrefix: A string prefix to be prepended to cookies set from PmWiki scripts.  It defaults to '', but can be set to a different value to avoid conflicts with similar-named cookies from other applications, or to allow multiple wikis from the same domain to store separate cookies.%0a:      :[@$CookiePrefix = 'pmwiki_';@]     # set cookie prefix to 'pmwiki_'%0a::If you have a [[WikiFarm(s)]], use the following in each field's ''config.php'' to get a unique prefix for each field in the farm, thus isolating each field's cookies.:%0a:      :[@$CookiePrefix = substr($tmp = md5(__FILE__), 0, 5).'_';@]%0a%0a%25rfloat%25Variable value "{$DefaultGroup}"%0a:$DefaultGroup:[[WikiGroup]] used by default (on startup) when no group is specified in the URL.  %0a%0a%25rfloat%25Variable value "{$DefaultName}"%0a:$DefaultName:Name of the default HomePage of each WikiGroup.  Used when the group doesn't have a page with the same name as the group.%0a%0a(:if ! equal '{$DefaultPage}' '':)%0a%25rfloat%25Variable value "{$DefaultPage}"%0a(:ifend:)%0a:$DefaultPage:Startup page when PmWiki is called without a specified page, normally ''$DefaultGroup.$DefaultName''.%0a-> Note: for $DefaultGroup, $DefaultName and $DefaultPage variables to work, they should be defined in the beginning of (farm)config.php, before any call to the function ResolvePageName(). This means, before any script from PmWiki and before any recipe that might be using this function.%0a%0a(:if ! equal '{$EnableLocalConfig}' '':)%0a%25rfloat%25Variable value "{$EnableLocalConfig}"%0a(:ifend:)%0a:$EnableLocalConfig:Allows/disables local/config.php customizations (usually for a farm's wikis).  Can be set to zero in local/farmconfig.php to prevent the farm's wikis' local/config.php from being loaded.%0a:      :[@$EnableLocalConfig = 0;    # disable PmWiki's local/config@]%0a%0a(:if ! equal '{$EnablePGCust}' '':)%0a%25rfloat%25Variable value "{$EnablePGCust}"%0a(:ifend:)%0a:$EnablePGCust:Allows/disables per-page and [[GroupCustomizations | per-group customizations]].  Can be set to zero in any [[local customization(s)]] file to prevent remaining page/group customizations from being loaded.%0a:      :[@$EnablePGCust=0;              # turn off per-page/group configs@]%0a%0a:$EnableRedirect:When enabled (default), causes page redirects to automatically be performed by the browser.  Setting $EnableRedirect to zero causes PmWiki to pause and issue a "Redirect to ''link''" message instead.  This is sometimes useful when debugging recipes to be able to see the results of actions before page redirections occur.%0a%0a(:if ! equal '{$EnableWikiWords}' '':)%0a%25rfloat%25Variable value "{$EnableWikiWords}"%0a(:ifend:)%0a:$EnableWikiWords:Enable [[WikiWord]] processing.%0a%0a:$EnableWSPre:Enables a markup rule that causes lines with leading spaces to be treated as sections of preformatted text.  If set to a value greater than 1, indicates the minimum number of leading spaces required for this treatment.%0a:      :[@$EnableWSPre = 1;             # leading spaces are preformatted text@]%0a:      :[@$EnableWSPre = 0;             # leading spaces are normal lines of text@]%0a:      :[@$EnableWSPre = 4;             # 4+ spaces are preformatted text@]%0a%0a:$FTimeFmt:Can be used to override the default date format used by the "ftime" function.  The default $FTimeFmt is $TimeFmt.  (See [[Markup Expressions]])%0a%0a:$GroupPattern: The regular expression pattern used for valid [[WikiGroup]] name specifications.  Defaults to allowing any group name beginning with an uppercase letter, but can be set to limit the valid group names (see Cookbook:LimitWikiGroups).%0a:      :[@# limit groups to Site, SiteAdmin, PmWiki, and MyGroup@]%0a:      :[@$GroupPattern = '(?:Site|SiteAdmin|PmWiki|MyGroup)';@]%0a:      :[@#for case-sensitive group names, note the ?-i switch:@]%0a:      :[@$GroupPattern = '(?-i:Site|SiteAdmin|PmWiki|MyGroup)';@]%0a%0a:$LinkWikiWords:If set, then bare WikiWords in a page are automatically linked to pages of the same name.  Note that this value can also be affected by the [@(:linkwikiwords:)@] and [@(:nolinkwikiwords:)@] directives.%0a:      :[@$LinkWikiWords = 1;           # turn on WikiWord links@]%0a:      :[@$LinkWikiWords = 0;           # disable WikiWord links@]%0a:      :Note, this setting requires WikiWords to be enabled, see $EnableWikiWords.%0a%0a:$LogoutRedirectFmt: Identifies the page to which the visitor should be sent after an [@?action=logout@].  Defaults to the current page.%0a:      :[@$LogoutRedirectFmt = 'Site.Logout';    # ?action=logout target@]%0a%0a:$LogoutCookies: An array of cookie names to be removed when [@?action=logout@] is invoked.%0a%0a(:if ! equal '{$NamePattern}' '':)%0a%25rfloat%25Variable value "{$NamePattern}"%0a(:ifend:)%0a:$NamePattern: The regular expression pattern used for valid page names.  Defaults to allowing pages beginning with an uppercase letter or digit, followed by sequences of alphanumeric characters, hyphens, and underscores.  %0a%0a%25rfloat%25Variable value "{$SiteGroup}"%0a:$SiteGroup:Default group for storing configuration and utility pages such as [[Site.Search]], [[Site.EditForm]], [[Site.PageNotFound]], etc.%0a%0a:$SiteAdminGroup:Default group for locked administrative pages such as [[SiteAdmin.AuthList]], [[SiteAdmin.AuthUser]], [[SiteAdmin.ApprovedUrls]], etc, defaults to 'SiteAdmin'.%0a%0a(:if ! equal '{$SpaceWikiWords}' '':)%0a%25rfloat%25Variable value "{$SpaceWikiWords}"%0a(:ifend:)%0a:$SpaceWikiWords:If set, then WikiWords in pages are automatically spaced according to $AsSpacedFunction.  Note that this value can also be affected by the [@(:spacewikiwords:)@] and [@(:nospacewikiwords:)@] directives.%0a:      :[@$SpaceWikiWords = 1;          # turn on WikiWord spacing@]%0a:      :[@$SpaceWikiWords = 0;          # turn off WikiWord spacing@]%0a%0a(:if ! equal '{$TimeFmt}' '':)%0a%25rfloat%25Variable value "{$TimeFmt}"%0a(:ifend:)%0a:$TimeFmt: The format to use for dates and times, in [[http://php.net/strftime | strftime()]] format.  The default value is [@'%25B %25d, %25Y at %25I:%25M %25p'@], which gives dates of the form "September 8, 2005 at 10:57 PM".%0a:      :[@$TimeFmt = '%25B %25d, %25Y';        # dates as "September 8, 2005"@]%0a:      :[@$TimeFmt = '%25Y-%25m-%25d';         # dates as "2005-09-08"@]%0a%0a%25rfloat%25Variable value "{$Version}"%0a:$Version: A string representing the release version of PmWiki.%0a%0a%25rfloat%25Variable value "{$VersionNum}"%0a:$VersionNum: A number representing the release version of PmWiki,%0a with the major and minor release components padded with zeroes to%0a produce three digits.  Thus, release "pmwiki-2.1.40" will have $VersionNum set to 2001040.%0a%0a The first digit is a 2, the next three digits are the major%0a release number, and the last three digits are the minor release%0a number. Beta releases use 900-999 for the minor release number.%0a Thus:%0a--> [@%0a2.1.0          2001000%0a2.1.1          2001001%0a...%0a2.1.27         2001027%0a2.2.0-beta1    2001901%0a2.2.0-beta2    2001902%0a...%0a2.2.0-beta18   2001918%0a...%0a2.2.0          2002000%0a@]%0a%0a(:if ! equal '{$WikiWordPattern}' '':)%0a%25rfloat%25Variable value "{$WikiWordPattern}"%0a(:ifend:)%0a:$WikiWordPattern: The pattern that describes a WikiWord.%0a%0a:$EnableRelativePageVars:This setting controls how [[Page variables]] in included pages are understood by PmWiki.%0a: :@@$EnableRelativePageVars = 1; # PmWiki current default@@\\%0aIn this case @@[={$Name}=]@@ displays the name of the physical page where it written. If @@[={$Name}=]@@ is in an included page, it will display the name of the included page. (This is currently PmWiki's default.)%0a: :@@$EnableRelativePageVars = 0; # revert to previous default@@\\%0aIn this case @@[={$Name}=]@@ displays the name of the currently browsed page. Even if @@[={$Name}=]@@ is in an included page, it will display the name of the browsed page. This was PmWiki's default in versions 2.2.8 and earlier, and changed in 2.2.9, but you can revert it back with this line in config.php.%0a: : @@[={*$Name}=]@@ with an asterisk always displays the name of the currently browsed page, regardless of $EnableRelativePageVars.%0a%0aCategories: [[!PmWiki Developer]]
time=1391720095
