Zuletzt bearbeitet vor einem Jahr
von Margit Link-Rodrigue

Handbuch:Erweiterung/Workflows/Gruppen-Feedback anpassen und MediaWiki:Common.js: Unterschied zwischen den Seiten

(Unterschied zwischen Seiten)
Keine Bearbeitungszusammenfassung
Markierung: 2017-Quelltext-Bearbeitung
 
Keine Bearbeitungszusammenfassung
 
Zeile 1: Zeile 1:
== Ziel ==
/* Das folgende JavaScript wird für alle Benutzer geladen. */
In diesem Beispiel wird der Workflow ''Gruppen-Feedback'' so angepasst, dass der '''Schwellenwert der Benutzerzahl''' angepasst wird. Dieser Schwellenwert definiert, wann der Workflow vom System abgeschlossen wird.
if ( mw.config.get( 'wgCanonicalSpecialPageName' ) === 'Watchlist' ) {
  document.body.classList.add( 'mw-rcfilters-ui-initialized' );
}
if ( mw.config.get( 'wgCanonicalSpecialPageName' ) === 'RecentChanges' ) {
  document.body.classList.add( 'mw-rcfilters-ui-initialized' );
}


== Schritte ==
/*BITV tabelle*/


# '''Ursprüngliches ''BPMN''''' aus Github ins Wiki übertragen.
var allTableCells = document.getElementById("bitv").getElementsByTagName("td");
# '''Schwellenwert''' für benötigtes Benutzerfeedbacks festsetzen.
# '''Systemnachricht'''  für Workflow-Titel im Wiki erstellen.
#'''Workflow-Trigger''' definieren.
# '''Testen''' des Workflows.


== Anleitung ==


