diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/table/AbstractFlexiTableRenderer.java b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/table/AbstractFlexiTableRenderer.java
index ad64141be4331257850ca68b1fd37a9f60d5a109..23fb984fc82cda7451dc715ea865862fca8bf5c0 100644
--- a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/table/AbstractFlexiTableRenderer.java
+++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/table/AbstractFlexiTableRenderer.java
@@ -218,9 +218,9 @@ public abstract class AbstractFlexiTableRenderer extends DefaultComponentRendere
 		String selected = null;
 		
 		sb.append("<div class='btn-group'>")
-		  .append("<button type='button' class='btn btn-default dropdown-toggle' data-toggle='dropdown'>")
+		  .append("<button id='table-button-filters-").append(dispatchId).append("' type='button' class='btn btn-default dropdown-toggle' data-toggle='dropdown'>")
 		  .append("<i class='o_icon o_icon_filter o_icon-lg'> </i> <b class='caret'></b></button>")
-		  .append("<ul class='dropdown-menu dropdown-menu-right' role='menu'>");
+		  .append("<div id='table-filters-").append(dispatchId).append("' class='hide'><ul class='o_dropdown list-unstyled' role='menu'>");
 		
 		for(FlexiTableFilter filter:filters) {
 			if(FlexiTableFilter.SPACER.equals(filter)) {
@@ -238,7 +238,12 @@ public abstract class AbstractFlexiTableRenderer extends DefaultComponentRendere
 				}
 			}
 		}
-		sb.append("</ul></div> ");
+		sb.append("</ul></div></div> ")
+		  .append("<script type='text/javascript'>\n")
+		  .append("/* <![CDATA[ */\n")
+		  .append("jQuery(function() { o_popover('table-button-filters-").append(dispatchId).append("','table-filters-").append(dispatchId).append("'); });\n")
+		  .append("/* ]]> */\n")
+		  .append("</script>");
 		return selected;
 	}
 	
@@ -247,9 +252,9 @@ public abstract class AbstractFlexiTableRenderer extends DefaultComponentRendere
 		String dispatchId = ftE.getFormDispatchId();
 		
 		sb.append("<div class='btn-group'>")
-		  .append("<button type='button' class='btn btn-default dropdown-toggle' data-toggle='dropdown'>")
+		  .append("<button id='table-button-sorters-").append(dispatchId).append("' type='button' class='btn btn-default dropdown-toggle' data-toggle='dropdown'>")
 		  .append("<i class='o_icon o_icon_sort_menu o_icon-lg'> </i> <b class='caret'></b></button>")
-		  .append("<ul class='dropdown-menu dropdown-menu-right' role='menu'>");
+		  .append("<div id='table-sorters-").append(dispatchId).append("' class='hide'><ul class='o_dropdown list-unstyled' role='menu'>");
 		
 		for(FlexiTableSort sort:sorts) {
 			if(FlexiTableSort.SPACER.equals(sort)) {
@@ -270,7 +275,12 @@ public abstract class AbstractFlexiTableRenderer extends DefaultComponentRendere
 				sb.append(sort.getLabel()).append("</a></li>");
 			}
 		}
-		sb.append("</ul></div> ");
+		sb.append("</ul></div></div> ")
+		  .append("<script type='text/javascript'>\n")
+		  .append("/* <![CDATA[ */\n")
+		  .append("jQuery(function() { o_popover('table-button-sorters-").append(dispatchId).append("','table-sorters-").append(dispatchId).append("'); });\n")
+		  .append("/* ]]> */\n")
+		  .append("</script>");
 	}
 	
 	protected void renderHeaderSwitchType(FlexiTableRendererType type, Renderer renderer, StringOutput sb, FlexiTableElementImpl ftE, URLBuilder ubu, Translator translator,
diff --git a/src/main/java/org/olat/core/gui/components/table/TableSortRenderer.java b/src/main/java/org/olat/core/gui/components/table/TableSortRenderer.java
index 68f37ce47f4c8904bd7c8858cc4ca96f3be6c625..6ecb1fb2b2c17d9a7526852defe9000a1868e021 100644
--- a/src/main/java/org/olat/core/gui/components/table/TableSortRenderer.java
+++ b/src/main/java/org/olat/core/gui/components/table/TableSortRenderer.java
@@ -44,11 +44,11 @@ class TableSortRenderer extends DefaultComponentRenderer {
 		String id = sorter.getDispatchID();
 		
 		sb.append("<div id='o_c").append(id).append("' class='btn-group'>")
-		  .append("<button type='button' class='btn btn-default dropdown-toggle' data-toggle='dropdown'>")
+		  .append("<button id='table-button-sorters-").append(id).append("' type='button' class='btn btn-default dropdown-toggle' data-toggle='dropdown'>")
 		  .append("<i class='o_icon o_icon-lg o_icon_sort_menu'> </i>")
 		  .append("<b class='caret'></b>")
 		  .append("</button>")
-		  .append("<ul class='dropdown-menu dropdown-menu-right' role='menu'>");
+		  .append("<div id='table-sorters-").append(id).append("' class='hide'><ul class='o_dropdown list-unstyled' role='menu'>");
 
 		int cols = table.getColumnCount();
 		boolean asc = table.isSortAscending();
@@ -83,6 +83,11 @@ class TableSortRenderer extends DefaultComponentRenderer {
 			}
 		}
 
-		sb.append("</ul></div>");
+		sb.append("</ul></div></div>")
+		  .append("<script type='text/javascript'>\n")
+		  .append("/* <![CDATA[ */\n")
+		  .append("jQuery(function() { o_popover('table-button-sorters-").append(id).append("','table-sorters-").append(id).append("'); });\n")
+		  .append("/* ]]> */\n")
+		  .append("</script>");
 	}
 }
