From cdd196c8d69ff1c1ed262641ff598592e70fd0ed Mon Sep 17 00:00:00 2001
From: srosse <none@none>
Date: Tue, 29 May 2018 10:57:38 +0200
Subject: [PATCH] OO-3477: remove uncalculated statistics, remove user property
 from logging table in setup script, adapt creation and update of the
 temporary table for course statistics

---
 .../org/olat/_spring/extensionContext.xml     |  97 +------------
 .../statistic/MySQLTempStatTableCreator.java  |  20 +--
 .../PostgreSQLTempStatTableCreator.java       |  16 +--
 .../statistic/_spring/statisticContext.xml    |   2 +-
 .../course/statistic/homeorg/HomeOrgStat.java | 136 ------------------
 .../homeorg/HomeOrgStatisticManager.java      |  87 -----------
 .../homeorg/_i18n/LocalStrings_ar.properties  |  13 --
 .../homeorg/_i18n/LocalStrings_de.properties  |  14 --
 .../homeorg/_i18n/LocalStrings_el.properties  |  13 --
 .../homeorg/_i18n/LocalStrings_en.properties  |  13 --
 .../homeorg/_i18n/LocalStrings_fr.properties  |  13 --
 .../homeorg/_i18n/LocalStrings_it.properties  |  13 --
 .../homeorg/_i18n/LocalStrings_jp.properties  |  13 --
 .../_i18n/LocalStrings_nl_NL.properties       |  13 --
 .../homeorg/_i18n/LocalStrings_pl.properties  |  11 --
 .../_i18n/LocalStrings_pt_BR.properties       |  13 --
 .../_i18n/LocalStrings_zh_CN.properties       |  13 --
 .../course/statistic/orgtype/OrgTypeStat.java | 135 -----------------
 .../orgtype/OrgTypeStatisticManager.java      |  89 ------------
 .../orgtype/_i18n/LocalStrings_ar.properties  |  13 --
 .../orgtype/_i18n/LocalStrings_de.properties  |  16 ---
 .../orgtype/_i18n/LocalStrings_el.properties  |  13 --
 .../orgtype/_i18n/LocalStrings_en.properties  |  13 --
 .../orgtype/_i18n/LocalStrings_fr.properties  |  13 --
 .../orgtype/_i18n/LocalStrings_it.properties  |  13 --
 .../orgtype/_i18n/LocalStrings_jp.properties  |   9 --
 .../_i18n/LocalStrings_nl_NL.properties       |  13 --
 .../orgtype/_i18n/LocalStrings_pl.properties  |  11 --
 .../_i18n/LocalStrings_pt_BR.properties       |  13 --
 .../_i18n/LocalStrings_zh_CN.properties       |  13 --
 .../studybranch3/StudyBranch3Stat.java        | 135 -----------------
 .../StudyBranch3StatisticManager.java         |  90 ------------
 .../_i18n/LocalStrings_ar.properties          |  13 --
 .../_i18n/LocalStrings_de.properties          |  14 --
 .../_i18n/LocalStrings_el.properties          |  13 --
 .../_i18n/LocalStrings_en.properties          |  13 --
 .../_i18n/LocalStrings_fr.properties          |  13 --
 .../_i18n/LocalStrings_it.properties          |  13 --
 .../_i18n/LocalStrings_jp.properties          |   8 --
 .../_i18n/LocalStrings_nl_NL.properties       |  13 --
 .../_i18n/LocalStrings_pl.properties          |  11 --
 .../_i18n/LocalStrings_pt_BR.properties       |  13 --
 .../_i18n/LocalStrings_zh_CN.properties       |  13 --
 .../statistic/studylevel/StudyLevelStat.java  | 135 -----------------
 .../StudyLevelStatisticManager.java           |  89 ------------
 .../_i18n/LocalStrings_ar.properties          |  13 --
 .../_i18n/LocalStrings_de.properties          |  17 ---
 .../_i18n/LocalStrings_el.properties          |  13 --
 .../_i18n/LocalStrings_en.properties          |  13 --
 .../_i18n/LocalStrings_fr.properties          |  13 --
 .../_i18n/LocalStrings_it.properties          |  13 --
 .../_i18n/LocalStrings_jp.properties          |   8 --
 .../_i18n/LocalStrings_nl_NL.properties       |  13 --
 .../_i18n/LocalStrings_pl.properties          |  11 --
 .../_i18n/LocalStrings_pt_BR.properties       |  13 --
 .../_i18n/LocalStrings_zh_CN.properties       |  11 --
 .../login/AfterLoginInterceptionManager.java  |   6 +-
 src/main/resources/META-INF/persistence.xml   |   4 -
 .../database/mysql/alter_12_4_x_to_12_5_0.sql |   4 +
 .../database/mysql/setupDatabase.sql          |  69 ---------
 .../oracle/alter_12_4_x_to_12_5_0.sql         |   4 +
 .../database/oracle/setupDatabase.sql         |  88 ------------
 .../postgresql/alter_12_4_x_to_12_5_0.sql     |   4 +
 .../database/postgresql/setupDatabase.sql     |  41 ------
 .../WeeklyStatisticUpdateManagerTest.java     |   1 -
 65 files changed, 27 insertions(+), 1782 deletions(-)
 delete mode 100644 src/main/java/org/olat/course/statistic/homeorg/HomeOrgStat.java
 delete mode 100644 src/main/java/org/olat/course/statistic/homeorg/HomeOrgStatisticManager.java
 delete mode 100644 src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_ar.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_de.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_el.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_en.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_fr.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_it.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_jp.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_nl_NL.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_pl.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_pt_BR.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_zh_CN.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/orgtype/OrgTypeStat.java
 delete mode 100644 src/main/java/org/olat/course/statistic/orgtype/OrgTypeStatisticManager.java
 delete mode 100644 src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_ar.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_de.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_el.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_en.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_fr.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_it.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_jp.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_nl_NL.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_pl.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_pt_BR.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_zh_CN.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/studybranch3/StudyBranch3Stat.java
 delete mode 100644 src/main/java/org/olat/course/statistic/studybranch3/StudyBranch3StatisticManager.java
 delete mode 100644 src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_ar.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_de.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_el.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_en.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_fr.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_it.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_jp.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_nl_NL.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_pl.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_pt_BR.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_zh_CN.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/studylevel/StudyLevelStat.java
 delete mode 100644 src/main/java/org/olat/course/statistic/studylevel/StudyLevelStatisticManager.java
 delete mode 100644 src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_ar.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_de.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_el.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_en.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_fr.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_it.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_jp.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_nl_NL.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_pl.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_pt_BR.properties
 delete mode 100644 src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_zh_CN.properties

diff --git a/src/main/java/org/olat/_spring/extensionContext.xml b/src/main/java/org/olat/_spring/extensionContext.xml
index 764c54c0452..647de02fe74 100644
--- a/src/main/java/org/olat/_spring/extensionContext.xml
+++ b/src/main/java/org/olat/_spring/extensionContext.xml
@@ -757,102 +757,7 @@
 			</property>		 
 			<property name="order" value="7" />
 		</bean>
-
-
-		<!-- TODO [eglis]: The following are UZH specific statistic extensions only --> 
-
-		<bean class="org.olat.course.statistic.StatisticActionExtension" init-method="initExtensionPoints" id="homeorgextension">
-			<property name="actionController">	
-				<bean class="org.olat.course.statistic.StatisticAutoCreator" scope="prototype">
-					<property name="className" value="org.olat.course.statistic.StatisticDisplayController"/>
-					<property name="statisticManager">
-						<bean class="org.olat.course.statistic.homeorg.HomeOrgStatisticManager" />
-					</property>
-				</bean>
-			</property>
-			<property name="i18nActionKey" value="menu.createstatfile"/>
-			<property name="i18nDescriptionKey" value="menu.createstatfile.alt"/>
-			<!--  the translationPackage is used to make sure the i18n properties are read from the right package  -->
-			<property name="translationPackage" value="org.olat.course.statistic.homeorg"/>
-			<property name="extensionPoints">
-				<list>	
-					<value>org.olat.course.statistic.StatisticMainController</value>		
-				</list>
-			</property>		 
-			<property name="order" value="8" />
-		</bean>
-
-
-		 
-		<bean class="org.olat.course.statistic.StatisticActionExtension" init-method="initExtensionPoints" id="orgtypeextension">
-			<property name="actionController">	
-				<bean class="org.olat.course.statistic.StatisticAutoCreator" scope="prototype">
-					<property name="className" value="org.olat.course.statistic.StatisticDisplayController"/>
-					<property name="statisticManager">
-						<bean class="org.olat.course.statistic.orgtype.OrgTypeStatisticManager" />
-					</property>
-				</bean>
-			</property>
-			<property name="i18nActionKey" value="menu.createstatfile"/>
-			<property name="i18nDescriptionKey" value="menu.createstatfile.alt"/>
-			<!--  the translationPackage is used to make sure the i18n properties are read from the right package  -->
-			<property name="translationPackage" value="org.olat.course.statistic.orgtype"/>
-			<property name="extensionPoints">
-				<list>	
-					<value>org.olat.course.statistic.StatisticMainController</value>		
-				</list>
-			</property>		 
-			<property name="order" value="9" />
-		</bean>
-
-
-		 
-
-		<bean class="org.olat.course.statistic.StatisticActionExtension" init-method="initExtensionPoints" id="studylevelextension">
-			<property name="actionController">	
-				<bean class="org.olat.course.statistic.StatisticAutoCreator" scope="prototype">
-					<property name="className" value="org.olat.course.statistic.StatisticDisplayController"/>
-					<property name="statisticManager">
-						<bean class="org.olat.course.statistic.studylevel.StudyLevelStatisticManager" />
-					</property>
-				</bean>
-			</property>
-			<property name="i18nActionKey" value="menu.createstatfile"/>
-			<property name="i18nDescriptionKey" value="menu.createstatfile.alt"/>
-			<!--  the translationPackage is used to make sure the i18n properties are read from the right package  -->
-			<property name="translationPackage" value="org.olat.course.statistic.studylevel"/>
-			<property name="extensionPoints">
-				<list>	
-					<value>org.olat.course.statistic.StatisticMainController</value>		
-				</list>
-			</property>
-			<property name="order" value="10" /> 
-		</bean>
-
-		 
-
-
-		<bean class="org.olat.course.statistic.StatisticActionExtension" init-method="initExtensionPoints" id="studybranch3extension">
-			<property name="actionController">	
-				<bean class="org.olat.course.statistic.StatisticAutoCreator" scope="prototype">
-					<property name="className" value="org.olat.course.statistic.StatisticDisplayController"/>
-					<property name="statisticManager">
-						<bean class="org.olat.course.statistic.studybranch3.StudyBranch3StatisticManager" />	
-					</property>
-				</bean>
-			</property>
-			<property name="i18nActionKey" value="menu.createstatfile"/>
-			<property name="i18nDescriptionKey" value="menu.createstatfile.alt"/>
-			<!--  the translationPackage is used to make sure the i18n properties are read from the right package  -->
-			<property name="translationPackage" value="org.olat.course.statistic.studybranch3"/>
-			<property name="extensionPoints">
-				<list>	
-					<value>org.olat.course.statistic.StatisticMainController</value>		
-				</list>
-			</property>		 
-			<property name="order" value="11" />
-		</bean>
-				
+		
 	<!-- template for extension of type GenericActionExtension
 		<bean id="NAMEIToptional" class="org.olat.core.extensions.action.GenericActionExtension" init-method="initExtensionPoints">
 			<property name="actionController">	
