View source for Actions

//Also available in ((../Deutsch/Aktionen Deutsch)), ((../Español/Acciones Español)), ((../Français/Fonctions Français)), ((../Русский/Действия Русский)), ((/Doc/简体中文/Actions组件 简体中文)).//

{{toc numerate=1}}
%%(info type="note")
Non-mandatory options and parameters are enclosed in ##[square brackets]##.
**!!(green)When using the actions please remove the square ##[ ]## brackets from the parameters to make it work.!!**
Numerical values are given __without__ and strings __with__ quotation marks, ##max=10## and ##page="PageName"##.

To display all available parameters of an action, use ##help=1##.
%%
===Lists of the pages===
====backlinks====
  * Outputs a list of pages that link to this one.
  * Call: ##""{{backlinks [page="PageName"] [max=Number] [nomark=1]  [title=0]}}""##
  * Parameter for can be called as conveniently. It determines, for what of page to derive list. On silence it is equal to the current page.

====changes====
  * Displays a list of the most recent changes in any cluster. 
  * Call: ##""{{changes [page="PageName"] [max=Number] [date="YYYY-MM-DD"] [noxml=1] [title=1]}}""##
  * Parameter ##page## can be called as conveniently. It determines, for what cluster to derive list. On silence it is equal to the current page.
  * ##max## determines the maximum number of pages displayed. Note that the actual number of pages displayed will depend on the user's personal preferences. 
  * Parameter ##date## allows you to specify the date from which the list of changes should be output (and further back). The ##date## parameter can also be specified in the query string. 
  * Parameter ##noxml## forces not to derive reference on RSS- flow changes.

====commented====
  * Displays a list of the most recently commented pages in this Wiki.
  * Call: ##""{{commented [page="PageName"] [max=Number]}}""##
  * Parameter for can be called as conveniently. It determines, for what cluster to derive list. On silence is equal "/", i.e., to the root of site.

====comments====
  * Displays a list of recent comments in this Wiki.
  * Call: ##""{{comments [page="PageName"] [max=Number]}}""##
  * Parameter for can be called as conveniently. It determines, for what cluster to derive list. On silence is equal "/", i.e., to the root of site.

====mostpopular====
  * Outputs a list of the most visited pages.
  * Call: ##""{{mostpopular  [max=Number] [page="PageName"] [nomark=1] [dontrecurse="true|false"]}}""##
  * ##page## page name to start from in the page hierarchy
  * ##nomark## makes it possible to hide frame around
  * ##dontrecurse## if set to true the list will only include pages that are direct children of the "for" page

====orphaned====
  * Outputs a list of lost pages (those pages that do not have any links to them) for some cluster. 
  * Call: ##""{{orphaned [page="PageName"]}}""##
  * Parameter for can be called as conveniently. It determines, for what cluster to derive list. On silence it is equal to the current page. To display it for all namespaces, use root ##page="/"##.

====pageindex====
  * Outputs a complete directory of all pages on the site, ordered alphabetically.
  * Call: ##""{{pageindex [max=Number] [letter="Letter"] [page="PageName"] [title=0] [system=0|1] [lang="en"]}}""##

====tree====
  * Builds the page tree starting from the current or specified page. 
  * Call: ##""{{tree [page="PageName"] [depth="Tree Level"] [legend=" "] [sort="desc"] [nomark=1]}}""##
  * ##page## page name to start from in the page hierarchy
  * ##depth## how far into the cluster
  * ##sort## - pages sorted ascending ('asc', default) or descending ('desc') by tag
  * ##nomark## makes it possible to hide frame around

====wanted====
  * Outputs a list of pages that do not yet exist and are linked to for some cluster. 
  * Call:##""{{wanted [page="PageName"]}}""##
  * Parameter for can be called as conveniently. It determines, for what cluster to derive list. On silence it is equal to the current page. To display it for all namespaces, use root ##page="/"##.

====whatsnew====
  * Displays a list of all new, deleted, or changed pages, new attachments, and comments.
  * Call: ##""{{whatsnew [page="PageName"] [max=Number]}}""##

===Personal actions===
====menu====
  * to customize the bookmarks, can be found in the user account under bookmarks.
  * Call: ##""{{menu [system=0]}}""##
  * With parameter ##system## and value 1, the global default bookmarks are displayed for administrators to edit.
  * ##system=1## This option is also available in the ((AdminPanel)). 

====mychanges====
  * Displays a list of pages you have changed, with sorting options.
  * Call: ##""{{mychanges  [max=Number]}}""##

