From e3227b412b25140d940c31886cad55e46b219eeb Mon Sep 17 00:00:00 2001
From: srosse <stephane.rosse@frentix.com>
Date: Fri, 10 Apr 2020 10:49:24 +0200
Subject: [PATCH] OO-4597: always allow use of jquery in single page (same as
 SCORM)

---
 .../filechooser/LinkFileCombiCalloutController.java    | 10 ++++++----
 .../org/olat/course/nodes/sp/SPEditController.java     | 10 +++++++---
 2 files changed, 13 insertions(+), 7 deletions(-)

diff --git a/src/main/java/org/olat/core/commons/controllers/filechooser/LinkFileCombiCalloutController.java b/src/main/java/org/olat/core/commons/controllers/filechooser/LinkFileCombiCalloutController.java
index 8192823a877..87e0fe2bfe2 100644
--- a/src/main/java/org/olat/core/commons/controllers/filechooser/LinkFileCombiCalloutController.java
+++ b/src/main/java/org/olat/core/commons/controllers/filechooser/LinkFileCombiCalloutController.java
@@ -482,19 +482,21 @@ public class LinkFileCombiCalloutController extends BasicController {
 	
 	public boolean isEditorEnabled() {
 		// enable html editor for html files
-		if(editable && StringHelper.containsNonWhitespace(relFilePath)) {
+		return editable && isHtmlFile();
+	}
+	
+	public boolean isHtmlFile() {
+		if(StringHelper.containsNonWhitespace(relFilePath)) {
 			String lowercase = relFilePath.toLowerCase().trim();
 			if (lowercase.endsWith(".html") || lowercase.endsWith(".htm")) {
 				return true;
 			}
 		}
-		// disable html editor for all other cases
 		return false;		
 	}
 
 	@Override
 	protected void doDispose() {
-		// controllers auto-disposed by basic controller
+		//
 	}
-
 }
\ No newline at end of file
diff --git a/src/main/java/org/olat/course/nodes/sp/SPEditController.java b/src/main/java/org/olat/course/nodes/sp/SPEditController.java
index a1adc34d03b..4c2b14ff718 100644
--- a/src/main/java/org/olat/course/nodes/sp/SPEditController.java
+++ b/src/main/java/org/olat/course/nodes/sp/SPEditController.java
@@ -191,8 +191,12 @@ public class SPEditController extends ActivateableTabbableDefaultController impl
 				combiLinkCtr.setEditable(hasEditRights(relPath));
 				moduleConfiguration.set(CONFIG_KEY_FILE, relPath);
 				fireEvent(urequest, NodeEditController.NODECONFIG_CHANGED_EVENT);
-				if(!myTabbedPane.containsTab(deliveryOptionsCtrl.getInitialComponent())) {
-					myTabbedPane.addTab(translate(PANE_TAB_DELIVERYOPTIONS), deliveryOptionsCtrl.getInitialComponent());
+				if(combiLinkCtr.isHtmlFile()) {
+					if(!myTabbedPane.containsTab(deliveryOptionsCtrl.getInitialComponent())) {
+						myTabbedPane.addTab(translate(PANE_TAB_DELIVERYOPTIONS), deliveryOptionsCtrl.getInitialComponent());
+					}
+				} else {
+					myTabbedPane.removeTab(deliveryOptionsCtrl.getInitialComponent());
 				}
 				myContent.contextPut("editorEnabled", combiLinkCtr.isEditorEnabled());
 			}
@@ -221,7 +225,7 @@ public class SPEditController extends ActivateableTabbableDefaultController impl
 		myTabbedPane = tabbedPane;
 		tabbedPane.addTab(translate(PANE_TAB_ACCESSIBILITY), accessibilityCondContr.getWrappedDefaultAccessConditionVC(translate(NLS_CONDITION_ACCESSIBILITY_TITLE)));
 		tabbedPane.addTab(translate(PANE_TAB_SPCONFIG), myContent);
-		if(combiLinkCtr != null && combiLinkCtr.isEditorEnabled()) {
+		if(combiLinkCtr != null && combiLinkCtr.isHtmlFile()) {
 			tabbedPane.addTab(translate(PANE_TAB_DELIVERYOPTIONS), deliveryOptionsCtrl.getInitialComponent());
 		}
 	}
-- 
GitLab