TWiki Variables » Search » Category: Development

ADDTOHEAD -- add HTML to the HTML head section of the current page

  • Useful for TWiki applications to add custom CSS or JavaScript to the HTML head section of a topic. Supplied TWiki variables will be expanded. %ADDTOHEAD{}% expands in-place to an empty string, unless there is an error in which case the variable expands to an error string.
  • Syntax: %ADDTOHEAD{ "..." text="..." }%
  • Supported parameters:
    Parameter: Description: Comment:
    "..." ID of the head block, such as "MY_CSS" Optional but recommended
    text="..." HTML text to add to the head section Mutually exclusive with topic=""
    topic="Web.TopicName" Name of topic that contains the full HTML text to add to the head section, such as topic="Main.MyCssTopic" Mutually exclusive with text=""
    section="name" If topic parameter is used, includes only the specified named section, as defined in the topic by the STARTSECTION and ENDSECTION variables. Nothing is shown if the named section does not exists. section="" is equivalent to not specifying a section Optional
    requires="..., ..." Comma-separated list of other IDs this one depends on Optional
  • Category: ApplicationsAndComponentsVariables, DevelopmentVariables
  • Example: %ADDTOHEAD{ "MYBOX_CSS" text="<style type=\"text/css\"> .myBox { height: 22px; background-color: #AFB3C5; } </style>" }% (this topic)

CALCULATE{"formula"} -- handle spreadsheet calculations outside tables

  • The %CALCULATE{formula}% variable is handled by the SpreadSheetPlugin. Over 100 functions are available, such as $ABS(), $EXACT(), $EXISTS(), $GET()/$SET(), $IF(), $LOG(), $LOWER(), $PERCENTILE(), $TIME(), $VALUE().
  • Syntax: %CALC{formula}%
  • Examples:
    • %CALC{$EXISTS(Web.SomeTopic)}% returns 1 if the topic exists
    • %CALC{$UPPER(Collaboration)}% returns COLLABORATION
  • Note: The CALCULATE variable is handled inside-out & left-to-right like ordinary TWiki variables, but it does not support functions that refer to table cells, such as $LEFT() or $T(). Use CALC instead.
  • Category: DevelopmentVariables, TablesAndSpreadsheetsVariables
  • Related: CALC, IF, IfStatements, SpreadSheetPlugin (this topic)

DASHBOARD -- build a dashboard with banner and boxes

EDITFORMFIELD{"fieldname" form=""} -- render an input field specified in a form template topic

  • Use this to create HTML forms that update TWikiForms, such as a custom "create new topic" form, or a topic header that allows users to change some form values at the top of the page. A valid form is composed of a start form type, various form fields, a submit type, and an end form type.
  • Syntax:
    • %EDITFORMFIELD{"fieldname" form="...Form"}% - create form field defined in a TWiki Form template
    • %EDITFORMFIELD{"fieldname" topic="..."}% - create form field based on a topic that has a TWiki Form & initialize its value
    • %EDITFORMFIELD{"fieldname" type="..."}% - create an HTML input field
  • Supported parameters:
    Parameter: Description: Default:Sorted ascending
    value="..." Initial value of input field. If omitted and if topic="..." is specified, the value is taken from the named form field. ""
    type="start" Special case: Start an HTML form. Parameters:
    "form" type="start" action="save" topic="..." method="" onsubmit="" onreset=""
    action: Specify a TWiki script (view, edit, save, ...), or a full action URL, default "view".
    topic: Specify topic name or Web.TopicName, default current topic; ignored if full action URL is provided.
    method: HTML form action method, default "post" for save action, else "get".
    onsubmit: Execute JavaScript when the form is submitted, optional.
    onreset: Execute JavaScript when the reset button is clicked, optional.
    type="end" Special case: End an HTML form. Parameters:
    "form" type="end"
    type="..." Special case: Create an input field regardless of the type defined in the TWikiForm. Used mainly for hidden fields and submit button. The nameless parameter is the field name. Supported types:
    "fieldname" type="hidden" value="..." - hidden input field.
    "fieldname" type="submit" value="..." - submit button, value is button label.
    "fieldname" type="button" value="..." onclick="..." - regular button, value is button label.
    "fieldname" type="text" value="..." size="80" - text input field.
    "fieldname" type="checkbox" value="..." text="..." - checkbox, text is display text.
    "fieldname" type="radio" value="..." text="..." - radio button, text is display text.
    • In addition, any valid XHML and HTML5 input type is supported, such as type="date", type="file", type="image".
    Additional type-specific parameters can be supplied, such as alt="", checked="checked", class="", max="", min="", src="", style="", width="". Consult HTML documentation.
    format="..." Format string. Supported variables:
    $inputfield - rendered form input field.
    $title - raw field name (includes space and other special characters).
    $name - field name (sanitized title).
    $size - size of field or selector.
    $value - initial value, or select options.
    $tooltip - tooltip message.
    $attributes - type attributes, such as H for hidden, M for mandatory.
    $extra - extra information, such as * for mandatory field.
    See details in TWikiForms#FormFieldTypes. This parameter is ignored if type="..." is specified.
    form="..." Name of form template topic, such as "BugForm". Specify topic name or Web.TopicName Either form or topic
    is required unless
    type is specified
    topic="..." Name of topic containing form, such as "Bug1234". Specify topic name or Web.TopicName Either form or topic
    is required unless
    type is specified
    "fieldname" The name of a TWiki form field or HTML form field. Required
  • Example: %EDITFORMFIELD{ "ReleaseType" form="PackageForm" value="Beta-1" }%
  • Example: Custom form in an included header to update some values of the base topic
    %EDITFORMFIELD{ "form" type="start" action="save" topic="%BASEWEB%.%BASETOPIC%" method="post" }%
    | Priority: | %EDITFORMFIELD{ "Priority" topic="%BASETOPIC%" }% |
    | Status:   | %EDITFORMFIELD{ "Status"   topic="%BASETOPIC%" }% |
    |  | %EDITFORMFIELD{ "form" type="submit" value="Update" }% |
    %EDITFORMFIELD{ "Updated" type="hidden" value="%SERVERTIME{$year-$mo-$day}%" }%
    %EDITFORMFIELD{ "form" type="end" }%
  • Category: DatabaseAndFormsVariables, DevelopmentVariables, EditingAndContentUpdateVariables
  • Related: EDITTABLE, FORMFIELD, METASEARCH, SEARCH, FormattedSearch, QuerySearch, SearchHelp, TWikiForms, TWikiScripts, TWikiTemplates (this topic)

