From c484ffcbe91711de18ed2f6776e0d1b6779dc73a Mon Sep 17 00:00:00 2001 From: Lennard Golsch Date: Thu, 19 Feb 2026 13:14:26 +0100 Subject: [PATCH 1/4] Decouple series panel rendering --- .../xsl/navigation-flatmir-layout.xsl | 22 ++-- .../resources/xsl/render-series-panel.xsl | 116 ++++++++++++++++++ src/main/resources/xsl/series-panel.xsl | 116 ++---------------- 3 files changed, 134 insertions(+), 120 deletions(-) create mode 100644 src/main/resources/xsl/render-series-panel.xsl diff --git a/src/main/resources/xsl/navigation-flatmir-layout.xsl b/src/main/resources/xsl/navigation-flatmir-layout.xsl index 759e8e3..1f1e639 100644 --- a/src/main/resources/xsl/navigation-flatmir-layout.xsl +++ b/src/main/resources/xsl/navigation-flatmir-layout.xsl @@ -1,12 +1,7 @@ - - - - + - + @@ -15,24 +10,21 @@ -
-
- - - + + + +
-
-
\ No newline at end of file +
diff --git a/src/main/resources/xsl/render-series-panel.xsl b/src/main/resources/xsl/render-series-panel.xsl new file mode 100644 index 0000000..f45b08b --- /dev/null +++ b/src/main/resources/xsl/render-series-panel.xsl @@ -0,0 +1,116 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + +
+
+

+ +

+
+
+
    + + + + + + + + + + +