====mypages====
  * Displays a list of pages that belong to you, sortable by alphabet or modification date.
  * Call: ##""{{mypages [bychange=1] [bycreation=1]}}""##

====mywatches ====
  * List of all pages under the "observation" of this user.
  * Call: ##""{{mywatches}}""##

====mychangeswatches====
  * List of the changed "observed" pages
  * Call: ##""{{mychangeswatches  [max=Number]}}""##

====watchers====
  * Outputs a list of page observers. It works only for the owner of page.
  * Call: ##""{{watchers [page="SomePage"] [nomark=1]}}""##
  * Parameter for can be called as conveniently. It determines, for what page to derive list. On silence it is equal to the current page.

===Service actions===

====changepassword====
  * Dispatch on email code, with introduction of which is given the access to the change of password.
  * Change of password.
  * Call: ##""{{changepassword}}""##

====login====
  * Displays a login form if you are not yet logged in, or a welcome message if you are already logged in.
  * Call: ##""{{login}}""##

====registration====
  * Shows the registration form and performs the entire registration
  * Call: ##""{{registration}}""##

====usersettings====
  * Outputs the registration page for guests and the settings page for registered users. 
  * Call: ##""{{usersettings}}""##

===Admin tools===

====admincache====
  * clear cache, only admins can do
  * Call: ##""{{admincache}}""##

====admin_recovery====
  * Creates the ##recovery_password## hash based on the admin panel access password.
  * Call: ##""{{admin_recovery}}""##
  * The generated hash must be written in config/config.php, replacing the line 'recovery_password' => 'insert password hash here' . After that you should clear the cache, see ##admincache##.
  * ((AdminPanel detailed description))

====admin_replace====
  * The admin_replace action allows administrators to do a global string find-and-replace on all the content pages of a wiki.
  * Call: ##""{{admin_replace}}""##
  * This is well suited to performing simple edits such as renaming a link, changing strings, adding templates, or correcting typos.
  * ((!/AdminReplace detailed description))


====import====
  * import an XML file into a cluster , only callable by an administrator. 
  * call: ##""{{import}}""##
  * ##~http://example.com/somecluster/import## --> ##~{{import}}##, After calling the action, the path for the import can be defined. If ##Test## is entered, the import will take place on the ##~http://example.com/Test/## page.
  * Attention: overwrites cluster pages with the same name, ~{{import}} is usually limited on the server side by a timeout after 30 seconds and is therefore, depending on the size, more suitable for importing individual pages.
  * The XML export is done via the page handler ##export.xml##. Read permissions are required for the pages to be exported.
    * ##Cluster/export.xml## (Ex: ##~https://wackowiki.org/doc/Doc/English/Formatting/export.xml##)
    
===Forum===
These actions work only within the defined forum cluster.
  * ((!/Forum more details))

====forums====
  * shows sub-forums list
  * ##""{{forums [pages="subtag1, subtag2, ..."]}}""##
  * ##pages## – to create multilevel forums this optional parameter passes  a comma-delimited list of tag names of pages that must be considered sub-forums, and not topics. 
  * Tags must be absolute (not relative). If you define pages, it must be done for all sub-forums and topic pages.

====topics====
  * shows forum topics list
  * ##""{{topics [pages="subtag1, subtag2, ..."]}}""##
  * ##pages## – when creating multilevel forums this optional parameter passes a comma-delimited list of tag names of pages that must be considered sub-forums, so topics under these cluster sub-pages will not be displayed. Tags must be absolute.

===Blog===

====blog====
  * creates a blog in the namespace of your choice
  * Call: ##""{{blog [page=cluster] [mode=latest|week|from] [date=YYYY-MM-DD] [max=Number] [title=1] [noxml=1]}}""##
  *  ((!/Blog detailed description))

====news====
  * creates a news feed in a predefined news cluster
  * Call: ##""{{news [mode=latest|week|from] [date=YYYY-MM-DD] [max=Number] [title=1] [noxml=1]}}""##
  * except that this action can be used only in the predefined news cluster, all other settings are like in the blog action
  * for setting the news cluster see Admin panel -> Pages section

===Other===

====anchor====
  * Creates an anchor to which you can link from any page.
  * Call: ##""{{anchor href="ToC1" [text="Index"] [title="Title"]}}""##

====authors====
  * shows the authors of the page or cluster
  * Call: ##""{{authors}}""##
  * ((!/authors more details))

====calendar====
  * displays a monthly calendar
  * Call: ##""{{calendar [year=2012|2013...] [month="1|2|..."] [highlight="today|1|2|..."] 