ENTITY{string} -- encode a string to HTML entities

  • Encode "special" characters to HTML entities. Useful to encode text properly for HTML input fields.
  • Encoded characters:
    • all non-printable ASCII characters below space, including newline ("\n") and linefeed ("\r")
    • Space
    • HTML special characters "<", ">", "&", single quote (') and double quote (")
    • TWiki special characters "%", "[", "]", "@", "_", "*", "=" and "|"
  • Syntax: %ENTITY{string}%
  • Example: %ENTITY{text with "quotes" and
    expands to text&#32;with&#32;&#34;quotes&#34;&#32;and&#10;newline
  • Notes:
    • To protect against cross-site scripting (XSS), always entity encode text intended for HTML input fields. This is especially true if text is received dynamically via URLPARAM or the like.
      Example: <input type="text" name="address" value="%ENTITY{any text}%" />
    • %ENTITY{string}% is roughly equivalent to %ENCODE{ "string" type="html" }%, but the latter cannot handle strings that have double quotes embedded in it.
  • Category: DevelopmentVariables, FormattingAndRenderingVariables, ExportAndPublishingVariables

EXAMPLEVAR -- example variable

  • The %EXAMPLEVAR{}% variable is handled by the EmptyPlugin
  • Syntax: %EXAMPLEVAR{"text" format="..."}%
  • Parameter text="..." - example text.
  • Parameter format="..." - format of report.
  • Example: %EXAMPLEVAR{"hello" format="| $topic: $summary |"}%
  • Category: DevelopmentVariables
  • Related: EmptyPlugin (this topic)

GET{"name"} -- get a variable

  • Get the value of a named variable, previously set with %SET{}%. The %SET{}% and %GET{}% variables are handled by the SetGetPlugin.
  • Syntax: %GET{ "name" default="..." }%
  • Parameters:
    Parameter Description Default
    "name" Name of variable. (required)
    format="..." Format with supported variables:
    $name for variable name
    $value for variable value
    $isdefined expanding to 1 or 0 depending if variable is defined or not
    $isset expanding to 1 or 0 depending if variable is logically true or false
    $ispersistent expanding to 1 or 0 depending if variable is persistent or not
    • all FormatTokens such as $dollar, $n, $percnt.
    default="..." Text shown if variable is not defined, e.g. not found. This parameter overrides the format parameter. "" (empty string)
  • Example: %GET{"lunch"}% returns Sushi if the following has been previously set:
    %SET{ "lunch" value="Sushi" }% - see more examples
  • Category: ApplicationsAndComponentsVariables, DevelopmentVariables
  • Related: IF, SET, SETGETDUMP, SetGetPlugin, SpreadSheetPlugin#FuncGET (this topic)

SET{"name" value="..."} -- set a variable

SETGETDUMP{...} -- dump persistent variables

USERREPORT -- show user reports with profile pictures

  • Show various user reports documented in UserReports
  • Syntax: %USERREPORT{ action="..." ... }%
  • Overview of actions with parameters:
    Report action= Parameters
    Show a simple list of registered users "user_list" search, limit, sort, reverse
    Show the profile picture image of a user "profile_picture" user, height, width, title
    Show slim, one line height user boxes "slim_box_start"
    "slim_box" or
    user, style
    users, style
    Show small, two line height user boxes "small_box_start"
    "small_box" or
    user, style
    users, style
    Show users in business card format "business_card_start"
    "business_card" or
    user, style
    users, style
    Show a selector to pick a user,
    for use in HTML forms
    "select_one_user" name, selected, users
    Show rows of checkboxes to select users,
    for use in HTML forms
    "select_users" name, selected, users, colums, style
  • Example: %USERREPORT{ action="user_list" search="jane" limit="5" }%
  • Category: AdministrationVariables, DevelopmentVariables, UsersAndAuthenticationVariables
  • Related: BUBBLESIG, SEARCH, USERSIG, UserList, UserReports (this topic)

Total: 10 variables


Related Topics: TWikiVariables, TWikiVariablesSearch, TWikiVariablesQuickStart

Topic revision: r1 - 11 Nov 2012 - TWikiContributor
This site is powered by the TWiki collaboration platform Powered by Perl This site is powered by the TWiki collaboration platformCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback
Note: Please contribute updates to this topic on at TWiki:TWiki.DevelopmentVariables