diff --git a/src/main/java/org/olat/admin/user/UserSearchController.java b/src/main/java/org/olat/admin/user/UserSearchController.java
index 2836932a88c805124ecda3a961bfb3087f019c34..32ba1630ae28f5d2bc1bb7bb459604ca81c7c630 100644
--- a/src/main/java/org/olat/admin/user/UserSearchController.java
+++ b/src/main/java/org/olat/admin/user/UserSearchController.java
@@ -295,13 +295,15 @@ public class UserSearchController extends BasicController {
 		for (UserPropertyHandler userPropertyHandler : searchform.userPropertyHandlers) {
 			if (userPropertyHandler == null) continue;
 			FormItem ui = searchform.propFormItems.get(userPropertyHandler.getName());
-			String uiValue = userPropertyHandler.getStringValue(ui);
-			if(userPropertyHandler.getName().startsWith("genericCheckboxProperty")) {
-				if(!"false".equals(uiValue)) {
+			if(ui != null) {
+				String uiValue = userPropertyHandler.getStringValue(ui);
+				if(userPropertyHandler.getName().startsWith("genericCheckboxProperty")) {
+					if(!"false".equals(uiValue)) {
+						userPropertiesSearch.put(userPropertyHandler.getName(), uiValue);
+					}
+				} else if (StringHelper.containsNonWhitespace(uiValue)) {
 					userPropertiesSearch.put(userPropertyHandler.getName(), uiValue);
 				}
-			} else if (StringHelper.containsNonWhitespace(uiValue)) {
-				userPropertiesSearch.put(userPropertyHandler.getName(), uiValue);
 			}
 		}
 		if (userPropertiesSearch.isEmpty()) {
diff --git a/src/main/java/org/olat/admin/user/UserSearchForm.java b/src/main/java/org/olat/admin/user/UserSearchForm.java
index eaac2c44869fb5f7842164923b01d9b4fecfe199..09fc1f82a64117e1d79a66d65602b911b13de100 100644
--- a/src/main/java/org/olat/admin/user/UserSearchForm.java
+++ b/src/main/java/org/olat/admin/user/UserSearchForm.java
@@ -36,6 +36,7 @@ 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.gui.translator.Translator;
+import org.olat.core.id.UserConstants;
 import org.olat.core.util.StringHelper;
 import org.olat.core.util.UserSession;
 import org.olat.core.util.Util;
@@ -156,17 +157,20 @@ public class UserSearchForm extends FormBasicController {
 		Translator tr = Util.createPackageTranslator(UserPropertyHandler.class, getLocale(),  getTranslator());
 
 		for (UserPropertyHandler userPropertyHandler : userPropertyHandlers) {
-			if (userPropertyHandler == null) continue;
+			if (userPropertyHandler == null || (userPropertyHandler.getName().equals(UserConstants.NICKNAME) && isAdminProps)) {
+				continue;
+			}
 			
 			FormItem fi = userPropertyHandler.addFormItem(getLocale(), null, getClass().getCanonicalName(), false, formLayout);
 			fi.setTranslator(tr);
 			
 			// DO NOT validate email field => see OLAT-3324, OO-155, OO-222
-			if (userPropertyHandler instanceof EmailProperty && fi instanceof TextElement) {
+			if ((userPropertyHandler instanceof EmailProperty || userPropertyHandler.getName().equals(UserConstants.NICKNAME)) 
+					&& fi instanceof TextElement) {
 				TextElement textElement = (TextElement)fi;
 				textElement.setItemValidatorProvider(null);
 			}
-			
+
 			fi.setElementCssClass("o_sel_user_search_".concat(userPropertyHandler.getName().toLowerCase()));
 			propFormItems.put(userPropertyHandler.getName(), fi);
 		}
diff --git a/src/main/java/org/olat/home/UserSearchAndInfoController.java b/src/main/java/org/olat/home/UserSearchAndInfoController.java
index b448d3de46550e04a997bcb3e5ecab934e706e99..9a0191c1520cb4262d4178317161fa23172e0502 100644
--- a/src/main/java/org/olat/home/UserSearchAndInfoController.java
+++ b/src/main/java/org/olat/home/UserSearchAndInfoController.java
@@ -72,17 +72,11 @@ public class UserSearchAndInfoController extends BasicController {
 		}
 	}
 
-	/**
-	 * @see org.olat.core.gui.control.DefaultController#event(org.olat.core.gui.UserRequest, org.olat.core.gui.components.Component, org.olat.core.gui.control.Event)
-	 */
 	@Override
 	protected void event(UserRequest ureq, Component source, Event event) {
 		//
 	}
 
-	/**
-	 * @see org.olat.core.gui.control.DefaultController#doDispose()
-	 */
 	@Override
 	protected void doDispose() {
 		//