From 0d3a1338e82bc0d6cce785869932ce4d24c49f85 Mon Sep 17 00:00:00 2001 From: gnaegi <none@none> Date: Thu, 27 Aug 2015 13:29:42 +0200 Subject: [PATCH] OO-1658 support help page anchors. Of course confluence has it's own anchor style... --- .../services/help/spi/ConfluenceLinkSPI.java | 14 +++++++++++++- .../olat/gui/demo/guidemo/GuiDemoFlexiForm.java | 2 +- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/olat/core/commons/services/help/spi/ConfluenceLinkSPI.java b/src/main/java/org/olat/core/commons/services/help/spi/ConfluenceLinkSPI.java index 662ff8975fc..4b5754ba5a6 100644 --- a/src/main/java/org/olat/core/commons/services/help/spi/ConfluenceLinkSPI.java +++ b/src/main/java/org/olat/core/commons/services/help/spi/ConfluenceLinkSPI.java @@ -55,7 +55,19 @@ public class ConfluenceLinkSPI implements HelpLinkSPI { String version = Settings.getVersion(); sb.append(generateSpace(version, locale)); if (page != null) { - sb.append(page.replace(" ", "%20")); + int anchorPos = page.indexOf("#"); + if (anchorPos != -1) { + // page with anchor + String realPage = page.substring(0,anchorPos); + String anchor = page.substring(anchorPos+1); + // confluence has some super-fancy way to addressing pages with anchors + sb.append(realPage.replace(" ", "%20")); + sb.append("#").append(realPage.replace(" ", "")).append("-").append(anchor); + + } else { + // page without anchor + sb.append(page.replace(" ", "%20")); + } } return sb.toString(); } diff --git a/src/main/java/org/olat/gui/demo/guidemo/GuiDemoFlexiForm.java b/src/main/java/org/olat/gui/demo/guidemo/GuiDemoFlexiForm.java index 05559e46c6e..2ad181a358f 100644 --- a/src/main/java/org/olat/gui/demo/guidemo/GuiDemoFlexiForm.java +++ b/src/main/java/org/olat/gui/demo/guidemo/GuiDemoFlexiForm.java @@ -142,7 +142,7 @@ public class GuiDemoFlexiForm extends FormBasicController { firstName.setEnabled(inputMode); firstName.setPlaceholderText("Hans"); firstName.setHelpText("If you have a middle name, add it to the first name input field"); - firstName.setHelpUrlForManualPage("Personal menu"); + firstName.setHelpUrlForManualPage("Configuration#Profile"); lastName = uifactory.addTextElement("lastname", "guidemo.flexi.form.lastname", 256, personData.getLastName(), formLayout); lastName.setDisplaySize(defaultDisplaySize); -- GitLab