diff --git a/src/main/java/org/olat/course/archiver/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/course/archiver/_i18n/LocalStrings_de.properties
index 487f2a59b4fb816e2a3a72c8999366eb119a617f..8242bab92bd4969381e49b3759a2ca55f09449e3 100644
--- a/src/main/java/org/olat/course/archiver/_i18n/LocalStrings_de.properties
+++ b/src/main/java/org/olat/course/archiver/_i18n/LocalStrings_de.properties
@@ -1,4 +1,5 @@
 #Mon Mar 02 09:54:04 CET 2009
+checklist=Checkliste
 chelp.arch-logf.title=Logfiles: Auswertung
 chelp.ass=Bewertung
 chelp.cont=Gruppenkontext
@@ -107,6 +108,7 @@ nodechoose.intro.wiki=W\u00E4hlen Sie einen Kursbaustein aus, um dessen Wikis zu
 nodechoose.intro.projectbroker=W\u00E4hlen Sie einen Kursbaustein aus, um dessen Themenvergabe zu archivieren.
 nodechoose.intro.scorm=W\u00E4hlen Sie im folgenden Dialog den SCORM Baustein aus, der ausgewertet werden soll
 nodechoose.intro.cl=W\u00E4hlen Sie im folgenden Dialog den Checklisten Baustein aus, der ausgewertet werden soll
+overview.nonodes.checklist=Dieser Kurs enth\u00E4lt keine Checkliste.
 overview.nonodes.dialog=Dieser Kurs enth\u00E4lt keine Dateidiskussionen.
 overview.nonodes.fo=Dieser Kurs enth\u00E4lt keine Foren
 overview.nonodes.ta=Dieser Kurs enth\u00E4lt keine Aufgabenkursbausteine
diff --git a/src/main/java/org/olat/course/archiver/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/course/archiver/_i18n/LocalStrings_en.properties
index f68f5b5dafc9f72db67b91e4df10dced18024cec..f976ef5ac119471bce965db391e23f6a8c130a3a 100644
--- a/src/main/java/org/olat/course/archiver/_i18n/LocalStrings_en.properties
+++ b/src/main/java/org/olat/course/archiver/_i18n/LocalStrings_en.properties
@@ -1,4 +1,5 @@
 #Tue Dec 16 09:01:11 CET 2014
+checklist=Checklists
 chelp.arch-logf.title=Log files\: evaluation
 chelp.ass=Assessment
 chelp.cont=Group context
@@ -107,6 +108,7 @@ nodechoose.intro.projectbroker=Please select a course element to archive its top
 nodechoose.intro.scorm=In the following dialog please select the SCORM element to be assessed.
 nodechoose.intro.ta=Select a course element in order to archive its tasks/solutions.
 nodechoose.intro.wiki=Select a course element to archive its Wiki.
+overview.nonodes.checklist=This course does not contain any checklists.
 overview.nonodes.dialog=This course does not contain any file dialogs.
 overview.nonodes.fo=This course does not contain any forums.
 overview.nonodes.projectbroker=This course does not contain any topic assignments.
