Difference between revisions of "Form templates"

From TempusServa wiki
Jump to navigation Jump to search
old>Admin
m (16 revisions imported)
 
(2 intermediate revisions by one other user not shown)
Line 20: Line 20:
== Template handling ==
== Template handling ==
Templates are injected with values from the current record like this
Templates are injected with values from the current record like this
# Try to inject [system fieldname] + [prefix]
# For each field
# If failed
## Try to inject [system fieldname] + [prefix]
#* Copy content from {default_start} to {default_end}
## If failed
#* Inject values into content copy
##* Copy content from {default_start} to {default_end}
#* Inject content copy into {defaultField}
##* Inject values into content copy
##* Inject content copy into {defaultField}
# Inject the form page selector into {pageselector}
## If failed: Ignore


Missing values for default_XXX tags wil automatically get appended to the template.
Missing values for default_XXX tags wil automatically get appended to the template.

Latest revision as of 11:52, 10 December 2021

Structure and syntax

The structure of the tags in the HTML template are

  • {header}
  • {tablename}
  • {pageselector}
  • {default_start}
    • {default_name}
    • {default_value}
    • {default_help}
  • {default_end}
  • {defaultField}
  • {footer}

You may also add additional tags for special fields:

  • "{" + [field systemname] + "_name}"
  • "{" + [field systemname] + "_value}"
  • "{" + [field systemname] + "_help}"

Template handling

Templates are injected with values from the current record like this

  1. For each field
    1. Try to inject [system fieldname] + [prefix]
    2. If failed
      • Copy content from {default_start} to {default_end}
      • Inject values into content copy
      • Inject content copy into {defaultField}
  2. Inject the form page selector into {pageselector}
    1. If failed: Ignore

Missing values for default_XXX tags wil automatically get appended to the template.

Relation til styling

type class id content template
tbody PAGE_[field PageID] Container for a single field {default_start} / {default_end}
div FieldLabel NB_[system fieldname] Label for field {default_name}
div FieldValue VB_[system fieldname] Value of field / Input for field {default_value}
div FieldNotes HB_[system fieldname] Optional help text for the field {default_help}

Example

 {header}

<h3>{tablename}</h3>

<table class='tableForm'>
<tr><td style="padding: 0px; border: 0px;">{pageselector}</td></tr>
{default_start}
<tr>
<td class="tableFieldTableLabel"><p>{default_name}</p></td>
</tr>
<tr>
<td class="tableFieldTableValue">
<p>{default_value}</p>
<p>{default_help}</p>
</td>
</tr>
{default_end}
{defaultField}
</table>

{footer}