=== BPMN übertragen ===
for( var i = 0; i < allTableCells.length; i++ ) {
So übertragen Sie den ursprünglichen BPMN-Prozess ins Wiki:


# '''Gehen''' Sie zur [https://github.com/wikimedia/mediawiki-extensions-Workflows/blob/4.1.1/workflow/GroupFeedback.bpmn Github-Seite für den Workflow "Gruppen-Feedback"].
var node = allTableCells[i];
# '''Kopieren''' Sie das XML.
# '''Erstellen''' Sie die Seite ''MediaWiki:GruppenFeedbackTeam.bpmn''
# '''Kopieren''' Sie das XML in den Quelltext der neuen ''bpmn''-Seite.
# '''Speichern''' Sie die Seite.[[Datei:Gruppen-Feedback anpassen Github.png|alternativtext=XML kopieren|zentriert|mini|750x750px|XML kopieren]]
{{Hinweisbox|boxtype=Hinweis|icon=|Note text=Die Links zu den BPMN-Dokumenten für die 4 Standard-Workflows finden Sie bei den einzelnen Workflow-Beschreibungen auf der [[Handbuch:Erweiterung/Workflows|Workflows Hilfeseite]].|bgcolor=}}


=== Schwellenwert festsetzen ===
So ändern Sie den Schwellenwert der Benutzeranzahl. Dieser bestimmt den Abschluss des Workflows:


# '''Wechseln''' Sie auf der soeben erstellten Seite in den Bearbeitungsmodus.
//get the text from the first child node - which should be a text node
# '''Definieren''' Sie im Element ''<wf:threshhold>'' den ''Wert'' und die ''Einheit'' für die Berechnung des Workflow-Abschlusses.  <span /><span /><br />Wenn der Workflow nach Feedback von 50% der Mitglieder der Gruppe abgeschlossen werden soll, geben Sie an:<syntaxhighlight lang="text">
<wf:threshold>
<wf:type>complete</wf:type>
<wf:value>50</wf:value>
<wf:unit>percent</wf:unit>
</wf:threshold>
</syntaxhighlight>Alternatives Beispiel - Workflow-Abschluss, wenn 4 Mitglieder in der Gruppe ihre Aufgabe erledigt haben:<syntaxhighlight lang="text">
<wf:threshold>
<wf:type>complete</wf:type>
<wf:value>4</wf:value>
<wf:unit>users</wf:unit>
</wf:threshold>
</syntaxhighlight>
# '''Speichern''' Sie die Seite.


=== Systemnachricht erstellen ===
var currentText = node.childNodes[0].nodeValue;
Falls in der Workflow-Übersicht und anderen Workflow-basierten Inhalten kein lesbarer Titel angezeigt wird, handelt es sich hier um eine Systemnachricht.
[[Datei:Gruppen-Feedback anpassen systemnachricht.png|alternativtext=Systemnachricht anpassen|zentriert|mini|650x650px|Systemnachricht anpassen]]
Um diese mit einem lesbaren Titel zu ersetzen:
# '''Erstellen''' Sie die Seite MediaWiki:<hier Systemnachricht einsetzen>. Also z.B. für die im Screenshot gezeigte Nachricht <workflows-wikipage-definition-GroupFeedbackTeam-title>
# '''Geben''' Sie im Seiteninhalt den gewünschten Titel ein.[[Datei:Gruppen-Feedback anpassen systemnachricht-seite.png|alternativtext=Titel angeben|zentriert|mini|650x650px|Titel angeben]]
# '''Speichern''' Sie die Systemnachricht. Der Titel wird nun auf der Benutzeroberfläche angezeigt.[[Datei:Gruppen-Feedback anpassen Workflowtitel.png|alternativtext=Anzeige des gewünschten Titels|zentriert|mini|650x650px|Anzeige des gewünschten Titels]]


=== Workflow-Trigger definieren ===
currentText = currentText.trim();
Damit der Workflow ausgewählt werden kann, muss ein entsprechender Auslöser (Trigger) im Wiki vorhanden sein.


So erstellen Sie den Trigger:


# '''Klicken''' Sie auf ''Workflow Triggers'' im Menü ''Globale Aktionen''.
//check for 'one' and assign this table cell's background color accordingly
# '''Klicken''' Sie auf Neuen Auslöser hinzufügen.
# '''Wählen''' Sie aus dem Auswahlfeld die Option ''Manuell''.[[Datei:Gruppen-Feedback trigger manuell.png|alternativtext=Manuellen Trigger wählen|zentriert|mini|550x550px|Manuellen Trigger wählen]]<span /><span /><br />
# '''Definieren''' Sie die Einstellungen für den Workflow-Auslöser:
#* ''Name:'' Name, der im Auswahlmenü für den Workflow angezeigt wird.
#* ''Beschreibung'': Erklärung der Funktion und Besonderheiten dieses Triggers.
#* ''Zu startender Workflow'': Workflow, der durch diesen Trigger ausgelöst wird. In unserem Fall ''GroupFeedbackTeam''.
#* ''Anfangsdaten'' für den Workflow (alle Angaben sind optional):  - Gruppe: Es ist sinnvoll, hier eine vordefinierte Gruppe anzugeben. Diese sollte von der Mitgliederanzahl auf den im Workflow gesetzten Schwellenwert abgestimmt sein.  - Anweisungen: Diese werden den Benutzern in der zugewiesenen Aufgabe zum besseren Verständnis angezeigt.  - Bericht senden: Hier kann eine beliebige E-Mail-Adresse angegeben werden. Der Empfänger wird zum Abschluss des Workflows benachrichtigt. (Der Initiator des Workflows bekommt automatisch eine Benachrichtigung und muss hier nicht gesondert angegeben werden).
#* ''Bedingungen'' (Conditions): In welchen Namensräumen der Workflow zur Auswahl angezeigt wird.  [[Datei:Gruppen-Feedback trigger-einstellungen.png|alternativtext=Trigger-Einstellungen|zentriert|mini|499x499px|Trigger-Einstellungen]]
# '''Klicken''' Sie ''Speichern.''


=== Workflow testen ===
if (currentText == "Erfüllt") {
Der Workflow steht nun im Wiki zur Verfügung. Lösen Sie einen Test-Workflow aus. Testen Sie, ob folgende Funktionalität vorhanden ist:
node.style.backgroundColor = "#c5e8c9";
}
else if (currentText == "Nicht Erfüllt") {
node.style.backgroundColor = "#e9c4c4";
}


* Der Workflow steht in den im Workflow-Trigger definierten Namensräumen zur Verfügung (falls es hier Einschränkungen gibt).
}
* Der Workflow wird ausgelöst.
* Der Workflow wird in der Workflows-Übersicht angezeigt.
* Die Gruppenmitglieder erhalten eine Aufgabe.
* Der Workflow schließt nach der Erreichung des gesetzten Schwellenwerts ab.

Version vom 13. März 2023, 13:18 Uhr

/* Das folgende JavaScript wird für alle Benutzer geladen. */
if ( mw.config.get( 'wgCanonicalSpecialPageName' ) === 'Watchlist' ) {
   document.body.classList.add( 'mw-rcfilters-ui-initialized' );
}
if ( mw.config.get( 'wgCanonicalSpecialPageName' ) === 'RecentChanges' ) {
   document.body.classList.add( 'mw-rcfilters-ui-initialized' );
}

/*BITV tabelle*/

var allTableCells = document.getElementById("bitv").getElementsByTagName("td");


for( var i = 0; i < allTableCells.length; i++ ) {

var node = allTableCells[i];


//get the text from the first child node - which should be a text node

var currentText = node.childNodes[0].nodeValue;

currentText = currentText.trim();


//check for 'one' and assign this table cell's background color accordingly

if (currentText == "Erfüllt") {
node.style.backgroundColor = "#c5e8c9";
}
else if (currentText == "Nicht Erfüllt") {
node.style.backgroundColor = "#e9c4c4";
}

}




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

Keine Kategorien vergebenBearbeiten

Diskussionen