GSB 7.0 Standardlösung

Sub-Dokumenttyp

Der GSB nutzt für die Verwaltung der redaktionellen und funktionalen Inhalte eines Mandanten ein Dokumentmodell welches die einzelnen verwalteten Informationsklassen in Form von strukturierten Dokumenttypen bereitstellt.

Der Dokumenttyp Standardartikel besteht bspw. aus einem fest definierten Satz von Dokumenteigenschaften (Titel, Haupttext, Veröffentlichungsdatum, etc.), die jedem Standardartikel zugrunde liegen. 

Art und Umfang der Eigenschaften eines Dokumenttyps können über die Editor-Konfiguration festgelegt werden. Diese Festlegung erfolgt einmalig und global für einen Mandanten, d.h. wenn bspw. in einem Mandanten der Kurztext eines Standardartikels nicht benötigt wird, dann kann die Editorkonfiguration entsprechend angepasst werden, so dass der Kurztext bei der Bearbeitung eines Dokumentes nicht mehr angezeigt wird und somit eine Bearbeitung nicht mehr möglich ist. 

Diese Art der mandantenspezifischen Anpassung reicht allerdings nicht aus, wenn ein Dokumenttyp in unterschiedlichen Verwendungen innerhalb eines Mandanten eingesetzt werden soll und für einzelne Verwendungen jeweils individuelle Anpassungen bzw. Konfigurationen der Dokumenteigenschaften erforderlich sind. 

In dem skizzierten Beispiel mit dem Standardartikel könnte bspw. in einem Mandanten für einen bestimmten Bereich eine angepasste Variante des Standardartikels genutzt werden, in dem die Redakteure dieses Bereichs ausschließlich den Titel und Haupttext eingeben sollen. Dies ist über die mandantenspezifische Anpassung des Standardartikels nicht möglich, da für einen Dokumenttypen keine Varianten in der Editorkonfiguration angelegt werden können. 

Das Konzept der Sub-Typen ermöglicht eine entsprechende Unterstützung, indem in der Editorkonfiguration für einen technischen Dokumenttypen unterschiedliche Varianten definiert werden können (bspw. Standardartikel allgemein, Standardartikel kurz). Die Konfiguration der Sub-Typen wird im Folgenden beschrieben.

Konfiguration

Die Konfiguration eines Sub-Types wird im Folgenden am Beispiel des Sub-Typs 'Standardartikel-Kurz' beschrieben. Dieser Sub-Typ sieht eine Editor-Konfiguration für Basepage vor, die nur einen Titel (Property title) und Haupttext (Property bodyText) enthält. Dieser Sub-Typ soll für Redakteure zur Verfügung gestellt werden.

Sub-Typ Dokumentdefintion

Die Dokumenttyp-Definitionen werden im Content des Mandanten im Ordner __EditorConfig/roles/<ROLLENNAME> abgelegt. Das heißt: Die Definition für Basepages im Ordner __EditorConfig/roles/editor_standardlsg/Basepage wird kopiert zu  __EditorConfig/roles/editor_standardlsg/Basepage-Short. Anschließend werden in dem Dokument alle Row-Definitionen bis auf title und bodyText entfernt. Damit sind die redaktionellen Properties gemäß des UseCases angepasst.

Damit die Definition als Sub-Typ erkannt und behandelt wird, wird die Property subType ergänzt. Folgende Definition wird ergänzt:

<Row>    
  <Property name='subType' type='String' col='12' visible='false'>
    <Initializer class='SubTypeInitializer' />
  </Property>
</Row>

Dokumenteditor-Konfiguration Abbildung 1: Basepage-Short Dokumenteditor-Konfiguration



Sub-Typ Registrierung

Die im vorherigen Abschnitt beschriebene Definition des Subtypes muss noch in der Editorkonfiguration als Subtype bekannt gemacht werden. Hierzu muss die Customer-Configuration (Dokument __EditorConfig/CustomerConfiguration) wie folgt angepasst werden. 

Erweiterung der SubTypes-Liste um den neuen Sub-Type. Das heißt: das skizzierte Beispiel erfordert folgende SubTypes-Liste:

<SubTypes>
  <SubType name="Basepage-Short" docType="Basepage" />      
</SubTypes>

Der folgende Screenshot skizziert die Erweiterung der Customer-Configuration.

Subtyp Registrierung Abbildung 2: Basepage-Short Subtyp Registrierung

 

Labels

Die Labeldefinition muss um die Definitionen für den neuen Subtypen erweitert werden. Es müssen alle verwendeten Label definiert werden. Hierzu zählt das Label für den Subtypen sowie der Dokumentproperties und Akkordeons. Die Label werden im Dokument __EditorConfig/labels/lang_de definiert und müssen für das skizzierte Beispiel um die folgenden Label-Definitionen erweitert werden: 

Basepage-ShortLabel=Standardartikel-Kurz

Basepage-Short/tab_tabInhaltLabel=Inhalt

Base.DocumentEditor.Property.Basepage-Short.title=Geben Sie hier einen Titel für den Standardartikel-Kurz ein

Base.DocumentEditor.Property.Basepage-Short.title.Caption=Titel

Base.DocumentEditor.Property.Basepage-Short.title.Tooltip=Geben Sie hier einen Titel für den Standardartikel-Kurz ein

Base.DocumentEditor.Property.Basepage-Short.bodyText=Bitte geben Sie hier den Text des Beitrags mit allen Formatierungsangaben ein

Base.DocumentEditor.Property.Basepage-Short.bodyText.Caption=Haupttext

Base.DocumentEditor.Property.Basepage-Short.bodyText.Tooltip=Bitte geben Sie hier den Text des Beitrags mit allen Formatierungsangaben ein