diff --git a/src/de/superx/common/Maske.java b/src/de/superx/common/Maske.java
index 0d35b47..633f50c 100644
--- a/src/de/superx/common/Maske.java
+++ b/src/de/superx/common/Maske.java
@@ -7,6 +7,7 @@ import java.io.StringReader;
 import java.io.StringWriter;
 import java.math.BigDecimal;
 import java.sql.Connection;
+import java.sql.PreparedStatement;
 import java.sql.SQLException;
 import java.text.ParseException;
 import java.util.ArrayList;
@@ -986,6 +987,10 @@ public class Maske extends NamedIdObject implements Serializable {
 		sharedData.setErgebnisElementOrdNr(0);
 		HashMap map = new HashMap();
 		map.putAll(user.getBasicMap());
+		if (SxPools.get(mandantenID).getRepository().containsKey("K_Nutzungsstatistiken")&&SxPools.get(mandantenID).getRepository().get("K_Nutzungsstatistiken").toString().equals("2"))
+		{
+			insertIntoMaskenProtokoll(user,dbCon);
+		}
 		if (!isReuseResult()) {
 			String keyfieldsused = ServletHelper.getParameter(request, "keyfieldsused");
 			if (EqualsUtil.areEqual(keyfieldsused, "true")) {
@@ -1067,8 +1072,25 @@ public class Maske extends NamedIdObject implements Serializable {
 		return resultstr;
 	}
 
-	// MB 17.8.2011 Defaultsicht setzen falls gewünscht
+	
 
+	private void insertIntoMaskenProtokoll(SxUser user, Connection dbCon) throws SQLException {
+		Connection con=dbCon;
+		boolean conUebergeben=true;
+		if (dbCon==null)
+		{
+			conUebergeben=false;
+			con=SxPools.get(mandantenID).getConnection();
+		}
+		PreparedStatement pst=con.prepareStatement("insert into masken_protokoll (maskeninfo_id,user_id,zeitpunkt) values (?,?,now());");
+		pst.setInt(1, Integer.parseInt(this.getId().toString()));
+		pst.setInt(2, Integer.parseInt(user.getId().toString()));
+		pst.executeUpdate();
+		pst.close();
+		if (!conUebergeben) {con.close();}
+		
+	}
+	// MB 17.8.2011 Defaultsicht setzen falls gewünscht
 	public void setFieldsDefaultSichten(SxUser user, HttpServletRequest request)
 			throws SQLException, DBServletException, KeyParentEqualException, CloneNotSupportedException,
 			SichtException, TemplateException, IOException, NoMainEntryException {
diff --git a/src/de/superx/servlet/SxPool.java b/src/de/superx/servlet/SxPool.java
index 24be64f..5694005 100644
--- a/src/de/superx/servlet/SxPool.java
+++ b/src/de/superx/servlet/SxPool.java
@@ -806,6 +806,7 @@ public class SxPool extends GenericObjectPool implements NamedObjectI {
 			initHasKontierungsrechte();
 			initJasper();
 			initSxMail();
+			deleteMaskenProtokoll();
 			SuperXmlAnmeldung.waitForPoolInit = false;
 		} catch (Exception e) {
 			SuperXmlAnmeldung.waitForPoolInit = false;
@@ -815,6 +816,19 @@ public class SxPool extends GenericObjectPool implements NamedObjectI {
 		}
 	}
 
+	private void deleteMaskenProtokoll() throws SQLException {
+		if (this.getRepository().containsKey("K_Nutzungsstatistiken loeschen nach Tagen")&&Integer.parseInt(getRepository().get("K_Nutzungsstatistiken loeschen nach Tagen").toString())>0)
+		{
+       Connection con=this.getConnection();
+       PreparedStatement pst=con.prepareStatement("delete from masken_protokoll where CURRENT_DATE - Zeitpunkt::date>=?");
+       pst.setInt(1, Integer.parseInt(getRepository().get("K_Nutzungsstatistiken loeschen nach Tagen").toString()));
+       pst.executeUpdate();
+       pst.close();
+       con.close();
+		}
+		
+	}
+
 	/**
 	 * Default jaxen Bibliothek wegen höherer Performance,
 	 * falls nicht über Konstante ausgeschaltet
diff --git a/superx/WEB-INF/conf/edustore/db/install/conf/kern.xml b/superx/WEB-INF/conf/edustore/db/install/conf/kern.xml
index 5f7099f..4a1e61e 100644
--- a/superx/WEB-INF/conf/edustore/db/install/conf/kern.xml
+++ b/superx/WEB-INF/conf/edustore/db/install/conf/kern.xml
@@ -4066,9 +4066,9 @@
 				
 				
+					notnull="true" description="Maske" />
 				
+					notnull="true" description="User" />