Referenz:IssueTrackerLinks: Unterschied zwischen den Versionen

Margit Link-Rodrigue (Diskussion | Beiträge)
Die Seite wurde neu angelegt: „{{BSExtensionInfo |status=stable |developer=Hallo Welt! |type=BlueSpice |edition=BlueSpice pro, BlueSpice farm, BlueSpice cloud |compatible=BlueSpice |category=Kommunikation |bsvFrom=5.2 |features=The extension '''ChatBot''' allows users to interact with the wiki from a chat window. The answers of the chatbot are related to the wiki content. }}“
 
Margit Link-Rodrigue (Diskussion | Beiträge)
Keine Bearbeitungszusammenfassung
 
(6 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 5: Zeile 5:
|edition=BlueSpice pro, BlueSpice farm, BlueSpice cloud
|edition=BlueSpice pro, BlueSpice farm, BlueSpice cloud
|compatible=BlueSpice
|compatible=BlueSpice
|category=Kommunikation
|category=Rich Articles
|bsvFrom=5.2
|bsvFrom=5.2
|features=The extension '''ChatBot''' allows users to interact with the wiki from a chat window. The answers of the chatbot are related to the wiki content.
|features=
}}
}}
== Konfiguration ==
Ein Wiki-Administrator muss festlegen, welche Issue-Links im Wiki verfolgt werden. Dies geschieht auf der Seite <code>MediaWiki:IssueTrackerLinksConfig.json</code>. Diese Seite ist bereits mit gängigen Issue-Trackern vorbelegt.
Die Konfiguration ist ein JSON-Objekt, wobei <code>key</code> eine eindeutige ID für den Tracker und <code>value</code> ein Objekt mit den folgenden Eigenschaften ist:
{| class="wikitable" style="width: 100%;"
! style="width:120px;" |Eigenschaft
!Beschreibung
|-
| style="width:120px;" |<code>url</code>
|obligatorisch - URL-Muster für die Tracker-Links. Alle variablen Teile können durch eine Variable ersetzt werden (z. B. <code>{repo}</code>, <code>{id},</code>...) <code>"<nowiki>https://github.com/{owner}/{repo}/issues/{id}</nowiki>"</code>
|-
| style="width:120px;" |<code>label</code>
|optional - <br />Nachrichtenschlüssel oder String-Nachricht, die als Bezeichnung für diesen Tracker-Typ verwendet werden soll.
|-
| style="width:120px;" |<code>display-mask</code>
|optional - <br />Wie dieser Tracker-Link auf der Seite dargestellt werden soll. Beispiel:
<code>Github: {id}</code> würde als <code>Github: 6</code> dargestellt.
|-
| style="width:120px;" |<code>sequence</code>
|Optional -<br /> Wenn Sie bestimmte Sequenzen im VisualEditor automatisch in Tracker-Links konvertieren möchten, geben Sie hier die Maske an. Wenn die Maske beispielsweise als <code>GH{id}</code> definiert ist, wird jede <code>GH123</code>-Sequenz in einen Link zum Tracker mit <code>id=123</code> konvertiert, oder <code>GH:{repo},{id}</code> für <code>GH:example-repo,123</code>, wobei <code>repo=example-repo</code> und <code>id=123</code>. <br />Enthält die URL-Maske mehr Variablen als in der Sequenz vorhanden sind, führt dies zu fehlerhaften Links. Es wird empfohlen, Sequenzen nur für URLs mit einer Variable zu verwenden, z. B. für Vorgangs-IDs. {{Textbox|boxtype=important|header=Important!|text=Die sequence-Maske darf keine Kommas zur Trennung der Variablen enthalten.|icon=yes}}
|}
=== Beispiel für eine JSON-Konfiguration ===
Standardmäßig sind GitHub-, GitLab- und Jira-Vorgänge vorkonfiguriert und können bei Bedarf angepasst werden. Weitere Ticketsysteme können hinzugefügt werden, z. B. Links zu EasyRedmine (ERM). Bitte beachten Sie, dass der Label-Parameter für die vorkonfigurierten Ticketsysteme zur Unterstützung der Benutzersprache als [[mediawikiwiki:Help:System_message#Message_sources|Systemnachrichten]] definiert ist. Systemnachrichten werden nur in mehrsprachigen Wiki-Instanzen benötigt:
<syntaxhighlight lang="json">{
"github": {
"url": "https://github.com/{owner}/{repo}/issues/{id}",
"label": "issuetrackerlinks-type-label-github",
"icon": "github",
"display-mask": "{owner}/{repo}#{id}"
},
"gitlab": {
"url": "https://gitlab.com/{owner}/{repo}/-/issues/{id}",
"label": "issuetrackerlinks-type-label-gitlab",
"icon": "gitlab",
"display-mask": "{owner}-{repo}:{id}"
},
"jira": {
"url": "https://{jira-domain}/browse/{id}",
"label": "issuetrackerlinks-type-label-jira",
"icon": "jira",
"display-mask": "{id}"
},
"ERM": {
"url": "https://support.mydomain.com/issues/{id}",
"label": "ERM",
"display-mask": "ERM{id}",
"sequence": "ERM{id}"
}
}</syntaxhighlight>
[[File:IssueTrackerLinks examples.png|alt=Ausgabe des Issue-Tracker Links wie in der JSON-Seite definiert.|center|thumb|400x400px|Beispiel-Links]]
== CSS-Stile anpassen ==
Die Badges können in MediaWiki:Common.css angepasst werden. Beispiel für ein Google-Ticket, das über den Namen "google" in der json-Konfiguration definiert wurde:<syntaxhighlight lang="json">
"google": {
"url": "https://issuetracker.google.com/issues/{id}",
"label": "issuetrackerlinks-type-label-google",
"display-mask": "{id}"
}
</syntaxhighlight>
In <code>MediaWiki:Commmon.css</code> kann folgendes Styling angegeben werden:<syntaxhighlight lang="css">/*Bootstrap "bug"-Icon*/
.mw-issue-type-google a::before {
    font-family:"bootstrap-icons"!important;
    content: "\f1dc"!important;
    font-size:0.9em;
    margin-right:0.4em
}
/*blaue Badge-Farbe*/
.mw-issue-type-google a {
    background-color:#edf6ff!important;
    border:1px solid #6588ad!important;
    padding:0.3em!important;
}
/*Unterstrichene Ticketnummer*/
.mw-issue-type-google a .oo-ui-labelElement-label {
    border-bottom:1px dotted #6588ad
}
/*Hover-Effekt*/
.mw-issue-type-google a:hover {
    background-color:#d8ecff!important
}
</syntaxhighlight>Ausgabe:
[[Datei:IssueTrackerLink CSS.png|alternativtext=Google Issue Tracker Link mit Sonderformatierung|zentriert|mini|600x600px|Angepasstes Ausgabeformat]]

Aktuelle Version vom 21. November 2025, 15:34 Uhr

alle Erweiterungen

Übersicht
Beschreibung:

Links for issue trackers

Status: stable Lizenz: GPL-3.0-only
Entwickler: Hallo Welt! Distribution: BlueSpice
Kategorie: Rich Articles Edition: BlueSpice pro, BlueSpice farm, BlueSpice cloud 5.2+

Technische Information[Bearbeiten | Quelltext bearbeiten]

Voraussetzungen[Bearbeiten | Quelltext bearbeiten]

  • MediaWiki: 1.43.0
  • VisualEditorPlus: *

Integriert in[Bearbeiten | Quelltext bearbeiten]

  • BlueSpiceSMWConnector
  • ContentDroplets
  • VisualEditor

Hooks[Bearbeiten | Quelltext bearbeiten]



Konfiguration[Bearbeiten | Quelltext bearbeiten]

Ein Wiki-Administrator muss festlegen, welche Issue-Links im Wiki verfolgt werden. Dies geschieht auf der Seite MediaWiki:IssueTrackerLinksConfig.json. Diese Seite ist bereits mit gängigen Issue-Trackern vorbelegt.

Die Konfiguration ist ein JSON-Objekt, wobei key eine eindeutige ID für den Tracker und value ein Objekt mit den folgenden Eigenschaften ist:

Eigenschaft Beschreibung
url obligatorisch - URL-Muster für die Tracker-Links. Alle variablen Teile können durch eine Variable ersetzt werden (z. B. {repo}, {id},...) "https://github.com/{owner}/{repo}/issues/{id}"
label optional -
Nachrichtenschlüssel oder String-Nachricht, die als Bezeichnung für diesen Tracker-Typ verwendet werden soll.
display-mask optional -
Wie dieser Tracker-Link auf der Seite dargestellt werden soll. Beispiel:

Github: {id} würde als Github: 6 dargestellt.

sequence Optional -
Wenn Sie bestimmte Sequenzen im VisualEditor automatisch in Tracker-Links konvertieren möchten, geben Sie hier die Maske an. Wenn die Maske beispielsweise als GH{id} definiert ist, wird jede GH123-Sequenz in einen Link zum Tracker mit id=123 konvertiert, oder GH:{repo},{id} für GH:example-repo,123, wobei repo=example-repo und id=123.
Enthält die URL-Maske mehr Variablen als in der Sequenz vorhanden sind, führt dies zu fehlerhaften Links. Es wird empfohlen, Sequenzen nur für URLs mit einer Variable zu verwenden, z. B. für Vorgangs-IDs.
Important!

Die sequence-Maske darf keine Kommas zur Trennung der Variablen enthalten.

Beispiel für eine JSON-Konfiguration[Bearbeiten | Quelltext bearbeiten]

Standardmäßig sind GitHub-, GitLab- und Jira-Vorgänge vorkonfiguriert und können bei Bedarf angepasst werden. Weitere Ticketsysteme können hinzugefügt werden, z. B. Links zu EasyRedmine (ERM). Bitte beachten Sie, dass der Label-Parameter für die vorkonfigurierten Ticketsysteme zur Unterstützung der Benutzersprache als Systemnachrichten definiert ist. Systemnachrichten werden nur in mehrsprachigen Wiki-Instanzen benötigt:

{
	"github": {
		"url": "https://github.com/{owner}/{repo}/issues/{id}",
		"label": "issuetrackerlinks-type-label-github",
		"icon": "github",
		"display-mask": "{owner}/{repo}#{id}"
	},
	"gitlab": {
		"url": "https://gitlab.com/{owner}/{repo}/-/issues/{id}",
		"label": "issuetrackerlinks-type-label-gitlab",
		"icon": "gitlab",
		"display-mask": "{owner}-{repo}:{id}"
	},
	"jira": {
		"url": "https://{jira-domain}/browse/{id}",
		"label": "issuetrackerlinks-type-label-jira",
		"icon": "jira",
		"display-mask": "{id}"
	},
	"ERM": {
		"url": "https://support.mydomain.com/issues/{id}",
		"label": "ERM",
		"display-mask": "ERM{id}",
		"sequence": "ERM{id}"
	}
}
Ausgabe des Issue-Tracker Links wie in der JSON-Seite definiert.
Beispiel-Links

CSS-Stile anpassen[Bearbeiten | Quelltext bearbeiten]

Die Badges können in MediaWiki:Common.css angepasst werden. Beispiel für ein Google-Ticket, das über den Namen "google" in der json-Konfiguration definiert wurde:

"google": {
		"url": "https://issuetracker.google.com/issues/{id}",
		"label": "issuetrackerlinks-type-label-google",
		"display-mask": "{id}"
	}


In MediaWiki:Commmon.css kann folgendes Styling angegeben werden:

/*Bootstrap "bug"-Icon*/
.mw-issue-type-google a::before {
    font-family:"bootstrap-icons"!important;
     content: "\f1dc"!important;
     font-size:0.9em;
     margin-right:0.4em
}

/*blaue Badge-Farbe*/
 .mw-issue-type-google a {
    background-color:#edf6ff!important;
     border:1px solid #6588ad!important;
     padding:0.3em!important;
}

/*Unterstrichene Ticketnummer*/
 .mw-issue-type-google a .oo-ui-labelElement-label {
    border-bottom:1px dotted #6588ad
}

/*Hover-Effekt*/
.mw-issue-type-google a:hover {
    background-color:#d8ecff!important
}

Ausgabe:

Google Issue Tracker Link mit Sonderformatierung
Angepasstes Ausgabeformat


PDF-Ausschluss - Start

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

PDF-Ausschluss - Ende