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

Component templates


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>