X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=source%2Fmircoders%2Fservlet%2FServletModuleUsers.java;h=4d29ed4f771ecb38bed49e64b523abce94793112;hb=6b6b6215ebe066b81f1fa6b0c71a532ca7b4fc3f;hp=5c2d9f8c0e1d50b37ed30c4874e2d094eb398cb2;hpb=855ecf8acedb12afbab7a621b2e2c0cf45b2f98f;p=mir.git diff --git a/source/mircoders/servlet/ServletModuleUsers.java b/source/mircoders/servlet/ServletModuleUsers.java index 5c2d9f8c..4d29ed4f 100755 --- a/source/mircoders/servlet/ServletModuleUsers.java +++ b/source/mircoders/servlet/ServletModuleUsers.java @@ -30,23 +30,13 @@ package mircoders.servlet; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Locale; -import java.util.Map; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - +import mir.entity.adapter.EntityAdapterEngine; import mir.entity.adapter.EntityAdapterModel; -import mir.entity.adapter.EntityIteratorAdapter; import mir.log.LoggerWrapper; import mir.servlet.ServletModule; import mir.servlet.ServletModuleExc; import mir.servlet.ServletModuleFailure; import mir.servlet.ServletModuleUserExc; -import mir.util.CachingRewindableIterator; import mir.util.HTTPRequestParser; import mir.util.URLBuilder; import mircoders.entity.EntityUsers; @@ -54,14 +44,13 @@ import mircoders.global.MirGlobal; import mircoders.module.ModuleUsers; import mircoders.storage.DatabaseUsers; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.util.*; + /** * - *

Title:

- *

Description:

- *

Copyright: Copyright (c) 2003

- *

Company:

- * @author not attributable - * @version 1.0 + * */ public class ServletModuleUsers extends ServletModule { @@ -74,9 +63,8 @@ public class ServletModuleUsers extends ServletModule logger = new LoggerWrapper("ServletModule.Users"); try { - model = MirGlobal.localizer().dataModel().adapterModel(); definition = "user"; - usersModule = new ModuleUsers(DatabaseUsers.getInstance()); + usersModule = new ModuleUsers(); mainModule = usersModule; } catch (Throwable e) { @@ -146,8 +134,7 @@ public class ServletModuleUsers extends ServletModule return newPassword; } - else - return null; + return null; } public void insert(HttpServletRequest aRequest, HttpServletResponse aResponse) @@ -170,7 +157,7 @@ public class ServletModuleUsers extends ServletModule logAdminUsage(aRequest, id, "object added"); if (requestParser.hasParameter("returnurl")) - redirect(aResponse, requestParser.getParameter("returnurl")); + ServletHelper.redirect(aResponse, requestParser.getParameter("returnurl")); else list(aRequest, aResponse); } @@ -202,7 +189,7 @@ public class ServletModuleUsers extends ServletModule logAdminUsage(aRequest, id, "object modified"); if (requestParser.hasParameter("returnurl")) - redirect(aResponse, requestParser.getParameter("returnurl")); + ServletHelper.redirect(aResponse, requestParser.getParameter("returnurl")); else list(aRequest, aResponse); } @@ -221,7 +208,7 @@ public class ServletModuleUsers extends ServletModule String newPassword=validatePassword(ServletHelper.getUser(aRequest), requestParser); if (newPassword!=null) { - user.setValueForProperty("password", MirGlobal.localizer().adminInterface().makePasswordDigest(newPassword)); + user.setFieldValue("password", MirGlobal.localizer().adminInterface().makePasswordDigest(newPassword)); user.update(); logAdminUsage(aRequest, id, "password changed"); @@ -231,9 +218,9 @@ public class ServletModuleUsers extends ServletModule } if (requestParser.hasParameter("returnurl")) - redirect(aResponse, requestParser.getParameter("returnurl")); + ServletHelper.redirect(aResponse, requestParser.getParameter("returnurl")); else - redirect(aResponse, ""); + ServletHelper.redirect(aResponse, ""); } catch (Throwable e) { throw new ServletModuleFailure(e); @@ -254,28 +241,17 @@ public class ServletModuleUsers extends ServletModule HttpServletResponse aResponse, int anOffset) throws ServletModuleExc { -// ML: to be deleted, support for 3 extra vars to be added - - HTTPRequestParser requestParser = new HTTPRequestParser(aRequest); URLBuilder urlBuilder = new URLBuilder(); - EntityAdapterModel model; - int count; try { Map responseData = ServletHelper.makeGenerationData(aRequest, aResponse, new Locale[] { getLocale(aRequest), getFallbackLocale(aRequest)}); - model = MirGlobal.localizer().dataModel().adapterModel(); - Object userList = - new CachingRewindableIterator( - new EntityIteratorAdapter( "", "login", nrEntitiesPerListPage, - MirGlobal.localizer().dataModel().adapterModel(), "user", nrEntitiesPerListPage, anOffset) - ); + List list = + EntityAdapterEngine.retrieveAdapterList(model, definition, "", "login", nrEntitiesPerListPage, anOffset); responseData.put("nexturl", null); responseData.put("prevurl", null); - count=mainModule.getSize(""); - urlBuilder.setValue("module", "Users"); urlBuilder.setValue("do", "list"); @@ -283,7 +259,7 @@ public class ServletModuleUsers extends ServletModule responseData.put("offset" , new Integer(anOffset).toString()); responseData.put("thisurl" , urlBuilder.getQuery()); - if (count>=anOffset+nrEntitiesPerListPage) { + if (list.size()>=nrEntitiesPerListPage) { urlBuilder.setValue("offset", (anOffset + nrEntitiesPerListPage)); responseData.put("nexturl" , urlBuilder.getQuery()); } @@ -293,14 +269,13 @@ public class ServletModuleUsers extends ServletModule responseData.put("prevurl" , urlBuilder.getQuery()); } - responseData.put("users", userList); + responseData.put("users", list); responseData.put("mayDeleteUsers", new Boolean(MirGlobal.accessControl().user().mayDeleteUsers(ServletHelper.getUser(aRequest)))); responseData.put("mayAddUsers", new Boolean(MirGlobal.accessControl().user().mayAddUsers(ServletHelper.getUser(aRequest)))); responseData.put("mayEditUsers", new Boolean(MirGlobal.accessControl().user().mayEditUsers(ServletHelper.getUser(aRequest)))); responseData.put("from" , Integer.toString(anOffset+1)); - responseData.put("count", Integer.toString(count)); - responseData.put("to", Integer.toString(Math.min(anOffset+nrEntitiesPerListPage, count))); + responseData.put("to", Integer.toString(anOffset+list.size())); responseData.put("offset" , Integer.toString(anOffset)); ServletHelper.generateResponse(aResponse.getWriter(), responseData, listGenerator); @@ -316,7 +291,7 @@ public class ServletModuleUsers extends ServletModule HTTPRequestParser requestParser = new HTTPRequestParser(aRequest); Map responseData = ServletHelper.makeGenerationData(aRequest, aResponse, new Locale[] { getLocale(aRequest), getFallbackLocale(aRequest)}); EntityAdapterModel model = MirGlobal.localizer().dataModel().adapterModel(); - Map user; + Object user; URLBuilder urlBuilder = new URLBuilder(); urlBuilder.setValue("module", "Users"); @@ -332,15 +307,15 @@ public class ServletModuleUsers extends ServletModule user = model.makeEntityAdapter("user", mainModule.getById(anId)); } else { - List fields = DatabaseUsers.getInstance().getFields(); + List fields = DatabaseUsers.getInstance().getFieldNames(); responseData.put("new", Boolean.TRUE); - user = new HashMap(); + Map emptyUser = new HashMap(); Iterator i = fields.iterator(); while (i.hasNext()) { - user.put(i.next(), null); + emptyUser.put(i.next(), null); } - MirGlobal.localizer().adminInterface().initializeArticle(user); + user = emptyUser; } responseData.put("user", user); responseData.put("passwordonly", new Boolean(anOnlyPassword));