[daywidth="3"] [range="1|2|..."] }}""##
  * ##year## 
  * ##month## 
  * ##highlight## Day to be highlighted (number or today)
  * ##daywidth## Number of letters for weekdays
  * ##range## Number of months displayed

====categories====
  * shows the categories of the current page
  * Call: ##""{{categories [list=0] [nomark=0]}}""##
  * ##list## with value = 1 the categories are displayed one below the other in a list. The default value = 0 and the values are displayed next to each other in a list, separated by commas.
  * Parameter ##nomark##, with the value 1 it suppresses the frame around the result.

====category====
  * displays a list of categories of pages and the number of use of the class
  * Call: ##""{{category [page="/PageName"] [list=0] [ids=1,11,21] [lang=de] [inline=0] [sort="abc" or "date"] [nomark=0]}}""## 
  * ##page## - cluster for category selection (default is the current page)
  * ##list## - Value = 0 without further parameters displays a list of the selected categories without links. With value = 1 the categories are linked.   
  * ##ids## - show only pages that belong to the numerically determined, comma separated, category ID's
  * ##lang## - optional, to show only the categories of certain language if necessary (defaults to current page lang)
  * ##inline## - optional, with value = 1 to show all categories one after the other and without highlighting the main categories. By default, this value is set to 0.
  * ##sort## - Page categories sorted by alphabet ('abc', default) or the time of creation ('date')
  * ##nomark## - with the value 1 suppresses the frame around the search result. value 2 if parameter ##ids## was selected. Default is value = 0. 

====comment====
  * you can click "comments" inside bookmarks and wikipages
  * ##""{{comment [page="CommentThisPage"] [text="your text"]}}""##

====edit ====
  * you can click "edit" inside bookmarks and wikipages
  * ##""{{edit [page="EditThisPage"] [text="your text"]}}""##

====embed====
  * embedding an external application or interactive content, like PDF, YouTube or videos
  * Call: ##""{{embed url="someurl.mp4" width=300 height=400 [align="left|center|right"]}}""##
  * The first three arguments here are required.  The rest are optional.
  * ((!/Embed more details))

====feed====
  * RSS/Atom Feed Integration
  * Call: ##""{{feed url="https://...[|https://...|https://...]" [title="no"] [max=Number] [time=1] [nomark=1]}}""##
  * ##title## - "text" - displayed as title, "no" - means show no title, empty title - title taken from feed
  * ((!/Feed more details))

====files====
  * Form for the load of file to this page or into the global space
  * Call: ##""{{files [page="PageName" or global=1] [order="ext|ext_desc|name_desc|size|size_desc|time|time_desc"] [owner="UserName"] [media=1] [max=Number]}}""##
  * Parameters:
    * the first parameter is — the name of the page, for which to derive list it is file. If global=1, then the list of the global space is derived
    * ##order## — as to order, correspondingly, on the time, name, name_desc, to size, the size-in-reverse- order, to the expansion
    * ##owner## — to show the files, belonging only to this user
    * ##media## — to parse image, audio and video links into their media tags
  * ((!/UploadFiles more...))

====gallery====
  * With the Gallery action, you can create a photo gallery with small images that are linked to larger versions. The gallery action uses the standard WackoWiki file model. This action can be extended by a light box, see details.
  * Call: ##""{{gallery}}""##
  * ((/Dev/PatchesHacks/Gallery more details))

====hashid====
  * Generates a permalink to the page
  * Call: ##""{{hashid [version=0|1]}}""##
  * ##version## - ##0## link to the page, ##1## link to the current page version (default)

====hits====
  * shows hits for a page
  * Call: ##""{{hits [page="PageName"]}}""##

====include====
  * Writes the content of the included page directly into the body of another page (transclusion).
  * Invoke: ##""{{include page="SomePage" [nomark=1] [notoc=1] [nowarning=1]  [first_anchor="..." last_anchor="..."]}}""##
  * If you set ##nomark=1##, then included section is not separated by color. If you set ##nomark=2##, then included section is not separated by color for those users, and it is not permitted for them to edit it; instead the owner and permissions of the page are shown. If you set ##notoc=1##, then titles from the included page are not indexed on the new page. With the nomination into 1 parameters nowarning  is not derived the information with call Include for the page, on which there is no access.
  * Note: parameter page can be called as conveniently.
  * the additional parameters ##first_anchor## and ##last_anchor## allow to display only a certain part of the text of the inserted page. To do this, it is necessary to enclose the desired area of the page in the inserted page with the following anchors: ##~{{anchor name="plan_start"}}} desired text section ~{{{anchor name="plan_end"}}##, and then specify these anchor names with the parameters first_anchor and last_anchor in the action include.
  * ((!/Include detailed description))

