Vorlage:Autorenbox: Unterschied zwischen den Versionen

Aus ZUM-Unterrichten
KKeine Bearbeitungszusammenfassung
Markierung: 2017-Quelltext-Bearbeitung
(typo aktualisert)
Markierung: 2017-Quelltext-Bearbeitung
(23 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 4: Zeile 4:
== Parameter ==
== Parameter ==


; <code>mit_unterseiten</code> 0=nein 1=ja
; <code>mit_unterseiten</code>
: Autoren und Änderungen der aktuellen Seite sowie aller Unterseiten werden berücksichtigt.
: zusätzlich werden Autoren und Änderungen aller Unterseiten berücksichtigt.
:; 0 : nein
:; 1 : ja


; <code>kategorie</code>
; <code>kategorie</code>
: Autoren und Änderungen aller Seiten der Kategorie werden berücksichtigt. Mehrere Kategorien sowie inklusive Unterkategorien ist ebenfalls möglich siehe [http://followthescore.org/dpldemo/index.php?title=DPL:Manual_-_DPL_parameters:_Criteria_for_page_selection#category DPL Dokumentation für <code>category</code>].
: zusätzlich werden Autoren und Änderungen aller Seiten der Kategorie berücksichtigt. Weitere Informationen befinden sich in der [http://followthescore.org/dpldemo/index.php?title=DPL:Manual_-_DPL_parameters:_Criteria_for_page_selection#category DPL Dokumentation für <code>category</code>].


== Beispiele ==
== Beispiele ==
Zeile 18: Zeile 20:


;Benutzung
;Benutzung
: <pre>{{Autorenbox|kategorie=Ethik}}</pre>
: <pre>{{Autorenbox|kategorie=Ethik}}</pre>  
;Ergebnis
;Ergebnis
: <small>Es wird nur der aktuelle Namensraum berücksichtigt, deshalb ist das Beispiel sehr leer.</small>
: {{Autorenbox|kategorie=Ethik}}
: {{Autorenbox|kategorie=Ethik}}


Zeile 25: Zeile 28:
: <pre>{{Autorenbox|mit_unterseiten=ja}}</pre>
: <pre>{{Autorenbox|mit_unterseiten=ja}}</pre>
;Ergebnis
;Ergebnis
: <small>Die Vorlage hat keine Unterseiten, deshalb ist das Beispiel sehr leer.</small>
: {{Autorenbox|mit_unterseiten=ja}}
: {{Autorenbox|mit_unterseiten=ja}}




<onlyinclude><includeonly>
<includeonly>
{{#vardefine:Autorenbox_Autor|}}
<!-- BEGIN: Wir suchen den ersten Autor der Seite -->
{{#dpl:
<onlyinclude>{{#vardefine:Autorenbox_Autor|}}</onlyinclude>
<!-- wir suchen nach allen Versionen vor der aktuellen Zeit. Wir wollen nur ein Ergebnis und benutzen ein Userformat um die Variable Autorenbox_Autor zu setzen.  -->
<onlyinclude>{{#dpl:
   | noresultsheader=&nbsp;
   | noresultsheader=&nbsp;
   | title={{PAGENAME}}
   | title={{PAGENAME}}
Zeile 36: Zeile 42:
   | namespace={{NAMESPACE}}
   | namespace={{NAMESPACE}}
   | skipthispage=no
   | skipthispage=no
   | format=,²{#vardefine:Autorenbox_Autor¦%USER%}²,
   | format=,²{#vardefine:Autorenbox_Autor¦²{RepariereNutzername¦%USER%}²,
   | addauthor=true
   | addauthor=true
   | count=1
   | count=1
  }}
  }}</onlyinclude>
{{#if: {{{kategorie|}}}
<!-- END: Wir suchen den ersten Autor der Seite -->
<onlyinclude>{{#if: {{{kategorie|}}}
|
|
<!-- BEGIN: Liste aller Autoren in der Kategorie -->
{{#vardefine:Autorenbox_lastmodified|}}
{{#vardefine:Autorenbox_lastmodified|}}
{{#vardefine:Autorenbox_lastmodified_tmp|0}}
{{#vardefine:Autorenbox_lastmodified_tmp|0}}
Zeile 52: Zeile 60:
  | ordermethod=lastedit
  | ordermethod=lastedit
  | addeditdate=true
  | addeditdate=true
| minoredits=exclude
  | format=,²{#ifexpr: ²{#var:Autorenbox_lastmodified_tmp}² < %DATE% ¦²{#vardefine:Autorenbox_lastmodified_tmp¦%DATE%}²}²,
  | format=,²{#ifexpr: ²{#var:Autorenbox_lastmodified_tmp}² < %DATE% ¦²{#vardefine:Autorenbox_lastmodified_tmp¦%DATE%}²}²,
  | distinct=true}}
  | distinct=true}}
{{#vardefine:Autorenbox_lastmodified|{{#var:Autorenbox_lastmodified_tmp|}}}}
{{#vardefine:Autorenbox_lastmodified|{{#ifeq:{{#var:Autorenbox_lastmodified_tmp|}}|0||{{#var:Autorenbox_lastmodified_tmp|}}}}}}
<div class="uk-panel uk-panel-box uk-panel-box-primary zum-hintergrund-links zum-farbe-xx-heller">
<div class="uk-panel uk-panel-box uk-panel-box-primary zum-hintergrund-links zum-farbe-xx-heller">
'''Autoren:'''
'''Autoren:'''
<small class="uk-align-right">aktualisert im {{#time: F Y | {{#if:{{#var:Autorenbox_lastmodified|}}|@{{#var:Autorenbox_lastmodified|}}|{{REVISIONYEAR}}-{{REVISIONMONTH}}-{{REVISIONDAY}}}}}}</small>
<small class="uk-align-right">aktualisiert im {{#time: F Y | {{#if:{{#var:Autorenbox_lastmodified|}}|@{{#var:Autorenbox_lastmodified|}}|{{REVISIONYEAR}}-{{REVISIONMONTH}}-{{REVISIONDAY}}}}}}</small>
<div class="uk-flex uk-flex-wrap">
<div class="uk-flex uk-flex-wrap uk-width-1-1">
{{Nutzerkarte|{{#var:Autorenbox_Autor}}}}
{{Nutzerkarte|{{#var:Autorenbox_Autor}}}}
{{#vardefine:Autorenbox_Nutzerliste|}}{{#dpl:
<!--
 
Die Variable `Autorenbox_Nutzerliste` wird verwendet um Duplikate zu vermeiden.
Der DPL Aufruf liefert jeden Autor jeder Revision, das sind natürlich viele Duplikate.
Im DPL format prüfen wir erst ob der aktuell gefundene %USER% bereits in der Variable vorkommt.
Wenn ja, geben wir nix aus. Wenn nein fügen wir ihn hinzu und geben die Nutzerkarte aus.
 
In der Liste werden die Namen mit `>>` `<<` umrahmt um nicht zufälligerweise Benutzer welche aus Namen anderer Benutzer zusammengesetzt sind auszuschließen. Z.B. ein Nutzer heißt Franz, einer heißt Bergmann und ein dritter heißt FranzBergmann. Würden wir nur einfach den Namen Suchen könnte ein bereits gefundener FranzBergmann die Anzeige sowohl von Benutzer Franz als auch von Benutzer Bergmann verhindern (da beide Namen ja bereits vorkommen als Bestandteile von FranzBergmann. Die Umrahmung mit `>>` und `<<` verhindert dies.
 
Der DPL Aufruf kommt bei importierten Seiten zu falschen Nutzernamen (NAMENSRAUM>Benutzername). Deshalb muss immer %USER% durch {{RepariererNutzername}} repariert werden.
 
-->
{{#vardefine:Autorenbox_Nutzerliste|>>{{RepariereNutzername | {{#var:Autorenbox_Autor}}}}<<}}{{#dpl:
  | noresultsheader=&nbsp;
  | noresultsheader=&nbsp;
  | category={{{kategorie}}}
  | category={{{kategorie}}}
Zeile 66: Zeile 88:
  | namespace={{NAMESPACE}}
  | namespace={{NAMESPACE}}
  | skipthispage=no
  | skipthispage=no
  | format=,²{#ifeq:{{#var:Autorenbox_Autor}}¦%USER%¦¦ ²{#if: ²{#pos: ²{#var:Autorenbox_Nutzerliste¦}²¦>>%USER%<<}²¦¦²{#vardefine:Autorenbox_Nutzerliste¦²{#var:Autorenbox_Nutzerliste¦}²>>%USER%<<}²²{Nutzerkarte¦%USER%}²}²}²,
| ordermethod=lastedit
| minoredits=exclude
  | format=,²{#if: ²{#pos: ²{#var:Autorenbox_Nutzerliste¦}²¦>>²{RepariereNutzername¦%USER%<<}²¦¦²{#vardefine:Autorenbox_Nutzerliste¦²{#var:Autorenbox_Nutzerliste¦}²>>²{RepariereNutzername¦%USER%<<}²²{Nutzerkarte¦²{RepariereNutzername¦%USER%}²}²}²,
  | adduser=true
  | adduser=true
  | distinct=true
  | distinct=true
}}
}}
<!-- END: Liste aller Autoren in der Kategorie -->
|
|
<!-- BEGIN: Liste aller Autoren auf der Seite (evtl. inklusive Unterseiten) -->
{{#vardefine:Autorenbox_lastmodified|}}
{{#vardefine:Autorenbox_lastmodified|}}
{{#vardefine:Autorenbox_lastmodified_tmp|0}}
{{#vardefine:Autorenbox_lastmodified_tmp|0}}
Zeile 81: Zeile 107:
  | ordermethod=lastedit
  | ordermethod=lastedit
  | addeditdate=true
  | addeditdate=true
| minoredits=exclude
  | format=,²{#ifexpr: ²{#var:Autorenbox_lastmodified_tmp}² < %DATE% ¦²{#vardefine:Autorenbox_lastmodified_tmp¦%DATE%}²}²,
  | format=,²{#ifexpr: ²{#var:Autorenbox_lastmodified_tmp}² < %DATE% ¦²{#vardefine:Autorenbox_lastmodified_tmp¦%DATE%}²}²,
  | distinct=true}}
  | distinct=true}}
{{#vardefine:Autorenbox_lastmodified|{{#var:Autorenbox_lastmodified_tmp|}}}}
{{#vardefine:Autorenbox_lastmodified|{{#ifeq:{{#var:Autorenbox_lastmodified_tmp|}}|0||{{#var:Autorenbox_lastmodified_tmp|}}}}}}
<div class="uk-panel uk-panel-box uk-panel-box-primary zum-hintergrund-links zum-farbe-xx-heller">
<div class="uk-panel uk-panel-box uk-panel-box-primary zum-hintergrund-links zum-farbe-xx-heller">
'''Autoren:'''
'''Autoren:'''
<small class="uk-align-right">aktualisert im {{#time: F Y | {{#if:{{#var:Autorenbox_lastmodified|}}|@{{#var:Autorenbox_lastmodified|}}|{{REVISIONYEAR}}-{{REVISIONMONTH}}-{{REVISIONDAY}}}}}}</small>
<small class="uk-align-right">aktualisiert im {{#time: F Y | {{#if:{{#var:Autorenbox_lastmodified|}}|@{{#var:Autorenbox_lastmodified|}}|{{REVISIONYEAR}}-{{REVISIONMONTH}}-{{REVISIONDAY}}}}}}</small>
<div class="uk-flex uk-flex-wrap">
<div class="uk-flex uk-flex-wrap uk-width-1-1">
{{Nutzerkarte|{{#var:Autorenbox_Autor}}}}
{{Nutzerkarte|{{#var:Autorenbox_Autor}}}}
{{#vardefine:Autorenbox_Nutzerliste|}}{{#dpl:
{{#vardefine:Autorenbox_Nutzerliste|>>{{RepariereNutzername|{{#var:Autorenbox_Autor}}}}<<}}{{#dpl:
  | noresultsheader=&nbsp;
  | noresultsheader=&nbsp;
  | titlematch={{PAGENAME}}{{#ifeq:{{{mit_unterseiten|}}}|1|{{!}}{{PAGENAME}}/%}}
  | titlematch={{PAGENAME}}{{#ifeq:{{{mit_unterseiten|}}}|1|{{!}}{{PAGENAME}}/%}}
Zeile 95: Zeile 122:
  | namespace={{NAMESPACE}}
  | namespace={{NAMESPACE}}
  | skipthispage=no
  | skipthispage=no
  | format=,²{#ifeq:{{#var:Autorenbox_Autor}}¦%USER%¦¦ ²{#if: ²{#pos: ²{#var:Autorenbox_Nutzerliste¦}²¦>>%USER%<<}²¦¦²{#vardefine:Autorenbox_Nutzerliste¦²{#var:Autorenbox_Nutzerliste¦}²>>%USER%<<}²²{Nutzerkarte¦%USER%}²}²}²,
| ordermethod=lastedit
| minoredits=exclude
  | format=,²{#if: ²{#pos: ²{#var:Autorenbox_Nutzerliste¦}²¦>>²{RepariereNutzername¦%USER%<<}²¦¦²{#vardefine:Autorenbox_Nutzerliste¦²{#var:Autorenbox_Nutzerliste¦}²>>²{RepariereNutzername¦%USER%<<}²²{Nutzerkarte¦²{RepariereNutzername¦%USER%}²}²}²,
  | adduser=true
  | adduser=true
  | distinct=true
  | distinct=true
}}
}}
<!-- END: Liste aller Autoren auf der Seite (evtl. inklusive Unterseiten) -->
}}
}}
</div>
</div>
</div>
</div></onlyinclude>
 
</includeonly>
</includeonly></onlyinclude>
<noinclude>
<noinclude>
<templatedata>
<templatedata>

Version vom 7. November 2020, 08:30 Uhr

Diese Vorlage erzeugt eine Information über den Erstautor und das Datum der letzten Bearbeitung der Seite, auf der die Vorlage eingebunden wird.


Parameter

mit_unterseiten
zusätzlich werden Autoren und Änderungen aller Unterseiten berücksichtigt.
0
nein
1
ja
kategorie
zusätzlich werden Autoren und Änderungen aller Seiten der Kategorie berücksichtigt. Weitere Informationen befinden sich in der DPL Dokumentation für category.

Beispiele

Benutzung
{{Autorenbox}}
Ergebnis
 
Benutzung
{{Autorenbox|kategorie=Ethik}}
Ergebnis
Es wird nur der aktuelle Namensraum berücksichtigt, deshalb ist das Beispiel sehr leer.
 
Benutzung
{{Autorenbox|mit_unterseiten=ja}}
Ergebnis
Die Vorlage hat keine Unterseiten, deshalb ist das Beispiel sehr leer.
 



Diese Vorlage erzeugt eine Information über den Erstautor und das Datum der letzten Bearbeitung der Seite, auf der die Vorlage eingebunden wird.

Vorlagenparameter

Diese Vorlage bevorzugt Inline-Formatierung von Parametern.

ParameterBeschreibungTypStatus
Kategoriekategorie

Autoren und Änderungen aller Seiten der Kategorie werden berücksichtigt. Wenn Kategorie gesetzt ist wird der Parmaeter mit_unterseiten ignoriert.

Zeichenfolgeoptional
Mit Unterseitenmit_unterseiten

Autoren und Änderungen der aktuellen Seite sowie aller Unterseiten werden berücksichtigt.

Booleschoptional