Index: lams_central/src/java/org/lamsfoundation/lams/gradebook/util/GradeBookConstants.java =================================================================== RCS file: /usr/local/cvsroot/lams_central/src/java/org/lamsfoundation/lams/gradebook/util/Attic/GradeBookConstants.java,v diff -u -r1.1 -r1.2 --- lams_central/src/java/org/lamsfoundation/lams/gradebook/util/GradeBookConstants.java 17 Mar 2009 01:07:31 -0000 1.1 +++ lams_central/src/java/org/lamsfoundation/lams/gradebook/util/GradeBookConstants.java 6 Apr 2009 05:32:45 -0000 1.2 @@ -22,16 +22,60 @@ /* $Id$ */ package org.lamsfoundation.lams.gradebook.util; - + +/** + * Constants for gradebook module + * + * @author lfoxton + * + */ public class GradeBookConstants { - public static String PARAM_PAGE = "page"; - public static String PARAM_ROWS = "rows"; - public static String PARAM_SIDX = "sidx"; - public static String PARAM_SORD = "sord"; - public static String PARAM_METHOD = "method"; - public static String PARAM_DISPATCH = "dispatch"; - public static String PARAM_LOGIN = "login"; + // Parameters + public static final String PARAM_PAGE = "page"; + public static final String PARAM_ROWS = "rows"; + public static final String PARAM_SIDX = "sidx"; + public static final String PARAM_SORD = "sord"; + public static final String PARAM_METHOD = "method"; + public static final String PARAM_DISPATCH = "dispatch"; + public static final String PARAM_LOGIN = "login"; + public static final String PARAM_ID = "id"; + public static final String PARAM_MARK = "mark"; + public static final String PARAM_FEEDBACK = "feedback"; + public static final String PARAM_USERID = "userID"; + public static final String PARAM_SEARCH = "_search"; + public static final String PARAM_SEARCH_FIELD = "searchField"; + public static final String PARAM_SEARCH_OPERATION = "searchOper"; + public static final String PARAM_SEARCH_STRING = "searchString"; + public static final String PARAM_ROW_NAME = "rowName"; + public static final String PARAM_TIME_TAKEN = "timeTaken"; + + // Sort + public static final String SORT_DESC = "desc"; + public static final String SORT_ASC = "asc"; + + // Search + public static final String SEARCH_EQUALS = "eq"; + public static final String SEARCH_NOT_EQUALS = "ne"; + public static final String SEARCH_BEGINS_WITH = "bw"; + public static final String SEARCH_ENDS_WITH = "ew"; + public static final String SEARCH_CONTAINS = "cn"; + + // Views + public static final String VIEW_ACTIVITY = "activityView"; + public static final String VIEW_USER = "userView"; + + // XML Elemetns + public static final String ELEMENT_ROWS = "rows"; + public static final String ELEMENT_PAGE = "page"; + public static final String ELEMENT_TOTAL = "total"; + public static final String ELEMENT_RECORDS = "records"; + public static final String ELEMENT_ROW = "row"; + public static final String ELEMENT_ID = "id"; + public static final String ELEMENT_CELL = "cell"; + + // Misc + public static final String CONTENT_TYPE_TEXTXML = "text/xml"; } \ No newline at end of file Index: lams_central/src/java/org/lamsfoundation/lams/gradebook/util/GradeBookUtil.java =================================================================== RCS file: /usr/local/cvsroot/lams_central/src/java/org/lamsfoundation/lams/gradebook/util/Attic/GradeBookUtil.java,v diff -u -r1.5 -r1.6 --- lams_central/src/java/org/lamsfoundation/lams/gradebook/util/GradeBookUtil.java 2 Apr 2009 02:27:55 -0000 1.5 +++ lams_central/src/java/org/lamsfoundation/lams/gradebook/util/GradeBookUtil.java 6 Apr 2009 05:32:45 -0000 1.6 @@ -110,33 +110,33 @@ Document document = getDocument(); // root element - Element rootElement = document.createElement("rows"); + Element rootElement = document.createElement(GradeBookConstants.ELEMENT_ROWS); - Element pageElement = document.createElement("page"); + Element pageElement = document.createElement(GradeBookConstants.ELEMENT_PAGE); pageElement.appendChild(document.createTextNode("" + page)); rootElement.appendChild(pageElement); - Element totalPageElement = document.createElement("total"); + Element totalPageElement = document.createElement(GradeBookConstants.ELEMENT_TOTAL); totalPageElement.appendChild(document.createTextNode("" + totalPages)); rootElement.appendChild(totalPageElement); - Element recordsElement = document.createElement("records"); + Element recordsElement = document.createElement(GradeBookConstants.ELEMENT_RECORDS); recordsElement.appendChild(document.createTextNode("" + gridRows.size())); rootElement.appendChild(recordsElement); Iterator iter = gridRows.iterator(); while (iter.hasNext()) { GradeBookGridRowDTO gridRow = (GradeBookGridRowDTO) iter.next(); - Element rowElement = document.createElement("row"); - rowElement.setAttribute("id", gridRow.getId().toString()); + Element rowElement = document.createElement(GradeBookConstants.ELEMENT_ROW); + rowElement.setAttribute(GradeBookConstants.ELEMENT_ID, gridRow.getId().toString()); // Work out which grid we want to put the data into ArrayList gridRowStringArray = new ArrayList(); gridRowStringArray = gridRow.toStringArray(view); for (String gradeBookItem : gridRowStringArray) { - Element cellElement = document.createElement("cell"); + Element cellElement = document.createElement(GradeBookConstants.ELEMENT_CELL); gradeBookItem = (gradeBookItem != null) ? gradeBookItem : ""; cellElement.appendChild(document.createTextNode(gradeBookItem)); rowElement.appendChild(cellElement); @@ -196,13 +196,13 @@ // Sort the list appropriately if (sortBy != null) { - if (sortBy.equals("rowName")) { + if (sortBy.equals(GradeBookConstants.PARAM_ROW_NAME)) { Collections.sort(gridRows, new GBRowNameComparator()); - } else if (sortBy.equals("mark")) { + } else if (sortBy.equals(GradeBookConstants.PARAM_MARK)) { Collections.sort(gridRows, new GBMarkComparator()); - } else if (sortBy.equals("id")) { + } else if (sortBy.equals(GradeBookConstants.PARAM_ID)) { Collections.sort(gridRows, new GBIDComparator()); - } else if (sortBy.equals("timeTaken")) { + } else if (sortBy.equals(GradeBookConstants.PARAM_TIME_TAKEN)) { Collections.sort(gridRows, new GBTimeTakenComparator()); } else { Collections.sort(gridRows, new GBRowNameComparator()); @@ -218,7 +218,7 @@ } // Reverse the order if requested - if (sortOrder != null && sortOrder.equals("desc")) { + if (sortOrder != null && sortOrder.equals(GradeBookConstants.SORT_DESC)) { Collections.reverse(gridRows); } @@ -239,7 +239,7 @@ private static List doRowNameSearch(List gradeBookRows, String searchField, String searchOper, String searchString) { List ret = new ArrayList(); - if (searchField.equals("rowName")) { + if (searchField.equals(GradeBookConstants.PARAM_ROW_NAME)) { Iterator it = gradeBookRows.iterator(); while (it.hasNext()) { @@ -248,23 +248,23 @@ String rowName = userRow.getRowName(); rowName = rowName.toLowerCase(); - if (searchOper.equals("eq")) { + if (searchOper.equals(GradeBookConstants.SEARCH_EQUALS)) { if (rowName.equals(searchString)) { ret.add(userRow); } - } else if (searchOper.equals("ne")) { + } else if (searchOper.equals(GradeBookConstants.SEARCH_NOT_EQUALS)) { if (!rowName.equals(searchString)) { ret.add(userRow); } - } else if (searchOper.equals("bw")) { + } else if (searchOper.equals(GradeBookConstants.SEARCH_BEGINS_WITH)) { if (rowName.startsWith(searchString)) { ret.add(userRow); } - } else if (searchOper.equals("ew")) { + } else if (searchOper.equals(GradeBookConstants.SEARCH_ENDS_WITH)) { if (rowName.endsWith(searchString)) { ret.add(userRow); } - } else if (searchOper.equals("cn")) { + } else if (searchOper.equals(GradeBookConstants.SEARCH_CONTAINS)) { if (rowName.contains(searchString)) { ret.add(userRow); } Index: lams_central/src/java/org/lamsfoundation/lams/gradebook/web/action/GradeBookAction.java =================================================================== RCS file: /usr/local/cvsroot/lams_central/src/java/org/lamsfoundation/lams/gradebook/web/action/Attic/GradeBookAction.java,v diff -u -r1.12 -r1.13 --- lams_central/src/java/org/lamsfoundation/lams/gradebook/web/action/GradeBookAction.java 3 Apr 2009 06:35:48 -0000 1.12 +++ lams_central/src/java/org/lamsfoundation/lams/gradebook/web/action/GradeBookAction.java 6 Apr 2009 05:32:45 -0000 1.13 @@ -113,11 +113,11 @@ int rowLimit = WebUtil.readIntParam(request, GradeBookConstants.PARAM_ROWS); String sortOrder = WebUtil.readStrParam(request, GradeBookConstants.PARAM_SORD); String sortBy = WebUtil.readStrParam(request, GradeBookConstants.PARAM_SIDX, true); - Boolean isSearch = WebUtil.readBooleanParam(request, "_search"); - String searchField = WebUtil.readStrParam(request, "searchField", true); - String searchOper = WebUtil.readStrParam(request, "searchOper", true); - String searchString = WebUtil.readStrParam(request, "searchString", true); - String view = WebUtil.readStrParam(request, "method"); + Boolean isSearch = WebUtil.readBooleanParam(request, GradeBookConstants.PARAM_SEARCH); + String searchField = WebUtil.readStrParam(request, GradeBookConstants.PARAM_SEARCH_FIELD, true); + String searchOper = WebUtil.readStrParam(request, GradeBookConstants.PARAM_SEARCH_OPERATION, true); + String searchString = WebUtil.readStrParam(request, GradeBookConstants.PARAM_SEARCH_STRING, true); + String view = WebUtil.readStrParam(request, GradeBookConstants.PARAM_METHOD); // Getting the lesson id Long lessonID = WebUtil.readLongParam(request, AttributeNames.PARAM_LESSON_ID); @@ -130,8 +130,8 @@ // Get the user gradebook list from the db // A slightly different list is needed for userview or activity view - if (view.equals("userView")) { - Integer userID = WebUtil.readIntParam(request, "userID"); + if (view.equals(GradeBookConstants.VIEW_USER)) { + Integer userID = WebUtil.readIntParam(request, GradeBookConstants.PARAM_USERID); User learner = (User) userService.findById(User.class, userID); if (learner != null) { gradeBookActivityDTOs = gradeBookService.getGBActivityRowsForLearner(lesson, learner); @@ -140,18 +140,18 @@ logger.error("No learner found for: " + userID); return null; } - } else if (view.equals("activityView")) { + } else if (view.equals(GradeBookConstants.VIEW_ACTIVITY)) { gradeBookActivityDTOs = gradeBookService.getGBActivityRowsForLesson(lesson); } if (sortBy == null) { - sortBy = "id"; + sortBy = GradeBookConstants.PARAM_ID; } String ret = GradeBookUtil.toGridXML(gradeBookActivityDTOs, view, sortBy, isSearch, searchField, searchOper, searchString, sortOrder, rowLimit, page); - response.setContentType("text/xml"); + response.setContentType(GradeBookConstants.CONTENT_TYPE_TEXTXML); PrintWriter out = response.getWriter(); out.print(ret); } else { @@ -192,11 +192,11 @@ int rowLimit = WebUtil.readIntParam(request, GradeBookConstants.PARAM_ROWS); String sortOrder = WebUtil.readStrParam(request, GradeBookConstants.PARAM_SORD); String sortBy = WebUtil.readStrParam(request, GradeBookConstants.PARAM_SIDX, true); - Boolean isSearch = WebUtil.readBooleanParam(request, "_search"); - String searchField = WebUtil.readStrParam(request, "searchField", true); - String searchOper = WebUtil.readStrParam(request, "searchOper", true); - String searchString = WebUtil.readStrParam(request, "searchString", true); - String view = WebUtil.readStrParam(request, "method"); + Boolean isSearch = WebUtil.readBooleanParam(request, GradeBookConstants.PARAM_SEARCH); + String searchField = WebUtil.readStrParam(request, GradeBookConstants.PARAM_SEARCH_FIELD, true); + String searchOper = WebUtil.readStrParam(request, GradeBookConstants.PARAM_SEARCH_OPERATION, true); + String searchString = WebUtil.readStrParam(request, GradeBookConstants.PARAM_SEARCH_STRING, true); + String view = WebUtil.readStrParam(request, GradeBookConstants.PARAM_METHOD); Long lessonID = WebUtil.readLongParam(request, AttributeNames.PARAM_LESSON_ID); @@ -207,9 +207,9 @@ // Get the user gradebook list from the db List gradeBookUserDTOs = new ArrayList(); - if (view.equals("userView") || view.equals("courseMonitorView")) { + if (view.equals(GradeBookConstants.VIEW_USER) || view.equals("courseMonitorView")) { gradeBookUserDTOs = gradeBookService.getGBUserRowsForLesson(lesson); - } else if (view.equals("activityView")) { + } else if (view.equals(GradeBookConstants.VIEW_ACTIVITY)) { Long activityID = WebUtil.readLongParam(request, AttributeNames.PARAM_ACTIVITY_ID); Activity activity = monitoringService.getActivityById(activityID); @@ -225,7 +225,7 @@ String ret = GradeBookUtil.toGridXML(gradeBookUserDTOs, view, sortBy, isSearch, searchField, searchOper, searchString, sortOrder, rowLimit, page); - response.setContentType("text/xml"); + response.setContentType(GradeBookConstants.CONTENT_TYPE_TEXTXML); PrintWriter out = response.getWriter(); out.print(ret); } else { @@ -262,11 +262,11 @@ int rowLimit = WebUtil.readIntParam(request, GradeBookConstants.PARAM_ROWS); String sortOrder = WebUtil.readStrParam(request, GradeBookConstants.PARAM_SORD); String sortBy = WebUtil.readStrParam(request, GradeBookConstants.PARAM_SIDX, true); - Boolean isSearch = WebUtil.readBooleanParam(request, "_search"); - String searchField = WebUtil.readStrParam(request, "searchField", true); - String searchOper = WebUtil.readStrParam(request, "searchOper", true); - String searchString = WebUtil.readStrParam(request, "searchString", true); - String view = WebUtil.readStrParam(request, "method"); + Boolean isSearch = WebUtil.readBooleanParam(request, GradeBookConstants.PARAM_SEARCH); + String searchField = WebUtil.readStrParam(request, GradeBookConstants.PARAM_SEARCH_FIELD, true); + String searchOper = WebUtil.readStrParam(request, GradeBookConstants.PARAM_SEARCH_OPERATION, true); + String searchString = WebUtil.readStrParam(request, GradeBookConstants.PARAM_SEARCH_STRING, true); + String view = WebUtil.readStrParam(request, GradeBookConstants.PARAM_METHOD); User user = getRealUser(); @@ -283,14 +283,14 @@ gradeBookLessonDTOs = gradeBookService.getGBLessonRows(organisation, user); if (sortBy == null) { - sortBy = "id"; + sortBy = GradeBookConstants.PARAM_ID; } // String ret = GradeBookUtil.toGridXML(gradeBookLessonDTOs, page, totalPages, method); String ret = GradeBookUtil.toGridXML(gradeBookLessonDTOs, view, sortBy, isSearch, searchField, searchOper, searchString, sortOrder, rowLimit, page); - response.setContentType("text/xml"); + response.setContentType(GradeBookConstants.CONTENT_TYPE_TEXTXML); PrintWriter out = response.getWriter(); out.print(ret); @@ -304,118 +304,6 @@ return null; } - @SuppressWarnings("unchecked") - private List doRowNameSearch(List gradeBookRows, String searchField, String searchOper, String searchString) { - List ret = new ArrayList(); - - if (searchField.equals("rowName")) { - Iterator it = gradeBookRows.iterator(); - - while (it.hasNext()) { - GradeBookGridRowDTO userRow = (GradeBookGridRowDTO) it.next(); - - String rowName = userRow.getRowName(); - rowName = rowName.toLowerCase(); - - if (searchOper.equals("eq")) { - if (rowName.equals(searchString)) { - ret.add(userRow); - } - } else if (searchOper.equals("ne")) { - if (!rowName.equals(searchString)) { - ret.add(userRow); - } - } else if (searchOper.equals("bw")) { - if (rowName.startsWith(searchString)) { - ret.add(userRow); - } - } else if (searchOper.equals("ew")) { - if (rowName.endsWith(searchString)) { - ret.add(userRow); - } - } else if (searchOper.equals("cn")) { - if (rowName.contains(searchString)) { - ret.add(userRow); - } - } - } - - } - return ret; - } - - // private List doUserSearch(List gradeBookUserDTOs, String searchField, - // String searchOper, String searchString) { - // List ret = new ArrayList(); - // - // if (searchField.equals("fullName")) { - // for (GBUserGridRowDTO userRow : gradeBookUserDTOs) { - // - // String fullName = userRow.getRowName(); - // fullName = fullName.toLowerCase(); - // - // if (searchOper.equals("eq")) { - // if (fullName.equals(searchString)) { - // ret.add(userRow); - // } - // } else if (searchOper.equals("ne")) { - // if (!fullName.equals(searchString)) { - // ret.add(userRow); - // } - // } else if (searchOper.equals("bw")) { - // if (fullName.startsWith(searchString)) { - // ret.add(userRow); - // } - // } else if (searchOper.equals("ew")) { - // if (fullName.endsWith(searchString)) { - // ret.add(userRow); - // } - // } else if (searchOper.equals("cn")) { - // if (fullName.contains(searchString)) { - // ret.add(userRow); - // } - // } - // } - // } - // return ret; - // } - // - // private List doLessonSearch(List gradeBookLessonDTOs , String searchField, - // String searchOper, String searchString) { - // List ret = new ArrayList(); - // - // if (searchField.equals("lessonName")) { - // for (GBLessonGridRowDTO lessonRow : gradeBookLessonDTOs) { - // - // String lessonName = lessonRow.getLessonName(); - // lessonName = lessonName.toLowerCase(); - // - // if (searchOper.equals("eq")) { - // if (lessonName.equals(searchString)) { - // ret.add(lessonRow); - // } - // } else if (searchOper.equals("ne")) { - // if (!lessonName.equals(searchString)) { - // ret.add(lessonRow); - // } - // } else if (searchOper.equals("bw")) { - // if (lessonName.startsWith(searchString)) { - // ret.add(lessonRow); - // } - // } else if (searchOper.equals("ew")) { - // if (lessonName.endsWith(searchString)) { - // ret.add(lessonRow); - // } - // } else if (searchOper.equals("cn")) { - // if (lessonName.contains(searchString)) { - // ret.add(lessonRow); - // } - // } - // } - // } - // return ret; - // } - private UserDTO getUser() { HttpSession ss = SessionManager.getSession(); return (UserDTO) ss.getAttribute(AttributeNames.USER); Index: lams_central/src/java/org/lamsfoundation/lams/gradebook/web/action/GradeBookMonitoringAction.java =================================================================== RCS file: /usr/local/cvsroot/lams_central/src/java/org/lamsfoundation/lams/gradebook/web/action/Attic/GradeBookMonitoringAction.java,v diff -u -r1.10 -r1.11 --- lams_central/src/java/org/lamsfoundation/lams/gradebook/web/action/GradeBookMonitoringAction.java 3 Apr 2009 06:35:48 -0000 1.10 +++ lams_central/src/java/org/lamsfoundation/lams/gradebook/web/action/GradeBookMonitoringAction.java 6 Apr 2009 05:32:44 -0000 1.11 @@ -41,7 +41,6 @@ import org.lamsfoundation.lams.usermanagement.Organisation; import org.lamsfoundation.lams.usermanagement.Role; import org.lamsfoundation.lams.usermanagement.User; -import org.lamsfoundation.lams.usermanagement.dto.OrganisationDTO; import org.lamsfoundation.lams.usermanagement.dto.UserDTO; import org.lamsfoundation.lams.usermanagement.service.IUserManagementService; import org.lamsfoundation.lams.util.WebUtil; @@ -173,9 +172,9 @@ HttpServletRequest request, HttpServletResponse response) throws Exception { initServices(); Long lessonID = WebUtil.readLongParam(request, AttributeNames.PARAM_LESSON_ID); - Integer userID = WebUtil.readIntParam(request, "id"); - String markStr = WebUtil.readStrParam(request, "mark", true); - String feedback = WebUtil.readStrParam(request, "feedback", true); + Integer userID = WebUtil.readIntParam(request, GradeBookConstants.PARAM_ID); + String markStr = WebUtil.readStrParam(request, GradeBookConstants.PARAM_MARK, true); + String feedback = WebUtil.readStrParam(request, GradeBookConstants.PARAM_FEEDBACK, true); Lesson lesson = lessonService.getLesson(lessonID); User learner = (User)userService.findById(User.class, userID); @@ -212,22 +211,23 @@ initServices(); Long lessonID = WebUtil.readLongParam(request, AttributeNames.PARAM_LESSON_ID); - String method = WebUtil.readStrParam(request, "method"); + String method = WebUtil.readStrParam(request, GradeBookConstants.PARAM_METHOD); Long activityID = null; Integer userID = null; // Fetch the id based on which grid it came from - if (method.equals("activityView")) { + if (method.equals(GradeBookConstants.VIEW_ACTIVITY)) { activityID = WebUtil.readLongParam(request, AttributeNames.PARAM_ACTIVITY_ID); - userID = WebUtil.readIntParam(request, "id"); - } else if (method.equals("userView")) { - activityID = WebUtil.readLongParam(request, "id"); - userID = WebUtil.readIntParam(request, "userID"); + userID = WebUtil.readIntParam(request, GradeBookConstants.PARAM_ID); + + } else if (method.equals(GradeBookConstants.VIEW_USER)) { + activityID = WebUtil.readLongParam(request, GradeBookConstants.PARAM_ID); + userID = WebUtil.readIntParam(request, GradeBookConstants.PARAM_USERID); } - String markStr = WebUtil.readStrParam(request, "mark", true); - String feedback = WebUtil.readStrParam(request, "feedback", true); + String markStr = WebUtil.readStrParam(request, GradeBookConstants.PARAM_MARK, true); + String feedback = WebUtil.readStrParam(request, GradeBookConstants.PARAM_FEEDBACK, true); Activity activity = monitoringService.getActivityById(activityID); User learner = (User)userService.findById(User.class, userID);