Difference between revisions of "Template:PrintTopicAcceptedTheoriesList"
Jump to navigation
Jump to search
(45 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
<noinclude> | <noinclude> | ||
− | This template is used to print a list of accepted theories on this topic. It | + | This template is used to print a list of accepted theories on this topic. It displays the theories accepted on a given topic by sorting them according to their topic's sorting order. To print the details of the accepted theories, use [[Template:PrintTopicAcceptedTheoriesDetails]]. |
+ | |||
+ | The template prints a short statement of which theories are accepted in which community. This can be done in two options depending on the value of <code><nowiki>groupbycommunity</nowiki></code>: | ||
+ | |||
+ | ''Option 1'': (if <code><nowiki>groupbycommunity=yes</nowiki></code>) | ||
+ | * Community A: Theory 1, Theory 2, Theory 3 | ||
+ | * Community B: Theory 2, Theory 3, Theory 4 | ||
+ | * Community C: Theory 1, Theory 3, Theory 5 | ||
+ | |||
+ | ''Option 2'': (if <code><nowiki>groupbycommunity=no</nowiki></code> or empty) | ||
+ | * Theory 1: Community A, Community C | ||
+ | * Theory 2: Community A, Community B | ||
+ | * Theory 3: Community A, Community B, Community C | ||
+ | * Theory 4: Community B | ||
+ | * Theory 5: Community C | ||
+ | |||
+ | Formulation texts can also be printed if <code><nowiki>formulationtext=yes</nowiki></code>. | ||
+ | |||
'''NOTE:''' As any "printing" template, it doesn't store any values anywhere, but merely prints them on the page. | '''NOTE:''' As any "printing" template, it doesn't store any values anywhere, but merely prints them on the page. | ||
+ | |||
'''Parameters:''' | '''Parameters:''' | ||
Line 9: | Line 27: | ||
* <code><nowiki>|outro=</nowiki></code> - text that is appended to the output, if at least some results exist. | * <code><nowiki>|outro=</nowiki></code> - text that is appended to the output, if at least some results exist. | ||
* <code><nowiki>|default=</nowiki></code> - if, for any reason, the query returns no results, this will be printed instead. | * <code><nowiki>|default=</nowiki></code> - if, for any reason, the query returns no results, this will be printed instead. | ||
− | * <code><nowiki>|formulationtext=</nowiki></code> - if ''yes'', | + | * <code><nowiki>|formulationtext=</nowiki></code> - if ''yes'', the formulation of the theory will be added. Otherwise (default), the formulation text won't be printed. |
− | |||
− | |||
− | |||
* <code><nowiki>|communitiesfirst=</nowiki></code> - if ''yes'', the communities will be mentioned first in the sentence. If ''no'' (default) the name of the theory will appear first. | * <code><nowiki>|communitiesfirst=</nowiki></code> - if ''yes'', the communities will be mentioned first in the sentence. If ''no'' (default) the name of the theory will appear first. | ||
* <code><nowiki>|groupbycommunity=</nowiki></code> - if ''yes'', the result will be grouped by community (e.g. Theories A, B, C are accepted by community X. Theories A, D, E are accepted by community Y.) If ''no'' (default) the result will be grouped by theory (e.g. Theory A is accepted in communities X and Y.). | * <code><nowiki>|groupbycommunity=</nowiki></code> - if ''yes'', the result will be grouped by community (e.g. Theories A, B, C are accepted by community X. Theories A, D, E are accepted by community Y.) If ''no'' (default) the result will be grouped by theory (e.g. Theory A is accepted in communities X and Y.). | ||
</noinclude><includeonly><!-- | </noinclude><includeonly><!-- | ||
− | -->{{#if: {{{topic|}}} |<!-- | + | -->{{#if: {{{topic|}}}<!-- |
− | --><!-- | + | -->|<!-- |
− | + | ||
− | + | --><!-- Get the default text | |
− | --><!-- | + | --><!-- |
− | + | -->{{#switch: {{#show: {{{topic|}}}|?Topic Type|link=none}}<!-- | |
− | + | -->|<!-- | |
− | + | -->Definitional={{#vardefine: varDefault|At the moment, the term has no accepted definition in}}<!-- | |
− | + | -->|<!-- | |
− | + | -->{{#vardefine: varDefault|At the moment, the question has no accepted answer in}}<!-- | |
− | + | -->}}<!-- switch | |
− | + | --><!-- | |
− | + | ||
− | + | --><!-- Get the list of all answers | |
− | + | --><!-- | |
− | + | -->{{#arraydefine: varAnswers<!-- | |
− | + | -->|{{#ask:<!-- | |
− | + | -->[[SubObjectCategory::Current Answer]]<!-- | |
− | + | -->[[Topic::{{{topic|}}}]]<!-- | |
− | + | -->[[Answer Type::Complete||Inherited||Partial]]<!-- | |
− | + | -->|?Theory<!-- | |
− | + | -->|mainlabel=-<!-- | |
− | + | -->|headers=hide<!-- | |
− | + | -->|sort=Answer Type, Sorting Order<!-- | |
− | + | -->|order=asc, asc<!-- | |
− | + | -->|link=none<!-- | |
− | + | -->|limit=10000<!-- | |
− | + | -->}}<!-- | |
− | | | + | -->| , |unique<!-- |
− | + | -->}}<!-- arraydefine | |
− | + | --><!-- | |
+ | --><!-- remove duplicates | ||
+ | -->{{#arrayunique: varAnswers}}<!-- | ||
+ | |||
+ | --><!-- | ||
+ | --><!-- Check the grouping flag | ||
+ | --><!-- | ||
+ | -->{{#ifeq: {{{groupbycommunity|no}}}|yes<!-- | ||
+ | |||
+ | -->|<!-- Yes: Group BY Community | ||
+ | --><!-- | ||
+ | -->{{#arraydefine: varAccCommunities<!-- | ||
+ | -->|{{#ask:<!-- | ||
+ | -->[[SubObjectCategory::Current Answer]]<!-- | ||
+ | -->[[Topic::{{{topic|}}}]]<!-- | ||
+ | -->|?Community<!-- | ||
+ | -->|mainlabel=-<!-- | ||
+ | -->|headers=hide<!-- | ||
+ | -->|link=none<!-- | ||
+ | -->|limit=10000<!-- | ||
+ | -->}}<!-- | ||
+ | -->| , |unique<!-- | ||
+ | -->}}<!-- arraydefine | ||
+ | --><!-- | ||
+ | --><!-- remove duplicates | ||
+ | -->{{#arrayunique: varAccCommunities}}<!-- | ||
+ | --><!-- | ||
+ | -->{{#switch: {{#arraysize: varAccCommunities}}<!-- | ||
+ | -->|0={{{default|}}}<!-- | ||
+ | -->|{{{intro|}}}<!-- | ||
+ | -->{{#arrayprint: varAccCommunities||varCommunity<!-- | ||
+ | -->|<!-- | ||
+ | -->{{PrintCommunityTopicCurrentTheories<!-- | ||
+ | -->|community=varCommunity<!-- | ||
+ | -->|topic={{{topic|}}}<!-- | ||
+ | -->|default={{#var: varDefault}} [[varCommunity|{{PAGENAME: varCommunity}}]].<!-- | ||
+ | -->|communityfirst={{{communitiesfirst|no}}}<!-- | ||
+ | -->|formulationtext={{{formulationtext|no}}}<!-- | ||
+ | -->|link=yes<!-- | ||
+ | -->|linktheory=yes<!-- | ||
+ | -->}} <!-- | ||
+ | |||
+ | -->}}<!--arrayprint | ||
+ | |||
-->{{{outro|}}}<!-- | -->{{{outro|}}}<!-- | ||
− | -->}}<!-- switch | + | -->}}<!-- switch |
+ | --><!-- | ||
+ | |||
+ | |||
+ | -->|<!-- No: Group By Theory | ||
+ | --><!-- | ||
+ | --><!-- | ||
+ | -->{{#switch: {{#arraysize: varAccTheories}}<!-- | ||
+ | -->|0={{{default|}}}<!-- | ||
+ | -->|{{{intro|}}}<!-- | ||
+ | -->{{#arrayprint: varAccTheories||varTheory<!-- | ||
+ | -->|<!-- | ||
+ | |||
+ | -->{{PrintTheoryCurrentlyAcceptedInCommunities<!-- | ||
+ | -->|theory=varTheory<!-- | ||
+ | -->|communitiesfirst={{{communitiesfirst|no}}}<!-- | ||
+ | -->|link=yes<!-- | ||
+ | -->|linktheory=yes<!-- | ||
+ | -->}} <!-- | ||
+ | |||
+ | -->}}<!--arrayprint | ||
+ | |||
+ | -->{{{outro|}}}<!-- | ||
+ | -->}}<!-- switch | ||
--><!-- | --><!-- | ||
− | + | ||
− | + | ||
− | + | -->}}<!-- ifeq grouping flag | |
− | + | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
-->}}<!-- if | -->}}<!-- if | ||
--></includeonly> | --></includeonly> |
Latest revision as of 23:12, 26 February 2023
This template is used to print a list of accepted theories on this topic. It displays the theories accepted on a given topic by sorting them according to their topic's sorting order. To print the details of the accepted theories, use Template:PrintTopicAcceptedTheoriesDetails.
The template prints a short statement of which theories are accepted in which community. This can be done in two options depending on the value of groupbycommunity
:
Option 1: (if groupbycommunity=yes
)
- Community A: Theory 1, Theory 2, Theory 3
- Community B: Theory 2, Theory 3, Theory 4
- Community C: Theory 1, Theory 3, Theory 5
Option 2: (if groupbycommunity=no
or empty)
- Theory 1: Community A, Community C
- Theory 2: Community A, Community B
- Theory 3: Community A, Community B, Community C
- Theory 4: Community B
- Theory 5: Community C
Formulation texts can also be printed if formulationtext=yes
.
NOTE: As any "printing" template, it doesn't store any values anywhere, but merely prints them on the page.
Parameters:
|topic=
- the topic.|intro=
- initial text that precedes the output, if at least some results exist.|outro=
- text that is appended to the output, if at least some results exist.|default=
- if, for any reason, the query returns no results, this will be printed instead.|formulationtext=
- if yes, the formulation of the theory will be added. Otherwise (default), the formulation text won't be printed.|communitiesfirst=
- if yes, the communities will be mentioned first in the sentence. If no (default) the name of the theory will appear first.|groupbycommunity=
- if yes, the result will be grouped by community (e.g. Theories A, B, C are accepted by community X. Theories A, D, E are accepted by community Y.) If no (default) the result will be grouped by theory (e.g. Theory A is accepted in communities X and Y.).