diff --git a/src/main/java/org/olat/course/assessment/GroupAndContextTableModel.java b/src/main/java/org/olat/course/assessment/GroupAndContextTableModel.java
index 2c3bc85a0e33444bc1041c6948e0374404041290..9cba86b497942f9feb728c4ddfbb81bbd7f7e2cc 100644
--- a/src/main/java/org/olat/course/assessment/GroupAndContextTableModel.java
+++ b/src/main/java/org/olat/course/assessment/GroupAndContextTableModel.java
@@ -28,7 +28,6 @@ package org.olat.course.assessment;
 import java.util.ArrayList;
 import java.util.List;
 
-import org.apache.commons.lang.StringEscapeUtils;
 import org.olat.core.gui.components.table.DefaultTableDataModel;
 import org.olat.core.util.Formatter;
 import org.olat.core.util.StringHelper;
@@ -53,7 +52,7 @@ public class GroupAndContextTableModel extends DefaultTableDataModel<BusinessGro
      * @param trans translator for the business group context
      */
     public GroupAndContextTableModel(List<BusinessGroup> groups) {
-    		super(groups);
+    	super(groups);
     }
 
     /**
@@ -66,27 +65,25 @@ public class GroupAndContextTableModel extends DefaultTableDataModel<BusinessGro
     /**
      * @see org.olat.core.gui.components.table.TableDataModel#getValueAt(int, int)
      */
+    @Override
     public Object getValueAt(int row, int col) {
         BusinessGroup businessGroup = objects.get(row);
         switch (col) {
             case 0 :
-            		String groupName = businessGroup.getName();
-            		if(StringHelper.containsNonWhitespace(groupName)){
-                  return StringEscapeUtils.escapeHtml(businessGroup.getName());
-            		}
-            		return "???";
+            	String groupName = businessGroup.getName();
+            	return StringHelper.containsNonWhitespace(groupName) ? businessGroup.getName() : "???";
             case 1 :
             	String tmp = businessGroup.getDescription();
             	tmp = FilterFactory.getHtmlTagsFilter().filter(tmp);
-              tmp = Formatter.truncate(tmp, 256);
-              return tmp;
+            	tmp = Formatter.truncate(tmp, 256);
+            	return tmp;
             default :
                 return "ERROR";
         }
     }
 
-		@Override
-		public Object createCopyWithEmptyList() {
-			return new GroupAndContextTableModel(new ArrayList<BusinessGroup>());
-		}
+	@Override
+	public Object createCopyWithEmptyList() {
+		return new GroupAndContextTableModel(new ArrayList<BusinessGroup>());
+	}
 }
\ No newline at end of file
diff --git a/src/main/java/org/olat/ims/qti/statistics/ui/_content/statistics_item.html b/src/main/java/org/olat/ims/qti/statistics/ui/_content/statistics_item.html
index 67fe1dc313567055b5bc0168b3c2dbc08247ac0e..21c38a65d225109455eab1951d64b68a152881a7 100644
--- a/src/main/java/org/olat/ims/qti/statistics/ui/_content/statistics_item.html
+++ b/src/main/java/org/olat/ims/qti/statistics/ui/_content/statistics_item.html
@@ -5,7 +5,7 @@
 	<h3><i class="o_icon $series.itemCss""> </i> $title</h3>
 	#if ($question && $question != "")
 		<h4>$r.translate("chart.item")</h4>
-		<div class="o_qti_statistics_question">$question</div>
+		<div class="o_qti_statistics_question clearfix">$question</div>
 	#end
 	
 	<h4>$r.translate("fig.title")</h4>
diff --git a/src/main/java/org/olat/ims/qti/statistics/ui/_content/statistics_item_essai.html b/src/main/java/org/olat/ims/qti/statistics/ui/_content/statistics_item_essai.html
index fbd366e95853587741e396b4db5ba94483191cd0..f565b6e29b15bb96f3e8be7ffb0474b64106aedf 100644
--- a/src/main/java/org/olat/ims/qti/statistics/ui/_content/statistics_item_essai.html
+++ b/src/main/java/org/olat/ims/qti/statistics/ui/_content/statistics_item_essai.html
@@ -5,11 +5,11 @@
 	<h3><i class="o_icon o_mi_qtiessay"> </i> $title</h3>
 	#if ($question && $question != "")
 		<h4>$r.translate("chart.item")</h4>
-		<div class="o_qti_statistics_question">$question</div>
+		<div class="o_qti_statistics_question clearfix">$question</div>
 	#end
 	#if ($solution && $solution != "")
 		<h4>$r.translate("solution")</h4>
-		<div class="o_qti_statistics_solution">$solution</div>
+		<div class="o_qti_statistics_solution clearfix">$solution</div>
 	#end
 	
 	<h4>$r.translate("fig.title")</h4>