diff --git a/src/main/java/org/olat/course/reminder/ui/AttemptsRuleEditor.java b/src/main/java/org/olat/course/reminder/ui/AttemptsRuleEditor.java
index d21c51e6513f4d859f0fd561f289a476fa588cb4..07726fc4185938f50bd206533fc0ee34e34c8a54 100644
--- a/src/main/java/org/olat/course/reminder/ui/AttemptsRuleEditor.java
+++ b/src/main/java/org/olat/course/reminder/ui/AttemptsRuleEditor.java
@@ -74,6 +74,7 @@ public class AttemptsRuleEditor extends RuleEditorFragment {
 				.createCustomFormLayout("attempts.".concat(id), formLayout.getTranslator(), page);
 		ruleCont.setRootForm(formLayout.getRootForm());
 		formLayout.add(ruleCont);
+		ruleCont.getFormItemComponent().contextPut("id", id);
 		
 		ICourse course = CourseFactory.loadCourse(entry.getOlatResource());
 		
@@ -101,7 +102,7 @@ public class AttemptsRuleEditor extends RuleEditorFragment {
 			nodeValues[i] = attemptableNode.getShortTitle() + " ( " + attemptableNode.getIdent() + " )";
 		}
 		
-		courseNodeEl = uifactory.addDropdownSingleselect("coursenodes", null, ruleCont, nodeKeys, nodeValues, null);
+		courseNodeEl = uifactory.addDropdownSingleselect("coursenodes.".concat(id), null, ruleCont, nodeKeys, nodeValues, null);
 		courseNodeEl.setDomReplacementWrapperRequired(false);
 		boolean nodeSelected = false;
 		if(currentCourseNode != null) {
@@ -119,7 +120,7 @@ public class AttemptsRuleEditor extends RuleEditorFragment {
 			courseNodeEl.setErrorKey("error.course.node.found", null);
 		}
 
-		operatorEl = uifactory.addDropdownSingleselect("operators", null, ruleCont, operatorKeys, operatorKeys, null);
+		operatorEl = uifactory.addDropdownSingleselect("operators.".concat(id), null, ruleCont, operatorKeys, operatorKeys, null);
 		operatorEl.setDomReplacementWrapperRequired(false);
 		boolean opSelected = false;
 		if(currentOperator != null) {
@@ -134,7 +135,7 @@ public class AttemptsRuleEditor extends RuleEditorFragment {
 			operatorEl.select(operatorKeys[2], true);
 		}
 
-		valueEl = uifactory.addTextElement("value", null, 128, currentValue, ruleCont);
+		valueEl = uifactory.addTextElement("value.".concat(id), null, 128, currentValue, ruleCont);
 		valueEl.setDomReplacementWrapperRequired(false);
 		valueEl.setDisplaySize(3);
 		
@@ -180,6 +181,9 @@ public class AttemptsRuleEditor extends RuleEditorFragment {
 		if(!StringHelper.containsNonWhitespace(valueEl.getValue())) {
 			valueEl.setErrorKey("form.mandatory.hover", null);
 			allOk &= false;
+		} else if(!StringHelper.isLong(valueEl.getValue())) {
+			valueEl.setErrorKey("error.int", null);
+			allOk &= false;
 		}
 		
 		return allOk;
diff --git a/src/main/java/org/olat/course/reminder/ui/InitialAttemptsRuleEditor.java b/src/main/java/org/olat/course/reminder/ui/InitialAttemptsRuleEditor.java
index 95d605e53edf2e061afe17532cc63e676ca03f0e..5cd929f46eb45b5cc1b2f37ea59f283600b64c08 100644
--- a/src/main/java/org/olat/course/reminder/ui/InitialAttemptsRuleEditor.java
+++ b/src/main/java/org/olat/course/reminder/ui/InitialAttemptsRuleEditor.java
@@ -78,6 +78,7 @@ public class InitialAttemptsRuleEditor extends RuleEditorFragment {
 				.createCustomFormLayout("attempts.".concat(id), formLayout.getTranslator(), page);
 		ruleCont.setRootForm(formLayout.getRootForm());
 		formLayout.add(ruleCont);
+		ruleCont.getFormItemComponent().contextPut("id", id);
 		
 		ICourse course = CourseFactory.loadCourse(entry.getOlatResource());
 		
@@ -105,7 +106,7 @@ public class InitialAttemptsRuleEditor extends RuleEditorFragment {
 			nodeValues[i] = attemptableNode.getShortTitle() + " ( " + attemptableNode.getIdent() + " )";
 		}
 		
-		courseNodeEl = uifactory.addDropdownSingleselect("coursenodes", null, ruleCont, nodeKeys, nodeValues, null);
+		courseNodeEl = uifactory.addDropdownSingleselect("coursenodes.".concat(id), null, ruleCont, nodeKeys, nodeValues, null);
 		courseNodeEl.setDomReplacementWrapperRequired(false);
 		boolean nodeSelected = false;
 		if(currentCourseNode != null) {
@@ -123,7 +124,7 @@ public class InitialAttemptsRuleEditor extends RuleEditorFragment {
 			courseNodeEl.setErrorKey("error.course.node.found", null);
 		}
 
-		valueEl = uifactory.addTextElement("attemptvalue", null, 128, currentValue, ruleCont);
+		valueEl = uifactory.addTextElement("attemptvalue.".concat(id), null, 128, currentValue, ruleCont);
 		valueEl.setDomReplacementWrapperRequired(false);
 		valueEl.setDisplaySize(3);
 
@@ -132,7 +133,7 @@ public class InitialAttemptsRuleEditor extends RuleEditorFragment {
 				trans.translate(LaunchUnit.month.name()), trans.translate(LaunchUnit.year.name())
 		};
 
-		unitEl = uifactory.addDropdownSingleselect("attemptunit", null, ruleCont, unitKeys, unitValues, null);
+		unitEl = uifactory.addDropdownSingleselect("attemptunit.".concat(id), null, ruleCont, unitKeys, unitValues, null);
 		unitEl.setDomReplacementWrapperRequired(false);
 		boolean selected = false;
 		if(currentUnit != null) {
@@ -184,6 +185,9 @@ public class InitialAttemptsRuleEditor extends RuleEditorFragment {
 		if(!StringHelper.containsNonWhitespace(valueEl.getValue())) {
 			valueEl.setErrorKey("form.mandatory.hover", null);
 			allOk &= false;
+		} else if(!StringHelper.isLong(valueEl.getValue())) {
+			valueEl.setErrorKey("error.int", null);
+			allOk &= false;
 		}
 		
 		return allOk;
diff --git a/src/main/java/org/olat/course/reminder/ui/PassedRuleEditor.java b/src/main/java/org/olat/course/reminder/ui/PassedRuleEditor.java
index 9a77780fadf674350f2fb60f0f6ee12fd1c3c9f8..8a06ddfda35d23bbb472d7059a545fcb32bf2d53 100644
--- a/src/main/java/org/olat/course/reminder/ui/PassedRuleEditor.java
+++ b/src/main/java/org/olat/course/reminder/ui/PassedRuleEditor.java
@@ -72,6 +72,7 @@ public class PassedRuleEditor extends RuleEditorFragment {
 				.createCustomFormLayout("attempts.".concat(id), formLayout.getTranslator(), page);
 		ruleCont.setRootForm(formLayout.getRootForm());
 		formLayout.add(ruleCont);
+		ruleCont.getFormItemComponent().contextPut("id", id);
 		
 		ICourse course = CourseFactory.loadCourse(entry.getOlatResource());
 
@@ -95,7 +96,7 @@ public class PassedRuleEditor extends RuleEditorFragment {
 			nodeValues[i] = attemptableNode.getShortTitle() + " ( " + attemptableNode.getIdent() + " )";
 		}
 		
-		courseNodeEl = uifactory.addDropdownSingleselect("coursenodes", null, ruleCont, nodeKeys, nodeValues, null);
+		courseNodeEl = uifactory.addDropdownSingleselect("coursenodes.".concat(id), null, ruleCont, nodeKeys, nodeValues, null);
 		courseNodeEl.setDomReplacementWrapperRequired(false);
 		boolean nodeSelected = false;
 		if(currentCourseNode != null) {
@@ -118,7 +119,7 @@ public class PassedRuleEditor extends RuleEditorFragment {
 			trans.translate("passed"), trans.translate("failed")
 		};
 
-		statusEl = uifactory.addDropdownSingleselect("status", null, ruleCont, statusKeys, statusValues, null);
+		statusEl = uifactory.addDropdownSingleselect("status.".concat(id), null, ruleCont, statusKeys, statusValues, null);
 		statusEl.setDomReplacementWrapperRequired(false);
 		boolean statusSelected = false;
 		if(currentStatus != null) {
diff --git a/src/main/java/org/olat/course/reminder/ui/ScoreRuleEditor.java b/src/main/java/org/olat/course/reminder/ui/ScoreRuleEditor.java
index 8448b04317087343e76cad18ecd73071b0761a9b..54b1c2b1afd1a6d8c31e68b354df7a8a38aff59c 100644
--- a/src/main/java/org/olat/course/reminder/ui/ScoreRuleEditor.java
+++ b/src/main/java/org/olat/course/reminder/ui/ScoreRuleEditor.java
@@ -72,6 +72,7 @@ public class ScoreRuleEditor extends RuleEditorFragment {
 				.createCustomFormLayout("attempts.".concat(id), formLayout.getTranslator(), page);
 		ruleCont.setRootForm(formLayout.getRootForm());
 		formLayout.add(ruleCont);
+		ruleCont.getFormItemComponent().contextPut("id", id);
 		
 		ICourse course = CourseFactory.loadCourse(entry.getOlatResource());
 		
@@ -99,7 +100,7 @@ public class ScoreRuleEditor extends RuleEditorFragment {
 			nodeValues[i] = attemptableNode.getShortTitle() + " ( " + attemptableNode.getIdent() + " )";
 		}
 		
-		courseNodeEl = uifactory.addDropdownSingleselect("coursenodes", null, ruleCont, nodeKeys, nodeValues, null);
+		courseNodeEl = uifactory.addDropdownSingleselect("coursenodes.".concat(id), null, ruleCont, nodeKeys, nodeValues, null);
 		courseNodeEl.setDomReplacementWrapperRequired(false);
 		boolean nodeSelected = false;
 		if(currentCourseNode != null) {
@@ -117,7 +118,7 @@ public class ScoreRuleEditor extends RuleEditorFragment {
 			courseNodeEl.setErrorKey("error.course.node.found", null);
 		}
 
-		operatorEl = uifactory.addDropdownSingleselect("operators", null, ruleCont, operatorKeys, operatorKeys, null);
+		operatorEl = uifactory.addDropdownSingleselect("operators.".concat(id), null, ruleCont, operatorKeys, operatorKeys, null);
 		operatorEl.setDomReplacementWrapperRequired(false);
 		boolean opSelected = false;
 		if(currentOperator != null) {
@@ -132,7 +133,7 @@ public class ScoreRuleEditor extends RuleEditorFragment {
 			operatorEl.select(operatorKeys[2], true);
 		}
 
-		valueEl = uifactory.addTextElement("value", null, 128, currentValue, ruleCont);
+		valueEl = uifactory.addTextElement("value.".concat(id), null, 128, currentValue, ruleCont);
 		valueEl.setDomReplacementWrapperRequired(false);
 		valueEl.setDisplaySize(3);
 		
diff --git a/src/main/java/org/olat/course/reminder/ui/_content/attempts.html b/src/main/java/org/olat/course/reminder/ui/_content/attempts.html
index c1c963493b98bdcb7de06fd0548740e178f7a65e..61fa10168707fc0ea9d3b84e9f532b8837c4eef3 100644
--- a/src/main/java/org/olat/course/reminder/ui/_content/attempts.html
+++ b/src/main/java/org/olat/course/reminder/ui/_content/attempts.html
@@ -1,12 +1,12 @@
 <div class='form-inline'>
-	$r.render("coursenodes") $r.render("operators") $r.render("value")
-	#if($f.hasError("value"))
-		<br/>$r.render("value_ERROR")
+	$r.render("coursenodes.${id}") $r.render("operators.${id}") $r.render("value.${id}")
+	#if($f.hasError("value.${id}"))
+		<br/>$r.render("value.${id}_ERROR")
 	#end
-	#if($f.hasError("coursenodes"))
-		<br/>$r.render("coursenodes_ERROR")
+	#if($f.hasError("coursenodes.${id}"))
+		<br/>$r.render("coursenodes.${id}_ERROR")
 	#end
-	#if($f.hasError("operators"))
-		<br/>$r.render("operators_ERROR")
+	#if($f.hasError("operators.${id}"))
+		<br/>$r.render("operators.${id}_ERROR")
 	#end
 </div>
\ No newline at end of file
diff --git a/src/main/java/org/olat/course/reminder/ui/_content/initial_attempts.html b/src/main/java/org/olat/course/reminder/ui/_content/initial_attempts.html
index c2654af1f16d740e9f58c46f0438be84c60d1e0a..d3624f6b41006151ad98c0a4699ef238a30414f2 100644
--- a/src/main/java/org/olat/course/reminder/ui/_content/initial_attempts.html
+++ b/src/main/java/org/olat/course/reminder/ui/_content/initial_attempts.html
@@ -1,12 +1,12 @@
 <div class='form-inline'>
-	$r.render("coursenodes") $r.render("attemptvalue") $r.render("attemptunit") <span class="form-control-static">$r.translate("ago")</span>
-	#if($f.hasError("attemptvalue"))
-		<br/>$r.render("attemptvalue_ERROR")
+	$r.render("coursenodes.${id}") $r.render("attemptvalue.${id}") $r.render("attemptunit.${id}") <span class="form-control-static">$r.translate("ago")</span>
+	#if($f.hasError("attemptvalue.${id}"))
+		<br/>$r.render("attemptvalue.${id}_ERROR")
 	#end
-	#if($f.hasError("coursenodes"))
-		<br/>$r.render("coursenodes_ERROR")
+	#if($f.hasError("coursenodes.${id}"))
+		<br/>$r.render("coursenodes.${id}_ERROR")
 	#end
-	#if($f.hasError("attemptunit"))
-		<br/>$r.render("attemptunit_ERROR")
+	#if($f.hasError("attemptunit.${id}"))
+		<br/>$r.render("attemptunit.${id}_ERROR")
 	#end
 </div>
\ No newline at end of file
diff --git a/src/main/java/org/olat/course/reminder/ui/_content/passed.html b/src/main/java/org/olat/course/reminder/ui/_content/passed.html
index 00770da7995ebc22075dc90ed8b51533c8121a94..d24697bfd7941862c6b4b927896306cec087a5e3 100644
--- a/src/main/java/org/olat/course/reminder/ui/_content/passed.html
+++ b/src/main/java/org/olat/course/reminder/ui/_content/passed.html
@@ -1,9 +1,9 @@
 <div class='form-inline'>
-	$r.render("coursenodes") $r.render("status")
-	#if($f.hasError("status"))
-		<br/>$r.render("status_ERROR")
+	$r.render("coursenodes.${id}") $r.render("status.${id}")
+	#if($f.hasError("status.${id}"))
+		<br/>$r.render("status.${id}_ERROR")
 	#end
-	#if($f.hasError("coursenodes"))
-		<br/>$r.render("coursenodes_ERROR")
+	#if($f.hasError("coursenodes.${id}"))
+		<br/>$r.render("coursenodes.${id}_ERROR")
 	#end
 </div>
\ No newline at end of file
diff --git a/src/main/java/org/olat/course/reminder/ui/_content/score.html b/src/main/java/org/olat/course/reminder/ui/_content/score.html
index bd97aff2cde740ffcb828cfe8cd6c0082fb02445..b6297e35c6954887e71a228864db9c7b2671e07c 100644
--- a/src/main/java/org/olat/course/reminder/ui/_content/score.html
+++ b/src/main/java/org/olat/course/reminder/ui/_content/score.html
@@ -1,12 +1,12 @@
 <div class='form-inline'>
-	$r.render("coursenodes") $r.render("operators") $r.render("value") <span class="form-control-static">$r.translate("points")</span>
-	#if($f.hasError("value"))
-		<br/>$r.render("value_ERROR")
+	$r.render("coursenodes.${id}") $r.render("operators.${id}") $r.render("value.${id}") <span class="form-control-static">$r.translate("points")</span>
+	#if($f.hasError("value.${id}"))
+		<br/>$r.render("value.${id}_ERROR")
 	#end
-	#if($f.hasError("coursenodes"))
-		<br/>$r.render("coursenodes_ERROR")
+	#if($f.hasError("coursenodes.${id}"))
+		<br/>$r.render("coursenodes.${id}_ERROR")
 	#end
-	#if($f.hasError("operators"))
-		<br/>$r.render("operators_ERROR")
+	#if($f.hasError("operators.${id}"))
+		<br/>$r.render("operators.${id}_ERROR")
 	#end
 </div>
\ No newline at end of file
diff --git a/src/main/java/org/olat/course/reminder/ui/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/course/reminder/ui/_i18n/LocalStrings_de.properties
index 45e19ac06366e754fdae44a00ccdeca00fc9081a..a071d1f680713a3597b968e8695b54db4ebb8a8e 100644
--- a/src/main/java/org/olat/course/reminder/ui/_i18n/LocalStrings_de.properties
+++ b/src/main/java/org/olat/course/reminder/ui/_i18n/LocalStrings_de.properties
@@ -14,6 +14,7 @@ duplicate=Duplizieren
 edit.reminder=Erinnerung bearbeiten
 email.content=E-Mail
 error.course.node.found=Kurselement existiert nicht mehr
+error.int=Ganzzahliger Wert erwartet
 failed=Fehlgeschlagen
 logs=Protokoll versendeter Erinnerungen
 logs.intro=In der untenstehenden Liste sind alle versendeten Erinnerungen aufgeführt.
diff --git a/src/main/java/org/olat/course/reminder/ui/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/course/reminder/ui/_i18n/LocalStrings_en.properties
index dfa714d8af5f5b7eb129dbb426215d3b618fa89f..e600b83a185c7f32257a1aa72c2204994dc2a8cd 100644
--- a/src/main/java/org/olat/course/reminder/ui/_i18n/LocalStrings_en.properties
+++ b/src/main/java/org/olat/course/reminder/ui/_i18n/LocalStrings_en.properties
@@ -14,6 +14,7 @@ duplicate=Duplicate
 edit.reminder=Edit reminder
 email.content=E-Mail
 error.course.node.found=The course element doesn't exist
+error.int=Value should be an integer
 failed=Failed
 logs=Sent reminder log
 logs.intro=All sent reminders are listed in the log below.
diff --git a/src/main/java/org/olat/modules/reminder/ui/BusinessGroupRoleEditor.java b/src/main/java/org/olat/modules/reminder/ui/BusinessGroupRoleEditor.java
index 7cc4770b3c2a2aae51f0cd89ec0625fd8e54ac4d..1caf82b82e9f387f0eb64b76e1bbed3c8b46986e 100644
--- a/src/main/java/org/olat/modules/reminder/ui/BusinessGroupRoleEditor.java
+++ b/src/main/java/org/olat/modules/reminder/ui/BusinessGroupRoleEditor.java
@@ -68,6 +68,7 @@ public class BusinessGroupRoleEditor extends RuleEditorFragment {
 				.createCustomFormLayout(".".concat(id), formLayout.getTranslator(), page);
 		ruleCont.setRootForm(formLayout.getRootForm());
 		formLayout.add(ruleCont);
+		ruleCont.getFormItemComponent().contextPut("id", id);
 		
 		String currentKey = null;
 		if(rule instanceof ReminderRuleImpl) {
@@ -89,7 +90,7 @@ public class BusinessGroupRoleEditor extends RuleEditorFragment {
 			values[count++] = businessGroup.getName();
 		}
 		
-		groupEl = uifactory.addDropdownSingleselect("ruleElement", null, ruleCont, keys, values, null);
+		groupEl = uifactory.addDropdownSingleselect("ruleElement.".concat(id), null, ruleCont, keys, values, null);
 		if(selectedKey != null) {
 			groupEl.select(selectedKey, true);
 		}
diff --git a/src/main/java/org/olat/modules/reminder/ui/CourseLaunchRuleEditor.java b/src/main/java/org/olat/modules/reminder/ui/CourseLaunchRuleEditor.java
index c4d916d77bbbf89ec6d473e7a00c544ff39fb0c4..e614199ee8ea61308d1e58af8e4c2df961c9eb05 100644
--- a/src/main/java/org/olat/modules/reminder/ui/CourseLaunchRuleEditor.java
+++ b/src/main/java/org/olat/modules/reminder/ui/CourseLaunchRuleEditor.java
@@ -67,6 +67,7 @@ public class CourseLaunchRuleEditor extends RuleEditorFragment {
 				.createCustomFormLayout("course.launch.".concat(id), formLayout.getTranslator(), page);
 		ruleCont.setRootForm(formLayout.getRootForm());
 		formLayout.add(ruleCont);
+		ruleCont.getFormItemComponent().contextPut("id", id);
 		
 		String currentValue = null;
 		String currentUnit = null;
@@ -76,7 +77,7 @@ public class CourseLaunchRuleEditor extends RuleEditorFragment {
 			currentUnit = r.getRightUnit();
 		}
 
-		valueEl = uifactory.addTextElement("launchvalue", null, 128, currentValue, ruleCont);
+		valueEl = uifactory.addTextElement("launchvalue.".concat(id), null, 128, currentValue, ruleCont);
 		valueEl.setDomReplacementWrapperRequired(false);
 		valueEl.setDisplaySize(3);
 		
@@ -85,7 +86,7 @@ public class CourseLaunchRuleEditor extends RuleEditorFragment {
 				trans.translate(LaunchUnit.month.name()), trans.translate(LaunchUnit.year.name())
 		};
 		
-		unitEl = uifactory.addDropdownSingleselect("launchunit", null, ruleCont, unitKeys, unitValues, null);
+		unitEl = uifactory.addDropdownSingleselect("launchunit.".concat(id), null, ruleCont, unitKeys, unitValues, null);
 		unitEl.setDomReplacementWrapperRequired(false);
 		boolean selected = false;
 		if(currentUnit != null) {
diff --git a/src/main/java/org/olat/modules/reminder/ui/DateRuleEditor.java b/src/main/java/org/olat/modules/reminder/ui/DateRuleEditor.java
index fa2efb1f25dfe300b5652d1f906bccbda317e3e5..f5b09bd7de8d6ef38262698a45ea16ce71c687f6 100644
--- a/src/main/java/org/olat/modules/reminder/ui/DateRuleEditor.java
+++ b/src/main/java/org/olat/modules/reminder/ui/DateRuleEditor.java
@@ -61,6 +61,7 @@ public class DateRuleEditor extends RuleEditorFragment {
 				.createCustomFormLayout(".".concat(id), formLayout.getTranslator(), page);
 		ruleCont.setRootForm(formLayout.getRootForm());
 		formLayout.add(ruleCont);
+		ruleCont.getFormItemComponent().contextPut("id", id);
 		
 		Date after = null;
 		if(rule instanceof ReminderRuleImpl) {
@@ -72,7 +73,7 @@ public class DateRuleEditor extends RuleEditorFragment {
 			}
 		}
 		
-		afterEl = uifactory.addDateChooser("ruleElement", null, after, ruleCont);
+		afterEl = uifactory.addDateChooser("ruleElement.".concat(id), null, after, ruleCont);
 		afterEl.setDateChooserTimeEnabled(true);
 		return ruleCont;
 	}
diff --git a/src/main/java/org/olat/modules/reminder/ui/UserPropertyEditor.java b/src/main/java/org/olat/modules/reminder/ui/UserPropertyEditor.java
index a12b6dd91b6f53e14a68a12ac1263a656e9f6e01..44ea01b05bd9de8f5b115aee5c6b05d2bad5a9c7 100644
--- a/src/main/java/org/olat/modules/reminder/ui/UserPropertyEditor.java
+++ b/src/main/java/org/olat/modules/reminder/ui/UserPropertyEditor.java
@@ -70,6 +70,7 @@ public class UserPropertyEditor extends RuleEditorFragment {
 				.createCustomFormLayout("user.prop.".concat(id), formLayout.getTranslator(), page);
 		userPropCont.setRootForm(formLayout.getRootForm());
 		formLayout.add(userPropCont);
+		userPropCont.getFormItemComponent().contextPut("id", id);
 		
 		Translator trans = Util.createPackageTranslator(UserPropertyHandler.class, ureq.getLocale(), formLayout.getTranslator());
 		
@@ -91,7 +92,7 @@ public class UserPropertyEditor extends RuleEditorFragment {
 			currentPropertyValue = r.getRightOperand();
 		}
 		
-		propEl = uifactory.addDropdownSingleselect("user.prop", null, userPropCont, propKeys, propValues, null);
+		propEl = uifactory.addDropdownSingleselect("user.prop.".concat(id), null, userPropCont, propKeys, propValues, null);
 		propEl.setDomReplacementWrapperRequired(false);
 		if(currentPropertyName != null) {
 			for(String propKey:propKeys) {
@@ -101,7 +102,7 @@ public class UserPropertyEditor extends RuleEditorFragment {
 			}
 		}
 
-		valueEl = uifactory.addTextElement("user.value", null, 128, currentPropertyValue, userPropCont);
+		valueEl = uifactory.addTextElement("user.value.".concat(id), null, 128, currentPropertyValue, userPropCont);
 		valueEl.setDomReplacementWrapperRequired(false);
 
 		return userPropCont;
diff --git a/src/main/java/org/olat/modules/reminder/ui/_content/course_launch.html b/src/main/java/org/olat/modules/reminder/ui/_content/course_launch.html
index 5c7ae141ec08be91e8c5ea754d040e76e27c194a..f55a8ec530278821b75af53454d8e20dad16297a 100644
--- a/src/main/java/org/olat/modules/reminder/ui/_content/course_launch.html
+++ b/src/main/java/org/olat/modules/reminder/ui/_content/course_launch.html
@@ -1,6 +1,6 @@
 <div class='form-inline'>
-	$r.render("launchvalue") $r.render("launchunit") <span class="form-control-static">$r.translate("ago")</span>
-	#if($f.hasError("launchvalue"))
-		<br/>$r.render("launchvalue_ERROR")
+	$r.render("launchvalue.${id}") $r.render("launchunit.${id}") <span class="form-control-static">$r.translate("ago")</span>
+	#if($f.hasError("launchvalue.${id}"))
+		<br/>$r.render("launchvalue.${id}_ERROR")
 	#end
 </div>
\ No newline at end of file
diff --git a/src/main/java/org/olat/modules/reminder/ui/_content/rule_1_element.html b/src/main/java/org/olat/modules/reminder/ui/_content/rule_1_element.html
index 68823debe1f39192dfe7302fb99de6bb36e7d886..3a1a0d18f6a74d5a524fac22cbf8c3096084eb17 100644
--- a/src/main/java/org/olat/modules/reminder/ui/_content/rule_1_element.html
+++ b/src/main/java/org/olat/modules/reminder/ui/_content/rule_1_element.html
@@ -1,4 +1,4 @@
-$r.render("ruleElement")
-#if($f.hasError("ruleElement"))
-	<br/>$r.render("ruleElement_ERROR")
+$r.render("ruleElement.${id}")
+#if($f.hasError("ruleElement.${id}"))
+	<br/>$r.render("ruleElement.${id}_ERROR")
 #end
\ No newline at end of file
diff --git a/src/main/java/org/olat/modules/reminder/ui/_content/user_prop.html b/src/main/java/org/olat/modules/reminder/ui/_content/user_prop.html
index 9dc8c35d433a26558bd88bb936956b4762d23c64..f66b08ae1f2ca387b01f7b4e82c8d9141b4f6a5f 100644
--- a/src/main/java/org/olat/modules/reminder/ui/_content/user_prop.html
+++ b/src/main/java/org/olat/modules/reminder/ui/_content/user_prop.html
@@ -1,6 +1,6 @@
 <div class='form-inline'>
-	$r.render("user.prop") $r.render("user.value")
-	#if($f.hasError("user.value"))
-		<br/>$r.render("user.value_ERROR")
+	$r.render("user.prop.${id}") $r.render("user.value.${id}")
+	#if($f.hasError("user.value.${id}"))
+		<br/>$r.render("user.value.${id}_ERROR")
 	#end
 </div>
\ No newline at end of file