Vorlage:Attributgenerator: Unterschied zwischen den Versionen

Aus Splitterwiki
Zur Navigation springen Zur Suche springen
K ((bugfix))
(Umgeschrieben auf var statt array)
Zeile 14: Zeile 14:
 
   }}</pre>
 
   }}</pre>
 
=== Ausgabe ===
 
=== Ausgabe ===
{{ Attributgenerator | Attribut = Profilbild }}
+
{{ Attributgenerator
 +
  | Attribut = Profilbild
 +
  }}
 
<hr>
 
<hr>
 
Klick auf „Bearbeiten“, um den Quelltext der Vorlage anzusehen.
 
Klick auf „Bearbeiten“, um den Quelltext der Vorlage anzusehen.
Zeile 25: Zeile 27:
 
/// Definitionen
 
/// Definitionen
 
//////////////////////////////////////////////////////////////
 
//////////////////////////////////////////////////////////////
/// Basistyp
 
 
-->{{#vardefine: Attribut <!--
 
-->{{#vardefine: Attribut <!--
 
   -->| {{#if: {{{Attribut|}}} <!--
 
   -->| {{#if: {{{Attribut|}}} <!--
Zeile 41: Zeile 42:
 
//////////////////////////////////////////////////////////////
 
//////////////////////////////////////////////////////////////
  
/// Gehe die Formularfelder jedes Formularblocks durch = @KEY@
+
/// Ermittle Datentyp des Formularfeldes (Attribut Datentyp)
-->{{#arraymap: {{#arrayprint: Attributliste | @//@ }}<!--
+
-->{{#vardefine: Datentyp | {{#show: Attribut:{{#var:Attribut}} | ?Datentyp# }} }}<!--
  -->| @//@ <!--
+
 
  -->| @KEY@ <!--
+
/// Ermittle den Inhalt des Formularfeldes
 +
-->{{#if: <nowiki>{{{</nowiki>{{#var:Attribut}}|<nowiki>}}}</nowiki><!--
 
   -->|<!--
 
   -->|<!--
  /// Ermittle Datentyp des Formularfeldes (Attribut Datentyp)
+
 
  -->{{#vardefine: Datentyp | {{#show: Attribut:@KEY@ | ?Datentyp# }} }}<!--
 
  /// Ermittle den Inhalt des Formularfeldes
 
  -->{{#if: <nowiki>{{{</nowiki>@KEY@|<nowiki>}}}</nowiki><!--
 
 
     /// Trage das Attribut, abhängig von seinem Datentyp, ein
 
     /// Trage das Attribut, abhängig von seinem Datentyp, ein
     -->|{{#switch: {{#var:Datentyp}}<!--
+
     -->{{#switch: {{#var:Datentyp}}<!--
 +
 
 
       /// Seite: jeweils einzeln eintragen
 
       /// Seite: jeweils einzeln eintragen
 
       -->| Seite = <!--
 
       -->| Seite = <!--
         -->{{#arraymap: <nowiki>{{{</nowiki>@KEY@<nowiki>}}}</nowiki> | , | @VALUE@ | {{#set: @KEY@ = @VALUE@ }} | }}<!--
+
         -->{{#arraymap: <nowiki>{{{</nowiki>{{#var:Attribut}}<nowiki>}}}</nowiki> | , | @VALUE@ | {{#set: {{#var:Attribut}} = @VALUE@ }} | }}<!--
           -->{{#arraydefine: Attribut eingetragen | {{#arrayprint:Attribut eingetragen|@//@}} @//@ @KEY@ }}<!--
+
           -->{{#arraydefine: Attribut eingetragen | {{#arrayprint:Attribut eingetragen|@//@}} @//@ {{#var:Attribut}} }}<!--
 +
 
 
       /// Wahrheitswert: nur eintragen, wenn wahr (also das Häkchen gesetzt wurde)
 
       /// Wahrheitswert: nur eintragen, wenn wahr (also das Häkchen gesetzt wurde)
 
       -->| Wahrheitswert = <!--
 
       -->| Wahrheitswert = <!--
         -->{{#ifeq: <nowiki>{{{</nowiki>@KEY@|<nowiki>}}}</nowiki> | Ja <!--
+
         -->{{#ifeq: <nowiki>{{{</nowiki>{{#var:Attribut}}|<nowiki>}}}</nowiki> | Ja <!--
           -->| {{#set: @KEY@ = <nowiki>{{{</nowiki>@KEY@<nowiki>}}}</nowiki> }}<!--
+
           -->| {{#set: {{#var:Attribut}} = <nowiki>{{{</nowiki>{{#var:Attribut}}<nowiki>}}}</nowiki> }}<!--
           -->{{#arraydefine: Attribut eingetragen | {{#arrayprint:Attribut eingetragen|@//@}} @//@ @KEY@ }}<!--
+
           -->{{#arraydefine: Attribut eingetragen | {{#arrayprint:Attribut eingetragen|@//@}} @//@ {{#var:Attribut}} }}<!--
 
           -->|}}<!--
 
           -->|}}<!--
 +
 
       /// Alle anderen Attribute bekommen den Standard
 
       /// Alle anderen Attribute bekommen den Standard
       -->| {{#set: @KEY@ = <nowiki>{{{</nowiki>@KEY@<nowiki>}}}</nowiki> }} <!--
+
       -->| {{#set: {{#var:Attribut}} = <nowiki>{{{</nowiki>{{#var:Attribut}}<nowiki>}}}</nowiki> }} <!--
           -->{{#arraydefine: Attribut eingetragen | {{#arrayprint:Attribut eingetragen|@//@}} @//@ @KEY@ }}<!--
+
           -->{{#arraydefine: Attribut eingetragen | {{#arrayprint:Attribut eingetragen|@//@}} @//@ {{#var:Attribut}} }}<!--
 
       -->}}<!--
 
       -->}}<!--
    -->|<!--
+
 
    -->}}<!--
+
/// beende Bedingung
 
   -->|<!--
 
   -->|<!--
 
   -->}}<!--
 
   -->}}<!--

Version vom 24. September 2020, 21:54 Uhr

Dies ist die Vorlage „Attributgenerator“. Sie sollte im folgenden Format genutzt werden:

{{Attributgenerator
  | Attribut = <Attribut>
  }}

Beispiel

Eingabe

{{ Attributgenerator
  | Attribut = Profilbild
  }}

Ausgabe


Wert Attribut = Profilbild


var Attribut = Profilbild


}}}


Klick auf „Bearbeiten“, um den Quelltext der Vorlage anzusehen.

Bearbeiten