Index: config/configuration/bundles/src/bundle/org/sakaiproject/config/bundle/default.sakai.properties =================================================================== --- config/configuration/bundles/src/bundle/org/sakaiproject/config/bundle/default.sakai.properties (revision 115620) +++ config/configuration/bundles/src/bundle/org/sakaiproject/config/bundle/default.sakai.properties (working copy) @@ -1415,3 +1415,8 @@ # There is a Quartz job that must be configured to run periodically (once per day or so) to expunge those sites. #site.soft.deletion=true #site.soft.deletion.gracetime=30 + +#SAK-22867 - User type selector +#user.type.selector.count=3 +#user.type.selector.1= +#user.type.selector.2=guest +#user.type.selector.3=registered Index: user/user-tool/tool/src/java/org/sakaiproject/user/tool/UsersAction.java =================================================================== --- user/user-tool/tool/src/java/org/sakaiproject/user/tool/UsersAction.java (revision 115620) +++ user/user-tool/tool/src/java/org/sakaiproject/user/tool/UsersAction.java (working copy) @@ -199,6 +199,17 @@ UsersActionState sstate = (UsersActionState)getState(context, rundata, UsersActionState.class); String status = sstate.getStatus(); + String[] userTypes = ServerConfigurationService.getStrings("user.type.selector"); + if(userTypes.length > 0) + context.put("userTypes", userTypes); // if not logged in as the super user, we won't do anything if ((!singleUser) && (!createUser) && (!SecurityService.isSuperUser())) { Index: user/user-tool/tool/src/webapp/vm/user/chef_users_edit.vm =================================================================== --- user/user-tool/tool/src/webapp/vm/user/chef_users_edit.vm (revision 115620) +++ user/user-tool/tool/src/webapp/vm/user/chef_users_edit.vm (working copy) @@ -135,7 +135,15 @@ $tlang.getString("usecre.typ") #if ($service.allowUpdateUserType($user.Id) || !$user) - + #if($userTypes) + + #else + + #end #else #if($user)$validator.escapeHtml($user.Type)#elseif($valueType)$validator.escapeHtml($valueType)#end #end