diff --git a/src/main/java/org/olat/course/statistic/MySQLTempStatTableCreator.java b/src/main/java/org/olat/course/statistic/MySQLTempStatTableCreator.java
index c64f4a3c402..76c40979634 100644
--- a/src/main/java/org/olat/course/statistic/MySQLTempStatTableCreator.java
+++ b/src/main/java/org/olat/course/statistic/MySQLTempStatTableCreator.java
@@ -78,18 +78,13 @@ public class MySQLTempStatTableCreator implements IStatisticUpdater {
 			log_.info("updateStatistic: creating o_stat_temptable");
 			jdbcTemplate_.execute(
 					"create table o_stat_temptable (" +
-							"creationdate datetime not null," +
-							"businesspath varchar(2048) not null," +
-							"userproperty2 varchar(255)," +							// homeOrg
-							"userproperty4 varchar(255)," +							// orgType
-							"userproperty10 varchar(255)," +						// studyBranch3
-							"userproperty3 varchar(255)" +							// studyLevel
+						"creationdate datetime not null," +
+						"businesspath varchar(2048) not null" +
 					");");
 			
 			log_.info("updateStatistic: inserting logging actions from "+from+" until "+until);
 			
 			// same month optimization
-			String oLoggingTable = "o_loggingtable";
 			Calendar lastUpdatedCalendar = Calendar.getInstance();
 			lastUpdatedCalendar.setTime(from);
 			Calendar nowUpdatedCalendar = Calendar.getInstance();
@@ -99,13 +94,10 @@ public class MySQLTempStatTableCreator implements IStatisticUpdater {
 			long untilSeconds = until.getTime() / 1000l;
 
 			long numLoggingActions = jdbcTemplate_.update(
-					"insert into o_stat_temptable (creationdate,businesspath,userproperty2,userproperty4,userproperty10,userproperty3) " +
-						"select " +
-							"creationdate,businesspath,userproperty2,userproperty4,userproperty10,userproperty3 " +
-						"from " + 
-						oLoggingTable + 
-						" where " +
-							"actionverb='launch' and actionobject='node' and creationdate>from_unixtime('"+ fromSeconds +"') and creationdate<=from_unixtime('"+ untilSeconds +"');");
+					"insert into o_stat_temptable (creationdate,businesspath) " +
+						"select creationdate,businesspath" +
+						" from o_loggingtable" + 
+						" where actionverb='launch' and actionobject='node' and creationdate>from_unixtime('"+ fromSeconds +"') and creationdate<=from_unixtime('"+ untilSeconds +"');");
 			
 			log_.info("updateStatistic: insert done. number of logging actions: " + numLoggingActions);
 		} catch(RuntimeException e) {
diff --git a/src/main/java/org/olat/course/statistic/PostgreSQLTempStatTableCreator.java b/src/main/java/org/olat/course/statistic/PostgreSQLTempStatTableCreator.java
index 79167c35213..b498823833e 100644
--- a/src/main/java/org/olat/course/statistic/PostgreSQLTempStatTableCreator.java
+++ b/src/main/java/org/olat/course/statistic/PostgreSQLTempStatTableCreator.java
@@ -64,21 +64,17 @@ public class PostgreSQLTempStatTableCreator implements IStatisticUpdater {
 			log_.info("updateStatistic: creating o_stat_temptable");
 			jdbcTemplate.execute(
 					"create table o_stat_temptable (" +
-							"creationdate timestamp not null," +
-							"businesspath varchar(2048) not null," +
-							"userproperty2 varchar(255)," +							// homeOrg
-							"userproperty4 varchar(255)," +							// orgType
-							"userproperty10 varchar(255)," +						// studyBranch3
-							"userproperty3 varchar(255)" +							// studyLevel
+						"creationdate timestamp not null," +
+						"businesspath varchar(2048) not null" +
 					");");
 			
 			log_.info("updateStatistic: inserting logging actions from "+from+" until "+until);
 			
 			int numLoggingActions = jdbcTemplate.update(
-					"insert into o_stat_temptable (creationdate,businesspath,userproperty2,userproperty4,userproperty10,userproperty3) " +
-						"select creationdate,businesspath,userproperty2,userproperty4,userproperty10,userproperty3 " +
-						"from o_loggingtable " + 
-						"where actionverb='launch' and actionobject='node' and creationdate>? and creationdate<=?;",
+					"insert into o_stat_temptable (creationdate,businesspath) " +
+						"select creationdate,businesspath" +
+						" from o_loggingtable" + 
+						 " where actionverb='launch' and actionobject='node' and creationdate>? and creationdate<=?;",
 						new Object[]{ from, until }, new int[]{ Types.TIMESTAMP, Types.TIMESTAMP});
 
 			log_.info("updateStatistic: insert done. number of logging actions: " + numLoggingActions);
diff --git a/src/main/java/org/olat/course/statistic/_spring/statisticContext.xml b/src/main/java/org/olat/course/statistic/_spring/statisticContext.xml
index f4c92bea454..5efc54ffaf5 100644
--- a/src/main/java/org/olat/course/statistic/_spring/statisticContext.xml
+++ b/src/main/java/org/olat/course/statistic/_spring/statisticContext.xml
@@ -335,7 +335,7 @@ insert into o_stat_hourofday (businesspath, resid, hour, value)
 							<value>
 							  <![CDATA[
 								create table o_stat_temptable as 
-								select creationdate, businesspath, userproperty2, userproperty4, userproperty10, userproperty3,
+								select creationdate, businesspath,
 								       to_number(substr(businesspath, instr(businesspath, ':') + 1, instr(businesspath, ']') - instr(businesspath, ':') - 1)) resid
 								from o_loggingtable
 								where actionverb='launch' and actionobject='node' and businesspath is not null 
diff --git a/src/main/java/org/olat/course/statistic/homeorg/HomeOrgStat.java b/src/main/java/org/olat/course/statistic/homeorg/HomeOrgStat.java
deleted file mode 100644
index b5905633e8c..00000000000
--- a/src/main/java/org/olat/course/statistic/homeorg/HomeOrgStat.java
+++ /dev/null
@@ -1,136 +0,0 @@
-/**
-* OLAT - Online Learning and Training<br>
-* http://www.olat.org
-* <p>
-* Licensed under the Apache License, Version 2.0 (the "License"); <br>
-* you may not use this file except in compliance with the License.<br>
-* You may obtain a copy of the License at
-* <p>
-* http://www.apache.org/licenses/LICENSE-2.0
-* <p>
-* Unless required by applicable law or agreed to in writing,<br>
-* software distributed under the License is distributed on an "AS IS" BASIS, <br>
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br>
-* See the License for the specific language governing permissions and <br>
-* limitations under the License.
-* <p>
-* Copyright (c) since 2004 at Multimedia- & E-Learning Services (MELS),<br>
-* University of Zurich, Switzerland.
-* <hr>
-* <a href="http://www.openolat.org">
-* OpenOLAT - Online Learning and Training</a><br>
-* This file has been modified by the OpenOLAT community. Changes are licensed
-* under the Apache 2.0 license as the original file.  
-* <p>
-*/  
-
-package org.olat.course.statistic.homeorg;
-
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.Id;
-import javax.persistence.Table;
-
-import org.hibernate.annotations.GenericGenerator;
-import org.hibernate.annotations.Parameter;
-import org.olat.core.commons.persistence.PersistentObject;
-import org.olat.core.id.Persistable;
-
-/**
- * Hibernate object representing an entry in the o_stat_homeorg table.
- * <P>
- * Initial Date:  12.02.2010 <br>
- * @author Stefan
- */
-@Entity(name="homeorgstat")
-@Table(name="o_stat_homeorg")
-public class HomeOrgStat extends PersistentObject {
-
-	private static final long serialVersionUID = 2406231071967248143L;
-	
-	@Id
-	@GeneratedValue(generator = "system-uuid")
-	@GenericGenerator(name = "system-uuid", strategy = "enhanced-sequence", parameters={
-		@Parameter(name="sequence_name", value="hibernate_unique_key"),
-		@Parameter(name="force_table_use", value="true"),
-		@Parameter(name="optimizer", value="legacy-hilo"),
-		@Parameter(name="value_column", value="next_hi"),
-		@Parameter(name="increment_size", value="32767"),
-		@Parameter(name="initial_value", value="32767")
-	})
-	@Column(name="id", nullable=false, unique=true, insertable=true, updatable=false)
-	private Long key;
-	@Column(name="businesspath", nullable=false, unique=false, insertable=true, updatable=true)
-	private String businessPath;
-	@Column(name="homeorg", nullable=false, unique=false, insertable=true, updatable=true)
-	private String homeOrg;
-	@Column(name="value", nullable=false, unique=false, insertable=true, updatable=true)
-	private int value;
-	@Column(name="resid", nullable=false, unique=false, insertable=true, updatable=true)
-	private long resId;
-	
-	public HomeOrgStat(){
-	// for hibernate	
-	}
-	
-	@Override
-	public Long getKey() {
-		return key;
-	}
-	
-	public long getResId() {
-		return resId;
-	}
-	
-	public void setResId(long resId) {
-		this.resId = resId;
-	}
-	
-	public String getBusinessPath() {
-		return businessPath;
-	}
-
-	public void setBusinessPath(String businessPath) {
-		this.businessPath = businessPath;
-	}
-
-	public String getHomeOrg() {
-		return homeOrg;
-	}
-	
-	public void setHomeOrg(String homeOrg) {
-		this.homeOrg = homeOrg;
-	}
-	
-	public int getValue() {
-		return value;
-	}
-	
-	public void setValue(int value) {
-		this.value = value;
-	}
-	
-	@Override
-	public int hashCode() {
-		return getKey() == null ? 39563 : getKey().hashCode();
-	}
-	
-	@Override
-	public boolean equals(Object obj) {
-		if(obj == this) {
-			return true;
-		}
-		if(obj instanceof HomeOrgStat) {
-			HomeOrgStat stat = (HomeOrgStat)obj;
-			return getKey() != null && getKey().equals(stat.getKey());
-		}
-		return super.equals(obj);
-	}
-
-	@Override
-	public boolean equalsByPersistableKey(Persistable persistable) {
-		return equals(persistable);
-	}
-	
-}
diff --git a/src/main/java/org/olat/course/statistic/homeorg/HomeOrgStatisticManager.java b/src/main/java/org/olat/course/statistic/homeorg/HomeOrgStatisticManager.java
deleted file mode 100644
index 0a079f29286..00000000000
--- a/src/main/java/org/olat/course/statistic/homeorg/HomeOrgStatisticManager.java
+++ /dev/null
@@ -1,87 +0,0 @@
-/**
-* OLAT - Online Learning and Training<br>
-* http://www.olat.org
-* <p>
-* Licensed under the Apache License, Version 2.0 (the "License"); <br>
-* you may not use this file except in compliance with the License.<br>
-* You may obtain a copy of the License at
-* <p>
-* http://www.apache.org/licenses/LICENSE-2.0
-* <p>
-* Unless required by applicable law or agreed to in writing,<br>
-* software distributed under the License is distributed on an "AS IS" BASIS, <br>
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br>
-* See the License for the specific language governing permissions and <br>
-* limitations under the License.
-* <p>
-* Copyright (c) since 2004 at Multimedia- & E-Learning Services (MELS),<br>
-* University of Zurich, Switzerland.
-* <hr>
-* <a href="http://www.openolat.org">
-* OpenOLAT - Online Learning and Training</a><br>
-* This file has been modified by the OpenOLAT community. Changes are licensed
-* under the Apache 2.0 license as the original file.
-*/
-
-package org.olat.course.statistic.homeorg;
-
-import java.util.Date;
-import java.util.List;
-
-import org.olat.core.commons.persistence.DBFactory;
-import org.olat.core.gui.UserRequest;
-import org.olat.core.gui.components.table.ColumnDescriptor;
-import org.olat.core.gui.components.table.DefaultColumnDescriptor;
-import org.olat.core.manager.BasicManager;
-import org.olat.course.ICourse;
-import org.olat.course.statistic.IStatisticManager;
-import org.olat.course.statistic.StatisticDisplayController;
-import org.olat.course.statistic.StatisticResult;
-import org.olat.course.statistic.TotalAwareColumnDescriptor;
-
-/**
- * Implementation of the IStatisticManager for 'home organisation' statistic
- * <P>
- * Initial Date:  12.02.2010 <br>
- * @author Stefan
- */
-public class HomeOrgStatisticManager extends BasicManager implements IStatisticManager {
-
-	@Override
-	public StatisticResult generateStatisticResult(UserRequest ureq, ICourse course, long courseRepositoryEntryKey) {
-		String q = "select businessPath,homeOrg,value from org.olat.course.statistic.homeorg.HomeOrgStat sv where sv.resId=:resId";
-		List<Object[]> raw = DBFactory.getInstance().getCurrentEntityManager()
-				.createQuery(q, Object[].class)
-				.setParameter("resId", courseRepositoryEntryKey)
-				.getResultList();
-		return new StatisticResult(course, raw);
-	}
-	
-	@Override
-	public ColumnDescriptor createColumnDescriptor(UserRequest ureq, int column, String headerId) {
-		if (column==0) {
-			return new DefaultColumnDescriptor("stat.table.header.node", 0, null, ureq.getLocale());
-		}
-
-/*		if (headerId!=null) {
-			Translator translator = Util.createPackageTranslator(ShibbolethModule.class, ureq.getLocale());
-			if (translator!=null) {
-				String newHeaderId = translator.translate("swissEduPersonHomeOrganization."+headerId);
-				if (newHeaderId!=null && !newHeaderId.startsWith(Translator.NO_TRANSLATION_ERROR_PREFIX)) {
-					headerId = newHeaderId;
-				}
-			}
-		}*/
-		
-		TotalAwareColumnDescriptor cd = new TotalAwareColumnDescriptor(headerId, column, 
-				StatisticDisplayController.CLICK_TOTAL_ACTION+column, ureq.getLocale(), ColumnDescriptor.ALIGNMENT_RIGHT);
-		cd.setTranslateHeaderKey(false);
-		return cd;
-	}
-
-	@Override
-	public StatisticResult generateStatisticResult(UserRequest ureq, ICourse course, long courseRepositoryEntryKey, Date fromDate, Date toDate) {
-		return generateStatisticResult(ureq, course, courseRepositoryEntryKey);
-	}
-
-}
diff --git a/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_ar.properties b/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_ar.properties
deleted file mode 100644
index 8723dcd03fd..00000000000
--- a/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_ar.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Mon Mar 08 13:26:39 CET 2010
-
-
-
-menu.createstatfile=\u0628\u0627\u0644\u0645\u0624\u0633\u0633\u0629
-menu.createstatfile.alt=\u0639\u0631\u0636 \u0627\u0644\u0625\u062D\u0635\u0627\u0626\u064A\u0627\u062A \u0645\u0631\u062A\u0628\u0629 \u0637\u0628\u0642\u0627\u064B \u0644\u0644\u0645\u0624\u0633\u0633\u0629
-stat.table.header.node=\u0639\u0646\u0635\u0631 \u0627\u0644\u0645\u0642\u0631\u0631
-stat.table.header.total=\u0627\u0644\u0645\u062C\u0645\u0648\u0639
-statistic.chart.intro=\u064A\u0639\u0631\u0636 \u0647\u0630\u0627 \u0627\u0644\u0645\u062E\u0637\u0637 \u0643\u0644 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A \u0628\u0646\u0627\u0621\u0627\u064B \u0639\u0644\u0649 \u0643\u0644 \u0628\u064A\u0627\u0646\u0627\u062A \u0627\u0644\u0645\u0642\u0631\u0631 \u0627\u0644\u0645\u062A\u0627\u062D\u0629 (\u0645\u0646\u0630 {1}) \u0645\u0631\u062A\u0628\u0629 \u0637\u0628\u0642\u0627\u064B \u0644\u0644\u0645\u0624\u0633\u0633\u0629.
-statistic.chart.pernode.intro=.{0} \u064A\u0639\u0631\u0636 \u0647\u0630\u0627 \u0627\u0644\u0645\u062E\u0637\u0637 \u0643\u0644 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A \u0644\u0639\u0646\u0627\u0635\u0631 \u0627\u0644\u0645\u0642\u0631\u0631 \u0645\u0646 \u062E\u0644\u0627\u0644 \u0627\u0644\u0623\u0634\u062E\u0627\u0635 \u0627\u0644\u062A\u0627\u0628\u0639\u064A\u0646 \u0644\u0644\u0645\u0624\u0633\u0633\u0629
-statistic.chart.pernode.total.intro=.({0} \u064A\u0639\u0631\u0636 \u0647\u0630\u0627 \u0627\u0644\u0645\u062E\u0637\u0637 \u0643\u0644 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A \u0644\u0639\u0646\u0627\u0635\u0631 \u0627\u0644\u0645\u0642\u0631\u0631 \u0628\u0646\u0627\u0621\u0627\u064B \u0639\u0644\u0649 \u0643\u0644 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A \u0627\u0644\u0645\u062A\u0627\u062D\u0629 (\u0645\u0646\u0630
-statistic.intro=\u064A\u0639\u0631\u0636 \u0647\u0630\u0627 \u0627\u0644\u0645\u062E\u0637\u0637 \u0643\u0644 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A \u0644\u0639\u0646\u0627\u0635\u0631 \u0627\u0644\u0645\u0642\u0631\u0631 \u0628\u0646\u0627\u0621\u0627\u064B \u0639\u0644\u0649 \u0643\u0644 \u0628\u064A\u0627\u0646\u0627\u062A \u0627\u0644\u0645\u0642\u0631\u0631 \u0627\u0644\u0645\u062A\u0627\u062D\u0629 (\u0645\u0646\u0630 {1}) \u0645\u0631\u062A\u0628\u0629 \u0637\u0628\u0642\u0627\u064B \u0644\u0644\u0645\u0624\u0633\u0633\u0629.
-statistic.title=\u0627\u0644\u0625\u062D\u0635\u0627\u0626\u064A\u0627\u062A \u0645\u0631\u062A\u0628\u0629 \u0637\u0628\u0642\u0627\u064B \u0644\u0644\u0645\u0624\u0633\u0633\u0629
diff --git a/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_de.properties
deleted file mode 100644
index 94d933f6162..00000000000
--- a/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_de.properties
+++ /dev/null
@@ -1,14 +0,0 @@
-menu.createstatfile=Nach Organisation
-menu.createstatfile.alt=Statistik gruppiert nach Organisation anzeigen
-
-statistic.title=Statistik gruppiert nach Organisation
-statistic.intro=Diese Statistik zeigt alle Zugriffe auf Kursbausteine basierend auf allen verf\u00FCgbaren Kursdaten (seit {0}) gruppiert nach Organisation.
-statistic.chart.intro=Diese Grafik zeigt alle Zugriffe {0} basierend auf allen verf\u00FCgbaren Kursdaten (seit {1}) gruppiert nach Organisation.
-statistic.chart.pernode.intro=Diese Grafik zeigt alle Zugriffe auf die Kursbausteine von Personen herkommend von der Organisation {0}.
-statistic.chart.pernode.total.intro=Diese Grafik zeigt alle Zugriffe auf die Kursbausteine basierend auf allen verf\u00fcgbaren Kursdaten (seit {0}).
-
-
-stat.table.header.node=Kursbaustein
-stat.table.header.total=Total
-
-
diff --git a/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_el.properties b/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_el.properties
deleted file mode 100644
index 73dd1458231..00000000000
--- a/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_el.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Fri Mar 12 15:36:35 CET 2010
-
-
-
-menu.createstatfile=\u0391\u03BD\u03AC \u03BF\u03C1\u03B3\u03B1\u03BD\u03B9\u03C3\u03BC\u03CC
-menu.createstatfile.alt=\u03A0\u03C1\u03BF\u03B2\u03BF\u03BB\u03AE \u03C3\u03C4\u03B1\u03C4\u03B9\u03C3\u03C4\u03B9\u03BA\u03CE\u03BD \u03C4\u03B1\u03BE\u03B9\u03BD\u03BF\u03BC\u03B7\u03BC\u03AD\u03BD\u03C9\u03BD \u03B1\u03BD\u03AC \u03BF\u03C1\u03B3\u03B1\u03BD\u03B9\u03C3\u03BC\u03CC
-stat.table.header.node=\u03A3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF \u03BC\u03B1\u03B8\u03AE\u03BC\u03B1\u03C4\u03BF\u03C2
-stat.table.header.total=\u03A3\u03CD\u03BD\u03BF\u03BB\u03BF
-statistic.chart.intro=\u0391\u03C5\u03C4\u03CC \u03C4\u03BF \u03B4\u03B9\u03AC\u03B3\u03C1\u03B1\u03BC\u03BC\u03B1 \u03B4\u03B5\u03AF\u03C7\u03BD\u03B5\u03B9 \u03CC\u03BB\u03B5\u03C2 \u03C4\u03B9\u03C2 \u03C0\u03C1\u03BF\u03C3\u03B2\u03AC\u03C3\u03B5\u03B9\u03C2 {0} \u03C0\u03BF\u03C5 \u03B2\u03B1\u03C3\u03AF\u03B6\u03BF\u03BD\u03C4\u03B1\u03B9 \u03C3\u03B5 \u03CC\u03BB\u03B1 \u03C4\u03B1 \u03B4\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03B1 \u03BC\u03B1\u03B8\u03B7\u03BC\u03AC\u03C4\u03C9\u03BD \u03C0\u03BF\u03C5 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03B4\u03B9\u03B1\u03B8\u03AD\u03C3\u03B9\u03BC\u03B1 (\u03B1\u03C0\u03CC \u03C4\u03B9\u03C2 {1}) \u03C4\u03B1\u03BE\u03B9\u03BD\u03BF\u03BC\u03B7\u03BC\u03AD\u03BD\u03B1 \u03B1\u03BD\u03AC \u03BF\u03C1\u03B3\u03B1\u03BD\u03B9\u03C3\u03BC\u03CC.
-statistic.chart.pernode.intro=\u0391\u03C5\u03C4\u03CC \u03C4\u03BF \u03B4\u03B9\u03AC\u03B3\u03C1\u03B1\u03BC\u03BC\u03B1 \u03B4\u03B5\u03AF\u03C7\u03BD\u03B5\u03B9 \u03CC\u03BB\u03B5\u03C2 \u03C4\u03B9\u03C2 \u03C0\u03C1\u03BF\u03C3\u03B2\u03AC\u03C3\u03B5\u03B9\u03C2 \u03C3\u03B5 \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1 \u03BC\u03B1\u03B8\u03B7\u03BC\u03AC\u03C4\u03C9\u03BD \u03B1\u03BD\u03AC \u03AC\u03C4\u03BF\u03BC\u03BF \u03C0\u03BF\u03C5 \u03C3\u03C7\u03B5\u03C4\u03AF\u03B6\u03B5\u03C4\u03B1\u03B9 \u03BC\u03B5 \u03C4\u03BF\u03BD \u03BF\u03C1\u03B3\u03B1\u03BD\u03B9\u03C3\u03BC\u03CC {0}.
-statistic.chart.pernode.total.intro=\u0391\u03C5\u03C4\u03CC \u03C4\u03BF \u03B4\u03B9\u03AC\u03B3\u03C1\u03B1\u03BC\u03BC\u03B1 \u03B4\u03B5\u03AF\u03C7\u03BD\u03B5\u03B9 \u03CC\u03BB\u03B5\u03C2 \u03C4\u03B9\u03C2 \u03C0\u03C1\u03BF\u03C3\u03B2\u03AC\u03C3\u03B5\u03B9\u03C2 \u03C3\u03B5 \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1 \u03BC\u03B1\u03B8\u03B7\u03BC\u03AC\u03C4\u03C9\u03BD \u03C0\u03BF\u03C5 \u03B2\u03B1\u03C3\u03AF\u03B6\u03BF\u03BD\u03C4\u03B1\u03B9 \u03C3\u03B5 \u03CC\u03BB\u03B1 \u03C4\u03B1 \u03B4\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03B1 \u03BC\u03B1\u03B8\u03B7\u03BC\u03AC\u03C4\u03C9\u03BD \u03C0\u03BF\u03C5 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03B4\u03B9\u03B1\u03B8\u03AD\u03C3\u03B9\u03BC\u03B1 (\u03B1\u03C0\u03CC \u03C4\u03B9\u03C2 {0}).
-statistic.intro=\u0391\u03C5\u03C4\u03AE \u03B7 \u03C3\u03C4\u03B1\u03C4\u03B9\u03C3\u03C4\u03B9\u03BA\u03AE \u03B4\u03B5\u03AF\u03C7\u03BD\u03B5\u03B9 \u03CC\u03BB\u03B5\u03C2 \u03C4\u03B9\u03C2 \u03C0\u03C1\u03BF\u03C3\u03B2\u03AC\u03C3\u03B5\u03B9\u03C2 \u03C3\u03B5 \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1 \u03BC\u03B1\u03B8\u03B7\u03BC\u03AC\u03C4\u03C9\u03BD \u03C0\u03BF\u03C5 \u03B2\u03B1\u03C3\u03AF\u03B6\u03BF\u03BD\u03C4\u03B1\u03B9 \u03C3\u03B5 \u03CC\u03BB\u03B1 \u03C4\u03B1 \u03B4\u03B9\u03B1\u03B8\u03AD\u03C3\u03B9\u03BC\u03B1 \u03B4\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03B1 \u03BC\u03B1\u03B8\u03B7\u03BC\u03AC\u03C4\u03C9\u03BD (\u03B1\u03C0\u03CC \u03C4\u03B9\u03C2 {0}) \u03C4\u03B1\u03BE\u03B9\u03BD\u03BF\u03BC\u03B7\u03BC\u03AD\u03BD\u03B1 \u03B1\u03BD\u03AC \u03BF\u03C1\u03B3\u03B1\u03BD\u03B9\u03C3\u03BC\u03CC.
-statistic.title=\u03A3\u03C4\u03B1\u03C4\u03B9\u03C3\u03C4\u03B9\u03BA\u03AC \u03C4\u03B1\u03BE\u03B9\u03BD\u03BF\u03BC\u03B7\u03BC\u03AD\u03BD\u03B1 \u03B1\u03BD\u03AC \u03BF\u03C1\u03B3\u03B1\u03BD\u03B9\u03C3\u03BC\u03CC
diff --git a/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_en.properties
deleted file mode 100644
index a7ac7cc60ce..00000000000
--- a/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_en.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Fri Jan 21 16:08:51 CET 2011
-
-
-
-menu.createstatfile=By organization
-menu.createstatfile.alt=Show statistics sorted by organization
-stat.table.header.node=Course element
-stat.table.header.total=Total
-statistic.chart.intro=This chart shows all accesses {0} based on the entire course data available (since {1}) sorted by organization.
-statistic.chart.pernode.intro=This chart shows all accesses to course elements by persons affiliated to the organization {0}.
-statistic.chart.pernode.total.intro=This chart shows all accesses to course elements based on the entire course data available (since {0}).
-statistic.intro=This statistic shows all accesses to course elements based on the entire course data available (since {0}) sorted by organization.
-statistic.title=Statistics sorted by organization
diff --git a/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_fr.properties
deleted file mode 100644
index da49c6f58a6..00000000000
--- a/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_fr.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Fri Aug 27 13:20:29 CEST 2010
-
-
-
-menu.createstatfile=Par organisation
-menu.createstatfile.alt=Montrer les statistiques group\u00E9es par organisation
-stat.table.header.node=El\u00E9ment de cours
-stat.table.header.total=Total
-statistic.chart.intro=Ce graphique montre tous les acc\u00E8s {0} bas\u00E9 sur toutes les donn\u00E9es de cours disponibles (depuis {1}) group\u00E9 par organisation.
-statistic.chart.pernode.intro=Ce graphique montre tous les acc\u00E9s sur les \u00E9l\u00E9ments de cours de personnes issues de l'organisation {0} .
-statistic.chart.pernode.total.intro=Ce graphique montre tous les acc\u00E9s sur les \u00E9l\u00E9ments de cours bas\u00E9 sur tous les donn\u00E9es de cours (depuis {0}).
-statistic.intro=Ces statistiques montrent tous les acc\u00E8s sur des \u00E9l\u00E9ments de cours bas\u00E9 sur toutes les donn\u00E9es de cours disponibles (depuis {0}) group\u00E9 par organisation.
-statistic.title=Statistiques group\u00E9es par organisation
diff --git a/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_it.properties b/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_it.properties
deleted file mode 100644
index 1b92a41c06c..00000000000
--- a/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_it.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Mon Aug 23 18:52:52 CEST 2010
-
-
-
-menu.createstatfile=Per organizzazione
-menu.createstatfile.alt=Mostrare statistiche raggruppate per organizzazione
-stat.table.header.node=Elemento di corso
-stat.table.header.total=Totale
-statistic.chart.intro=Questa grafica mostra tutti i clic {0} sulla base di tutti i dati di corso disponibili (dal {1}) raggruppati per organizzazione.
-statistic.chart.pernode.intro=Questa grafica mostra tutti i clic sugli elementi di corso di persone appartenenti all'organizzazione {0}.
-statistic.chart.pernode.total.intro=Questa grafica mostra tutti i clic sugli elementi di corso sulla base di tutti i dati di corso disponibili (dal {0}).
-statistic.intro=Questa grafica mostra tutti i clic sugli elementi di corso sulla base di tutti i dati di corso disponibili (dal {0}) raggruppati per organizzazione.
-statistic.title=Statistica raggruppata per organizzazione
diff --git a/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_jp.properties b/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_jp.properties
deleted file mode 100644
index b5b9692aeea..00000000000
--- a/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_jp.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Wed Aug 18 00:52:11 CEST 2010
-
-
-
-menu.createstatfile=\u7D44\u7E54\u5358\u4F4D
-menu.createstatfile.alt=\u7D44\u7E54\u3067\u30BD\u30FC\u30C8\u3055\u308C\u305F\u7D71\u8A08\u3092\u8868\u793A\u3059\u308B
-stat.table.header.node=\u30B3\u30FC\u30B9\u30A8\u30EC\u30E1\u30F3\u30C8
-stat.table.header.total=\u5408\u8A08
-statistic.chart.intro=\u3053\u306E\u30C1\u30E3\u30FC\u30C8\u3067\u306F\u5229\u7528\u53EF\u80FD\u306A ({1} \u4EE5\u6765\u306E) \u3059\u3079\u3066\u306E\u30B3\u30FC\u30B9\u30C7\u30FC\u30BF\u3092\u57FA\u306B\u3001{0} \u306B\u5BFE\u3059\u308B\u3059\u3079\u3066\u306E\u30A2\u30AF\u30BB\u30B9\u3092\u7D44\u7E54\u9806\u306B\u8868\u793A\u3057\u307E\u3059\u3002
-statistic.chart.pernode.intro=\u3053\u306E\u30C1\u30E3\u30FC\u30C8\u3067\u306F\u7D44\u7E54 {0} \u306B\u95A2\u9023\u3059\u308B\u30E6\u30FC\u30B6\u306B\u3088\u308B\u30B3\u30FC\u30B9\u30A8\u30EC\u30E1\u30F3\u30C8\u3078\u306E\u3059\u3079\u3066\u306E\u30A2\u30AF\u30BB\u30B9\u3092\u8868\u793A\u3057\u307E\u3059\u3002
-statistic.chart.pernode.total.intro=\u3053\u306E\u30C1\u30E3\u30FC\u30C8\u3067\u306F\u5229\u7528\u53EF\u80FD\u306A ({0} \u4EE5\u6765\u306E) \u3059\u3079\u3066\u306E\u30B3\u30FC\u30B9\u30C7\u30FC\u30BF\u3092\u57FA\u306B\u3001\u30B3\u30FC\u30B9\u30A8\u30EC\u30E1\u30F3\u30C8\u306B\u5BFE\u3059\u308B\u3059\u3079\u3066\u306E\u30A2\u30AF\u30BB\u30B9\u3092\u8868\u793A\u3057\u307E\u3059\u3002
-statistic.intro=\u3053\u306E\u7D71\u8A08\u3067\u306F\u5229\u7528\u53EF\u80FD\u306A ({0} \u4EE5\u6765\u306E) \u3059\u3079\u3066\u306E\u30B3\u30FC\u30B9\u30C7\u30FC\u30BF\u3092\u57FA\u306B\u3001\u30B3\u30FC\u30B9\u30A8\u30EC\u30E1\u30F3\u30C8\u306B\u5BFE\u3059\u308B\u3059\u3079\u3066\u306E\u30A2\u30AF\u30BB\u30B9\u3092\u7D44\u7E54\u9806\u306B\u8868\u793A\u3057\u307E\u3059\u3002
-statistic.title=\u7D44\u7E54\u9806\u306E\u7D71\u8A08
diff --git a/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_nl_NL.properties b/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_nl_NL.properties
deleted file mode 100644
index c4a3174878e..00000000000
--- a/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_nl_NL.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Thu Sep 08 16:42:45 CEST 2011
-
-
-
-menu.createstatfile=Bij organisaties
-menu.createstatfile.alt=Toon statistieken gesorteerd door organisaties
-stat.table.header.node=Cursuselement
-stat.table.header.total=Totaal
-statistic.chart.intro=Deze grafiek toont all toegangen {0} gebaseerd op de volledige cursusdata beschikbaar (sinds {1}) en gesorteerd door organisaties.
-statistic.chart.pernode.intro=Deze grafiek toont all toegangen tot cursuselementen door personen aangesloten bij een organisatie {0}.
-statistic.chart.pernode.total.intro=Deze grafiek toont all toegangen tot cursuselementen gebaseerd op volledig beschikbare cursusdata (sinds {0}).
-statistic.intro=Deze statistiek toont alle toegangen tot cursuselementen gebaseerd op volledige cursusdata beschikbaar (sinds {0}) en gesorteerd door organisaties.
-statistic.title=Statistieken gesorteerd door organisaties
diff --git a/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_pl.properties b/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_pl.properties
deleted file mode 100644
index 06c0df1b06d..00000000000
--- a/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_pl.properties
+++ /dev/null
@@ -1,11 +0,0 @@
-#Sat Mar 13 00:51:55 CET 2010
-
-menu.createstatfile=Dla organizacji
-menu.createstatfile.alt=Poka\u017C statystyki posortowane wed\u0142ug organizacji
-stat.table.header.node=Element kursu
-stat.table.header.total=Og\u00F3\u0142em
-statistic.chart.intro=Ten wykres przedstawia wszystkie zapytania {0}, bazuj\u0105c na wszystkich dost\u0119pnych danych kursu (od {0}), posortowane wed\u0142ug organizacji.
-statistic.chart.pernode.intro=Ten wykres przedstawia wszystkie zapytania do element\u00F3w kursu, dla os\u00F3b powi\u0105zanych z organizacj\u0105 {0}.
-statistic.chart.pernode.total.intro=Ten wykres przedstawia wszystkie zapytania do element\u00F3w kursu, bazuj\u0105c na wszystkich dost\u0119pnych danych kursu (od {0}).
-statistic.intro=Te statystyki przedstawiaj\u0105 wszystkie zapytania do element\u00F3w kursu, bazuj\u0105c na wszystkich dost\u0119pnych danych kursu (od {0}), posortowane wed\u0142ug organizacji.
-statistic.title=Statystyki posortowane wed\u0142ug organizacji
diff --git a/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_pt_BR.properties b/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_pt_BR.properties
deleted file mode 100644
index baa9b43712e..00000000000
--- a/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_pt_BR.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Sat Jun 05 16:52:35 CEST 2010
-
-
-
-menu.createstatfile=Por organiza\u00E7\u00E3o
-menu.createstatfile.alt=Ver as estat\u00EDsticas classificadas por organiza\u00E7\u00E3o
-stat.table.header.node=Elemento do Curso
-stat.table.header.total=Total
-statistic.chart.intro=Este gr\u00E1fico mostra todos os acessos {0} baseados em todos os dados do curso dispon\u00EDvel (desde {1}) ordenados pela organiza\u00E7\u00E3o.
-statistic.chart.pernode.intro=Este gr\u00E1fico mostra todos os acessos a elementos do curso por pessoas filiadas na organiza\u00E7\u00E3o {0}.
-statistic.chart.pernode.total.intro=Este gr\u00E1fico mostra todos os acessos a elementos do curso com base em todos os dados dispon\u00EDveis (desde {0}).
-statistic.intro=Esta estat\u00EDstica mostra todos os acessos a elementos do curso com base em todos os dados dispon\u00EDveis (desde {0}) ordenados pela organiza\u00E7\u00E3o.
-statistic.title=Estat\u00EDsticas ordenadas pela organiza\u00E7\u00E3o
diff --git a/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_zh_CN.properties b/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_zh_CN.properties
deleted file mode 100644
index f74753c407c..00000000000
--- a/src/main/java/org/olat/course/statistic/homeorg/_i18n/LocalStrings_zh_CN.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Thu Mar 11 05:22:55 CET 2010
-
-
-
-menu.createstatfile=\u901A\u8FC7\u673A\u6784
-menu.createstatfile.alt=\u663E\u793A\u673A\u6784\u6240\u5B58\u50A8\u7684\u7EDF\u8BA1\u6570\u636E
-stat.table.header.node=\u5B66\u7A0B\u5143\u7D20
-stat.table.header.total=\u603B\u5171
-statistic.chart.intro=\u57FA\u4E8E\u6240\u6709\u6709\u6548\u7684\u5B66\u7A0B\u6570\u636E(\u81EA\u4ECE{1}\u8D77),\u6B64\u56FE\u8868\u663E\u793A\u4E86\u673A\u6784\u5B58\u50A8\u7684\u6240\u6709\u8BBF\u95EE\u8BB0\u5F55{0}.
-statistic.chart.pernode.intro=\u6B64\u56FE\u8868\u663E\u793A\u4E86\u5C5E\u4E8E{0}\u673A\u6784\u7684\u5B66\u7A0B\u5143\u7D20\u7684\u6240\u6709\u8BBF\u95EE\u8BB0\u5F55\u3002
-statistic.chart.pernode.total.intro=\u57FA\u4E8E\u6240\u6709\u6709\u6548\u7684\u5B66\u7A0B\u6570\u636E(\u81EA\u4ECE{0}\u8D77)\uFF0C\u6B64\u56FE\u8868\u663E\u793A\u5B66\u7A0B\u5143\u7D20\u7684\u6240\u6709\u8BBF\u95EE\u8BB0\u5F55\u3002
-statistic.intro=\u57FA\u4E8E\u6240\u6709\u6709\u6548\u7684\u5B66\u7A0B\u6570\u636E\uFF08\u81EA\u4ECE{0}\u8D77\uFF09\uFF0C\u6B64\u7EDF\u8BA1\u663E\u793A\u4E86\u5B58\u50A8\u4E8E\u673A\u6784\u4E2D\u7684\u5B66\u7A0B\u5143\u7D20\u7684\u6240\u6709\u8BBF\u95EE\u8BB0\u5F55\u3002
-statistic.title=\u5B58\u50A8\u4E8E\u673A\u6784\u4E2D\u7684\u7EDF\u8BA1\u6570\u636E
diff --git a/src/main/java/org/olat/course/statistic/orgtype/OrgTypeStat.java b/src/main/java/org/olat/course/statistic/orgtype/OrgTypeStat.java
deleted file mode 100644
index 1bea67aac77..00000000000
--- a/src/main/java/org/olat/course/statistic/orgtype/OrgTypeStat.java
+++ /dev/null
@@ -1,135 +0,0 @@
-/**
-* OLAT - Online Learning and Training<br>
-* http://www.olat.org
-* <p>
-* Licensed under the Apache License, Version 2.0 (the "License"); <br>
-* you may not use this file except in compliance with the License.<br>
-* You may obtain a copy of the License at
-* <p>
-* http://www.apache.org/licenses/LICENSE-2.0
-* <p>
-* Unless required by applicable law or agreed to in writing,<br>
-* software distributed under the License is distributed on an "AS IS" BASIS, <br>
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br>
-* See the License for the specific language governing permissions and <br>
-* limitations under the License.
-* <p>
-* Copyright (c) since 2004 at Multimedia- & E-Learning Services (MELS),<br>
-* University of Zurich, Switzerland.
-* <hr>
-* <a href="http://www.openolat.org">
-* OpenOLAT - Online Learning and Training</a><br>
-* This file has been modified by the OpenOLAT community. Changes are licensed
-* under the Apache 2.0 license as the original file.  
-* <p>
-*/  
-
-package org.olat.course.statistic.orgtype;
-
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.Id;
-import javax.persistence.Table;
-
-import org.hibernate.annotations.GenericGenerator;
-import org.hibernate.annotations.Parameter;
-import org.olat.core.id.Persistable;
-
-/**
- * Hibernate object representing an entry in the o_stat_orgtype table.
- * <P>
- * Initial Date:  12.02.2010 <br>
- * @author Stefan
- */
-@Entity(name="orgtypestat")
-@Table(name="o_stat_orgtype")
-public class OrgTypeStat implements Persistable {
-
-	private static final long serialVersionUID = 2407728544985519049L;
-	
-	@Id
-	@GeneratedValue(generator = "system-uuid")
-	@GenericGenerator(name = "system-uuid", strategy = "enhanced-sequence", parameters={
-		@Parameter(name="sequence_name", value="hibernate_unique_key"),
-		@Parameter(name="force_table_use", value="true"),
-		@Parameter(name="optimizer", value="legacy-hilo"),
-		@Parameter(name="value_column", value="next_hi"),
-		@Parameter(name="increment_size", value="32767"),
-		@Parameter(name="initial_value", value="32767")
-	})
-	@Column(name="id", nullable=false, unique=true, insertable=true, updatable=false)
-	private Long key;
-	@Column(name="businesspath", nullable=false, unique=false, insertable=true, updatable=true)
-	private String businessPath;
-	@Column(name="orgtype", nullable=false, unique=false, insertable=true, updatable=true)
-	private String orgType;
-	@Column(name="value", nullable=false, unique=false, insertable=true, updatable=true)
-	private int value;
-	@Column(name="resid", nullable=false, unique=false, insertable=true, updatable=true)
-	private long resId;
-	
-	public OrgTypeStat(){
-	// for hibernate	
-	}
-	
-	@Override
-	public Long getKey() {
-		return key;
-	}
-	
-	public long getResId() {
-		return resId;
-	}
-	
-	public void setResId(long resId) {
-		this.resId = resId;
-	}
-	
-	public String getBusinessPath() {
-		return businessPath;
-	}
-
-	public void setBusinessPath(String businessPath) {
-		this.businessPath = businessPath;
-	}
-
-	public String getOrgType() {
-		return orgType;
-	}
-	
-	public void setOrgType(String orgType) {
-		this.orgType = orgType;
-	}
-	
-	public int getValue() {
-		return value;
-	}
-	
-	public void setValue(int value) {
-		this.value = value;
-	}
-	
-	@Override
-	public int hashCode() {
-		return getKey() == null ? 39563 : getKey().hashCode();
-	}
-	
-	@Override
-	public boolean equals(Object obj) {
-		if(obj == this) {
-			return true;
-		}
-		if(obj instanceof OrgTypeStat) {
-			OrgTypeStat stat = (OrgTypeStat)obj;
-			return getKey() != null && getKey().equals(stat.getKey());
-		}
-		return super.equals(obj);
-	}
-
-	@Override
-	public boolean equalsByPersistableKey(Persistable persistable) {
-		return equals(persistable);
-	}
-	
-}
diff --git a/src/main/java/org/olat/course/statistic/orgtype/OrgTypeStatisticManager.java b/src/main/java/org/olat/course/statistic/orgtype/OrgTypeStatisticManager.java
deleted file mode 100644
index 7e9c037391c..00000000000
--- a/src/main/java/org/olat/course/statistic/orgtype/OrgTypeStatisticManager.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/**
-* OLAT - Online Learning and Training<br>
-* http://www.olat.org
-* <p>
-* Licensed under the Apache License, Version 2.0 (the "License"); <br>
-* you may not use this file except in compliance with the License.<br>
-* You may obtain a copy of the License at
-* <p>
-* http://www.apache.org/licenses/LICENSE-2.0
-* <p>
-* Unless required by applicable law or agreed to in writing,<br>
-* software distributed under the License is distributed on an "AS IS" BASIS, <br>
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br>
-* See the License for the specific language governing permissions and <br>
-* limitations under the License.
-* <p>
-* Copyright (c) since 2004 at Multimedia- & E-Learning Services (MELS),<br>
-* University of Zurich, Switzerland.
-* <hr>
-* <a href="http://www.openolat.org">
-* OpenOLAT - Online Learning and Training</a><br>
-* This file has been modified by the OpenOLAT community. Changes are licensed
-* under the Apache 2.0 license as the original file.
-*/
-
-package org.olat.course.statistic.orgtype;
-
-import java.util.Date;
-import java.util.List;
-
-import org.olat.core.commons.persistence.DBFactory;
-import org.olat.core.gui.UserRequest;
-import org.olat.core.gui.components.table.ColumnDescriptor;
-import org.olat.core.gui.components.table.DefaultColumnDescriptor;
-import org.olat.core.gui.translator.Translator;
-import org.olat.core.util.Util;
-import org.olat.course.ICourse;
-import org.olat.course.statistic.IStatisticManager;
-import org.olat.course.statistic.StatisticDisplayController;
-import org.olat.course.statistic.StatisticResult;
-import org.olat.course.statistic.TotalAwareColumnDescriptor;
-import org.olat.shibboleth.ShibbolethModule;
-
-/**
- * Implementation of the IStatisticManager for 'organisation type' statistic
- * <P>
- * Initial Date:  12.02.2010 <br>
- * @author Stefan
- */
-public class OrgTypeStatisticManager implements IStatisticManager {
-
-	@Override
-	public StatisticResult generateStatisticResult(UserRequest ureq, ICourse course, long courseRepositoryEntryKey) {
-		String q = "select businessPath,orgType,value from org.olat.course.statistic.orgtype.OrgTypeStat sv where sv.resId=:resId";
-		List<Object[]> raw = DBFactory.getInstance().getCurrentEntityManager()
-				.createQuery(q, Object[].class)
-				.setParameter("resId", courseRepositoryEntryKey)
-				.getResultList();
-		return new StatisticResult(course, raw);
-	}
-	
-	@Override
-	public ColumnDescriptor createColumnDescriptor(UserRequest ureq, int column, String headerId) {
-		if (column==0) {
-			return new DefaultColumnDescriptor("stat.table.header.node", 0, null, ureq.getLocale());
-		}
-		
-		if (headerId!=null) {
-			Translator translator = Util.createPackageTranslator(ShibbolethModule.class, ureq.getLocale());
-			if (translator!=null) {
-				String newHeaderId = translator.translate("swissEduPersonHomeOrganizationType."+headerId);
-				if (newHeaderId!=null && !newHeaderId.startsWith(Translator.NO_TRANSLATION_ERROR_PREFIX)) {
-					headerId = newHeaderId;
-				}
-			}
-		}
-		
-		TotalAwareColumnDescriptor cd = new TotalAwareColumnDescriptor(headerId, column, 
-				StatisticDisplayController.CLICK_TOTAL_ACTION+column, ureq.getLocale(), ColumnDescriptor.ALIGNMENT_RIGHT);	
-		cd.setTranslateHeaderKey(false);
-		return cd;
-	}
-
-	@Override
-	public StatisticResult generateStatisticResult(UserRequest ureq, ICourse course, long courseRepositoryEntryKey, Date fromDate, Date toDate) {
-		return generateStatisticResult(ureq, course, courseRepositoryEntryKey);
-	}
-
-}
diff --git a/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_ar.properties b/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_ar.properties
deleted file mode 100644
index 344785e3729..00000000000
--- a/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_ar.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Mon Mar 08 13:39:16 CET 2010
-
-
-
-menu.createstatfile=\u0644\u0643\u0644 \u0646\u0648\u0639 \u0645\u0624\u0633\u0633\u0629
-menu.createstatfile.alt=\u0639\u0631\u0636 \u0627\u0644\u0625\u062D\u0635\u0627\u0626\u064A\u0627\u062A \u0637\u0628\u0642\u0627\u064B \u0644\u0646\u0648\u0639 \u0627\u0644\u0645\u0624\u0633\u0633\u0629
-stat.table.header.node=\u0639\u0646\u0635\u0631 \u0627\u0644\u0645\u0642\u0631\u0631
-stat.table.header.total=\u0627\u0644\u0645\u062C\u0645\u0648\u0639
-statistic.chart.intro=\u064A\u0639\u0631\u0636 \u0647\u0630\u0627 \u0627\u0644\u0645\u062E\u0637\u0637 \u0643\u0644 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A {0} \u0628\u0646\u0627\u0621\u0627\u064B \u0639\u0644\u0649 \u0643\u0644 \u0628\u064A\u0627\u0646\u0627\u062A \u0627\u0644\u0645\u0642\u0631\u0631 \u0627\u0644\u0645\u062A\u0627\u062D\u0629 (\u0645\u0646\u0630 {1}) \u0645\u0631\u062A\u0628\u0629 \u0637\u0628\u0642\u0627\u064B \u0644\u0646\u0648\u0639 \u0627\u0644\u0645\u0624\u0633\u0633\u0629.
-statistic.chart.pernode.intro=.<i>{0}</i> \u064A\u0639\u0631\u0636 \u0647\u0630\u0627 \u0627\u0644\u0645\u062E\u0637\u0637 \u0643\u0644 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A \u0644\u0639\u0646\u0627\u0635\u0631 \u0627\u0644\u0645\u0642\u0631\u0631 \u0628\u0648\u0627\u0633\u0637\u0629 \u0627\u0644\u0623\u0634\u062E\u0627\u0635 \u0627\u0644\u062A\u0627\u0628\u0639\u064A\u0646 \u0644\u0646\u0648\u0639 \u0627\u0644\u0645\u0624\u0633\u0633\u0629
-statistic.chart.pernode.total.intro=\u064A\u0639\u0631\u0636 \u0647\u0630\u0627 \u0627\u0644\u0645\u062E\u0637\u0637 \u0643\u0644 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A \u0644\u0639\u0646\u0627\u0635\u0631 \u0627\u0644\u0645\u0642\u0631\u0631 \u0628\u0646\u0627\u0621\u0627\u064B \u0639\u0644\u0649 \u0643\u0644 \u0628\u064A\u0627\u0646\u0627\u062A \u0627\u0644\u0645\u0642\u0631\u0631 \u0627\u0644\u0645\u062A\u0627\u062D\u0629 (\u0645\u0646\u0630 {0}).
-statistic.intro=\u064A\u0639\u0631\u0636 \u0647\u0630\u0627 \u0627\u0644\u0645\u062E\u0637\u0637 \u0643\u0644 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A \u0644\u0639\u0646\u0627\u0635\u0631 \u0627\u0644\u0645\u0642\u0631\u0631 {0} \u0628\u0646\u0627\u0621\u0627\u064B \u0639\u0644\u0649 \u0643\u0644 \u0628\u064A\u0627\u0646\u0627\u062A \u0627\u0644\u0645\u0642\u0631\u0631 \u0627\u0644\u0645\u062A\u0627\u062D\u0629 (\u0645\u0646\u0630 {0}) \u0645\u0631\u062A\u0628\u0629 \u0637\u0628\u0642\u0627\u064B \u0644\u0646\u0648\u0639 \u0627\u0644\u0645\u0624\u0633\u0633\u0629.
-statistic.title=\u0627\u0644\u0625\u062D\u0635\u0627\u0626\u064A\u0627\u062A \u0637\u0628\u0642\u0627\u064B \u0644\u0646\u0648\u0639 \u0627\u0644\u0645\u0624\u0633\u0633\u0629
diff --git a/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_de.properties
deleted file mode 100644
index c62767377ec..00000000000
--- a/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_de.properties
+++ /dev/null
@@ -1,16 +0,0 @@
-menu.createstatfile=Nach Organisationstyp
-menu.createstatfile.alt=Statistik gruppiert nach Organisationstyp anzeigen
-
-statistic.title=Statistik gruppiert nach Organisationstyp
-statistic.intro=Diese Statistik zeigt alle Zugriffe auf die Kursbausteine basierend auf allen verf\u00FCgbaren Kursdaten (seit {0}) gruppiert nach Organisationstyp.
-statistic.chart.intro=Diese Grafik zeigt alle Zugriffe {0} basierend auf allen verf\u00FCgbaren Kursdaten (seit {1}) gruppiert nach Organisationstyp.
-statistic.chart.pernode.intro=Diese Grafik zeigt alle Zugriffe auf Kursbausteine von Personen herkommend vom Organisationstyp <i>{0}</i>.
-statistic.chart.pernode.total.intro=Diese Grafik zeigt alle Zugriffe auf die Kursbausteine basierend auf allen verf\u00fcgbaren Kursdaten (seit {0}).
-
-
-stat.table.header.node=Kursbaustein
-stat.table.header.total=Total
-
-
-
-
diff --git a/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_el.properties b/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_el.properties
deleted file mode 100644
index 09eca3d6de4..00000000000
--- a/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_el.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Fri Mar 12 15:56:41 CET 2010
-
-
-
-menu.createstatfile=\u0391\u03BD\u03AC \u03C4\u03CD\u03C0\u03BF \u03BF\u03C1\u03B3\u03B1\u03BD\u03B9\u03C3\u03BC\u03BF\u03CD
-menu.createstatfile.alt=\u03A0\u03C1\u03BF\u03B2\u03BF\u03BB\u03AE \u03C3\u03C4\u03B1\u03C4\u03B9\u03C3\u03C4\u03B9\u03BA\u03CE\u03BD \u03C4\u03B1\u03BE\u03B9\u03BD\u03BF\u03BC\u03B7\u03BC\u03AD\u03BD\u03C9\u03BD \u03B1\u03BD\u03B1 \u03C4\u03CD\u03C0\u03BF \u03BF\u03C1\u03B3\u03B1\u03BD\u03B9\u03C3\u03BC\u03BF\u03CD
-stat.table.header.node=\u03A3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF \u03BC\u03B1\u03B8\u03AE\u03BC\u03B1\u03C4\u03BF\u03C2
-stat.table.header.total=\u03A3\u03CD\u03BD\u03BF\u03BB\u03BF
-statistic.chart.intro=\u0391\u03C5\u03C4\u03CC \u03C4\u03BF \u03B4\u03B9\u03AC\u03B3\u03C1\u03B1\u03BC\u03BC\u03B1 \u03B4\u03B5\u03AF\u03BD\u03B5\u03B9 \u03CC\u03BB\u03B5\u03C2 \u03C4\u03B9\u03C2 \u03C0\u03C1\u03BF\u03C3\u03B2\u03AC\u03C3\u03B5\u03B9\u03C2 {0} \u03C0\u03BF\u03C5 \u03B2\u03B1\u03C3\u03AF\u03B6\u03BF\u03BD\u03C4\u03B1\u03B9 \u03CC\u03BB\u03B1 \u03C4\u03B1 \u03B4\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03B1 \u03BC\u03B1\u03B8\u03B7\u03BC\u03AC\u03C4\u03C9\u03BD \u03C0\u03BF\u03C5 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03B4\u03B9\u03B1\u03B8\u03AD\u03C3\u03B9\u03BC\u03B1 (\u03B1\u03C0\u03CC \u03C4\u03B9\u03C2 {1}) \u03C4\u03B1\u03BE\u03B9\u03BD\u03BF\u03BC\u03B7\u03BC\u03AD\u03BD\u03B1 \u03B1\u03BD\u03AC \u03B5\u03AF\u03B4\u03BF\u03C2 \u03BF\u03C1\u03B3\u03B1\u03BD\u03B9\u03C3\u03BC\u03BF\u03CD.
-statistic.chart.pernode.intro=\u0391\u03C5\u03C4\u03CC \u03C4\u03BF \u03B4\u03B9\u03AC\u03B3\u03C1\u03B1\u03BC\u03BC\u03B1 \u03B4\u03B5\u03AF\u03C7\u03BD\u03B5\u03B9 \u03CC\u03BB\u03B5\u03C2 \u03C4\u03B9\u03C2 \u03C0\u03C1\u03BF\u03C3\u03B2\u03AC\u03C3\u03B5\u03B9\u03C2 \u03C3\u03B5 \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1 \u03BC\u03B1\u03B8\u03B7\u03BC\u03AC\u03C4\u03C9\u03BD \u03B1\u03C0\u03CC \u03AC\u03C4\u03BF\u03BC\u03B1 \u03C0\u03BF\u03C5 \u03C3\u03C7\u03B5\u03C4\u03AF\u03B6\u03BF\u03BD\u03C4\u03B1\u03B9 \u03BC\u03B5 \u03C4\u03BF \u03B5\u03AF\u03B4\u03BF\u03C2 \u03BF\u03C1\u03B3\u03B1\u03BD\u03B9\u03C3\u03BC\u03BF\u03CD <i>{0}</i>.
-statistic.chart.pernode.total.intro=\u0391\u03C5\u03C4\u03CC \u03C4\u03BF \u03B4\u03B9\u03AC\u03B3\u03C1\u03B1\u03BC\u03BC\u03B1 \u03B4\u03B5\u03AF\u03C7\u03BD\u03B5\u03B9 \u03CC\u03BB\u03B5\u03C2 \u03C4\u03B9\u03C2 \u03C0\u03C1\u03BF\u03C3\u03B2\u03AC\u03C3\u03B5\u03B9\u03C2 \u03C3\u03B5 \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1 \u03BC\u03B1\u03B8\u03B7\u03BC\u03AC\u03C4\u03C9\u03BD \u03C0\u03BF\u03C5 \u03B2\u03B1\u03C3\u03AF\u03B6\u03BF\u03BD\u03C4\u03B1\u03B9 \u03C3\u03B5 \u03CC\u03BB\u03B1 \u03C4\u03B1 \u03B4\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03B1 \u03BC\u03B1\u03B8\u03B7\u03BC\u03AC\u03C4\u03C9\u03BD \u03C0\u03BF\u03C5 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03B4\u03B9\u03B1\u03B8\u03AD\u03C3\u03B9\u03BC\u03B1 (\u03B1\u03C0\u03CC \u03C4\u03B9\u03C2 {0}).
-statistic.intro=\u0391\u03C5\u03C4\u03AE \u03B7 \u03C3\u03C4\u03B1\u03C4\u03B9\u03C3\u03C4\u03B9\u03BA\u03AE \u03B4\u03B5\u03AF\u03C7\u03BD\u03B5\u03B9 \u03CC\u03BB\u03B5\u03C2 \u03C4\u03B9\u03C2 \u03C0\u03C1\u03BF\u03C3\u03B2\u03AC\u03C3\u03B5\u03B9\u03C2 \u03C3\u03B5 \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1 \u03BC\u03B1\u03B8\u03B7\u03BC\u03AC\u03C4\u03C9\u03BD \u03C0\u03BF\u03C5 \u03B2\u03B1\u03C3\u03AF\u03B6\u03BF\u03BD\u03C4\u03B1\u03B9 \u03C3\u03B5 \u03CC\u03BB\u03B1 \u03C4\u03B1 \u03B4\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03B1 \u03BC\u03B1\u03B8\u03B7\u03BC\u03AC\u03C4\u03C9\u03BD \u03C0\u03BF\u03C5 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03B4\u03B9\u03B1\u03B8\u03AD\u03C3\u03B9\u03BC\u03B1 (\u03B1\u03C0\u03CC \u03C4\u03B9\u03C2 {0}) \u03C4\u03B1\u03BE\u03B9\u03BD\u03BF\u03BC\u03B7\u03BC\u03AD\u03BD\u03B1 \u03B1\u03BD\u03AC \u03B5\u03AF\u03B4\u03BF\u03C2 \u03BF\u03C1\u03B3\u03B1\u03BD\u03B9\u03C3\u03BC\u03BF\u03CD.
-statistic.title=\u03A3\u03C4\u03B1\u03C4\u03B9\u03C3\u03C4\u03B9\u03BA\u03AC \u03C4\u03B1\u03BE\u03B9\u03BD\u03BF\u03BC\u03B7\u03BC\u03AD\u03BD\u03B1 \u03B1\u03BD\u03AC \u03C4\u03CD\u03C0\u03BF \u03BF\u03C1\u03B3\u03B1\u03BD\u03B9\u03C3\u03BC\u03BF\u03CD
diff --git a/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_en.properties
deleted file mode 100644
index b0bbdd41117..00000000000
--- a/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_en.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Fri Jan 21 16:11:29 CET 2011
-
-
-
-menu.createstatfile=By type of organization
-menu.createstatfile.alt=Show statistics sorted by type of organization
-stat.table.header.node=Course element
-stat.table.header.total=Total
-statistic.chart.intro=This chart shows all accesses {0} based on the entire course data available (since {1}) sorted by type of organization.
-statistic.chart.pernode.intro=This chart shows all accesses to course elements by persons affiliated to the organization type <i>{0}</i>.
-statistic.chart.pernode.total.intro=This chart shows all accesses to course elements based on the entire course data available (since {0}).
-statistic.intro=This statistic shows all accesses to course elements based on the entire course data available (since {0}) sorted by type of organization.
-statistic.title=Statistics sorted by type of organization
diff --git a/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_fr.properties
deleted file mode 100644
index aaf5f461a14..00000000000
--- a/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_fr.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Tue Dec 21 13:36:01 CET 2010
-
-
-
-menu.createstatfile=Par type d'organisation
-menu.createstatfile.alt=Afficher statistiques group\u00E9es par un type d'organisation
-stat.table.header.node=El\u00E9ment de cours
-stat.table.header.total=Total
-statistic.chart.intro=Ce graphique montre tous les acc\u00E8s {0} bas\u00E9 sur toutes les donn\u00E9es de cours disponibles (depuis {1}) group\u00E9es par type d'organisation.
-statistic.chart.pernode.intro=Ce graphique montre tous les acc\u00E8s sur des \u00E9l\u00E9ments de cours de personnes issues du type d'organisation <i>{0}</i>.
-statistic.chart.pernode.total.intro=Ce graphique montre tous les acc\u00E8s sur les \u00E9l\u00E9ments de cours bas\u00E9 sur toutes les donn\u00E9es de cours disponibles (depuis {0}).
-statistic.intro=Ces statistiques montrent tous les acc\u00E8s sur les \u00E9l\u00E9ments de cours bas\u00E9 sur toutes les donn\u00E9es de cours disponibles (depuis {0}) par type d'organisation.
-statistic.title=Statistiques group\u00E9es par type d'organisation
diff --git a/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_it.properties b/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_it.properties
deleted file mode 100644
index e630dfc7893..00000000000
--- a/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_it.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Mon Aug 23 16:27:55 CEST 2010
-
-
-
-menu.createstatfile=Per tipo d'organizzazione
-menu.createstatfile.alt=Mostrare statistica raggruppata per tipo d'organizzazione
-stat.table.header.node=Elemento di corso
-stat.table.header.total=Totale
-statistic.chart.intro=Questa grafica mostra tutti i clic {0} sulla base di tutti i dati disponibili del corso (dal {1}) raggruppati per tipo d'organizzazione.
-statistic.chart.pernode.intro=Questa grafica mostra tutti i clic sugli elementi di corso di persone appartenenti al tipo di organizzazione <i>{0}</i>.
-statistic.chart.pernode.total.intro=Questa grafica mostra tutti i clic sugli elementi di corso sulla base di tutti i dati disponibili del corso (dal {0}).
-statistic.intro=Questa grafica mostra tutti i clic sugli elementi di corso sulla base di tutti i dati disponibili del corso (dal {0}) per tipo di organizzazione.
-statistic.title=Statistica raggruppata per tipo di organizzazione
diff --git a/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_jp.properties b/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_jp.properties
deleted file mode 100644
index e7c83d92adc..00000000000
--- a/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_jp.properties
+++ /dev/null
@@ -1,9 +0,0 @@
-#Thu Sep 08 16:42:38 CEST 2011
-
-
-
-menu.createstatfile=\u7D44\u7E54\u30BF\u30A4\u30D7\u5225
-menu.createstatfile.alt=\u7D44\u7E54\u30BF\u30A4\u30D7\u3067\u5206\u985E\u3055\u308C\u305F\u7D71\u8A08\u3092\u8868\u793A\u3059\u308B
-stat.table.header.node=\u30B3\u30FC\u30B9\u30A8\u30EC\u30E1\u30F3\u30C8
-stat.table.header.total=\u5408\u8A08
-statistic.title=\u7D44\u7E54\u30BF\u30A4\u30D7\u3067\u5206\u985E\u3055\u308C\u305F\u7D71\u8A08
diff --git a/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_nl_NL.properties b/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_nl_NL.properties
deleted file mode 100644
index 61af27e69aa..00000000000
--- a/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_nl_NL.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Thu Sep 08 16:42:45 CEST 2011
-
-
-
-menu.createstatfile=Door type van organisatie
-menu.createstatfile.alt=Toon statistieken gesorteerd door type van organisatie
-stat.table.header.node=Cursuselement
-stat.table.header.total=Totaal
-statistic.chart.intro=Deze grafiek toont alle toegangen {0} gebaseerd op volledige cursudata beschikbaar (sinds {1}) en gesorteerd door organisatietype.
-statistic.chart.pernode.intro=Deze grafiek toont alle toegangen tot cursuselementen door personen aangesloten bij het organisatietype <i>{0}</i>..
-statistic.chart.pernode.total.intro=Deze grafiek toont alle toegangen tot cursuselementen gebaseerd op de volledige cursudata beschikbaar (sinds {0}).
-statistic.intro=Deze statistiek toont alle toegangen tot cursuselementen gebaseerd op de volledige cursudata beschikbaar (sinds {0}) en gesorteerd door organisatietype.
-statistic.title=Statistieken gesorteerd door organisatietype
diff --git a/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_pl.properties b/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_pl.properties
deleted file mode 100644
index 9dcfa02da0a..00000000000
--- a/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_pl.properties
+++ /dev/null
@@ -1,11 +0,0 @@
-#Sat Mar 13 01:10:11 CET 2010
-
-menu.createstatfile=Dla typu organizacji
-menu.createstatfile.alt=Poka\u017C statystyki posortowane ze wzgl\u0119du na typ organizacji
-stat.table.header.node=Element kursu
-stat.table.header.total=Og\u00F3\u0142em
-statistic.chart.intro=Ten wykres przedstawia wszystkie zapytania {0}, bazuj\u0105c na wszystkich dost\u0119pnych danych kursu (od {1}), posortowane ze wzgl\u0119du na typ organizacji.
-statistic.chart.pernode.intro=Ten wykres przedstawia wszystkie zapytania do element\u00F3w kursu, wykonywane przez osoby powi\u0105zane z typem organizacji <i>{0}</i>.
-statistic.chart.pernode.total.intro=Ten wykres przedstawia wszystkie zapytania do element\u00F3w kursu, bazuj\u0105c na wszystkich dost\u0119pnych danych kursu (od {0}).
-statistic.intro=Te statystyki przedstawiaj\u0105 wszystkie zapytania do element\u00F3w kursu, bazuj\u0105c na wszystkich dost\u0119pnych danych kursu (od {0}), posortowane wed\u0142ug typu organizacji.
-statistic.title=Statystyki posortowane wed\u0142ug typu organizacji
diff --git a/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_pt_BR.properties b/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_pt_BR.properties
deleted file mode 100644
index 03dbfd45732..00000000000
--- a/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_pt_BR.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Mon Jun 07 20:46:22 CEST 2010
-
-
-
-menu.createstatfile=Por tipo de organiza\u00E7\u00E3o
-menu.createstatfile.alt=Ver as estat\u00EDsticas classificadas por tipo de organiza\u00E7\u00E3o
-stat.table.header.node=Elemento de curso
-stat.table.header.total=Total
-statistic.chart.intro=Este gr\u00E1fico mostra todos os acessos {0} com base em todos os dados do curso dispon\u00EDvel (desde {1}) classificadas por tipo de organiza\u00E7\u00E3o.
-statistic.chart.pernode.intro=Este gr\u00E1fico mostra todos os acessos a elementos do curso por pessoas afiliadas ao tipo de organiza\u00E7\u00E3o <i>{0}</i>.
-statistic.chart.pernode.total.intro=Este gr\u00E1fico mostra todos os acessos a elementos do curso com base em todos os dados do curso dispon\u00EDvel (desde {0}).
-statistic.intro=Esta estat\u00EDstica mostra todos os acessos a elementos do curso com base em todos os dados do curso dispon\u00EDvel (desde {0}) classificadas por tipo de organiza\u00E7\u00E3o.
-statistic.title=Estat\u00EDsticas classificadas por tipo de organiza\u00E7\u00E3o
diff --git a/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_zh_CN.properties b/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_zh_CN.properties
deleted file mode 100644
index e4a7798b6f9..00000000000
--- a/src/main/java/org/olat/course/statistic/orgtype/_i18n/LocalStrings_zh_CN.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Thu Apr 01 19:03:05 CEST 2010
-
-
-
-menu.createstatfile=\u901A\u8FC7\u7EC4\u7EC7\u7C7B\u578B
-menu.createstatfile.alt=\u901A\u8FC7\u7EC4\u7EC7\u7C7B\u578B\u663E\u793A\u5DF2\u7EDF\u8BA1\u6570\u636E
-stat.table.header.node=\u5B66\u7A0B\u5143\u7D20
-stat.table.header.total=\u603B\u8BA1
-statistic.chart.intro=\u6B64\u56FE\u8868\u663E\u793A\u4E86\u4ECE{1}\u8D77\uFF0C\u57FA\u4E8E\u6240\u6709\u6709\u6548\u5B66\u7A0B\u6570\u636E\u7684{0}\u7684\u8BBF\u95EE\u4FE1\u606F\uFF0C\u8FD9\u4E9B\u4FE1\u606F\u4EE5\u7EC4\u7EC7\u7C7B\u578B\u5B58\u50A8\u3002
-statistic.chart.pernode.intro=\u6B64\u56FE\u8868\u663E\u793A\u4E86\u6240\u6709\u96B6\u5C5E\u4E8E<i>{0}</i>\u7684\u4E2A\u4EBA\u8BBF\u95EE\u5B66\u7A0B\u5143\u7D20\u7684\u7EDF\u8BA1\u91CF\u3002
-statistic.chart.pernode.total.intro=\u6B64\u56FE\u8868\u663E\u793A\u4E86\u4ECE{0}\u8D77\uFF0C\u57FA\u4E8E\u6240\u6709\u6709\u6548\u5B66\u7A0B\u6570\u636E\u7684\u5B66\u7A0B\u5143\u7D20\u7684\u8BBF\u95EE\u91CF\u3002
-statistic.intro=\u6B64\u7EDF\u8BA1\u663E\u793A\u4E86\u4ECE{0}\u8D77\uFF0C\u57FA\u4E8E\u6240\u6709\u6709\u6548\u5B66\u7A0B\u6570\u636E\u7684\u5B66\u7A0B\u5143\u7D20\u7684\u8BBF\u95EE\u4FE1\u606F\uFF0C\u6B64\u4FE1\u606F\u901A\u8FC7\u7EC4\u7EC7\u7C7B\u578B\u7684\u65B9\u5F0F\u8FDB\u884C\u5B58\u50A8\u3002
-statistic.title=\u4EE5\u5B58\u50A8\u7684\u7EC4\u7EC7\u7C7B\u578B\u8FDB\u884C\u7EDF\u8BA1
diff --git a/src/main/java/org/olat/course/statistic/studybranch3/StudyBranch3Stat.java b/src/main/java/org/olat/course/statistic/studybranch3/StudyBranch3Stat.java
deleted file mode 100644
index 77719fc2a1b..00000000000
--- a/src/main/java/org/olat/course/statistic/studybranch3/StudyBranch3Stat.java
+++ /dev/null
@@ -1,135 +0,0 @@
-/**
-* OLAT - Online Learning and Training<br>
-* http://www.olat.org
-* <p>
-* Licensed under the Apache License, Version 2.0 (the "License"); <br>
-* you may not use this file except in compliance with the License.<br>
-* You may obtain a copy of the License at
-* <p>
-* http://www.apache.org/licenses/LICENSE-2.0
-* <p>
-* Unless required by applicable law or agreed to in writing,<br>
-* software distributed under the License is distributed on an "AS IS" BASIS, <br>
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br>
-* See the License for the specific language governing permissions and <br>
-* limitations under the License.
-* <p>
-* Copyright (c) since 2004 at Multimedia- & E-Learning Services (MELS),<br>
-* University of Zurich, Switzerland.
-* <hr>
-* <a href="http://www.openolat.org">
-* OpenOLAT - Online Learning and Training</a><br>
-* This file has been modified by the OpenOLAT community. Changes are licensed
-* under the Apache 2.0 license as the original file.  
-* <p>
-*/  
-
-package org.olat.course.statistic.studybranch3;
-
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.Id;
-import javax.persistence.Table;
-
-import org.hibernate.annotations.GenericGenerator;
-import org.hibernate.annotations.Parameter;
-import org.olat.core.id.Persistable;
-
-/**
- * Hibernate object representing an entry in the o_stat_studybranch3 table.
- * <P>
- * Initial Date:  12.02.2010 <br>
- * @author Stefan
- */
-@Entity(name="studybranch3stat")
-@Table(name="o_stat_studybranch3")
-public class StudyBranch3Stat implements Persistable {
-
-	private static final long serialVersionUID = 7156469152258502192L;
-	
-	@Id
-	@GeneratedValue(generator = "system-uuid")
-	@GenericGenerator(name = "system-uuid", strategy = "enhanced-sequence", parameters={
-		@Parameter(name="sequence_name", value="hibernate_unique_key"),
-		@Parameter(name="force_table_use", value="true"),
-		@Parameter(name="optimizer", value="legacy-hilo"),
-		@Parameter(name="value_column", value="next_hi"),
-		@Parameter(name="increment_size", value="32767"),
-		@Parameter(name="initial_value", value="32767")
-	})
-	@Column(name="id", nullable=false, unique=true, insertable=true, updatable=false)
-	private Long key;
-	@Column(name="businesspath", nullable=false, unique=false, insertable=true, updatable=true)
-	private String businessPath;
-	@Column(name="studybranch3", nullable=false, unique=false, insertable=true, updatable=true)
-	private String studyBranch3;
-	@Column(name="value", nullable=false, unique=false, insertable=true, updatable=true)
-	private int value;
-	@Column(name="resid", nullable=false, unique=false, insertable=true, updatable=true)
-	private long resId;
-	
-	public StudyBranch3Stat(){
-	// for hibernate	
-	}
-	
-	@Override
-	public Long getKey() {
-		return key;
-	}
-	
-	public long getResId() {
-		return resId;
-	}
-	
-	public void setResId(long resId) {
-		this.resId = resId;
-	}
-	
-	public String getBusinessPath() {
-		return businessPath;
-	}
-
-	public void setBusinessPath(String businessPath) {
-		this.businessPath = businessPath;
-	}
-
-	public String getStudyBranch3() {
-		return studyBranch3;
-	}
-	
-	public void setStudyBranch3(String studyBranch3) {
-		this.studyBranch3 = studyBranch3;
-	}
-	
-	public int getValue() {
-		return value;
-	}
-	
-	public void setValue(int value) {
-		this.value = value;
-	}
-	
-	@Override
-	public int hashCode() {
-		return getKey() == null ? 39563 : getKey().hashCode();
-	}
-	
-	@Override
-	public boolean equals(Object obj) {
-		if(obj == this) {
-			return true;
-		}
-		if(obj instanceof StudyBranch3Stat) {
-			StudyBranch3Stat stat = (StudyBranch3Stat)obj;
-			return getKey() != null && getKey().equals(stat.getKey());
-		}
-		return super.equals(obj);
-	}
-
-	@Override
-	public boolean equalsByPersistableKey(Persistable persistable) {
-		return equals(persistable);
-	}
-	
-}
diff --git a/src/main/java/org/olat/course/statistic/studybranch3/StudyBranch3StatisticManager.java b/src/main/java/org/olat/course/statistic/studybranch3/StudyBranch3StatisticManager.java
deleted file mode 100644
index 84d63990ded..00000000000
--- a/src/main/java/org/olat/course/statistic/studybranch3/StudyBranch3StatisticManager.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/**
-* OLAT - Online Learning and Training<br>
-* http://www.olat.org
-* <p>
-* Licensed under the Apache License, Version 2.0 (the "License"); <br>
-* you may not use this file except in compliance with the License.<br>
-* You may obtain a copy of the License at
-* <p>
-* http://www.apache.org/licenses/LICENSE-2.0
-* <p>
-* Unless required by applicable law or agreed to in writing,<br>
-* software distributed under the License is distributed on an "AS IS" BASIS, <br>
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br>
-* See the License for the specific language governing permissions and <br>
-* limitations under the License.
-* <p>
-* Copyright (c) since 2004 at Multimedia- & E-Learning Services (MELS),<br>
-* University of Zurich, Switzerland.
-* <hr>
-* <a href="http://www.openolat.org">
-* OpenOLAT - Online Learning and Training</a><br>
-* This file has been modified by the OpenOLAT community. Changes are licensed
-* under the Apache 2.0 license as the original file.
-*/
-
-package org.olat.course.statistic.studybranch3;
-
-import java.util.Date;
-import java.util.List;
-
-import org.olat.core.commons.persistence.DBFactory;
-import org.olat.core.gui.UserRequest;
-import org.olat.core.gui.components.table.ColumnDescriptor;
-import org.olat.core.gui.components.table.DefaultColumnDescriptor;
-import org.olat.core.gui.translator.Translator;
-import org.olat.core.manager.BasicManager;
-import org.olat.core.util.Util;
-import org.olat.course.ICourse;
-import org.olat.course.statistic.IStatisticManager;
-import org.olat.course.statistic.StatisticDisplayController;
-import org.olat.course.statistic.StatisticResult;
-import org.olat.course.statistic.TotalAwareColumnDescriptor;
-import org.olat.shibboleth.ShibbolethModule;
-
-/**
- * Implementation of the IStatisticManager for 'studybranch3' statistic
- * <P>
- * Initial Date:  12.02.2010 <br>
- * @author Stefan
- */
-public class StudyBranch3StatisticManager extends BasicManager implements IStatisticManager {
-
-	@Override
-	public StatisticResult generateStatisticResult(UserRequest ureq, ICourse course, long courseRepositoryEntryKey) {
-		String q = "select businessPath,studyBranch3,value from studybranch3stat sv where sv.resId=:resId";
-		List<Object[]> raw = DBFactory.getInstance().getCurrentEntityManager()
-				.createQuery(q, Object[].class)
-				.setParameter("resId", courseRepositoryEntryKey)
-				.getResultList();
-		return new StatisticResult(course, raw);
-	}
-	
-	@Override
-	public ColumnDescriptor createColumnDescriptor(UserRequest ureq, int column, String headerId) {
-		if (column==0) {
-			return new DefaultColumnDescriptor("stat.table.header.node", 0, null, ureq.getLocale());
-		}
-		
-		if (headerId!=null) {
-			Translator translator = Util.createPackageTranslator(ShibbolethModule.class, ureq.getLocale());
-			if (translator!=null) {
-				String newHeaderId = translator.translate("swissEduPersonStudyBranch3."+headerId);
-				if (newHeaderId!=null && !newHeaderId.startsWith(Translator.NO_TRANSLATION_ERROR_PREFIX)) {
-					headerId = newHeaderId;
-				}
-			}
-		}
-		
-		TotalAwareColumnDescriptor cd = new TotalAwareColumnDescriptor(headerId, column, 
-				StatisticDisplayController.CLICK_TOTAL_ACTION+column, ureq.getLocale(), ColumnDescriptor.ALIGNMENT_RIGHT);	
-		cd.setTranslateHeaderKey(false);
-		return cd;
-	}
-
-	@Override
-	public StatisticResult generateStatisticResult(UserRequest ureq, ICourse course, long courseRepositoryEntryKey, Date fromDate, Date toDate) {
-		return generateStatisticResult(ureq, course, courseRepositoryEntryKey);
-	}
-
-}
diff --git a/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_ar.properties b/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_ar.properties
deleted file mode 100644
index d06ad12a876..00000000000
--- a/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_ar.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Mon Mar 08 13:47:36 CET 2010
-
-
-
-menu.createstatfile=\u0648\u0641\u0642\u0627\u064B \u0644\u0645\u062C\u0627\u0644 \u0627\u0644\u062F\u0631\u0627\u0633\u0629
-menu.createstatfile.alt=\u0639\u0631\u0636 \u0627\u0644\u0625\u062D\u0635\u0627\u0626\u064A\u0627\u062A \u0645\u0631\u062A\u0628\u0629 \u0648\u0641\u0642\u0627\u064B \u0644\u0645\u062C\u0627\u0644 \u0627\u0644\u062F\u0631\u0627\u0633\u0629
-stat.table.header.node=\u0639\u0646\u0635\u0631 \u0627\u0644\u0645\u0642\u0631\u0631
-stat.table.header.total=\u0627\u0644\u0645\u062C\u0645\u0648\u0639
-statistic.chart.intro=\u064A\u0639\u0631\u0636 \u0647\u0630\u0627 \u0627\u0644\u0645\u062E\u0637\u0637 \u0643\u0644 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A {0} \u0628\u0646\u0627\u0621\u0627\u064B \u0639\u0644\u0649 \u0643\u0644 \u0628\u064A\u0627\u0646\u0627\u062A \u0627\u0644\u0645\u0642\u0631\u0631 \u0627\u0644\u0645\u062A\u0627\u062D\u0629 (\u0645\u0646\u0630 {1}) \u0645\u0631\u062A\u0628\u0629 \u0648\u0641\u0642\u0627\u064B \u0644\u0645\u062C\u0627\u0644 \u0627\u0644\u062F\u0631\u0627\u0633\u0629.
-statistic.chart.pernode.intro=.<i>{0}</i> \u064A\u0639\u0631\u0636 \u0647\u0630\u0627 \u0627\u0644\u0645\u062E\u0637\u0637 \u0643\u0644 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A \u0644\u0639\u0646\u0627\u0635\u0631 \u0627\u0644\u0645\u0642\u0631\u0631 \u0628\u0648\u0627\u0633\u0637\u0629 \u0645\u062C\u0627\u0644 \u062F\u0631\u0627\u0633\u0629 \u0627\u0644\u0623\u0634\u062E\u0627\u0635
-statistic.chart.pernode.total.intro=\u064A\u0639\u0631\u0636 \u0647\u0630\u0627 \u0627\u0644\u0645\u062E\u0637\u0637 \u0643\u0644 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A \u0644\u0639\u0646\u0627\u0635\u0631 \u0627\u0644\u0645\u0642\u0631\u0631 \u0628\u0646\u0627\u0621\u0627\u064B \u0639\u0644\u0649 \u0643\u0644 \u0628\u064A\u0627\u0646\u0627\u062A \u0627\u0644\u0645\u0642\u0631\u0631 \u0627\u0644\u0645\u062A\u0627\u062D\u0629 (\u0645\u0646\u0630 {0}) .
-statistic.intro=\u064A\u0639\u0631\u0636 \u0647\u0630\u0627 \u0627\u0644\u0645\u062E\u0637\u0637 \u0643\u0644 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A \u0644\u0639\u0646\u0627\u0635\u0631 \u0627\u0644\u0645\u0642\u0631\u0631 \u0628\u0646\u0627\u0621\u0627\u064B \u0639\u0644\u0649 \u0643\u0644 \u0628\u064A\u0627\u0646\u0627\u062A \u0627\u0644\u0645\u0642\u0631\u0631 \u0627\u0644\u0645\u062A\u0627\u062D\u0629 (\u0645\u0646\u0630 {0}) \u0645\u0631\u062A\u0628\u0629 \u0648\u0641\u0642\u0627\u064B \u0644\u0645\u062C\u0627\u0644 \u0627\u0644\u062F\u0631\u0627\u0633\u0629.
-statistic.title=\u0627\u0644\u0625\u062D\u0635\u0627\u0626\u064A\u0627\u062A \u0645\u0631\u062A\u0628\u0629 \u0648\u0641\u0642\u0627\u064B \u0644\u0645\u062C\u0627\u0644 \u0627\u0644\u062F\u0631\u0627\u0633\u0629
diff --git a/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_de.properties
deleted file mode 100644
index 0e584bd6022..00000000000
--- a/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_de.properties
+++ /dev/null
@@ -1,14 +0,0 @@
-menu.createstatfile=Nach Studienrichtung
-menu.createstatfile.alt=Statistik gruppiert nach Studienrichtung anzeigen
-
-statistic.title=Statistik gruppiert nach Studienrichtung
-statistic.intro=Diese Statistik zeigt alle Zugriffe auf die Kursbausteine basierend auf allen verf\u00FCgbaren Kursdaten (seit {0}) gruppiert nach Studienrichtung.
-statistic.chart.intro=Diese Grafik zeigt alle Zugriffe {0} basierend auf allen verf\u00FCgbaren Kursdaten (seit {1}) gruppiert nach Studienrichtung.
-statistic.chart.pernode.intro=Diese Grafik zeigt alle Zugriffe auf die Kursbausteine von Personen mit Studienrichtung <i>{0}</i>.
-statistic.chart.pernode.total.intro=Diese Grafik zeigt alle Zugriffe auf die Kursbausteine basierend auf allen verf\u00fcgbaren Kursdaten (seit {0}).
-
-
-stat.table.header.node=Kursbaustein
-stat.table.header.total=Total
-
-
diff --git a/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_el.properties b/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_el.properties
deleted file mode 100644
index 23bfcbc3009..00000000000
--- a/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_el.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Fri Mar 12 16:02:50 CET 2010
-
-
-
-menu.createstatfile=\u0391\u03BD\u03AC \u03C0\u03B5\u03B4\u03AF\u03BF \u03BC\u03B5\u03BB\u03AD\u03C4\u03B7\u03C2
-menu.createstatfile.alt=\u0395\u03BC\u03C6\u03AC\u03BD\u03B9\u03C3\u03B7 \u03C3\u03C4\u03B1\u03C4\u03B9\u03C3\u03C4\u03B9\u03BA\u03CE\u03BD \u03C4\u03B1\u03BE\u03B9\u03BD\u03BF\u03BC\u03B7\u03BC\u03AD\u03BD\u03B1 \u03B1\u03BD\u03AC \u03C0\u03B5\u03B4\u03AF\u03BF \u03BC\u03B5\u03BB\u03AD\u03C4\u03B7\u03C2.
-stat.table.header.node=\u03A3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF \u03BC\u03B1\u03B8\u03AE\u03BC\u03B1\u03C4\u03BF\u03C2
-stat.table.header.total=\u03A3\u03CD\u03BD\u03BF\u03BB\u03BF
-statistic.chart.intro=\u0391\u03C5\u03C4\u03CC \u03C4\u03BF \u03B4\u03B9\u03AC\u03B3\u03C1\u03B1\u03BC\u03BC\u03B1 \u03B4\u03B5\u03AF\u03C7\u03BD\u03B5\u03B9 \u03CC\u03BB\u03B5\u03C2 \u03C4\u03B9\u03C2 \u03C0\u03C1\u03BF\u03C3\u03B2\u03AC\u03C3\u03B5\u03B9\u03C2 {0} \u03C0\u03BF\u03C5 \u03B2\u03B1\u03C3\u03AF\u03B6\u03BF\u03BD\u03C4\u03B1\u03B9 \u03C3\u03B5 \u03CC\u03BB\u03B1 \u03C4\u03B1 \u03B4\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03B1 \u03BC\u03B1\u03B8\u03B7\u03BC\u03AC\u03C4\u03C9\u03BD \u03C0\u03BF\u03C5 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03B4\u03B9\u03B1\u03B8\u03AD\u03C3\u03B9\u03BC\u03B1 (\u03B1\u03C0\u03CC \u03C4\u03B9\u03C2 {1}) \u03C4\u03B1\u03BE\u03B9\u03BD\u03BF\u03BC\u03B7\u03BC\u03AD\u03BD\u03B1 \u03B1\u03BD\u03AC \u03C0\u03B5\u03B4\u03AF\u03BF \u03BC\u03B5\u03BB\u03AD\u03C4\u03B7\u03C2.
-statistic.chart.pernode.intro=\u0391\u03C5\u03C4\u03CC \u03C4\u03BF \u03B4\u03B9\u03AC\u03B3\u03C1\u03B1\u03BC\u03BC\u03B1 \u03B4\u03B5\u03AF\u03C7\u03BD\u03B5\u03B9 \u03CC\u03BB\u03B5\u03C2 \u03C4\u03B9\u03C2 \u03C0\u03C1\u03BF\u03C3\u03B2\u03AC\u03C3\u03B5\u03B9\u03C2 \u03C3\u03B5 \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1 \u03BC\u03B1\u03B8\u03B7\u03BC\u03AC\u03C4\u03C9\u03BD \u03B1\u03C0\u03CC \u03AC\u03C4\u03BF\u03BC\u03B1 \u03C0\u03BF\u03C5 \u03C3\u03C0\u03BF\u03C5\u03B4\u03AC\u03B6\u03BF\u03C5\u03BD <i>{0}</i>.
-statistic.chart.pernode.total.intro=\u0391\u03C5\u03C4\u03CC \u03C4\u03BF \u03B4\u03B9\u03AC\u03B3\u03C1\u03B1\u03BC\u03BC\u03B1 \u03B4\u03B5\u03AF\u03C7\u03BD\u03B5\u03B9 \u03CC\u03BB\u03B5\u03C2 \u03C4\u03B9\u03C2 \u03C0\u03C1\u03BF\u03C3\u03B2\u03AC\u03C3\u03B5\u03B9\u03C2 \u03C3\u03B5 \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1 \u03BC\u03B1\u03B8\u03B7\u03BC\u03AC\u03C4\u03C9\u03BD \u03C0\u03BF\u03C5 \u03B2\u03B1\u03C3\u03AF\u03B6\u03BF\u03BD\u03C4\u03B1\u03B9 \u03C3\u03B5 \u03CC\u03BB\u03B1 \u03C4\u03B1 \u03B4\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03B1 \u03BC\u03B1\u03B8\u03B7\u03BC\u03AC\u03C4\u03C9\u03BD \u03C0\u03BF\u03C5 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03B4\u03B9\u03B1\u03B8\u03AD\u03C3\u03B9\u03BC\u03B1 (\u03B1\u03C0\u03CC \u03C4\u03B9\u03C2 {0}).
-statistic.intro=\u0391\u03C5\u03C4\u03AE \u03B7 \u03C3\u03C4\u03B1\u03C4\u03B9\u03C3\u03C4\u03B9\u03BA\u03AE \u03B4\u03B5\u03AF\u03C7\u03BD\u03B5\u03B9 \u03CC\u03BB\u03B5\u03C2 \u03C4\u03B9\u03C2 \u03C0\u03C1\u03BF\u03C3\u03B2\u03AC\u03C3\u03B5\u03B9\u03C2 \u03C3\u03B5 \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1 \u03BC\u03B1\u03B8\u03B7\u03BC\u03AC\u03C4\u03C9\u03BD \u03C0\u03BF\u03C5 \u03B2\u03B1\u03C3\u03AF\u03B6\u03BF\u03BD\u03C4\u03B1\u03B9 \u03C3\u03B5 \u03CC\u03BB\u03B1 \u03C4\u03B1 \u03B4\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03B1 \u03BC\u03B1\u03B8\u03B7\u03BC\u03AC\u03C4\u03C9\u03BD \u03C0\u03BF\u03C5 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03B4\u03B9\u03B1\u03B8\u03AD\u03C3\u03B9\u03BC\u03B1 (\u03B1\u03C0\u03CC \u03C4\u03B9\u03C2 {0}) \u03C4\u03B1\u03BE\u03B9\u03BD\u03BF\u03BC\u03B7\u03BC\u03AD\u03BD\u03B1 \u03B1\u03BD\u03AC \u03C0\u03B5\u03B4\u03AF\u03BF \u03BC\u03B5\u03BB\u03AD\u03C4\u03B7\u03C2.
-statistic.title=\u03A3\u03C4\u03B1\u03C4\u03B9\u03C3\u03C4\u03B9\u03BA\u03AC \u03C4\u03B1\u03BE\u03B9\u03BD\u03BF\u03BC\u03B7\u03BC\u03AD\u03BD\u03B1 \u03B1\u03BD\u03AC \u03C0\u03B5\u03B4\u03AF\u03BF \u03BC\u03B5\u03BB\u03AD\u03C4\u03B7\u03C2
diff --git a/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_en.properties
deleted file mode 100644
index 574adf03fc4..00000000000
--- a/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_en.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Fri Jan 21 16:12:37 CET 2011
-
-
-
-menu.createstatfile=By field of study
-menu.createstatfile.alt=Show statistics sorted by field of study
-stat.table.header.node=Course element
-stat.table.header.total=Total
-statistic.chart.intro=This chart shows all accesses {0} based on the entire course data available (since {1}) sorted by field of study.
-statistic.chart.pernode.intro=This chart shows all accesses to course elements by persons studying <i>{0}</i>.
-statistic.chart.pernode.total.intro=This chart shows all accesses to course elements based on the entire course data available (since {0}).
-statistic.intro=This statistic shows all accesses to course elements based on the entire course data available (since {0}) sorted by field of study.
-statistic.title=Statistics sorted by field of study
diff --git a/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_fr.properties
deleted file mode 100644
index d9bd9c5678b..00000000000
--- a/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_fr.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Sun Jan 09 19:11:43 CET 2011
-
-
-
-menu.createstatfile=Par branche d'\u00E9tude
-menu.createstatfile.alt=Afficher statistiques group\u00E9es par branche d'\u00E9tude
-stat.table.header.node=El\u00E9ment de cours
-stat.table.header.total=Total
-statistic.chart.intro=Ce graphique montre tous les acc\u00E8s {0} bas\u00E9 sur toutes les donn\u00E9es de cours disponibles (depuis {1}) group\u00E9s par branche d'\u00E9tude.
-statistic.chart.pernode.intro=Ce graphique montre tous les acc\u00E8s sur les \u00E9l\u00E9ments de cours de personnes avec branche d'\u00E9tude <i>{0}</i>.
-statistic.chart.pernode.total.intro=Ce graphique montre tous les acc\u00E8s sur les \u00E9l\u00E9ments de cours bas\u00E9 sur toutes les donn\u00E9es de cours disponibles (depuis {0}).
-statistic.intro=Ces statistiques montrent tous les acc\u00E8s sur les \u00E9l\u00E9ments de cours bas\u00E9 sur toutes les donn\u00E9es de cours disponibles (depuis {0}) group\u00E9s par branche d'\u00E9tude.
-statistic.title=Statistiques group\u00E9es par branche d'\u00E9tude
diff --git a/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_it.properties b/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_it.properties
deleted file mode 100644
index 760a15f4c64..00000000000
--- a/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_it.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Sun Jan 09 13:45:42 CET 2011
-
-
-
-menu.createstatfile=Per indirizzo di studio
-menu.createstatfile.alt=Mostrare statistiche per indirizzo di studio
-stat.table.header.node=Elemento di corso
-stat.table.header.total=Totale
-statistic.chart.intro=Questa grafica mostra tutti i clic {0} sulla base di tutti i dati disponibili del corso (dal {1}) raggruppati per indirizzo di studio.
-statistic.chart.pernode.intro=Questa grafica mostra tutti i clic sugli elementi di corso di persone con l'indirizzo di studio <i>{0}</i>.
-statistic.chart.pernode.total.intro=Questa grafica mostra tutti i clic sugli elementi di corso sulla base di tutti i dati disponibili del corso (dal {0}).
-statistic.intro=Questa grafica mostra tutti i clic sugli elementi di corso sulla base di tutti i dati disponibili del corso (dal {0}) raggruppati per indirizzo di studio.
-statistic.title=Statistica raggruppata per indirizzo di studio
diff --git a/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_jp.properties b/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_jp.properties
deleted file mode 100644
index 002ba998be4..00000000000
--- a/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_jp.properties
+++ /dev/null
@@ -1,8 +0,0 @@
-#Thu Sep 08 16:42:38 CEST 2011
-
-
-menu.createstatfile=\u7814\u7A76\u5206\u91CE
-menu.createstatfile.alt=\u7814\u7A76\u5206\u91CE\u3067\u5206\u985E\u3055\u308C\u305F\u7D71\u8A08\u3092\u8868\u793A\u3059\u308B
-stat.table.header.node=\u30B3\u30FC\u30B9\u30A8\u30EC\u30E1\u30F3\u30C8
-stat.table.header.total=\u5408\u8A08
-statistic.title=\u7814\u7A76\u5206\u91CE\u3067\u30BD\u30FC\u30C8\u3055\u308C\u305F\u7D71\u8A08
diff --git a/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_nl_NL.properties b/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_nl_NL.properties
deleted file mode 100644
index 683cdcacb32..00000000000
--- a/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_nl_NL.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Thu Sep 08 16:42:45 CEST 2011
-
-
-
-menu.createstatfile=Door studieveld
-menu.createstatfile.alt=Toon statistieken gesorteerd door studieveld
-stat.table.header.node=Cursuselement
-stat.table.header.total=Totaal
-statistic.chart.intro=Deze grafiek toont alle toegangen {0} gebaseerd op de volledige cursusdata beschikbaar (sinds {1}) en gesorteerd door het studieveld.
-statistic.chart.pernode.intro=Deze grafiek toont alle toegangen tot cursuselementen door studerende personen <i>{0}</i>.
-statistic.chart.pernode.total.intro=Deze grafiek toont alle toegangen tot cursuselementen gebaseerd op de volledige cursusdata beschikbaar (sinds {1}).
-statistic.intro=Deze statistiek toont alle toegangen tot cursuselementen gebaseerd op de volledige cursusdata beschikbaar (sinds {1}) en gesorteerd door het studieveld.
-statistic.title=Statistieken gesorteerd door studieveld
diff --git a/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_pl.properties b/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_pl.properties
deleted file mode 100644
index fdbd76f111e..00000000000
--- a/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_pl.properties
+++ /dev/null
@@ -1,11 +0,0 @@
-#Sat Mar 13 16:38:25 CET 2010
-
-menu.createstatfile=Wed\u0142ug kierunku studi\u00F3w
-menu.createstatfile.alt=Poka\u017C statystyki posortowane wed\u0142ug kierunku studi\u00F3w
-stat.table.header.node=Element kursu
-stat.table.header.total=Og\u00F3\u0142em
-statistic.chart.intro=Ten wykres przedstawia wszystkie zapytania {0}, bazuj\u0105c na wszystkich dost\u0119pnych danych kursu (od {1}), posortowane wed\u0142ug kierunku studi\u00F3w.
-statistic.chart.pernode.intro=Ten wykres przedstawia wszystkie zapytania do element\u00F3w kursu, wykonywane przez osoby studiuj\u0105ce <i>{0}</i>.
-statistic.chart.pernode.total.intro=Ten wykres przedstawia wszystkie zapytania do element\u00F3w kursu, bazuj\u0105c na wszystkich dost\u0119pnych danych (od {0}).
-statistic.intro=Te statystyki przedstawiaj\u0105 wszystkie zapytania do element\u00F3w kursu, bazuj\u0105ce na wszystkich dost\u0119pnych danych kursu (od {0}), posortowane wed\u0142ug kierunku studi\u00F3w.
-statistic.title=Statystyki posortowane wed\u0142ug kierunku studi\u00F3w.
diff --git a/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_pt_BR.properties b/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_pt_BR.properties
deleted file mode 100644
index 736301f2408..00000000000
--- a/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_pt_BR.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Mon Jun 07 20:59:54 CEST 2010
-
-
-
-menu.createstatfile=Por \u00E1rea de estudo
-menu.createstatfile.alt=Ver as estat\u00EDsticas classificadas por \u00E1rea de estudo
-stat.table.header.node=Elemento do Curso
-stat.table.header.total=Total
-statistic.chart.intro=Este gr\u00E1fico mostra todos os acessos {0} com base em todos os dados do curso dispon\u00EDvel (desde {1}) classificados por \u00E1rea de estudo.
-statistic.chart.pernode.intro=Este gr\u00E1fico mostra todos os acessos a elementos do curso por pessoas que estudam <i>{0}</i> .
-statistic.chart.pernode.total.intro=Este gr\u00E1fico mostra todos os acessos a elementos do curso com base em todos os dados do curso dispon\u00EDvel (desde {0}).
-statistic.intro=Esta estat\u00EDstica mostra todos os acessos a elementos do curso com base em todos os dados do curso dispon\u00EDveis (desde {0}) classificados por \u00E1rea de estudo.
-statistic.title=Estat\u00EDsticas classificadas por \u00E1rea de estudo
diff --git a/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_zh_CN.properties b/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_zh_CN.properties
deleted file mode 100644
index 76a56320b1d..00000000000
--- a/src/main/java/org/olat/course/statistic/studybranch3/_i18n/LocalStrings_zh_CN.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Wed Apr 21 14:32:25 CEST 2010
-
-
-
-menu.createstatfile=\u901A\u8FC7\u5B66\u4E60\u5B57\u6BB5
-menu.createstatfile.alt=\u663E\u793A\u5B58\u50A8\u4E8E\u5B66\u4E60\u5B57\u6BB5\u7684\u7EDF\u8BA1
-stat.table.header.node=\u5B66\u7A0B\u5143\u7D20
-stat.table.header.total=\u603B\u8BA1
-statistic.chart.intro=\u6B64\u56FE\u8868\u8868\u793A\u57FA\u4E8E\u6240\u6709\u6709\u6548\u5B66\u7A0B\u6570\u636E\u7684\u6240\u6709\u53EF\u8BBF\u95EE\u8D44\u6E90{0},\uFF08\u81EA\u4ECE{1}\u8D77\uFF0C\u5C31\u5DF2\u5B58\u50A8\u4E8E\u5B66\u4E60\u5B57\u6BB5\uFF09\u3002
-statistic.chart.pernode.intro=\u6B64\u56FE\u8868\u663E\u793A\u4E86\u5BF9\u5B66\u7A0B\u5143\u7D20\u8FDB\u884C\u4E2A\u4EBA\u5B66\u4E60\u7684\u6240\u6709\u8BBF\u95EE\u8BB0\u5F55<i>{0}</i>\u3002
-statistic.chart.pernode.total.intro=\u6B64\u56FE\u8868\u663E\u793A\u4E86\u57FA\u4E8E\u6240\u6709\u6709\u6548\u5B66\u7A0B\u6570\u636E\u7684\uFF0C\uFF08\u81EA\u4ECE{0}\u8D77\uFF09\u5BF9\u5B66\u7A0B\u5143\u7D20\u7684\u6240\u6709\u8BBF\u95EE\u8BB0\u5F55\u3002
-statistic.intro=\u6B64\u7EDF\u8BA1\u663E\u793A\u4E86\u5B58\u50A8\u4E8E\u5B66\u4E60\u5B57\u6BB5\u7684\uFF0C\u57FA\u4E8E\u6240\u6709\u6709\u6548\u5B66\u7A0B\u6570\u636E\u7684\uFF0C(\u81EA\u4ECE{0}\u8D77)\u5BF9\u5B66\u7A0B\u5143\u7D20\u7684\u6240\u6709\u8BBF\u95EE\u8BB0\u5F55\u3002
-statistic.title=\u5B58\u50A8\u4E8E\u5B66\u4E60\u5B57\u6BB5\u7684\u7EDF\u8BA1
diff --git a/src/main/java/org/olat/course/statistic/studylevel/StudyLevelStat.java b/src/main/java/org/olat/course/statistic/studylevel/StudyLevelStat.java
deleted file mode 100644
index 1a21cc305d0..00000000000
--- a/src/main/java/org/olat/course/statistic/studylevel/StudyLevelStat.java
+++ /dev/null
@@ -1,135 +0,0 @@
-/**
-* OLAT - Online Learning and Training<br>
-* http://www.olat.org
-* <p>
-* Licensed under the Apache License, Version 2.0 (the "License"); <br>
-* you may not use this file except in compliance with the License.<br>
-* You may obtain a copy of the License at
-* <p>
-* http://www.apache.org/licenses/LICENSE-2.0
-* <p>
-* Unless required by applicable law or agreed to in writing,<br>
-* software distributed under the License is distributed on an "AS IS" BASIS, <br>
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br>
-* See the License for the specific language governing permissions and <br>
-* limitations under the License.
-* <p>
-* Copyright (c) since 2004 at Multimedia- & E-Learning Services (MELS),<br>
-* University of Zurich, Switzerland.
-* <hr>
-* <a href="http://www.openolat.org">
-* OpenOLAT - Online Learning and Training</a><br>
-* This file has been modified by the OpenOLAT community. Changes are licensed
-* under the Apache 2.0 license as the original file.  
-* <p>
-*/  
-
-package org.olat.course.statistic.studylevel;
-
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.Id;
-import javax.persistence.Table;
-
-import org.hibernate.annotations.GenericGenerator;
-import org.hibernate.annotations.Parameter;
-import org.olat.core.id.Persistable;
-
-/**
- * <p>
- * Initial Date:  20.10.2009 <br>
- * @author Stefan
- */
-
-@Entity(name="studylevelstat")
-@Table(name="o_stat_studylevel")
-public class StudyLevelStat implements Persistable {
-
-	private static final long serialVersionUID = 1255485547339375940L;
-	
-	@Id
-	@GeneratedValue(generator = "system-uuid")
-	@GenericGenerator(name = "system-uuid", strategy = "enhanced-sequence", parameters={
-		@Parameter(name="sequence_name", value="hibernate_unique_key"),
-		@Parameter(name="force_table_use", value="true"),
-		@Parameter(name="optimizer", value="legacy-hilo"),
-		@Parameter(name="value_column", value="next_hi"),
-		@Parameter(name="increment_size", value="32767"),
-		@Parameter(name="initial_value", value="32767")
-	})
-	@Column(name="id", nullable=false, unique=true, insertable=true, updatable=false)
-	private Long key;
-	@Column(name="businesspath", nullable=false, unique=false, insertable=true, updatable=true)
-	private String businessPath;
-	@Column(name="studylevel", nullable=false, unique=false, insertable=true, updatable=true)
-	private String studyLevel;
-	@Column(name="value", nullable=false, unique=false, insertable=true, updatable=true)
-	private int value;
-	@Column(name="resid", nullable=false, unique=false, insertable=true, updatable=true)
-	private long resId;
-	
-	public StudyLevelStat(){
-	// for hibernate	
-	}
-	
-	@Override
-	public Long getKey() {
-		return key;
-	}
-	
-	public long getResId() {
-		return resId;
-	}
-	
-	public void setResId(long resId) {
-		this.resId = resId;
-	}
-	
-	public String getBusinessPath() {
-		return businessPath;
-	}
-
-	public void setBusinessPath(String businessPath) {
-		this.businessPath = businessPath;
-	}
-
-	public String getStudyLevel() {
-		return studyLevel;
-	}
-	
-	public void setStudyLevel(String studyLevel) {
-		this.studyLevel = studyLevel;
-	}
-	
-	public int getValue() {
-		return value;
-	}
-	
-	public void setValue(int value) {
-		this.value = value;
-	}
-	
-	@Override
-	public int hashCode() {
-		return getKey() == null ? 39563 : getKey().hashCode();
-	}
-	
-	@Override
-	public boolean equals(Object obj) {
-		if(obj == this) {
-			return true;
-		}
-		if(obj instanceof StudyLevelStat) {
-			StudyLevelStat stat = (StudyLevelStat)obj;
-			return getKey() != null && getKey().equals(stat.getKey());
-		}
-		return super.equals(obj);
-	}
-
-	@Override
-	public boolean equalsByPersistableKey(Persistable persistable) {
-		return equals(persistable);
-	}
-	
-}
diff --git a/src/main/java/org/olat/course/statistic/studylevel/StudyLevelStatisticManager.java b/src/main/java/org/olat/course/statistic/studylevel/StudyLevelStatisticManager.java
deleted file mode 100644
index 16e5a461c8b..00000000000
--- a/src/main/java/org/olat/course/statistic/studylevel/StudyLevelStatisticManager.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/**
-* OLAT - Online Learning and Training<br>
-* http://www.olat.org
-* <p>
-* Licensed under the Apache License, Version 2.0 (the "License"); <br>
-* you may not use this file except in compliance with the License.<br>
-* You may obtain a copy of the License at
-* <p>
-* http://www.apache.org/licenses/LICENSE-2.0
-* <p>
-* Unless required by applicable law or agreed to in writing,<br>
-* software distributed under the License is distributed on an "AS IS" BASIS, <br>
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br>
-* See the License for the specific language governing permissions and <br>
-* limitations under the License.
-* <p>
-* Copyright (c) since 2004 at Multimedia- & E-Learning Services (MELS),<br>
-* University of Zurich, Switzerland.
-* <hr>
-* <a href="http://www.openolat.org">
-* OpenOLAT - Online Learning and Training</a><br>
-* This file has been modified by the OpenOLAT community. Changes are licensed
-* under the Apache 2.0 license as the original file.
-*/
-
-package org.olat.course.statistic.studylevel;
-
-import java.util.Date;
-import java.util.List;
-
-import org.olat.core.commons.persistence.DBFactory;
-import org.olat.core.gui.UserRequest;
-import org.olat.core.gui.components.table.ColumnDescriptor;
-import org.olat.core.gui.components.table.DefaultColumnDescriptor;
-import org.olat.core.gui.translator.Translator;
-import org.olat.core.manager.BasicManager;
-import org.olat.core.util.Util;
-import org.olat.course.ICourse;
-import org.olat.course.statistic.IStatisticManager;
-import org.olat.course.statistic.StatisticDisplayController;
-import org.olat.course.statistic.StatisticResult;
-import org.olat.course.statistic.TotalAwareColumnDescriptor;
-import org.olat.shibboleth.ShibbolethModule;
-
-/**
- * Implementation of the IStatisticManager for 'studylevel' statistic
- * <P>
- * Initial Date:  12.02.2010 <br>
- * @author Stefan
- */
-public class StudyLevelStatisticManager extends BasicManager implements IStatisticManager {
-
-	@Override
-	public StatisticResult generateStatisticResult(UserRequest ureq, ICourse course, long courseRepositoryEntryKey) {
-		String q = "select businessPath, studyLevel, value from studylevelstat sv where sv.resId=:resId";
-		List<Object[]> raw = DBFactory.getInstance().getCurrentEntityManager()
-			.createQuery(q, Object[].class)
-			.setParameter("resId", courseRepositoryEntryKey)
-			.getResultList();
-		return new StatisticResult(course, raw);
-	}
-	
-	@Override
-	public ColumnDescriptor createColumnDescriptor(UserRequest ureq, int column, String headerId) {
-		if (column==0) {
-			return new DefaultColumnDescriptor("stat.table.header.node", 0, null, ureq.getLocale());
-		}
-
-		if (headerId!=null) {
-			Translator translator = Util.createPackageTranslator(ShibbolethModule.class, ureq.getLocale());
-			if (translator!=null) {
-				String newHeaderId = translator.translate("swissEduPersonStudyLevel."+headerId);
-				if (newHeaderId!=null && !newHeaderId.startsWith(Translator.NO_TRANSLATION_ERROR_PREFIX)) {
-					headerId = newHeaderId;
-				}
-			}
-		}
-		TotalAwareColumnDescriptor cd = new TotalAwareColumnDescriptor(headerId, column, 
-				StatisticDisplayController.CLICK_TOTAL_ACTION+column, ureq.getLocale(), ColumnDescriptor.ALIGNMENT_RIGHT);	
-		cd.setTranslateHeaderKey(false);
-		return cd;
-	}
-
-	@Override
-	public StatisticResult generateStatisticResult(UserRequest ureq, ICourse course, long courseRepositoryEntryKey, Date fromDate, Date toDate) {
-		return generateStatisticResult(ureq, course, courseRepositoryEntryKey);
-	}
-
-}
diff --git a/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_ar.properties b/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_ar.properties
deleted file mode 100644
index 37654e6103b..00000000000
--- a/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_ar.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Wed Apr 07 11:06:26 CEST 2010
-
-
-
-menu.createstatfile=\u0648\u0641\u0642\u0627\u064B \u0644\u0645\u0633\u062A\u0648\u0649 \u0627\u0644\u062F\u0631\u0627\u0633\u0629
-menu.createstatfile.alt=\u0639\u0631\u0636 \u0627\u0644\u0625\u062D\u0635\u0627\u0626\u064A\u0627\u062A \u0645\u0631\u062A\u0628\u0629 \u0648\u0641\u0642\u0627\u064B \u0644\u0645\u062C\u0627\u0644 \u0627\u0644\u062F\u0631\u0627\u0633\u0629
-stat.table.header.node=\u0639\u0646\u0635\u0631 \u0627\u0644\u0645\u0642\u0631\u0631
-stat.table.header.total=\u0627\u0644\u0645\u062C\u0645\u0648\u0639
-statistic.chart.intro=\u064A\u0639\u0631\u0636 \u0647\u0630\u0627 \u0627\u0644\u0645\u062E\u0637\u0637 \u0643\u0644 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A {0} \u0628\u0646\u0627\u0621\u0627\u064B \u0639\u0644\u0649 \u0643\u0644 \u0628\u064A\u0627\u0646\u0627\u062A \u0627\u0644\u0645\u0642\u0631\u0631 \u0627\u0644\u0645\u062A\u0627\u062D\u0629 (\u0645\u0646\u0630 {1}) \u0645\u0631\u062A\u0628\u0629 \u0648\u0641\u0642\u0627\u064B \u0644\u0645\u0633\u062A\u0648\u0649 \u0627\u0644\u062F\u0631\u0627\u0633\u0629.
-statistic.chart.pernode.intro=.<i>{0}</i> \u064A\u0639\u0631\u0636 \u0647\u0630\u0627 \u0627\u0644\u0645\u062E\u0637\u0637 \u0643\u0644 \u0627\u0644\u0628\u0628\u064A\u0627\u0646\u0627\u062A \u0644\u0639\u0646\u0627\u0635\u0631 \u0627\u0644\u0645\u0642\u0631\u0631 \u0628\u0648\u0633\u0637\u0629 \u0627\u0644\u0623\u0634\u062E\u0627\u0635 \u0645\u0639 \u0645\u0633\u062A\u0648\u0649 \u0627\u0644\u062F\u0631\u0627\u0633\u0629
-statistic.chart.pernode.total.intro=\u064A\u0639\u0631\u0636 \u0647\u0630\u0627 \u0627\u0644\u0645\u062E\u0637\u0637 \u0643\u0644 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A \u0644\u0639\u0646\u0627\u0635\u0631 \u0627\u0644\u0645\u0642\u0631\u0631 \u0628\u0646\u0627\u0621\u0627\u064B \u0639\u0644\u0649 \u0643\u0644 \u0628\u064A\u0627\u0646\u0627\u062A \u0627\u0644\u0645\u0642\u0631\u0631 \u0627\u0644\u0645\u062A\u0627\u062D\u0629 (\u0645\u0646\u0630 {0}).
-statistic.intro=\u064A\u0639\u0631\u0636 \u0647\u0630\u0627 \u0627\u0644\u0645\u062E\u0637\u0637 \u0643\u0644 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A \u0644\u0639\u0646\u0627\u0635\u0631 \u0627\u0644\u0645\u0642\u0631\u0631 \u0628\u0646\u0627\u0621\u0627\u064B \u0639\u0644\u0649 \u0643\u0644 \u0628\u064A\u0627\u0646\u0627\u062A \u0627\u0644\u0645\u0642\u0631\u0631 \u0627\u0644\u0645\u062A\u0627\u062D\u0629 (\u0645\u0646\u0630 {0}) \u0645\u0631\u062A\u0628\u0629 \u0648\u0641\u0642\u0627\u064B \u0644\u0645\u0633\u062A\u0648\u0649 \u0627\u0644\u062F\u0631\u0627\u0633\u0629.
-statistic.title=\u0627\u0644\u0625\u062D\u0635\u0627\u0626\u064A\u0627\u062A \u0645\u0631\u062A\u0628\u0629 \u0648\u0641\u0642\u0627\u064B \u0644\u0645\u0633\u062A\u0648\u0649 \u0627\u0644\u062F\u0631\u0627\u0633\u0629
diff --git a/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_de.properties
deleted file mode 100644
index 5fa982ba32a..00000000000
--- a/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_de.properties
+++ /dev/null
@@ -1,17 +0,0 @@
-menu.createstatfile=Nach Studienlevel
-menu.createstatfile.alt=Statistik gruppiert nach Studienlevel anzeigen
-
-statistic.title=Statistik gruppiert nach Studienlevel
-statistic.intro=Diese Statistik zeigt alle Zugriffe auf die Kursbausteine basierend auf allen verf\u00FCgbaren Kursdaten (seit {0}) gruppiert nach Studienlevel. Weitere Details zum Studienlevel finden Sie <a href\="https://www.switch.ch/aai/support/documents/attributes/" target\="_blank">hier</a>.
-statistic.chart.intro=Diese Grafik zeigt alle Zugriffe {0} basierend auf allen verf\u00FCgbaren Kursdaten (seit {1}) gruppiert nach Studienlevel.
-statistic.chart.pernode.intro=Diese Grafik zeigt alle Zugriffe auf die Kursbausteine von Personen mit Studienlevel <i>{0}</i>.
-statistic.chart.pernode.total.intro=Diese Grafik zeigt alle Zugriffe auf die Kursbausteine basierend auf allen verf\u00fcgbaren Kursdaten (seit {0}).
-
-
-stat.table.header.node=Kursbaustein
-stat.table.header.total=Total
-
-
-
-
-
diff --git a/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_el.properties b/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_el.properties
deleted file mode 100644
index 3df7c77cd1b..00000000000
--- a/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_el.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Sat Mar 13 23:30:42 CET 2010
-
-
-
-menu.createstatfile=\u0391\u03BD\u03AC \u03B5\u03C0\u03AF\u03C0\u03B5\u03B4\u03BF \u03C3\u03C0\u03BF\u03C5\u03B4\u03CE\u03BD
-menu.createstatfile.alt=\u03A0\u03C1\u03BF\u03B2\u03BF\u03BB\u03AE \u03C3\u03C4\u03B1\u03C4\u03B9\u03C3\u03C4\u03B9\u03BA\u03CE\u03BD \u03C4\u03B1\u03BE\u03B9\u03BD\u03BF\u03BC\u03B7\u03BC\u03AD\u03BD\u03B7 \u03B1\u03BD\u03AC \u03B5\u03C0\u03AF\u03C0\u03B5\u03B4\u03BF \u03C3\u03C0\u03BF\u03C5\u03B4\u03CE\u03BD
-stat.table.header.node=\u03A3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF \u03BC\u03B1\u03B8\u03AE\u03BC\u03B1\u03C4\u03BF\u03C2
-stat.table.header.total=\u03A3\u03CD\u03BD\u03BF\u03BB\u03BF
-statistic.chart.intro=\u0391\u03C5\u03C4\u03CC \u03C4\u03BF \u03B4\u03B9\u03AC\u03B3\u03C1\u03B1\u03BC\u03BC\u03B1 \u03B4\u03B5\u03AF\u03C7\u03BD\u03B5\u03B9 \u03CC\u03BB\u03B5\u03C2 \u03C4\u03B9\u03C2 \u03C0\u03C1\u03BF\u03C3\u03B2\u03AC\u03C3\u03B5\u03B9\u03C2 {0} \u03C0\u03BF\u03C5 \u03B2\u03B1\u03C3\u03AF\u03B6\u03BF\u03BD\u03C4\u03B1\u03B9 \u03C3\u03B5 \u03CC\u03BB\u03B1 \u03C4\u03B1 \u03B4\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03B1 \u03BC\u03B1\u03B8\u03B7\u03BC\u03AC\u03C4\u03C9\u03BD \u03C0\u03BF\u03C5 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03B4\u03B9\u03B1\u03B8\u03AD\u03C3\u03B9\u03BC\u03B1 (\u03B1\u03C0\u03CC \u03C4\u03B9\u03C2 {1}) \u03C4\u03B1\u03BE\u03B9\u03BD\u03BF\u03BC\u03B7\u03BC\u03AD\u03BD\u03B1 \u03B1\u03BD\u03AC \u03B5\u03C0\u03AF\u03C0\u03B5\u03B4\u03BF \u03BC\u03B5\u03BB\u03AD\u03C4\u03B7\u03C2.
-statistic.chart.pernode.intro=\u0391\u03C5\u03C4\u03CC \u03C4\u03BF \u03B4\u03B9\u03AC\u03B3\u03C1\u03B1\u03BC\u03BC\u03B1 \u03B4\u03B5\u03AF\u03C7\u03BD\u03B5\u03B9 \u03CC\u03BB\u03B5\u03C2 \u03C4\u03B9\u03C2 \u03C0\u03C1\u03BF\u03C3\u03B2\u03AC\u03C3\u03B5\u03B9\u03C2 \u03C3\u03B5 \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1 \u03BC\u03B1\u03B8\u03B7\u03BC\u03AC\u03C4\u03C9\u03BD \u03B1\u03C0\u03CC \u03AC\u03C4\u03BF\u03BC\u03B1 \u03BC\u03B5 \u03B5\u03C0\u03AF\u03C0\u03B5\u03B4\u03BF \u03BC\u03B5\u03BB\u03AD\u03C4\u03B7\u03C2 <i>{0}</i>.
-statistic.chart.pernode.total.intro=\u0391\u03C5\u03C4\u03CC \u03C4\u03BF \u03B4\u03B9\u03AC\u03B3\u03C1\u03B1\u03BC\u03BC\u03B1 \u03B4\u03B5\u03AF\u03C7\u03BD\u03B5\u03B9 \u03CC\u03BB\u03B5\u03C2 \u03C4\u03B9\u03C2 \u03C0\u03C1\u03BF\u03C3\u03B2\u03AC\u03C3\u03B5\u03B9\u03C2 \u03C3\u03B5 \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1 \u03BC\u03B1\u03B8\u03B7\u03BC\u03AC\u03C4\u03C9\u03BD \u03C0\u03BF\u03C5 \u03B2\u03B1\u03C3\u03AF\u03B6\u03BF\u03BD\u03C4\u03B1\u03B9 \u03C3\u03B5 \u03CC\u03BB\u03B1 \u03C4\u03B1 \u03B4\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03B1 \u03BC\u03B1\u03B8\u03B7\u03BC\u03AC\u03C4\u03C9\u03BD \u03C0\u03BF\u03C5 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03B4\u03B9\u03B1\u03B8\u03AD\u03C3\u03B9\u03BC\u03B1 (\u03B1\u03C0\u03CC \u03C4\u03B9\u03C2 {0}).
-statistic.intro=\u0391\u03C5\u03C4\u03AE \u03B7 \u03C3\u03C4\u03B1\u03C4\u03B9\u03C3\u03C4\u03B9\u03BA\u03AE \u03B4\u03B5\u03AF\u03C7\u03BD\u03B5\u03B9 \u03CC\u03BB\u03B5\u03C2 \u03C4\u03B9\u03C2 \u03C0\u03C1\u03BF\u03C3\u03B2\u03AC\u03C3\u03B5\u03B9\u03C2 \u03C3\u03B5 \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1 \u03BC\u03B1\u03B8\u03B7\u03BC\u03AC\u03C4\u03C9\u03BD \u03C0\u03BF\u03C5 \u03B2\u03B1\u03C3\u03AF\u03B6\u03BF\u03BD\u03C4\u03B1\u03B9 \u03C3\u03B5 \u03CC\u03BB\u03B1 \u03C4\u03B1 \u03B4\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03B1 \u03BC\u03B1\u03B8\u03B7\u03BC\u03AC\u03C4\u03C9\u03BD \u03C0\u03BF\u03C5 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03B4\u03B9\u03B1\u03B8\u03AD\u03C3\u03B9\u03BC\u03B1 (\u03B1\u03C0\u03CC \u03C4\u03B9\u03C2 {0}) \u03C4\u03B1\u03BE\u03B9\u03BD\u03BF\u03BC\u03B7\u03BC\u03AD\u03BD\u03B1 \u03B1\u03BD\u03AC \u03B5\u03C0\u03AF\u03C0\u03B5\u03B4\u03BF \u03BC\u03B5\u03BB\u03AD\u03C4\u03B7\u03C2. \u03A0\u03B5\u03C1\u03B9\u03C3\u03C3\u03CC\u03C4\u03B5\u03C1\u03B5\u03C2 \u03C0\u03BB\u03B7\u03C1\u03BF\u03C6\u03BF\u03C1\u03AF\u03B5\u03C2 \u03C3\u03C7\u03B5\u03C4\u03B9\u03BA\u03AC \u03BC\u03B5 \u03C4\u03BF \u03C0\u03B5\u03B4\u03AF\u03BF \u03C3\u03C0\u03BF\u03C5\u03B4\u03CE\u03BD \u03B8\u03B1 \u03B2\u03C1\u03B5\u03AF\u03C4\u03B5 <a href\="https://www.switch.ch/aai/support/documents/attributes/" target\="_blank">\u03B5\u03B4\u03CE</a>.
-statistic.title=\u03A3\u03C4\u03B1\u03C4\u03B9\u03C3\u03C4\u03B9\u03BA\u03AC \u03C4\u03B1\u03BE\u03B9\u03BD\u03BF\u03BC\u03B7\u03BC\u03AD\u03BD\u03B1 \u03B1\u03BD\u03AC \u03B5\u03C0\u03AF\u03C0\u03B5\u03B4\u03BF \u03BC\u03B5\u03BB\u03AD\u03C4\u03B7\u03C2
diff --git a/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_en.properties
deleted file mode 100644
index 29c06d06076..00000000000
--- a/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_en.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Fri Jan 21 16:13:44 CET 2011
-
-
-
-menu.createstatfile=By level of study
-menu.createstatfile.alt=Show statistics sorted by level of study
-stat.table.header.node=Course element
-stat.table.header.total=Total
-statistic.chart.intro=This chart shows all accesses {0} based on the entire course data available (since {1}) sorted by level of study.
-statistic.chart.pernode.intro=This chart shows all accesses to course elements by persons with study level <i>{0}</i>.
-statistic.chart.pernode.total.intro=This chart shows all accesses to course elements based on the entire course data available (since {0}).
-statistic.intro=This statistic shows all accesses to course elements based on the entire course data available (since {0}) sorted by study level. For further information on study levels please go to <a href\="https://www.switch.ch/aai/support/documents/attributes/" target\="_blank">Switch AAI</a>.
-statistic.title=Statistics sorted by level of study
diff --git a/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_fr.properties
deleted file mode 100644
index 8ea1f668f2d..00000000000
--- a/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_fr.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Tue Dec 21 13:36:23 CET 2010
-
-
-
-menu.createstatfile=Par niveau d'\u00E9tudes
-menu.createstatfile.alt=Afficher statistiques group\u00E9es par niveau d'\u00E9tudes
-stat.table.header.node=El\u00E9ment de cours
-stat.table.header.total=Total
-statistic.chart.intro=Ce graphique montre tous les acc\u00E8s {0} bas\u00E9 sur toutes les donn\u00E9es de cours disponibles (depuis {1}) group\u00E9es par niveau d'\u00E9tudes.
-statistic.chart.pernode.intro=Ce graphique montre tous les acc\u00E8s sur tous les \u00E9l\u00E9ments de cours de personnes avec niveau d'\u00E9tudes <i>{0}</i>.
-statistic.chart.pernode.total.intro=Ce graphique montre tous les acc\u00E8s sur les \u00E9l\u00E9ments de cours bas\u00E9 sur tous les donn\u00E9es de cours disponibles (depuis {0}).
-statistic.intro=Ces statistiques montrent tous les acc\u00E8s sur les \u00E9l\u00E9ments de cours bas\u00E9 sur tous les donn\u00E9es de cours disponibles (depuis {0}) group\u00E9es par niveau d'\u00E9tudes. Vous trouverez des d\u00E9tails suppl\u00E9mentaires sur le niveau d'\u00E9tudes <a href\="https://www.switch.ch/aai/support/documents/attributes/" target\="_blank">ici</a>.
-statistic.title=Statistiques group\u00E9es par niveau d'\u00E9tudes
diff --git a/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_it.properties b/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_it.properties
deleted file mode 100644
index 462233de311..00000000000
--- a/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_it.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Mon Aug 23 16:27:17 CEST 2010
-
-
-
-menu.createstatfile=Per livello di studi
-menu.createstatfile.alt=Mostrare statistica per livello di studi
-stat.table.header.node=Elemento di corso
-stat.table.header.total=Totale
-statistic.chart.intro=Questa grafica mostra tutti i clic {0} sulla base di tutti i dati disponibili (dal {1}) raggruppati per livello di studi.
-statistic.chart.pernode.intro=Questa grafica mostra tutti i clic sugli elemnti di corso di persone con il livello di studi <i>{0}</i>.
-statistic.chart.pernode.total.intro=Questa grafica mostra tutti i clic sugli elemnti di corso sulla base di tutti i dati disponibili (dal {0}).
-statistic.intro=Questa grafica mostra tutti i clic sugli elementi di corso sulla base di tutti i dati disponibili (dal {0}) raggruppati per livello di studi. Ulteriori dettagli sul livello di studi si trovano <a href\="https://www.switch.ch/aai/support/documents/attributes/" target\="_blank">qui</a>.
-statistic.title=Statistica raggruppata per livello di studi
diff --git a/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_jp.properties b/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_jp.properties
deleted file mode 100644
index 927bf8dc987..00000000000
--- a/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_jp.properties
+++ /dev/null
@@ -1,8 +0,0 @@
-#Mon Jul 12 07:52:13 CEST 2010
-
-
-
-menu.createstatfile=\u5B66\u7FD2\u30EC\u30D9\u30EB\u9806
-menu.createstatfile.alt=\u5B66\u7FD2\u30EC\u30D9\u30EB\u306B\u3088\u308A\u4E26\u3073\u66FF\u3048\u3089\u308C\u305F\u7D71\u8A08\u3092\u8868\u793A\u3059\u308B
-stat.table.header.node=\u30B3\u30FC\u30B9\u30A8\u30EC\u30E1\u30F3\u30C8
-stat.table.header.total=\u5408\u8A08
diff --git a/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_nl_NL.properties b/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_nl_NL.properties
deleted file mode 100644
index 1b8b580511f..00000000000
--- a/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_nl_NL.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Thu Sep 08 16:42:45 CEST 2011
-
-
-
-menu.createstatfile=Door studie-niveau
-menu.createstatfile.alt=Toon statistieken gesorteerd per sutudie-niveau
-stat.table.header.node=Cursuselement
-stat.table.header.total=Totaal
-statistic.chart.intro=Deze grafiek toont alle toegangen {0} gebaseerd op de volledige cursusdata beschikbaar (sinds{1}) en gesorteerd per studie-niveau.
-statistic.chart.pernode.intro=Deze grafiek toont alle toegangen {0} cursuselementen door personen met een studie-niveau <i>{0}</i>.
-statistic.chart.pernode.total.intro=Deze grafiek toont alle toegangen tot cursuselementen gebaseerd op de volledige cursusdata beschikbaar (sinds{0}).
-statistic.intro=Deze statistiek toont alle toegangen tot cursuselementen gebaseerd op de volledige cursusdata beschikbaar (sinds{0}) en gesorteerd per studie-niveau. Voor verdere informatie over studie-niveaus gelieve te gaan naar <a href\="https://www.switch.ch/aai/support/documents/attributes/" target\="_blank"></a>.
-statistic.title=Statistieken gesorteerd per studie-niveau
diff --git a/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_pl.properties b/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_pl.properties
deleted file mode 100644
index f5c0c7b3363..00000000000
--- a/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_pl.properties
+++ /dev/null
@@ -1,11 +0,0 @@
-#Fri Sep 03 13:16:54 CEST 2010
-
-menu.createstatfile=Wed\u0142ug stopnia studi\u00F3w
-menu.createstatfile.alt=Poka\u017C statystyki posortowane wed\u0142ug stopnia studi\u00F3w
-stat.table.header.node=Element kursu
-stat.table.header.total=Og\u00F3\u0142em
-statistic.chart.intro=Ten wykres przedstawia wszystkie zapytania {0}, bazuj\u0105c na wszystkich elementach kursu (od {1}), posortowane wed\u0142ug stopnia studi\u00F3w.
-statistic.chart.pernode.intro=Ten wykres przedstawia wszystkie zapytania do element\u00F3w kursu, wykonane przez osoby na studiach stopnia <i>{0}</i>.
-statistic.chart.pernode.total.intro=Ten wykres przedstawia wszystkie zapytania do element\u00F3w kursu, bazuj\u0105c na wszystkich dost\u0119pnych danych kursu (od {0}).
-statistic.intro=Te statystyki przedstawiaj\u0105 wszystkie zapytania do element\u00F3w kursu, bazuj\u0105c na wszystkich elementach kursu (od {0}), posortowane wed\u0142ug stopnia studi\u00F3w. W celu uzyskania dalszych informacji na temat poziomu studi\u00F3w, przejd\u017A pod adres <a href\="https://www.switch.ch/aai/support/documents/attributes/" target\="_blank">hier</a>.
-statistic.title=Statystyki posortowane wed\u0142ug stopnia studi\u00F3w
diff --git a/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_pt_BR.properties b/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_pt_BR.properties
deleted file mode 100644
index 34fd7d10050..00000000000
--- a/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_pt_BR.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-#Thu Sep 16 17:35:27 CEST 2010
-
-
-
-menu.createstatfile=Por n\u00EDvel de estudo
-menu.createstatfile.alt=Ver as estat\u00EDsticas classificadas por n\u00EDvel de ensino
-stat.table.header.node=Elemento de Curso
-stat.table.header.total=Total
-statistic.chart.intro=Este gr\u00E1fico mostra todos os acessos {0} com base em todos os dados do curso dispon\u00EDvel (desde {1}) classificado por n\u00EDvel de estudo.
-statistic.chart.pernode.intro=Este gr\u00E1fico mostra todos os acessos a elementos do curso por pessoas com determinado n\u00EDvel de estudo <i>{0}</i> .
-statistic.chart.pernode.total.intro=Este gr\u00E1fico mostra todos os acessos a elementos do curso com base em todos os dados dispon\u00EDveis (desde {0}).
-statistic.intro=Esta estat\u00EDstica mostra todos os acessos a elementos do curso com base em todos os dados dispon\u00EDveis (desde {0}) classificado por n\u00EDvel de estudo. Para mais informa\u00E7\u00F5es sobre os n\u00EDveis de estudo por favor v\u00E1 para <a href\="https://www.switch.ch/aai/support/documents/attributes/" target\="_blank"></a>.
-statistic.title=Estat\u00EDsticas classificadas por n\u00EDvel de estudo.
diff --git a/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_zh_CN.properties b/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_zh_CN.properties
deleted file mode 100644
index 2a65dc6720e..00000000000
--- a/src/main/java/org/olat/course/statistic/studylevel/_i18n/LocalStrings_zh_CN.properties
+++ /dev/null
@@ -1,11 +0,0 @@
-#Fri May 07 05:46:41 CEST 2010
-
-
-
-menu.createstatfile=\u6309\u5B66\u5386\u7EA7\u522B
-menu.createstatfile.alt=\u663E\u793A\u6309\u5B66\u5386\u7EA7\u522B\u6392\u5E8F\u7684\u7EDF\u8BA1\u4FE1\u606F
-stat.table.header.node=\u5B66\u7A0B\u5143\u7D20
-stat.table.header.total=\u603B\u8BA1
-statistic.chart.intro=\u6B64\u56FE\u8868\u663E\u793A\u4E86\u57FA\u4E8E\u6240\u6709\u6309\u5B66\u5386\u7EA7\u522B\u6392\u5E8F\u7684\u5B66\u7A0B\u6709\u6548\u7684\u8BBF\u95EE\u6570\u636E{0},(\u4ECE{1}\u8D77)\u3002
-statistic.chart.pernode.intro=\u6B64\u56FE\u8868\u663E\u793A\u4E86\u4E2A\u4EBA\u7684\u5B66\u4E60\u5C42\u6B21\u7684\u6240\u6709\u5B66\u7A0B\u5143\u7D20.<i>{0}</i>
-statistic.chart.pernode.total.intro=\u6B64\u56FE\u8868\u663E\u793A\u4E86\u57FA\u4E8E\u6240\u6709\u5B66\u7A0B\u6709\u6548\u6570\u636E\u7684\u5B66\u7A0B\u5143\u7D20\u7684\u8BBF\u95EE\u91CF\uFF0C(\u4ECE{0}\u8D77)\u3002
diff --git a/src/main/java/org/olat/login/AfterLoginInterceptionManager.java b/src/main/java/org/olat/login/AfterLoginInterceptionManager.java
index 2e43745b7c9..6d8f8e8673b 100644
--- a/src/main/java/org/olat/login/AfterLoginInterceptionManager.java
+++ b/src/main/java/org/olat/login/AfterLoginInterceptionManager.java
@@ -23,8 +23,6 @@ import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
 
-import org.olat.core.logging.OLog;
-import org.olat.core.logging.Tracing;
 import org.springframework.stereotype.Service;
 
 /**
@@ -37,8 +35,7 @@ import org.springframework.stereotype.Service;
  */
 @Service("afterLoginInterceptionManager")
 public class AfterLoginInterceptionManager {
-	private static final OLog log = Tracing.createLoggerFor(AfterLoginInterceptionManager.class);
-	
+
 	private List<Map<String, Object>> afterLoginControllerList;
 	
 	/**
@@ -79,7 +76,6 @@ public class AfterLoginInterceptionManager {
 		if (afterLoginControllerList == null) {
 			afterLoginControllerList = new ArrayList<>();
 		}
-		log.info("added one or more afterLoginControllers to the list.");
 		afterLoginControllerList.addAll(aLConf.getAfterLoginControllerList());
 	}
 
diff --git a/src/main/resources/META-INF/persistence.xml b/src/main/resources/META-INF/persistence.xml
index 5747c787e99..315305a0065 100644
--- a/src/main/resources/META-INF/persistence.xml
+++ b/src/main/resources/META-INF/persistence.xml
@@ -111,11 +111,7 @@
 		<class>org.olat.course.certificate.model.CertificateTemplateImpl</class>
 		<class>org.olat.course.statistic.daily.DailyStat</class>
 		<class>org.olat.course.statistic.dayofweek.DayOfWeekStat</class>
-		<class>org.olat.course.statistic.homeorg.HomeOrgStat</class>
 		<class>org.olat.course.statistic.hourofday.HourOfDayStat</class>
-		<class>org.olat.course.statistic.orgtype.OrgTypeStat</class>
-		<class>org.olat.course.statistic.studybranch3.StudyBranch3Stat</class>
-		<class>org.olat.course.statistic.studylevel.StudyLevelStat</class>
 		<class>org.olat.course.statistic.weekly.WeeklyStat</class>
 		<class>org.olat.group.model.ContactView</class>
 		<class>org.olat.group.model.ContactViewExtended</class>
diff --git a/src/main/resources/database/mysql/alter_12_4_x_to_12_5_0.sql b/src/main/resources/database/mysql/alter_12_4_x_to_12_5_0.sql
index 0549e7962d3..69cfd3015a2 100644
--- a/src/main/resources/database/mysql/alter_12_4_x_to_12_5_0.sql
+++ b/src/main/resources/database/mysql/alter_12_4_x_to_12_5_0.sql
@@ -78,6 +78,10 @@ update o_user inner join o_bs_identity on (id=fk_identity) set u_swissedupersons
 update o_user inner join o_bs_identity on (id=fk_identity) set u_swissedupersonstudybranch2=null where status=199;
 update o_user inner join o_bs_identity on (id=fk_identity) set u_swissedupersonstudybranch3=null where status=199;
 
+drop table o_stat_homeorg;
+drop table o_stat_orgtype;
+drop table o_stat_studylevel;
+drop table o_stat_studybranch3;
 
 -- user data export
 create table o_user_data_export (
diff --git a/src/main/resources/database/mysql/setupDatabase.sql b/src/main/resources/database/mysql/setupDatabase.sql
index 5184187644a..b1c68ebb4be 100644
--- a/src/main/resources/database/mysql/setupDatabase.sql
+++ b/src/main/resources/database/mysql/setupDatabase.sql
@@ -554,19 +554,6 @@ create table if not exists o_loggingtable (
 	sourceclass varchar(255),
 	sessionid varchar(255) not null,
 	user_id bigint,
-	username varchar(255),
-	userproperty1 varchar(255),
-	userproperty2 varchar(255),
-	userproperty3 varchar(255),
-	userproperty4 varchar(255),
-	userproperty5 varchar(255),
-	userproperty6 varchar(255),
-	userproperty7 varchar(255),
-	userproperty8 varchar(255),
-	userproperty9 varchar(255),
-	userproperty10 varchar(255),
-	userproperty11 varchar(255),
-	userproperty12 varchar(255),
 	actioncrudtype varchar(1) not null,
 	actionverb varchar(16) not null,
 	actionobject varchar(32) not null,
@@ -754,62 +741,6 @@ create table if not exists o_stat_daily (
 create index statday_resid_idx on o_stat_daily (resid);
 
 
--- insert into o_stat_homeorg (businesspath,resid,homeorg,value) select businesspath,substr(businesspath,locate(':',businesspath)+1,locate(']',businesspath)-locate(':',businesspath)-1) resid,userproperty2 homeorg,count(*) cnt from o_loggingtable where actionverb='launch' and actionobject='node' group by businesspath,homeorg;
-create table if not exists o_stat_homeorg (
-
-	id bigint unsigned not null auto_increment,
-	businesspath varchar(2048) not null,
-	resid bigint not null,
-	homeorg varchar(255) not null,
-	value int not null,
-	primary key (id)
-
-);
-create index stathor_resid_idx on o_stat_homeorg (resid);
-
-
--- insert into o_stat_orgtype (businesspath,resid,orgtype,value) select businesspath,substr(businesspath,locate(':',businesspath)+1,locate(']',businesspath)-locate(':',businesspath)-1) resid,userproperty4 orgtype,count(*) cnt from o_loggingtable where actionverb='launch' and actionobject='node' group by businesspath,orgtype;
-create table if not exists o_stat_orgtype (
-
-	id bigint unsigned not null auto_increment,
-	businesspath varchar(2048) not null,
-	resid bigint not null,
-	orgtype varchar(255),
-	value int not null,
-	primary key (id)
-
-);
-create index statorg_resid_idx on o_stat_orgtype (resid);
-
-
--- insert into o_stat_studylevel (businesspath,resid,studylevel,value) select businesspath,substr(businesspath,locate(':',businesspath)+1,locate(']',businesspath)-locate(':',businesspath)-1) resid,userproperty3 studylevel,count(*) cnt from o_loggingtable where actionverb='launch' and actionobject='node' group by businesspath,studylevel;
-create table if not exists o_stat_studylevel (
-
-	id bigint unsigned not null auto_increment,
-	businesspath varchar(2048) not null,
-	resid bigint not null,
-	studylevel varchar(255) not null,
-	value int not null,
-	primary key (id)
-
-);
-create index statstl_resid_idx on o_stat_studylevel (resid);
-
-
--- insert into o_stat_studybranch3 (businesspath,resid,studybranch3,value) select businesspath,substr(businesspath,locate(':',businesspath)+1,locate(']',businesspath)-locate(':',businesspath)-1) resid,userproperty10 studybranch3,count(*) cnt from o_loggingtable where actionverb='launch' and actionobject='node' group by businesspath,studybranch3;
-create table if not exists o_stat_studybranch3 (
-
-	id bigint unsigned not null auto_increment,
-	businesspath varchar(2048) not null,
-	resid bigint not null,
-	studybranch3 varchar(255),
-	value int not null,
-	primary key (id)
-
-);
-create index statstb_resid_idx on o_stat_studybranch3 (resid);
-
-
 create table if not exists o_mark (
   mark_id bigint not null,
   version mediumint unsigned not null,
diff --git a/src/main/resources/database/oracle/alter_12_4_x_to_12_5_0.sql b/src/main/resources/database/oracle/alter_12_4_x_to_12_5_0.sql
index 646a2382301..b11cf61f8de 100644
--- a/src/main/resources/database/oracle/alter_12_4_x_to_12_5_0.sql
+++ b/src/main/resources/database/oracle/alter_12_4_x_to_12_5_0.sql
@@ -79,6 +79,10 @@ update o_user set u_swissedupersonstudybranch1=null where exists (select id from
 update o_user set u_swissedupersonstudybranch2=null where exists (select id from o_bs_identity where id=fk_identity and status=199);
 update o_user set u_swissedupersonstudybranch3=null where exists (select id from o_bs_identity where id=fk_identity and status=199);
 
+drop table o_stat_homeorg;
+drop table o_stat_orgtype;
+drop table o_stat_studylevel;
+drop table o_stat_studybranch3;
 
 -- user data export
 create table o_user_data_export (
diff --git a/src/main/resources/database/oracle/setupDatabase.sql b/src/main/resources/database/oracle/setupDatabase.sql
index c8140291839..56f4ee62187 100644
--- a/src/main/resources/database/oracle/setupDatabase.sql
+++ b/src/main/resources/database/oracle/setupDatabase.sql
@@ -614,19 +614,6 @@ CREATE TABLE o_loggingtable (
   sourceclass varchar2(255 char),
   sessionid varchar2(255 char) NOT NULL,
   user_id number(20),
-  username varchar2(255 char),
-  userproperty1 varchar2(255 char),
-  userproperty2 varchar2(255 char),
-  userproperty3 varchar2(255 char),
-  userproperty4 varchar2(255 char),
-  userproperty5 varchar2(255 char),
-  userproperty6 varchar2(255 char),
-  userproperty7 varchar2(255 char),
-  userproperty8 varchar2(255 char),
-  userproperty9 varchar2(255 char),
-  userproperty10 varchar2(255 char),
-  userproperty11 varchar2(255 char),
-  userproperty12 varchar2(255 char),
   actioncrudtype varchar2(1 char) NOT NULL,
   actionverb varchar2(16 char) NOT NULL,
   actionobject varchar2(32 char) NOT NULL,
@@ -1137,30 +1124,6 @@ CREATE TABLE o_stat_daily (
 );
 
 
-CREATE SEQUENCE sq_o_stat_homeorg_id;
-
-CREATE TABLE o_stat_homeorg (
-  id number(20) NOT NULL,
-  businesspath varchar2(2048 char) NOT NULL,
-  resid number(20) NOT NULL,
-  homeorg varchar2(255 char) NOT NULL,
-  value number(11) NOT NULL,
-  PRIMARY KEY (id)
-);
-
-
-CREATE SEQUENCE sq_o_stat_orgtype_id;
-
-CREATE TABLE o_stat_orgtype (
-  id number(20) NOT NULL,
-  businesspath varchar2(2048 char) NOT NULL,
-  resid number(20) NOT NULL,
-  orgtype varchar2(255 char),
-  value number(11) NOT NULL,
-  PRIMARY KEY (id)
-);
-
-
 CREATE SEQUENCE sq_o_stat_studylevel_id;
 
 CREATE TABLE o_stat_studylevel (
@@ -2660,53 +2623,6 @@ BEGIN
 END;
 /
 
-CREATE OR REPLACE TRIGGER ai_o_stat_homeorg_id
-BEFORE INSERT ON o_stat_homeorg
-FOR EACH ROW WHEN (
- new.id IS NULL OR new.id = 0
-)
-BEGIN
- SELECT sq_o_stat_homeorg_id.nextval
- INTO :new.id
- FROM dual;
-END;
-/
-
-CREATE OR REPLACE TRIGGER ai_o_stat_orgtype_id
-BEFORE INSERT ON o_stat_orgtype
-FOR EACH ROW WHEN (
- new.id IS NULL OR new.id = 0
-)
-BEGIN
- SELECT sq_o_stat_orgtype_id.nextval
- INTO :new.id
- FROM dual;
-END;
-/
-
-CREATE OR REPLACE TRIGGER ai_o_stat_studylevel_id
-BEFORE INSERT ON o_stat_studylevel
-FOR EACH ROW WHEN (
- new.id IS NULL OR new.id = 0
-)
-BEGIN
- SELECT sq_o_stat_studylevel_id.nextval
- INTO :new.id
- FROM dual;
-END;
-/
-
-CREATE OR REPLACE TRIGGER ai_o_stat_studybranch3_id
-BEFORE INSERT ON o_stat_studybranch3
-FOR EACH ROW WHEN (
- new.id IS NULL OR new.id = 0
-)
-BEGIN
- SELECT sq_o_stat_studybranch3_id.nextval
- INTO :new.id
- FROM dual;
-END;
-/
 
 
 -- rating
@@ -2756,10 +2672,6 @@ create index statdow_resid_idx on o_stat_dayofweek (resid);
 create index stathod_resid_idx on o_stat_hourofday (resid);
 create index statwee_resid_idx on o_stat_weekly (resid);
 create index statday_resid_idx on o_stat_daily (resid);
-create index stathor_resid_idx on o_stat_homeorg (resid);
-create index statorg_resid_idx on o_stat_orgtype (resid);
-create index statstl_resid_idx on o_stat_studylevel (resid);
-create index statstb_resid_idx on o_stat_studybranch3 (resid);
 
 -- group
 alter table o_bs_group_member add constraint member_identity_ctx foreign key (fk_identity_id) references o_bs_identity (id);
diff --git a/src/main/resources/database/postgresql/alter_12_4_x_to_12_5_0.sql b/src/main/resources/database/postgresql/alter_12_4_x_to_12_5_0.sql
index e13bc34027e..cdb68f1ccd5 100644
--- a/src/main/resources/database/postgresql/alter_12_4_x_to_12_5_0.sql
+++ b/src/main/resources/database/postgresql/alter_12_4_x_to_12_5_0.sql
@@ -78,6 +78,10 @@ update o_user set u_swissedupersonstudybranch1=null from o_bs_identity where id=
 update o_user set u_swissedupersonstudybranch2=null from o_bs_identity where id=fk_identity and status=199;
 update o_user set u_swissedupersonstudybranch3=null from o_bs_identity where id=fk_identity and status=199;
 
+drop table o_stat_homeorg;
+drop table o_stat_orgtype;
+drop table o_stat_studylevel;
+drop table o_stat_studybranch3;
 
 -- user data export
 create table o_user_data_export (
diff --git a/src/main/resources/database/postgresql/setupDatabase.sql b/src/main/resources/database/postgresql/setupDatabase.sql
index d53bfd6e526..42aa1b45ec4 100644
--- a/src/main/resources/database/postgresql/setupDatabase.sql
+++ b/src/main/resources/database/postgresql/setupDatabase.sql
@@ -550,19 +550,6 @@ create table o_loggingtable (
 	sourceclass varchar(255),
 	sessionid varchar(255) not null,
 	user_id int8,
-	username varchar(255),
-	userproperty1 varchar(255),
-	userproperty2 varchar(255),
-	userproperty3 varchar(255),
-	userproperty4 varchar(255),
-	userproperty5 varchar(255),
-	userproperty6 varchar(255),
-	userproperty7 varchar(255),
-	userproperty8 varchar(255),
-	userproperty9 varchar(255),
-	userproperty10 varchar(255),
-	userproperty11 varchar(255),
-	userproperty12 varchar(255),
 	actioncrudtype varchar(1) not null,
 	actionverb varchar(16) not null,
 	actionobject varchar(32) not null,
@@ -1096,34 +1083,6 @@ create table o_stat_daily (
 create index statday_resid_idx on o_stat_daily (resid);
 
 
---insert into o_stat_homeorg (businesspath,resid,homeorg,value) select businesspath,substr(businesspath,locate(':',businesspath)+1,locate(']',businesspath)-locate(':',businesspath)-1) resid,userproperty2 homeorg,count(*) cnt from o_loggingtable where actionverb='launch' and actionobject='node' group by businesspath,homeorg;
-create table o_stat_homeorg (
-
-	id bigserial,
-	businesspath varchar(2048) not null,
-	resid int8 not null,
-	homeorg varchar(255) not null,
-	value int4 not null,
-	primary key (id)
-
-);
-create index stathor_resid_idx on o_stat_homeorg (resid);
-
-
---insert into o_stat_orgtype (businesspath,resid,orgtype,value) select businesspath,substr(businesspath,locate(':',businesspath)+1,locate(']',businesspath)-locate(':',businesspath)-1) resid,userproperty4 orgtype,count(*) cnt from o_loggingtable where actionverb='launch' and actionobject='node' group by businesspath,orgtype;
-create table o_stat_orgtype (
-
-	id bigserial,
-	businesspath varchar(2048) not null,
-	resid int8 not null,
-	orgtype varchar(255),
-	value int4 not null,
-	primary key (id)
-
-);
-create index statorg_resid_idx on o_stat_orgtype (resid);
-
-
 --insert into o_stat_studylevel (businesspath,resid,studylevel,value) select businesspath,substr(businesspath,locate(':',businesspath)+1,locate(']',businesspath)-locate(':',businesspath)-1) resid,userproperty3 studylevel,count(*) cnt from o_loggingtable where actionverb='launch' and actionobject='node' group by businesspath,studylevel;
 create table o_stat_studylevel (
 
diff --git a/src/test/java/org/olat/course/statistic/WeeklyStatisticUpdateManagerTest.java b/src/test/java/org/olat/course/statistic/WeeklyStatisticUpdateManagerTest.java
index 0c2d2d4da22..7156e620df3 100644
--- a/src/test/java/org/olat/course/statistic/WeeklyStatisticUpdateManagerTest.java
+++ b/src/test/java/org/olat/course/statistic/WeeklyStatisticUpdateManagerTest.java
@@ -151,7 +151,6 @@ public class WeeklyStatisticUpdateManagerTest extends AbstractStatisticUpdateMan
 		Calendar cal = addLog(repositoryEntry.getKey(), courseNode.getIdent(), start, dayInPast, hour, minute, second);
 		
 		String week = getWeekString(cal);
-		System.out.println(cal.getTime() + " " + week);
 		incrementInMemoryStatistics(repositoryEntry.getKey(), courseNode.getIdent(), week);
 		return week;
 	}
-- 
GitLab