Difference between revisions of "Template:SetProp/RequiredBy auto"

From Salem Wiki
Jump to: navigation, search
(Initial setup)
 
m (Changed protection level for "Template:SetProp/RequiredBy auto": images get protected also, so no cascade :/ ([edit=sysop] (indefinite) [move=sysop] (indefinite)))
 
(9 intermediate revisions by the same user not shown)
Line 1: Line 1:
<onlyinclude></onlyinclude><noinclude>{{documentation}}</noinclude>
+
<onlyinclude>{{#if: {{{page|}}}
 +
| {{#if: {{#ask:
 +
[[:+]] [[RequiresObj::~{{{page|}}};*]]
 +
OR [[:+]] [[RepairedWith::~{{{page|}}};*]]
 +
OR [[:+]] [[RequiresTech::{{{page|+}}}]]
 +
|sep={{{sep|,}}}
 +
|link=none
 +
}}x
 +
| {{#arraymap: {{#ask:
 +
[[:+]] [[RequiresObj::~{{{page|}}};*]]
 +
OR [[:+]] [[RepairedWith::~{{{page|}}};*]]
 +
OR [[:+]] [[RequiresTech::{{{page|+}}}]]
 +
|sep={{{sep|,}}}
 +
|link=none
 +
}}
 +
|{{{sep|,}}}
 +
|xXx
 +
|{{#set:RequiredBy=xXx}}
 +
|
 +
}}
 +
}}
 +
| <dl class="error"><!--
 +
--><dt>SetProp/RequiredBy auto:<!--
 +
--><dd>You need to provide a value for the '''page''' parameter !<!--
 +
--></dl>
 +
}}</onlyinclude><noinclude>{{documentation}}</noinclude>

Latest revision as of 18:39, 25 July 2012

SetProp/RequiredBy auto:
You need to provide a value for the page parameter !


Template documentation (for the template shown above, sometimes hidden or invisible)

Description

This helper-template is used, by {{SetProp}}, to automatically create a reverse-relationship, between the Properties RequiresObj, RepairedWith or RequiresTech of pages, with the current page.
It does this by checking for the provided page-name as value in either of these properties on any page in the main-name-space using a SMW-Query like:
{{#ask: [[:+]] [[RequiresObj::~{{{page}}};*]] OR [[:+]] [[RepairedWith::~{{{page}}};*]] OR [[:+]] [[RequiresTech::{{{page}}}]] }}
If it finds any results, then it sets Property:RequiredBy for the current page using these results as value.
It uses {{#arraymap:}} as a wrapper to inject these values in {{#set:RequiredBy=<value>}}.

Syntax

Type the below code somewhere in {{SetProp}} or any-other code:
{{SetProp/RequiredBy auto
|page={{{SUBPAGENAME}}}
|sep={{{sep|,}}}
}}