Class
QandA with pagetitle format title
Has version history: false
Layout
- Areas : 'sub-header sidebar' 'main sidebar'
- Columns : 3fr 1fr
- Rows : auto 1fr
Storage templates
- Base properties: Template:Base properties
- Page properties: Template:QandA properties
Component templates
- Sidebar template: Template:QandA sidebar
Defined parameters
Name | Property | Slot | Formfield type | Allowed values | Required | Multiple |
---|---|---|---|---|---|---|
Title | Property:Title | ws-base-props | text | Yes | No | |
Tag | Property:Tag | ws-class-props | token | No | Yes | |
Automatically generated template code
Open one of the tabs to view automatically generated template code. This is meant to be used when creating new templates.
If you are modifying an existing template, it might still be useful to update the parameter definitions and use parts of the generated code, but be careful not to completely overwrite existing templates. Existing templates will likely have had other modifications that are not included in the automatically generated code.
Template:QandA properties
<noinclude> This is the '''QandA properties''' template. It should be called in the following format: <pre> {{QandA properties |Tag= (optional: text) }} </pre> </noinclude><includeonly>{{#set: |Tag={{{Tag|}}}|+sep=, }}</includeonly>
Template:QandA sidebar
<noinclude> This is the '''QandA sidebar''' template. It should be called in the following format: <pre> {{QandA sidebar}} </pre> </noinclude><includeonly><!-- -->{{#vardefine:@allow sidebar edit |{{#ifingroup:user |{{#if:{{#urlget:veaction}}{{#urlget:action}}||yes}} }} }}<!-- --><div class="tab-content"><!-- -->{{#tag:_input||type=radio|id=sidebar-view|name=toggle-sidebar|checked=checked|class=d-none sidebar-view}}<!-- --><div class="card sidebar-view-tab"> <div class="card-header">{{#ifeq:{{#var:@allow sidebar edit}} |yes |<span style="float:right">{{#tag:label|Edit|for=sidebar-edit|class=btn btn-secondary}}</span>}} <b class="d-block">{{#caprint:$base[Base properties][Class]}}</b> {{#caprint:$base[Base properties][Title]}} </div><!-- end of .card-header --> <div class="card-body"> {{Sidebar item |Label=Title |Value={{#caprint:$base[Base properties][Title]}} }}{{Sidebar item |Label=Tag |Value={{#caprint:$class[QandA properties][Tag]}} }} </div><!-- end of .card-body --> </div><!-- end of .card -->{{#ifeq:{{#var:@allow sidebar edit}} |yes |<!-- -->{{#tag:_input||type=radio|id=sidebar-edit|name=toggle-sidebar|class=d-none sidebar-edit}}<!-- --><div class="card sidebar-edit-tab"><!-- --><form action="addToWiki"><!-- // _edits for base properties -->{{#tag:_edit ||target={{PAGEID}} |template=Base properties |formfield=Title |mwslot=ws-base-props}}<!-- // _create or _edits for page properties // use casize to check if the slot already exists. Then _edit, else _create. -->{{#if:{{#casize:$class}} |{{#tag:_edit ||target={{PAGEID}} |template=QandA properties |formfield=Tag |mwslot=ws-class-props}} |<_create mwwrite="{{FULLPAGENAME}}" mwtemplate="QandA properties" mwslot="ws-class-props" mwfields="Tag" /> }}<!-- end of #if --> <div class="card-header"><span style="float:right">{{#tag:label|Close|for=sidebar-view|class=btn btn-secondary}}</span> <b class="d-block">{{#caprint:$base[Base properties][Class]}}</b> {{#caprint:$base[Base properties][Title]}} </div><!-- end of .card-header --> <div class="card-body"> {{Sidebar item |Label=Title |Value={{#tag:input ||type=text |name=Title |required=required |class=form-control |value={{#caprint:$base[Base properties][Title]}} }} }} {{Sidebar item |Label=Tag |Value={{#cadefine:$value settings | }} {{#cadefine:$values selected |{{#caprint:$class[QandA properties][Tag]}} }} {{#camerge:$value options |$value settings |$values selected }} {{#caunique:$value options}} {{#tag:_token |{{#tag:input|(none)|type=option|value=}} {{#camap:$value options |__Value__|{{#tag:input|__Value__|type=option|value=__Value__|selected={{#if:{{#casearch:$values selected|__Value__}}|selected}} }} |}} |name=Tag[] |class=form-control |id=tag-field |multiple=multiple }} }} <div class="text-right"> {{#tag:label|Close|for=sidebar-view|class=btn btn-secondary}} <input type="submit" value="Save" class="btn btn-primary" /> </div> </div><!-- end of .card-body --> </form> </div><!-- end of .card --> |}}<!-- end of #ifeq @allow sidebar edit == yes --> </div><!-- end of .tab-content --></includeonly>