diff --git a/src/main/java/de/bps/course/nodes/ll/LLEditForm.java b/src/main/java/de/bps/course/nodes/ll/LLEditForm.java
index d194acefe22d283090a09ec447355502027d5b82..367ca9508995887b6412452ec762b529dcced5d3 100644
--- a/src/main/java/de/bps/course/nodes/ll/LLEditForm.java
+++ b/src/main/java/de/bps/course/nodes/ll/LLEditForm.java
@@ -88,7 +88,7 @@ public class LLEditForm extends FormBasicController {
 		super(ureq, wControl, "editForm");
 		this.moduleConfig = moduleConfig;
 		// read existing links from config
-		linkList = new ArrayList<LLModel>((List<LLModel>) moduleConfig.get(LLCourseNode.CONF_LINKLIST));
+		linkList = new ArrayList<LLModel>(moduleConfig.getList(LLCourseNode.CONF_LINKLIST, LLModel.class));
 		// list of all link target text fields
 		lTargetInputList = new ArrayList<TextElement>(linkList.size());
 		// list of all link html target text fields
@@ -347,18 +347,21 @@ public class LLEditForm extends FormBasicController {
 		// add link add action button
 		FormLink addButton = new FormLinkImpl("add" + counter, "add" + counter, "", Link.BUTTON_SMALL + Link.NONTRANSLATED);
 		addButton.setUserObject(link);
+		addButton.setDomReplacementWrapperRequired(false);
 		addButton.setIconLeftCSS("o_icon o_icon-lg o_icon-fw o_icon_add");
 		flc.add(addButton);
 		lAddButtonList.add(index, addButton);
 		// add link deletion action button
 		FormLink delButton = new FormLinkImpl("delete" + counter, "delete" + counter, "", Link.BUTTON_SMALL + Link.NONTRANSLATED);
 		delButton.setUserObject(link);
+		delButton.setDomReplacementWrapperRequired(false);
 		delButton.setIconLeftCSS("o_icon o_icon-lg o_icon-fw o_icon_delete_item");
 		flc.add(delButton);
 		lDelButtonList.add(index, delButton);
 		// custom media action button
 		FormLink mediaButton = new FormLinkImpl("media" + counter, "media" + counter, "  ", Link.NONTRANSLATED);
 		mediaButton.setIconLeftCSS("o_icon o_icon_browse o_icon-lg");
+		mediaButton.setDomReplacementWrapperRequired(false);
 		mediaButton.setUserObject(link);
 		flc.add(mediaButton);
 		lCustomMediaButtonList.add(index, mediaButton);
diff --git a/src/main/java/de/bps/course/nodes/ll/_content/editForm.html b/src/main/java/de/bps/course/nodes/ll/_content/editForm.html
index 9d8f54815cfb60c8e226617c7b4d11176812e369..3348abfedd23dcacafba11e6039d2c723519aa2a 100644
--- a/src/main/java/de/bps/course/nodes/ll/_content/editForm.html
+++ b/src/main/java/de/bps/course/nodes/ll/_content/editForm.html
@@ -7,38 +7,39 @@
 	#set( $descrErr = $descr + "_ERROR" )
 	#set( $hasError = "false" )
 
-
-	<div class="o_block_large_bottom row">
-		<div class="col-xs-12 col-md-10 form-inline">
-			#if ($f.hasError($target))
-				$r.render($targetErr)	
-			#end
-			#if ($f.hasError($descr))
-				$r.render($descrErr)	
-			#end
-		
-			<div class="form-group">
-				<label class="sr-only" for="$f.getItemId($lTargetInputList.get($iter).getName())">$r.translate("ll.table.target")</label>
-			  	#if($lCustomMediaButtonList)
-		  		<div class="input-group">
-				 	$r.render($lTargetInputList.get($iter).getName())
-			  		<div class='input-group-addon'>
-						$r.render($lCustomMediaButtonList.get($iter).getName())
-					</div>	
-		  		</div>
-		  		#else 
-				 	$r.render($lTargetInputList.get($iter).getName())
+	<div class="row o_block_bottom">
+		<div class="col-xs-12 col-md-10">
+			<div class="form-inline">
+				#if ($f.hasError($target))
+					$r.render($targetErr)	
 				#end
+				#if ($f.hasError($descr))
+					$r.render($descrErr)	
+				#end
+			
+				<div class="form-group">
+					<label class="sr-only" for="$f.getItemId($lTargetInputList.get($iter).getName())">$r.translate("ll.table.target")</label>
+				  	#if($r.available($lCustomMediaButtonList.get($iter).getName()) && $r.visible($lCustomMediaButtonList.get($iter).getName()))
+			  		<div class="input-group">
+					 	$r.render($lTargetInputList.get($iter).getName())
+				  		<div class='input-group-addon'>
+							$r.render($lCustomMediaButtonList.get($iter).getName())
+						</div>	
+			  		</div>
+			  		#else 
+					 	$r.render($lTargetInputList.get($iter).getName())
+					#end
+				</div>
+				<div class="form-group">
+				  	<label class="sr-only" for="$f.getItemId($lHtmlTargetInputList.get($iter).getName())">$r.translate("ll.table.html_target")</label>
+				  	$r.render($lHtmlTargetInputList.get($iter).getName())
+				</div>
+				<div class="form-group">
+				  	<label class="sr-only" for="$f.getItemId($lDescriptionInputList.get($iter).getName())">$r.translate("ll.table.description")</label>
+				  	$r.render($lDescriptionInputList.get($iter).getName())
+				</div>
 			</div>
-			<div class="form-group">
-			  	<label class="sr-only" for="$f.getItemId($lHtmlTargetInputList.get($iter).getName())">$r.translate("ll.table.html_target")</label>
-			  	$r.render($lHtmlTargetInputList.get($iter).getName())
-			</div>
-			<div class="form-group">
-			  	<label class="sr-only" for="$f.getItemId($lDescriptionInputList.get($iter).getName())">$r.translate("ll.table.description")</label>
-			  	$r.render($lDescriptionInputList.get($iter).getName())
-			</div>
-			<div class="form-group">
+			<div class="o_block">
 			  	<label class="sr-only" for="$f.getItemId($lCommentInputList.get($iter).getName())">$r.translate("ll.table.comment")</label>
 			  	$r.render($lCommentInputList.get($iter).getName())
 			</div>