From 1d0529e9a9793c6ee42b0dea98b27db775692e52 Mon Sep 17 00:00:00 2001
From: srosse <stephane.rosse@frentix.com>
Date: Wed, 3 Oct 2018 08:24:47 +0200
Subject: [PATCH] OO-3620: fix issue with drake destroy, fix null fragments

---
 .../java/org/olat/modules/ceditor/ui/_content/page_run.html | 6 ------
 .../ceditor/ui/component/PageFragmentsComponent.java        | 3 +++
 .../static/js/jquery/openolat/jquery.contenteditor.js       | 1 -
 3 files changed, 3 insertions(+), 7 deletions(-)
 delete mode 100644 src/main/java/org/olat/modules/ceditor/ui/_content/page_run.html

diff --git a/src/main/java/org/olat/modules/ceditor/ui/_content/page_run.html b/src/main/java/org/olat/modules/ceditor/ui/_content/page_run.html
deleted file mode 100644
index c79ad834216..00000000000
--- a/src/main/java/org/olat/modules/ceditor/ui/_content/page_run.html
+++ /dev/null
@@ -1,6 +0,0 @@
-#foreach($fragment in $fragments)
-	<div class="$fragment.cssClass">
-		$r.render($fragment.componentName)
-		
-	</div>
-#end
\ No newline at end of file
diff --git a/src/main/java/org/olat/modules/ceditor/ui/component/PageFragmentsComponent.java b/src/main/java/org/olat/modules/ceditor/ui/component/PageFragmentsComponent.java
index fe81e351ada..820099af2dd 100644
--- a/src/main/java/org/olat/modules/ceditor/ui/component/PageFragmentsComponent.java
+++ b/src/main/java/org/olat/modules/ceditor/ui/component/PageFragmentsComponent.java
@@ -47,6 +47,9 @@ public class PageFragmentsComponent extends AbstractComponent implements Compone
 	}
 
 	public List<PageFragment> getFragments() {
+		if(fragments == null) {
+			return new ArrayList<>(1);
+		}
 		return new ArrayList<>(fragments);
 	}
 
diff --git a/src/main/webapp/static/js/jquery/openolat/jquery.contenteditor.js b/src/main/webapp/static/js/jquery/openolat/jquery.contenteditor.js
index bc6a6a18f63..7274cc99593 100644
--- a/src/main/webapp/static/js/jquery/openolat/jquery.contenteditor.js
+++ b/src/main/webapp/static/js/jquery/openolat/jquery.contenteditor.js
@@ -102,7 +102,6 @@
 		}).on('out', function(el, target, source) {
 			jQuery(target).removeClass('oo-accepted');
 		}).on('drop', function(el, target, source, sibling) {
-			drake.destroy();// drop trigger a reload -> clean up all and more
 			drop(el, target, source, sibling);
 		});
 		
-- 
GitLab