====interwikilists====
  * A list of all InterWiki-nodes that are defined in this installation.
  * Call: ##""{{interwikilist}}""##

====lastedited====
  * print last editor of the page: 
    * Last edited by: SomeUser (22.12.2018 13:08 ) fixed two typos
  * Call : ##""{{lastedited [label=0|1] [note=0|1]}}""##
  * ##label## - show 'Last edited by:' label
  * ##note## - show edit note

====navigation====
  * generates a navigation bars to scroll between pages
  * Call : ##""{{navigation [main="/Book"] [prev="ChapterOne"] [next="ChapterThree"] [table=0|1] [title=1]}}""##
    * ##main## - tag of overview page
    * ##prev## - tag of previous page
    * ##next## - tag of next page
    * ##table## - lets one choose between two predefined templates  (experimental, parameter name may change)

====pagebreak====
  * The break of page is derived (both for print and visual).
  * Call: ##""{{pagebreak}}""##

====paragraphs====
  * It enters numeration for the paragraphs.
  * Call: ##""{{paragraphs [style="before|after|left|right"] [name="absolute|document-relative"]}}""##
  * The style affects where paragraph numbers will be displayed.

====randomimage====
  * Loads a random image
  * Call: ##""{{randomimage [global=0|1]  [owner="UserName"]  [category="category"]  [caption=0|1]}}""##
  * ##owner## — to show the files, belonging only to this user
  * ##global## — ##1## global images, ##0## images attached to the page
  * ##category## — filters images by category 

====randompage====
  * redirects to a random page
  * Call: ##""{{randompage [page="PageName"] }}""##
  * ##page## name to start from in the page hierarchy

====randomphrase====
  * Start of random line s any page into the body of data.
  * Call: ##""{{randomphrase page="SomePage" [useemptystring=1]}}""##
  * ##useemptystring## indicates breaking up a page into blocks separated by an empty line rather than by lines.
  * ##page## specifies the page from which the lines will be selected. 

====redirect====
  * Unconditionally it redirects user to another page
  * Call: ##""{{redirect to="NewPage"  [temporary=1]}}""##
  * ##temporary##  — ##1## sets HTTP status code to ##302## (default: ##301##)

====search====
  * Any search according to Wacko.
  * Call: ##""{{search [phrase="Term"] [page="PageName"] [options=0|1] [topic=1] [form=1] [nomark=1] [style=one of ("br","ul","ol","comma") ] [scope=one of ("pages", "all")]}}""##
  * ##page## restricts the search to the specified namespace
  * ##options## - with the value 0 only the search field is displayed, other options and filters are hidden 
  * ##topic## it is possible to call ##title## — if it is advanced into 1, then search occurs only on the names of pages, otherwise both on the names and on the texts; 
  * ##form## — indicates that it is necessary to derive the form of search together with the results. 
  * ##scope## answers for that, where to the search: only in the pages or in the commentaries also. 
  * ##nomark##, advanced in one, makes it possible to hide frame around the results of search. 
  * ##style## answers for the exterior view of results.
  * All parameters are optional.

====tagcloud====
  * shows a tag cloud
  * Call: ##""{{tagcloud [page="/PageName"] [lang="en"] [owner="UserName"] [sort="abc" or "date"] [nomark=0]}}""## 
  * ##page## - where to start counting from (defaults to current tag)
  * ##lang## - categories language if necessary (defaults to current page lang)
  * ##owner## - page owner
  * ##sort## - order categories alphabetically ('abc', default) or by number ('number')
  * ##nomark## - display header and fieldset (1) or 0 (default))

====toc====
  * Index on the basis of titles is formed.
  * Call: ##""{{toc [page="PageName"] [legend="legend for toc"] [numerate=1] [start=0|100] [from="h2"] [to="h6"] [nomark=1]}}""##
  * Parameter ##legend## influences the legend of index itself. Parameter ##numerate## makes it possible to number all titles. Parameter ##from## has silence "h2", i.e., the titles of the first level are not included in index.
  * ##nomark##  makes it possible to hide frame around the results
  * Note: all parameters are optional.
  * ((!/TableOfContents detailed description...))

====upload====
  * upload files
  * Call: ##""{{upload [global=1] [maxsize=200] [hide_description=1]}}""##
  * ((!/UploadFiles more...))

====usergroups====
  * Displays the list of groups and their members.
  * Call: ##""{{usergroups [cols=5] [nomark=1]}}""##

====users====
  * Shows list with registered users together with a quantity of pages belonging to them.
  * Call: ##""{{users [max=Number]}}""##