diff --git a/src/main/java/org/olat/course/nodes/pf/ui/PFEditFormController.java b/src/main/java/org/olat/course/nodes/pf/ui/PFEditFormController.java
index 51611f3a9f59c5121f32d08baedd6a7de290c809..ae35beabcc653b15bd08ad866958ee4600cb406a 100644
--- a/src/main/java/org/olat/course/nodes/pf/ui/PFEditFormController.java
+++ b/src/main/java/org/olat/course/nodes/pf/ui/PFEditFormController.java
@@ -24,9 +24,9 @@ import java.util.Date;
 import org.olat.core.gui.UserRequest;
 import org.olat.core.gui.components.form.flexible.FormItem;
 import org.olat.core.gui.components.form.flexible.FormItemContainer;
-import org.olat.core.gui.components.form.flexible.elements.IntegerElement;
 import org.olat.core.gui.components.form.flexible.elements.SelectionElement;
 import org.olat.core.gui.components.form.flexible.elements.SpacerElement;
+import org.olat.core.gui.components.form.flexible.elements.TextElement;
 import org.olat.core.gui.components.form.flexible.impl.FormBasicController;
 import org.olat.core.gui.components.form.flexible.impl.FormEvent;
 import org.olat.core.gui.components.form.flexible.impl.FormLayoutContainer;
@@ -34,6 +34,7 @@ import org.olat.core.gui.components.form.flexible.impl.elements.JSDateChooser;
 import org.olat.core.gui.control.Controller;
 import org.olat.core.gui.control.Event;
 import org.olat.core.gui.control.WindowControl;