+
+ +
+
+
+ + + +
  • + + + + + + + + + + + + +
  • +
    + + + + + + + +
  • + + + RSS 2.0 Feed + +
  • +
    +
    diff --git a/src/main/resources/xsl/series-panel.xsl b/src/main/resources/xsl/series-panel.xsl index 42aa5c3..6fe1c08 100644 --- a/src/main/resources/xsl/series-panel.xsl +++ b/src/main/resources/xsl/series-panel.xsl @@ -1,119 +1,25 @@ - - - - - - - + exclude-result-prefixes="xlink"> + + + - + - - - - - - - - -
    - - - - - -
    -
    -

    - -

    -
    - -
    -
      - - - - - - -
    -
    - - - -
    -
    -
    - - - - -
  • - - - -
  • -
    - -
  • - - - -
  • -
    -
    -
    - - - - - - - - -
  • - - - RSS 2.0 Feed - -
  • -
    -
    From a0774b141643cbe985bcb2e5c69cdb72ff180933 Mon Sep 17 00:00:00 2001 From: Lennard Golsch Date: Thu, 19 Feb 2026 13:16:31 +0100 Subject: [PATCH 2/4] Add MyCoReWebPage support --- README.md | 37 +++++++++++++++++++ .../resources/xsl/series-panel-adapter.xsl | 18 +++++++++ 2 files changed, 55 insertions(+) create mode 100644 src/main/resources/xsl/series-panel-adapter.xsl diff --git a/README.md b/README.md index 66a927c..cac2751 100644 --- a/README.md +++ b/README.md @@ -49,6 +49,8 @@ Build the JAR file with `mvn clean install` and copy it to `~/.mycore/(dev-)mir/ ### Configure `mycore.properties` +#### Enable navigation on object pages in frontend + To use the plugin, configuration in `~/.mycore/(dev-)mir/mycore.properties` is required. The RSS feed requires a `mycoreobject-rss` stylesheet, which is not included by default. For historical reasons, the link to the RSS feed is always displayed, but it can be disabled if needed. @@ -62,6 +64,41 @@ MIR.Layout.End=mir-edit,series-layout,mir-citation,mir-thumbnail,mir-epusta,mir- MIR.Metadata.Navigation.SeriesPanel.RSS.Enabled=false ``` +#### MyCoReWebPage support + +The panel can optionally be rendered within a +[MyCoReWebPage](https://www.mycore.de/documentation/frontend/frontend_static_content/). +To enable this, the stylesheet `series-panel-adapter.xsl` is provided. +The panel can be embedded using a `` element in your MyCoReWebPage. +When embedding, pay attention to the layout to ensure the panel is formatted correctly. + +> ⚠️ Note: The parameters `MCRObjectID` and `MCRDerivateID` must be present in the transformer session to resolve the +> navigation. + +To activate it, add the stylesheet as follows: + +```text +# Add 'series-panel-adapter.xsl' to enable series panel rendering in MyCoReWebPage +MCR.URIResolver.xslIncludes.MyCoReWebPage=%MCR.URIResolver.xslIncludes.MyCoReWebPage%,series-panel-adapter.xsl +``` + +Example MyCoReWebPage with panel and layout: + +```xml + +
    +
    +
    +

    Hello world

    +
    +
    + +
    +
    +
    +
    +``` + ### Reload and rebuild Solr The plugin leverages enhanced Solr handling for parent documents. diff --git a/src/main/resources/xsl/series-panel-adapter.xsl b/src/main/resources/xsl/series-panel-adapter.xsl new file mode 100644 index 0000000..85c3836 --- /dev/null +++ b/src/main/resources/xsl/series-panel-adapter.xsl @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + From be7015c3eb209ee2b84da531915e6466fcdc76d6 Mon Sep 17 00:00:00 2001 From: Lennard Golsch Date: Thu, 19 Feb 2026 13:41:22 +0100 Subject: [PATCH 3/4] Add extended MyCoreWebPage support --- README.md | 21 +++++++++++++++ .../resources/xsl/series-panel-enricher.xsl | 26 +++++++++++++++++++ 2 files changed, 47 insertions(+) create mode 100644 src/main/resources/xsl/series-panel-enricher.xsl diff --git a/README.md b/README.md index cac2751..0093e3c 100644 --- a/README.md +++ b/README.md @@ -99,6 +99,27 @@ Example MyCoReWebPage with panel and layout: ``` +#### Extended MyCoReWebPage support + +MyCoReWebPage support can be extended with `series-panel-enricher.xsl`. By setting `render-series-panel="true"` in a +MyCoReWebPage, a series panel with layout is automatically generated, using the section’s content. +To activate it, add the stylesheet alongside `series-panel-adapter.xsl` as follows: + +```text +# Add 'series-panel-adapter.xsl' to enable series panel rendering in MyCoReWebPage +MCR.URIResolver.xslIncludes.MyCoReWebPage=%MCR.URIResolver.xslIncludes.MyCoReWebPage%,series-panel-enricher.xsl,series-panel-adapter.xsl +``` + +Example MyCoReWebPage with automatic panel and layout using `render-series-panel`: + +```xml + +
    +

    Hello world

    +
    +
    +``` + ### Reload and rebuild Solr The plugin leverages enhanced Solr handling for parent documents. diff --git a/src/main/resources/xsl/series-panel-enricher.xsl b/src/main/resources/xsl/series-panel-enricher.xsl new file mode 100644 index 0000000..38143a9 --- /dev/null +++ b/src/main/resources/xsl/series-panel-enricher.xsl @@ -0,0 +1,26 @@ + + + + + +
    +
    + +
    +
    + +
    +
    +
    + +
    + + + +
    +
    + +
    From fda22bde177e6cd98a0d2a0df7eb1d74681ad84e Mon Sep 17 00:00:00 2001 From: Lennard Golsch Date: Thu, 19 Feb 2026 16:50:55 +0100 Subject: [PATCH 4/4] Fix README.md --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 0093e3c..4880edb 100644 --- a/README.md +++ b/README.md @@ -78,7 +78,7 @@ When embedding, pay attention to the layout to ensure the panel is formatted cor To activate it, add the stylesheet as follows: ```text -# Add 'series-panel-adapter.xsl' to enable series panel rendering in MyCoReWebPage +# Add 'series-panel-adapter.xsl' to enable series panel rendering in MyCoReWebPage. MCR.URIResolver.xslIncludes.MyCoReWebPage=%MCR.URIResolver.xslIncludes.MyCoReWebPage%,series-panel-adapter.xsl ``` @@ -106,7 +106,7 @@ MyCoReWebPage, a series panel with layout is automatically generated, using the To activate it, add the stylesheet alongside `series-panel-adapter.xsl` as follows: ```text -# Add 'series-panel-adapter.xsl' to enable series panel rendering in MyCoReWebPage +# Add 'series-panel-enricher.xsl' to enable extended series panel rendering in MyCoReWebPage. MCR.URIResolver.xslIncludes.MyCoReWebPage=%MCR.URIResolver.xslIncludes.MyCoReWebPage%,series-panel-enricher.xsl,series-panel-adapter.xsl ```