Handbuch:Erweiterung/Page Forms: Unterschied zwischen den Versionen

Margit Link-Rodrigue (Diskussion | Beiträge)
Die Seite wurde neu angelegt: „{{DISPLAYTITLE:Seitenformulare (Page Forms)}} <section begin="training-intro" /> Mit '''Page Forms''' können Benutzer auch ohne Administrator-Rechte Formular…“
Markierung: Quelltext-Bearbeitung 2017
 
Margit Link-Rodrigue (Diskussion | Beiträge)
Keine Bearbeitungszusammenfassung
 
(6 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
{{DISPLAYTITLE:Seitenformulare (Page Forms)}}
{{DISPLAYTITLE:Seitenformulare (Page Forms)}}
<section begin="training-intro" />


Mit '''Page Forms''' können Benutzer auch ohne Administrator-Rechte Formulare zum Erstellen und Bearbeiten von Seiten zum Abfragen von Daten verwenden - ohne Programmierung. Die Verwendung der Erweiterung ist [[mediawikiwiki:Extension:Page_Forms/de|auf MediaWiki dokumentiert]].
'''Page Forms''' erlaubt es, Parameterwerte für [[Handbuch:Vorlagen|Vorlagen]] über ein Formular einzugeben.  
<section end="training-intro" />
 
Die Verwendung der Erweiterung ist [[mediawikiwiki:Extension:Page_Forms/de|ausführlich auf MediaWiki dokumentiert]].
==Hauptmerkmale==
==Hauptmerkmale==
<section begin="training" />
*'''Definitionsseiten im Namensraum ''Formular'''''<br />Formulare können über die Spezialseite <code>Spezial:CreateForm</code> erstellt werden. Hier wird die entsprechende Vorlage ausgewählt, deren Parameter-Werte über das Formular eingegeben werden sollen. Das heißt, bevor ein Formular erstellt wird, wird immer zuerst die hierzu nötige [[mediawikiwiki:Help:Templates/de|Vorlage]] erstellt. Alle erstellten Formular-Definitionsseiten werden im Namensraum ''Formular'' gespeichert. Die Bearbeitung  von bereits erstellten Formular-Definitionsseiten erfolgt über den Quelltext der Seite.
<section begin="slide-training" />


*'''Definitionsseiten im Namensraum ''Formular'''''<section end="slide-training" />                                       Formulare können über die Spezialseite <code>Spezial:CreateForm</code> erstellt werden. Hier wird die entsprechende Vorlage ausgewählt, deren Parameter-Werte über das Formular eingegeben werden sollen. Das heißt, bevor ein Formular erstellt wird, wird immer zuerst die hierzu nötige [[mediawikiwiki:Help:Templates/de|Vorlage]] erstellt. Alle erstellten Formular-Definitionsseiten werden im Namensraum Formular gespeichert. Die Bearbeitung  von bereits erstellten Formular-Definitionsseiten erfolgt über den Quelltext der Seite.
*'''Anwendungsbeispiel: Infoboxen'''<br /> Die Erweiterung wird oft zum Hinzufügen und Bearbeiten von Infobox-Vorlagen verwendet. Wenn [https://www.semantic-mediawiki.org/wiki/Semantic_MediaWiki/de Semantic MediaWiki] verwendet wird, können die über das Formular gesammelten Daten in den Vorlagen gespeichert und im Wiki abgefragt werden.
<section begin="slide-training" />


*'''Anwendungsbeispiel: Infoboxen'''<section end="slide-training" />                                       Die Erweiterung wird oft zum Hinzufügen und Bearbeiten von Infobox-Vorlagen verwendet. Wenn [https://www.semantic-mediawiki.org/wiki/Semantic_MediaWiki/de Semantic MediaWiki] verwendet wird, können die über das Formular gesammelten Daten in den Vorlagen gespeichert und im Wiki abgefragt werden.
*'''Vorhandene Daten über Menüpunkt bearbeiten'''<br />Bereits bestehende Daten können unter anderem über den Menüpunkt "Mit Formular bearbeiten" der Bearbeiten-Schaltfläche geändert werden.
<section begin="slide-training" />


*'''Vorhandene Daten über Menüpunkt bearbeiten'''<section end="slide-training" />                                       Bereits bestehende Daten können unter anderen über den Menüpunkt "Mit Formular bearbeiten" der Bearbeiten-Schaltfläche geändert werden.
*'''Automatische Vervollständigung von Feldern'''<br />Benutzern werden je nach Typ des Eingabefeldes bei der Eingabe bereits existierende Werte vorgeschlagen. Dies reduziert Probleme bei der Dateneingabe.
<section begin="slide-training" />


*'''Automatische Vervollständigung von Feldern'''<section end="slide-training" />                                        Benutzern werden je nach Typ des Eingabefeldes bei der Eingabe bereits existierende Werte vorgeschlagen. Dies reduziert Probleme mit der Benennung von Mehrdeutigkeiten, der Rechtschreibung, usw.
== Starthilfe ==
<section begin="slide-training" />
Um das Erstellen Ihres ersten Formulars zu erleichtern können Sie in der Dokumentation auf folgenden Seiten einsteigen:


*'''Freitextfeld'''<section end="slide-training" />                                        Freier Text auf einer Wikiseite wird nicht ignoriert, wenn die Seite mit einem Formular bearbeitet wird. Vielmehr kann er in einem separaten Eingabefeld namens "Freitext" zum Bearbeiten angezeigt werden.
* '''Formular anlegen:''' Nachdem Sie eine Vorlage erstellt haben, können Sie über die Seite ''Spezial:Formular'' erstellen das zugehörige Formular erstellen. Diese Spezialseite unterstützt Sie beim Erstellen des Formulars. Spätere Bearbeitungen erfolgen jedoch direkt im Quelltext des Formulars.
<section end="training" />
* '''Formularfelder:'''  [[mediawikiwiki:Extension:Page_Forms/Input_types/de|Arten von Formularfeldern]]
* '''Formular mit der Vorlage verknüpfen:''' Da die Vorlage vor dem Formular existiert, muss diese nachträglich noch manuell mit dem  neuen Formular verknüpft werden.  
** [[mediawikiwiki:Extension:Page_Forms/Linking_to_forms/de|Innerhalb der Vorlage]]
** Als weiterer [[mediawikiwiki:Extension:Page_Forms/The_"edit_with_form"_tab|Bearbeitungs-Link direkt im Bearbeitungsmenü der Seiten]]


==BlueSpice Input types==
==BlueSpice Eingabetypen ==
Zusätzlich zu den [[mediawikiwiki:Extension:Page_Forms/Input_types#The_input_types|standardmäßig verfügbaren Eingabetypen]] stehen in BlueSpice noch folgende Inputtypen zur Verfügung:
Zusätzlich zu den [[mediawikiwiki:Extension:Page_Forms/Input_types#The_input_types|standardmäßig verfügbaren Eingabetypen]] stehen in BlueSpice noch folgende Inputtypen zur Verfügung:
<br />
<br />
{| class="contenttable-blue" style="width:100%;"
{| class="contenttable-blue" style="width:100%;"
!Eingabetyp
! style="" |Eingabetyp
!Resultat
! style="" |Resultat
!Funktion
! style="" |Funktion
|-
|-
|[[#bs-grid|bs-grid]]
| style="" |bs-grid{{Bsvs|bsvTo=4.5}}
|Eingabetabelle
| style="" | -
|Tabelle zur kombinierten Eingabe von Parameter-Werten. Tabellenreihen werden über eine "+" Schaltfläche hinzugefügt. Folgende Vorlagen müssen zusätzlich erstellt werden:
| style="" |-
 
*Vorlage für die Tabellenreihe sowie zugehörige columns.json-Seite
*Vorlage für die Ausgabe der Tabellenwerte
|-
|-
|bs-usercombo
| style="" |bs-usercombo
|Benutzername (verlinkt zur Profilseite)
| style="" |Benutzername (verlinkt zur Profilseite)
|Menü zur Auswahl von Benutzernamen des Wikis (Einfachauswahl).
| style="" |Menü zur Auswahl von Benutzernamen des Wikis (Einfachauswahl).
|-
|-
|bs-usertags
| style="" |bs-usertags
|Kommaseparierte Benutzernamen (nicht verlinkt)
| style="" |Kommaseparierte Benutzernamen (nicht verlinkt)
|Menü zur Auswahl von Benutzernamen des Wikis (Mehrfachauswahl).
| style="" |Menü zur Auswahl von Benutzernamen des Wikis (Mehrfachauswahl).




Zeile 51: Zeile 47:
<code><nowiki>{{#arraymap:{{{meinParameter|}}}|,|@@@|[[User:@@@|@@@]]}}</nowiki></code>
<code><nowiki>{{#arraymap:{{{meinParameter|}}}|,|@@@|[[User:@@@|@@@]]}}</nowiki></code>
|-
|-
|bs-mvvisualeditor
| style="" |bs-mwvisualeditor
|Formatierter Text
| style="" |Formatierter Text
|Textbox mit vereinfachtem [[VisualEditor]].
| style="" |Textbox mit vereinfachtem [[Handbuch:Erweiterung/VisualEditor|VisualEditor]].
|-
|-
|''bsvisualeditor''
| style="" |''bsvisualeditor''
| -
| style="" | -
|''Veraltet - ersetzt durch bs-mvvisualeditor''
| style="" |''Veraltet - ersetzt durch bs-mwvisualeditor''
|}
|}


===bs-grid===
Bs-grid ermöglicht es, eine Tabelle als Eingabemethode für ein Formularfeld zu erstellen.
<br />
[[Datei:Handbuch:bs-grid.png|alternativtext=Beispiel des Eingabetyps "bs-grid"|zentriert|mini|650x650px|Beispiel des Eingabetyps "bs-grid"]]


== Spezialseiten==
Page Forms definiert einige Spezialseiten, die zur Dateneingabe und Datenpflege gebraucht werden.


'''So verwenden Sie das Grid-Eingabefeld:'''
Zum Sammeln von Daten sind unter anderem [[mediawikiwiki:Extension:Page_Forms/Special_pages/de|folgende Spezialseiten]] wichtig:
 
#'''Erstellen''' Sie die Vorlage ''Vorlage:Produkte/Reihe''.
##'''Definieren''' Sie die Parameter, für die Werte gesammelt werden sollen. Hier wird eine Tabellenreihe erstellt, um später die Produktdaten als filterbare Tabelle anzuzeigen:<syntaxhighlight lang="text">
<noinclude>Tabellenreihe für die Ausgabe der Produktdaten</noinclude><includeonly>
|-
|{{{product|}}}
|{{{department|}}}
|{{{availDate|}}}
|{{{sale|}}}
</includeonly>
 
</syntaxhighlight>
#'''Definieren''' Sie das Grid in der ''Vorlage:Produkte/Reihe/Spalten.json'':<syntaxhighlight lang="json">
[
{"header":"Produktname","dataIndex":"product", "flex":1, "editor":{"allowBlank":false}},
{"header":"Abteilung","dataIndex":"department","editor":{"xtype":"combo","typeAhead":true,"triggerAction":"all","store":[["Baby und Kleinkind","Baby und Kleinkind"],["Jungen","Jungen"],["Mädchen","Mädchen"],["Männer","Männer"],["Frauen","Frauen"]]}},
{"xtype":"datecolumn","header":"Verfügbar ab","dataIndex":"availDate","format":"d.m.Y","editor":{"xtype":"datefield","format":"d/m/y","minValue":"01/01/21"}},
{"xtype":"checkcolumn","header":"Angebot?","dataIndex":"sale","headerCheckbox":true,"stopSelection":false}
]</syntaxhighlight>'''Hinweis: '''Die Syntax der json-Datei kommt aus dem Framework Ext JS. Links zur Dokumentation der Grid-Syntax finden Sie unter [[#Verwandte Themen|Verwandte Themen]] am Ende der Seite (JS-Kenntnisse werden vorausgesetzt).<br />
#'''Erstellen''' Sie die Seite ''Vorlage:Produkte''. Diese Vorlage wird als Ausgabeformat für die Produktdaten verwendet. Sie enthält den benötigten Parameter ''produktdaten'':<br /><syntaxhighlight lang="text">
<noinclude>Ausgabetabelle für die Produktdaten.
Der Parameter "produktdaten" wird im Formular "Produke" verarbeitet.
</noinclude><includeonly>{{#default_form: Produkte}}
{| class="wikitable filterable"
|+Produktübersicht der aktuellen Kollektion
!Produktbezeichnung
!Abteilung
!Verfügbar ab
!Im Angebot?
{{{produktdaten}}}
|}
</includeonly>
 
</syntaxhighlight>
#'''Erstellen''' Sie das Eingabeformular ''Formular:Produkte''. Durch das Formularfeld  ''produktdaten'' wird die Dateneingabe als Tabellengrid (bs-grid) definiert: <br /><syntaxhighlight>
<noinclude>Das ist das Formular "Produkte". Es wird mit der gleichnamigen Vorlage benutzt.</noinclude><includeonly>
<div id="wikiPreview" style="display: none; padding-bottom: 25px; margin-bottom: 25px; border-bottom: 1px solid #AAAAAA;"></div>
{{{for template|Produkte}}}
Produkte:
 
{{{field|produktdaten|input type=bs-grid|colDef=Vorlage:Produkte/Reihe/Spalten.json|template=Produkte/Reihe}}}
 
{{{end template}}}
 
{{{standard input|save}}} {{{standard input|preview}}} {{{standard input|cancel}}}
</includeonly>
</syntaxhighlight><br />
#'''Binden''' Sie die Vorlage "Produkte" nun auf einer Wikiseite '''ein'''.
##'''Klicken''' Sie in der Editorleiste ''Einfügen > Vorlage.''
##'''Geben''' Sie den Text "Produkte" '''ein'''.
##'''Klicken''' Sie ''Vorlage hinzufügen.'' <br />[[Datei:Handbuch:bs-grid-Vorlage einfügen.png|alternativtext=Vorlage einfügen|zentriert|mini|450x450px|Vorlage einfügen]]<br />
##'''Speichern''' Sie die Seite.
##'''Öffnen''' Sie nun die Seite im Formularbearbeitungsmodus. Hier können Sie ihre Produktdaten eingeben.
##'''Speichern''' Sie die Seite erneut. Die filterbare Produktdatentabelle wird nun angezeigt.  <br />[[Datei:Handbuch:bs-grid-output.png|alternativtext=Ausgabe der Griddaten|zentriert|mini|650x650px|Ausgabe der Griddaten<br />]]
 
Im Quelltext sieht der produktdaten-Parameter dann so aus:<syntaxhighlight lang="text">
{{Produkte
|produktdaten={{Produkte/Reihe|product=Wanderhose|department=Männer|availDate=30.07.2021|sale=true}}
{{Produkte/Reihe|product=Pullover|department=Jungen|availDate=04.07.2021}}
{{Produkte/Reihe|product=Socken|department=Frauen|availDate=03.08.2021}}
}}
</syntaxhighlight><br />
==Spezialseiten==
<section begin="training-spezialseiten" />
 
Page Forms definiert einige Spezialseiten, die zur Dateneingabe und Datenpflege gebraucht werden.


Zum Sammeln von Daten sind unter anderem folgende Spezialseiten wichtig:
<section end="training-spezialseiten" />
<bs:drawio filename="Erweiterung/Page Forms-12190872" />
<bs:drawio filename="Erweiterung/Page Forms-12190872" />


{{Box Links|Thema1=https://www.mediawiki.org/wiki/Extension:Page_Forms/de|Thema2=https://docs.sencha.com/extjs/6.2.0/classic/Ext.grid.plugin.Editing.html|Thema3=https://docs.sencha.com/extjs/6.2.0/classic/Ext.grid.column.Column.html|Thema4=https://docs.sencha.com/extjs/6.2.0/classic/Ext.form.field.Field.html}}
{{Box Links|Thema1=https://www.mediawiki.org/wiki/Extension:Page_Forms/de}}


[[en:Manual:Extension/Page_Forms]]
[[en:Manual:Extension/Page_Forms]]
[[de:{{FULLPAGENAME}}]]

Aktuelle Version vom 2. Mai 2025, 13:42 Uhr


Page Forms erlaubt es, Parameterwerte für Vorlagen über ein Formular einzugeben.

Die Verwendung der Erweiterung ist ausführlich auf MediaWiki dokumentiert.

Hauptmerkmale

  • Definitionsseiten im Namensraum Formular
    Formulare können über die Spezialseite Spezial:CreateForm erstellt werden. Hier wird die entsprechende Vorlage ausgewählt, deren Parameter-Werte über das Formular eingegeben werden sollen. Das heißt, bevor ein Formular erstellt wird, wird immer zuerst die hierzu nötige Vorlage erstellt. Alle erstellten Formular-Definitionsseiten werden im Namensraum Formular gespeichert. Die Bearbeitung von bereits erstellten Formular-Definitionsseiten erfolgt über den Quelltext der Seite.
  • Anwendungsbeispiel: Infoboxen
    Die Erweiterung wird oft zum Hinzufügen und Bearbeiten von Infobox-Vorlagen verwendet. Wenn Semantic MediaWiki verwendet wird, können die über das Formular gesammelten Daten in den Vorlagen gespeichert und im Wiki abgefragt werden.
  • Vorhandene Daten über Menüpunkt bearbeiten
    Bereits bestehende Daten können unter anderem über den Menüpunkt "Mit Formular bearbeiten" der Bearbeiten-Schaltfläche geändert werden.
  • Automatische Vervollständigung von Feldern
    Benutzern werden je nach Typ des Eingabefeldes bei der Eingabe bereits existierende Werte vorgeschlagen. Dies reduziert Probleme bei der Dateneingabe.

Starthilfe

Um das Erstellen Ihres ersten Formulars zu erleichtern können Sie in der Dokumentation auf folgenden Seiten einsteigen:

  • Formular anlegen: Nachdem Sie eine Vorlage erstellt haben, können Sie über die Seite Spezial:Formular erstellen das zugehörige Formular erstellen. Diese Spezialseite unterstützt Sie beim Erstellen des Formulars. Spätere Bearbeitungen erfolgen jedoch direkt im Quelltext des Formulars.
  • Formularfelder: Arten von Formularfeldern
  • Formular mit der Vorlage verknüpfen: Da die Vorlage vor dem Formular existiert, muss diese nachträglich noch manuell mit dem neuen Formular verknüpft werden.

BlueSpice Eingabetypen

Zusätzlich zu den standardmäßig verfügbaren Eingabetypen stehen in BlueSpice noch folgende Inputtypen zur Verfügung:

Eingabetyp Resultat Funktion
bs-grid  -v4.5 - -
bs-usercombo Benutzername (verlinkt zur Profilseite) Menü zur Auswahl von Benutzernamen des Wikis (Einfachauswahl).
bs-usertags Kommaseparierte Benutzernamen (nicht verlinkt) Menü zur Auswahl von Benutzernamen des Wikis (Mehrfachauswahl).


Hinweis: Um die Benutzernamen zu verlinken, muss der Parameter in der zugehörigen Vorlage entsprechend als Link formatiert werden:

{{#arraymap:{{{meinParameter|}}}|,|@@@|[[User:@@@|@@@]]}}

bs-mwvisualeditor Formatierter Text Textbox mit vereinfachtem VisualEditor.
bsvisualeditor - Veraltet - ersetzt durch bs-mwvisualeditor


Spezialseiten

Page Forms definiert einige Spezialseiten, die zur Dateneingabe und Datenpflege gebraucht werden.

Zum Sammeln von Daten sind unter anderem folgende Spezialseiten wichtig:

Erweiterung-Page Forms-12190872

Weiterführende Links




Feedback zur Dokumentation ist im Community-Forum möglich.