+import org.olat.core.util.StringHelper;
 import org.olat.course.nodes.PFCourseNode;
 /**
 *
@@ -43,7 +44,7 @@ import org.olat.course.nodes.PFCourseNode;
 public class PFEditFormController extends FormBasicController {
 	
 	private SelectionElement studentDropBox, teacherDropBox, alterFiles, limitFileCount, timeFrame;
-	private IntegerElement fileCount;
+	private TextElement fileCount;
 	private JSDateChooser dateStart, dateEnd;
 	private SpacerElement spacerEl;
 	
@@ -56,7 +57,6 @@ public class PFEditFormController extends FormBasicController {
 		initForm(ureq);
 	}
 	
-	
 	@Override
 	protected void initForm(FormItemContainer formLayout, Controller listener, UserRequest ureq) {
 
@@ -90,7 +90,7 @@ public class PFEditFormController extends FormBasicController {
 		limitFileCount = uifactory.addCheckboxesHorizontal("limit.count", "blank.label", formLayout, new String[]{"xx"}, limitcount);
 		limitFileCount.addActionListener(FormEvent.ONCLICK);
 		limitFileCount.showLabel(Boolean.FALSE);
-		fileCount = uifactory.addIntegerElement("file.count", 3, formLayout);
+		fileCount = uifactory.addTextElement("file.count", 4, "3", formLayout);
 		fileCount.showLabel(Boolean.FALSE);
 		fileCount.setHelpTextKey("limit.count.coach.info", null);
 
@@ -106,8 +106,6 @@ public class PFEditFormController extends FormBasicController {
 			.setElementCssClass("o_sel_node_editor_submit");
 		
 		applyModuleConfig();
-		
-		
 	}
 	
 	private void applyModuleConfig () {
@@ -119,7 +117,7 @@ public class PFEditFormController extends FormBasicController {
 		boolean hasLimitCount = pfNode.hasLimitCountConfigured();
 		limitFileCount.select("xx", hasLimitCount);
 		limitFileCount.setVisible(hasStudentBox);
-		fileCount.setIntValue(pfNode.getLimitCount());
+		fileCount.setValue(String.valueOf(pfNode.getLimitCount()));
 		fileCount.setVisible(hasLimitCount);
 		boolean hasTimeFrame = pfNode.hasDropboxTimeFrameConfigured();
 		timeFrame.select("xx", hasTimeFrame);
@@ -187,7 +185,7 @@ public class PFEditFormController extends FormBasicController {
 
 	@Override
 	protected boolean validateFormLogic(UserRequest ureq) {
-		boolean allOk = true;
+		boolean allOk = super.validateFormLogic(ureq);
 		dateEnd.clearError();
 		dateStart.clearError();
 		fileCount.clearError();
@@ -216,23 +214,38 @@ public class PFEditFormController extends FormBasicController {
 			}			
 			// if file limit is enabled, ensure limit is greater than 0
 			if (limitFileCount.isSelected(0)) {
-				if (1 > fileCount.getIntValue()) {
-					fileCount.setErrorKey("filecount.error", null);
+				if(StringHelper.containsNonWhitespace(fileCount.getValue())) {
+					try {
+						int numOfFiles = Integer.parseInt(fileCount.getValue());
+						if (1 > numOfFiles) {
+							fileCount.setErrorKey("filecount.error", null);
+							allOk &= false;
+						}
+					} catch (NumberFormatException e) {
+						fileCount.setErrorKey("form.error.nointeger", null);
+						allOk &= false;
+					}
+				} else {
+					fileCount.setErrorKey("form.legende.mandatory", null);
 					allOk &= false;
 				}
 			}
 		}
-		return allOk & super.validateFormLogic(ureq);
+		return allOk;
 	}
 
-
 	@Override
 	protected void formOK(UserRequest ureq) {
+		int numOfFiles = 0;
+		if(fileCount.isVisible() && StringHelper.isLong(fileCount.getValue())) {
+			numOfFiles = Integer.parseInt(fileCount.getValue());
+		}
+	
 		pfNode.updateModuleConfig(studentDropBox.isSelected(0), 
 				teacherDropBox.isSelected(0), 
 				alterFiles.isSelected(0), 
 				limitFileCount.isSelected(0), 
-				fileCount.getIntValue(),
+				numOfFiles,
 				timeFrame.isSelected(0), 
 				dateStart.getDate(), 
 				dateEnd.getDate());
diff --git a/src/main/java/org/olat/resource/accesscontrol/ui/OrdersAdminController.java b/src/main/java/org/olat/resource/accesscontrol/ui/OrdersAdminController.java
index e7798ba50596bf220deb7c3e0307f7368170cdf1..0d05fa47d178a4fad4d22b851777c8e46dff6d34 100644
--- a/src/main/java/org/olat/resource/accesscontrol/ui/OrdersAdminController.java
+++ b/src/main/java/org/olat/resource/accesscontrol/ui/OrdersAdminController.java
@@ -38,10 +38,8 @@ import org.olat.core.gui.components.form.flexible.impl.elements.table.FlexiColum
 import org.olat.core.gui.components.form.flexible.impl.elements.table.FlexiTableColumnModel;
 import org.olat.core.gui.components.form.flexible.impl.elements.table.FlexiTableDataModelFactory;
 import org.olat.core.gui.components.form.flexible.impl.elements.table.SelectionEvent;
-import org.olat.core.gui.components.panel.StackedPanel;
 import org.olat.core.gui.components.stack.BreadcrumbPanel;
 import org.olat.core.gui.components.stack.BreadcrumbPanelAware;
-import org.olat.core.gui.components.velocity.VelocityContainer;
 import org.olat.core.gui.control.Controller;
 import org.olat.core.gui.control.Event;
 import org.olat.core.gui.control.WindowControl;
@@ -77,9 +75,6 @@ public class OrdersAdminController extends FormBasicController implements Activa
 	
 	private static final String CMD_SELECT = "sel";
 
-	private StackedPanel mainPanel;
-	private VelocityContainer mainVC;
-	
 	private FlexiTableElement tableEl;
 	private OrdersDataSource dataSource;
 	private OrdersDataModel dataModel;
@@ -212,7 +207,6 @@ public class OrdersAdminController extends FormBasicController implements Activa
 		//
 	}
 
-	
 	@Override
 	protected void event(UserRequest ureq, Controller source, Event event) {
 		if (source == searchForm) {
@@ -222,7 +216,11 @@ public class OrdersAdminController extends FormBasicController implements Activa
 			}
 		} else if (source == detailController) {
 			if(event == Event.BACK_EVENT) {
-				mainPanel.setContent(mainVC);
+				if(stackPanel == null) {
+					initialPanel.popContent();
+				} else {
+					stackPanel.popController(detailController);
+				}
 				removeAsListenerAndDispose(detailController);
 				detailController = null;
 				addSearchToHistory(ureq);
@@ -256,7 +254,7 @@ public class OrdersAdminController extends FormBasicController implements Activa
 		listenTo(detailController);
 		
 		if(stackPanel == null) {
-			mainPanel.setContent(detailController.getInitialComponent());
+			initialPanel.pushContent(detailController.getInitialComponent());
 		} else {
 			detailController.hideBackLink();
 			stackPanel.pushController(order.getOrderNr(), detailController);