Index: lams_central/web/includes/javascript/portrait.js =================================================================== diff -u -r60d9a173d5590295376322fc3e857ae2dca37717 -r8e090b3ddf269cdffececa4bc55a9333da5b0858 --- lams_central/web/includes/javascript/portrait.js (.../portrait.js) (revision 60d9a173d5590295376322fc3e857ae2dca37717) +++ lams_central/web/includes/javascript/portrait.js (.../portrait.js) (revision 8e090b3ddf269cdffececa4bc55a9333da5b0858) @@ -20,7 +20,7 @@ STYLE_LARGE = 'large', STYLE_XLARGE = 'xlarge'; -// Add a portrait to an existing div as specified by selector +// Add a portrait to an existing div as specified by selector. function addPortrait( selector, portraitId, userId, size, round, LAMS_URL ) { var isRound = round == null ? true : round; if ( portraitId && portraitId > 0) { @@ -55,6 +55,7 @@ html: true, trigger: 'hover focus', title: element.dataset.fullname, + delay: { "show": 700, "hide": 100 }, container: 'body' // ensures popovers are not clipped within jqgrid tables }); element.classList.remove('new-popover'); @@ -64,7 +65,7 @@ // Define the element to have a popover/tooltip to display the learner's portrait. Call in the ajaxProcessing (tablesorter) or // in a formatter function (jqgrid). Use with initializePortraitPopover. Displays the fullName and portrait in the popover when the -// user hovers on linkText. Usually linkText === fullName +// user hovers on linkText. Usually linkText === fullName. function definePortraitPopover(portraitId, userId, fullName, linkText) { if ( ! linkText ) linkText = fullName; Index: lams_common/src/java/org/lamsfoundation/lams/rating/dto/StyledRatingDTO.java =================================================================== diff -u -r42cd8d7da9fa6615dbd82d376984000024b4b0fe -r8e090b3ddf269cdffececa4bc55a9333da5b0858 --- lams_common/src/java/org/lamsfoundation/lams/rating/dto/StyledRatingDTO.java (.../StyledRatingDTO.java) (revision 42cd8d7da9fa6615dbd82d376984000024b4b0fe) +++ lams_common/src/java/org/lamsfoundation/lams/rating/dto/StyledRatingDTO.java (.../StyledRatingDTO.java) (revision 8e090b3ddf269cdffececa4bc55a9333da5b0858) @@ -33,7 +33,8 @@ public class StyledRatingDTO { private Long itemId; - private String itemDescription; // user readable version of the item, usually the name of the learner that has been rated\ + private String itemDescription; // user readable version of the item, usually the name of the learner that has been rated + private String itemDescription2; // system detail for addition description content, usually the portrait id of the learner that has been rated. private String userRating; // rating left by the current user private String averageRating; // average of ratings by all users @@ -92,6 +93,14 @@ public void setComment(String comment) { this.comment = comment; } + + public String getItemDescription2() { + return itemDescription2; + } + + public void setItemDescription2(String itemDescription2) { + this.itemDescription2 = itemDescription2; + } Index: lams_common/src/java/org/lamsfoundation/lams/rating/service/RatingService.java =================================================================== diff -u -r07e03e889d33a83cfc498c170cdacc85afa96be2 -r8e090b3ddf269cdffececa4bc55a9333da5b0858 --- lams_common/src/java/org/lamsfoundation/lams/rating/service/RatingService.java (.../RatingService.java) (revision 07e03e889d33a83cfc498c170cdacc85afa96be2) +++ lams_common/src/java/org/lamsfoundation/lams/rating/service/RatingService.java (.../RatingService.java) (revision 8e090b3ddf269cdffececa4bc55a9333da5b0858) @@ -646,7 +646,8 @@ StyledRatingDTO dto = new StyledRatingDTO(((BigInteger) row[0]).longValue()); dto.setComment((String) row[2]); - dto.setItemDescription((String) row[numColumns - 1]); + dto.setItemDescription( row[numColumns - 2] != null ? row[numColumns - 2].toString() : null); + dto.setItemDescription2( row[numColumns - 1] != null ? row[numColumns - 1].toString() : null); if ( ! isComment ) { dto.setUserRating(row[3] == null ? "" : numberFormat.format((Double) row[3])); dto.setAverageRating(row[4] == null ? "" : numberFormat.format((Double) row[4])); @@ -662,9 +663,9 @@ /** * Convert the raw data from the database to JSON, similar on StyledCriteriaRatingDTO and StyleRatingDTO. - * The rating service expects the potential itemId followed by rating.* (its own fields) and the last item - * in the array to be an item description (eg formatted user's name) Will go back to the database for the - * justification comment that would apply to hedging. + * The rating service expects the potential itemId followed by rating.* (its own fields) and the last two items + * in the array will be two item descriptions fields (eg formatted user's name, portrait id). Will go back to + * the database for the justification comment that would apply to hedging. * * If includeCurrentUser == true will include the current users' records (used for SelfReview and Monitoring) * otherwise skips the current user, so they do not rate themselves! @@ -721,7 +722,8 @@ JSONObject userRow = new JSONObject(); userRow.put("itemId", itemId); userRow.put("comment", row[2] == null ? "" : (String) row[2]); - userRow.put("itemDescription", row[numColumns - 1] == null ? "" : (String) row[numColumns - 1]); + userRow.put("itemDescription", row[numColumns - 2] == null ? "" : row[numColumns - 2].toString()); + userRow.put("itemDescription2", row[numColumns - 1] == null ? "" : row[numColumns - 1].toString()); if ( ! isComment ) { userRow.put("userRating", row[3] == null ? "" : numberFormat.format((Double) row[3])); userRow.put("averageRating", row[4] == null ? "" : numberFormat.format((Double) row[4])); Index: lams_tool_larsrc/conf/language/lams/ApplicationResources.properties =================================================================== diff -u -raece5498fbd066e0c181d069cc8777d044531059 -r8e090b3ddf269cdffececa4bc55a9333da5b0858 --- lams_tool_larsrc/conf/language/lams/ApplicationResources.properties (.../ApplicationResources.properties) (revision aece5498fbd066e0c181d069cc8777d044531059) +++ lams_tool_larsrc/conf/language/lams/ApplicationResources.properties (.../ApplicationResources.properties) (revision 8e090b3ddf269cdffececa4bc55a9333da5b0858) @@ -176,6 +176,9 @@ label.average.rating =Average rating {0}/{1} votes label.your.rating =Your rating {0}, average rating {1}/{2} votes del.confirmation =Are you sure you want to delete this resource? +label.error =Error +error.loaderror =There was an error loading the grid. If this problem persists, please contact your system administrator. +label.ok =OK #======= End labels: Exported 170 labels for en AU ===== Index: lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/dao/ResourceItemVisitDAO.java =================================================================== diff -u -rd1d97d8c7da9ec5a96332afba14fa04970882bf9 -r8e090b3ddf269cdffececa4bc55a9333da5b0858 --- lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/dao/ResourceItemVisitDAO.java (.../ResourceItemVisitDAO.java) (revision d1d97d8c7da9ec5a96332afba14fa04970882bf9) +++ lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/dao/ResourceItemVisitDAO.java (.../ResourceItemVisitDAO.java) (revision 8e090b3ddf269cdffececa4bc55a9333da5b0858) @@ -28,6 +28,7 @@ import org.lamsfoundation.lams.tool.rsrc.dto.VisitLogDTO; import org.lamsfoundation.lams.tool.rsrc.model.ResourceItemVisitLog; +import org.lamsfoundation.lams.usermanagement.service.IUserManagementService; public interface ResourceItemVisitDAO extends DAO { @@ -47,7 +48,7 @@ List getResourceItemLogBySession(Long sessionId, Long itemUid); List getPagedVisitLogsBySessionAndItem(Long sessionId, Long itemUid, int page, int size, String sortBy, - String sortOrder, String searchString); + String sortOrder, String searchString, IUserManagementService userManagementService); int getCountVisitLogsBySessionAndItem(Long sessionId, Long itemUid, String searchString); Index: lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/dao/hibernate/ResourceItemVisitDAOHibernate.java =================================================================== diff -u -rd1d97d8c7da9ec5a96332afba14fa04970882bf9 -r8e090b3ddf269cdffececa4bc55a9333da5b0858 --- lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/dao/hibernate/ResourceItemVisitDAOHibernate.java (.../ResourceItemVisitDAOHibernate.java) (revision d1d97d8c7da9ec5a96332afba14fa04970882bf9) +++ lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/dao/hibernate/ResourceItemVisitDAOHibernate.java (.../ResourceItemVisitDAOHibernate.java) (revision 8e090b3ddf269cdffececa4bc55a9333da5b0858) @@ -38,6 +38,7 @@ import org.lamsfoundation.lams.tool.rsrc.model.Resource; import org.lamsfoundation.lams.tool.rsrc.model.ResourceItemVisitLog; import org.lamsfoundation.lams.tool.rsrc.model.ResourceSession; +import org.lamsfoundation.lams.usermanagement.service.IUserManagementService; import org.springframework.stereotype.Repository; @Repository @@ -105,27 +106,39 @@ return (List) doFind(FIND_BY_ITEM_BYSESSION, new Object[] { sessionId, itemUid }); } + private static String LOAD_USERS_ORDERED_BY_NAME_SELECT = " SELECT user.user_id, CONCAT(user.last_name, ' ', user.first_name), visit.complete_date, visit.access_date "; + private static String LOAD_USERS_ORDERED_BY_NAME_FROM = " FROM tl_larsrc11_item_log visit " + + " JOIN tl_larsrc11_user user ON visit.user_uid = user.uid " + + " AND (CONCAT(user.last_name, ' ', user.first_name) LIKE CONCAT('%', :searchString, '%'))"; + private static String LOAD_USERS_ORDERED_BY_NAME_WHERE = " WHERE visit.session_id = :sessionId AND visit.resource_item_uid = :itemUid " + + " ORDER BY CASE WHEN :sortBy='userName' THEN CONCAT(user.last_name, ' ', user.first_name) " + + " WHEN :sortBy='startTime' THEN visit.access_date " + + " WHEN :sortBy='completeTime' THEN visit.complete_date " + + " WHEN :sortBy='timeTaken' THEN TIMEDIFF(visit.complete_date,visit.access_date) END "; + @Override public List getPagedVisitLogsBySessionAndItem(Long sessionId, Long itemUid, int page, int size, - String sortBy, String sortOrder, String searchString) { - String LOAD_USERS_ORDERED_BY_NAME = "SELECT visit.user.userId, CONCAT(visit.user.lastName, ' ', visit.user.firstName), visit.completeDate, visit.accessDate" - + " FROM " + ResourceItemVisitLog.class.getName() + " visit" + " WHERE visit.sessionId = :sessionId " - + " AND visit.resourceItem.uid = :itemUid " - + " AND (CONCAT(visit.user.lastName, ' ', visit.user.firstName) LIKE CONCAT('%', :searchString, '%')) " - + " ORDER BY " + " CASE " + " WHEN :sortBy='userName' THEN CONCAT(user.lastName, ' ', user.firstName) " - + " WHEN :sortBy='startTime' THEN visit.accessDate " - + " WHEN :sortBy='completeTime' THEN visit.completeDate " - + " WHEN :sortBy='timeTaken' THEN TIMEDIFF(visit.completeDate,visit.accessDate) " + " END " + sortOrder; + String sortBy, String sortOrder, String searchString, IUserManagementService userManagementService) { - Query query = getSession().createQuery(LOAD_USERS_ORDERED_BY_NAME); - query.setLong("sessionId", sessionId); - query.setLong("itemUid", itemUid); + String[] portraitStrings = userManagementService.getPortraitSQL("user.user_id"); + + StringBuilder bldr = new StringBuilder(LOAD_USERS_ORDERED_BY_NAME_SELECT) + .append(portraitStrings[0]) + .append(LOAD_USERS_ORDERED_BY_NAME_FROM) + .append(portraitStrings[1]) + .append(LOAD_USERS_ORDERED_BY_NAME_WHERE) + .append(sortOrder); + + Query query = getSession().createSQLQuery(bldr.toString()) + .setLong("sessionId", sessionId) + .setLong("itemUid", itemUid); + // support for custom search from a toolbar searchString = searchString == null ? "" : searchString; - query.setString("searchString", searchString); - query.setString("sortBy", sortBy); - query.setFirstResult(page * size); - query.setMaxResults(size); + query.setString("searchString", searchString) + .setString("sortBy", sortBy) + .setFirstResult(page * size) + .setMaxResults(size); List list = query.list(); ArrayList visitLogDto = new ArrayList(); @@ -138,14 +151,15 @@ Date accessDate = element[3] == null ? null : new Date(((Timestamp) element[3]).getTime()); Date timeTaken = (element[2] == null || element[3] == null) ? null : new Date(completeDate.getTime() - accessDate.getTime()); + Long portraitId = element[4] == null ? null : ((Number) element[4]).longValue(); VisitLogDTO userDto = new VisitLogDTO(); userDto.setUserId(userId); userDto.setUserFullName(userFullName); userDto.setCompleteDate(completeDate); userDto.setAccessDate(accessDate); userDto.setTimeTaken(timeTaken); - ; + userDto.setPortraitId(portraitId);; visitLogDto.add(userDto); } } Index: lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/dto/ReflectDTO.java =================================================================== diff -u -r5773f84ed608838de3521ecde87c52f3c72d478c -r8e090b3ddf269cdffececa4bc55a9333da5b0858 --- lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/dto/ReflectDTO.java (.../ReflectDTO.java) (revision 5773f84ed608838de3521ecde87c52f3c72d478c) +++ lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/dto/ReflectDTO.java (.../ReflectDTO.java) (revision 8e090b3ddf269cdffececa4bc55a9333da5b0858) @@ -9,6 +9,7 @@ */ public class ReflectDTO { private Long userUid; + private Long userId; private String fullName; private String loginName; private String reflectInstrctions; @@ -20,6 +21,7 @@ this.setLoginName(user.getLoginName()); this.setFullName(user.getFirstName() + " " + user.getLastName()); this.setUserUid(user.getUid()); + this.setUserId(user.getUserId()); } public boolean isFinishReflection() { @@ -77,4 +79,12 @@ public void setDate(Date date) { this.date = date; } + + public Long getUserId() { + return userId; + } + + public void setUserId(Long userId) { + this.userId = userId; + } } Index: lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/dto/VisitLogDTO.java =================================================================== diff -u -r2f725f8ef2aa09a2663b2335bf67213074426d11 -r8e090b3ddf269cdffececa4bc55a9333da5b0858 --- lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/dto/VisitLogDTO.java (.../VisitLogDTO.java) (revision 2f725f8ef2aa09a2663b2335bf67213074426d11) +++ lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/dto/VisitLogDTO.java (.../VisitLogDTO.java) (revision 8e090b3ddf269cdffececa4bc55a9333da5b0858) @@ -31,13 +31,16 @@ private String userFullName; + private Long portraitId; + // the user access some reousrce item date time. Use in monitoring summary page private Date accessDate; // resource item complete date. Use in monitoring summary page private Date completeDate; // difference between completeDate and accessDate private Date timeTaken; + public Long getUserId() { return userId; } @@ -78,4 +81,12 @@ this.timeTaken = timeTaken; } + public Long getPortraitId() { + return portraitId; + } + + public void setPortraitId(Long portraitId) { + this.portraitId = portraitId; + } + } Index: lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/service/ResourceServiceImpl.java =================================================================== diff -u -rb67c428939ed96f08f56192d54b8ee55d8ab89d2 -r8e090b3ddf269cdffececa4bc55a9333da5b0858 --- lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/service/ResourceServiceImpl.java (.../ResourceServiceImpl.java) (revision b67c428939ed96f08f56192d54b8ee55d8ab89d2) +++ lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/service/ResourceServiceImpl.java (.../ResourceServiceImpl.java) (revision 8e090b3ddf269cdffececa4bc55a9333da5b0858) @@ -540,7 +540,7 @@ public List getPagedVisitLogsBySessionAndItem(Long sessionId, Long itemUid, int page, int size, String sortBy, String sortOrder, String searchString) { return resourceItemVisitDao.getPagedVisitLogsBySessionAndItem(sessionId, itemUid, page, size, sortBy, sortOrder, - searchString); + searchString, userManagementService); } @Override Index: lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/web/action/MonitoringAction.java =================================================================== diff -u -rac247d60495b2f2bd0a53b4d3b9e33f5ab834c76 -r8e090b3ddf269cdffececa4bc55a9333da5b0858 --- lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/web/action/MonitoringAction.java (.../MonitoringAction.java) (revision ac247d60495b2f2bd0a53b4d3b9e33f5ab834c76) +++ lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/web/action/MonitoringAction.java (.../MonitoringAction.java) (revision 8e090b3ddf269cdffececa4bc55a9333da5b0858) @@ -186,6 +186,7 @@ String timeTaken = (visitLogDto.getTimeTaken() == null) ? "" : timeTakenFormatter.format(visitLogDto.getTimeTaken()); visitLogData.put(timeTaken); + visitLogData.put(visitLogDto.getPortraitId()); JSONObject userRow = new JSONObject(); userRow.put("id", i++); Index: lams_tool_larsrc/web/pages/monitoring/reflections.jsp =================================================================== diff -u -rce92f0b193ab5e4ce9a9c161e515cdca982b7ffd -r8e090b3ddf269cdffececa4bc55a9333da5b0858 --- lams_tool_larsrc/web/pages/monitoring/reflections.jsp (.../reflections.jsp) (revision ce92f0b193ab5e4ce9a9c161e515cdca982b7ffd) +++ lams_tool_larsrc/web/pages/monitoring/reflections.jsp (.../reflections.jsp) (revision 8e090b3ddf269cdffececa4bc55a9333da5b0858) @@ -15,7 +15,8 @@ - - + + -
Index: lams_tool_larsrc/web/pages/monitoring/summary.jsp =================================================================== diff -u -r4583983b64efe1d91fbb47cdde6a759a6a30e859 -r8e090b3ddf269cdffececa4bc55a9333da5b0858 --- lams_tool_larsrc/web/pages/monitoring/summary.jsp (.../summary.jsp) (revision 4583983b64efe1d91fbb47cdde6a759a6a30e859) +++ lams_tool_larsrc/web/pages/monitoring/summary.jsp (.../summary.jsp) (revision 8e090b3ddf269cdffececa4bc55a9333da5b0858) @@ -36,8 +36,11 @@ + + - Index: lams_tool_leader/web/pages/monitoring/summary.jsp =================================================================== diff -u -rb1dc7223a287296ad4dc6ff5c3bb3ecd59997a32 -r8e090b3ddf269cdffececa4bc55a9333da5b0858 --- lams_tool_leader/web/pages/monitoring/summary.jsp (.../summary.jsp) (revision b1dc7223a287296ad4dc6ff5c3bb3ecd59997a32) +++ lams_tool_leader/web/pages/monitoring/summary.jsp (.../summary.jsp) (revision 8e090b3ddf269cdffececa4bc55a9333da5b0858) @@ -1,5 +1,11 @@ <%@ include file="/common/taglibs.jsp"%> + +

@@ -42,8 +48,8 @@ - - + + Index: lams_tool_mindmap/src/java/org/lamsfoundation/lams/tool/mindmap/dto/MindmapUserDTO.java =================================================================== diff -u -r2f725f8ef2aa09a2663b2335bf67213074426d11 -r8e090b3ddf269cdffececa4bc55a9333da5b0858 --- lams_tool_mindmap/src/java/org/lamsfoundation/lams/tool/mindmap/dto/MindmapUserDTO.java (.../MindmapUserDTO.java) (revision 2f725f8ef2aa09a2663b2335bf67213074426d11) +++ lams_tool_mindmap/src/java/org/lamsfoundation/lams/tool/mindmap/dto/MindmapUserDTO.java (.../MindmapUserDTO.java) (revision 8e090b3ddf269cdffececa4bc55a9333da5b0858) @@ -30,6 +30,7 @@ public class MindmapUserDTO implements Comparable { public Long uid; + public Long userId; public String loginName; public String firstName; public String lastName; @@ -39,6 +40,7 @@ public MindmapUserDTO(MindmapUser user, NotebookEntry entry) { this.uid = user.getUid(); + this.userId = user.getUserId(); this.loginName = user.getLoginName(); this.firstName = user.getFirstName(); this.lastName = user.getLastName(); @@ -49,6 +51,7 @@ public MindmapUserDTO(MindmapUser user) { this.uid = user.getUid(); + this.userId = user.getUserId(); this.loginName = user.getLoginName(); this.firstName = user.getFirstName(); this.lastName = user.getLastName(); @@ -113,4 +116,12 @@ public NotebookEntryDTO getEntryDTO() { return entryDTO; } + + public Long getUserId() { + return userId; + } + + public void setUserId(Long userId) { + this.userId = userId; + } } Index: lams_tool_mindmap/web/pages/monitoring/summary.jsp =================================================================== diff -u -rc6ad8493ef2064430e8783b28258cc9f223a3844 -r8e090b3ddf269cdffececa4bc55a9333da5b0858 --- lams_tool_mindmap/web/pages/monitoring/summary.jsp (.../summary.jsp) (revision c6ad8493ef2064430e8783b28258cc9f223a3844) +++ lams_tool_mindmap/web/pages/monitoring/summary.jsp (.../summary.jsp) (revision 8e090b3ddf269cdffececa4bc55a9333da5b0858) @@ -2,6 +2,8 @@ + + @@ -22,12 +24,19 @@ + +
@@ -95,7 +104,7 @@ - + @@ -139,7 +148,7 @@ - + Index: lams_tool_nb/web/monitoring/m_Statistics.jsp =================================================================== diff -u -r0815134d5864fcbff49cce0fe1085cbf7635e1ec -r8e090b3ddf269cdffececa4bc55a9333da5b0858 --- lams_tool_nb/web/monitoring/m_Statistics.jsp (.../m_Statistics.jsp) (revision 0815134d5864fcbff49cce0fe1085cbf7635e1ec) +++ lams_tool_nb/web/monitoring/m_Statistics.jsp (.../m_Statistics.jsp) (revision 8e090b3ddf269cdffececa4bc55a9333da5b0858) @@ -17,7 +17,7 @@ - + @@ -34,7 +34,7 @@ - + Index: lams_tool_nb/web/monitoring/m_Summary.jsp =================================================================== diff -u -r58448aa728e808e025d15546ea5375e6db321ff3 -r8e090b3ddf269cdffececa4bc55a9333da5b0858 --- lams_tool_nb/web/monitoring/m_Summary.jsp (.../m_Summary.jsp) (revision 58448aa728e808e025d15546ea5375e6db321ff3) +++ lams_tool_nb/web/monitoring/m_Summary.jsp (.../m_Summary.jsp) (revision 8e090b3ddf269cdffececa4bc55a9333da5b0858) @@ -1,6 +1,13 @@ <%@ include file="/includes/taglibs.jsp"%> + + +

@@ -21,8 +28,8 @@ - ${allowComments ? '' : ''} - + + Index: lams_tool_notebook/src/java/org/lamsfoundation/lams/tool/notebook/dao/INotebookUserDAO.java =================================================================== diff -u -r2f725f8ef2aa09a2663b2335bf67213074426d11 -r8e090b3ddf269cdffececa4bc55a9333da5b0858 --- lams_tool_notebook/src/java/org/lamsfoundation/lams/tool/notebook/dao/INotebookUserDAO.java (.../INotebookUserDAO.java) (revision 2f725f8ef2aa09a2663b2335bf67213074426d11) +++ lams_tool_notebook/src/java/org/lamsfoundation/lams/tool/notebook/dao/INotebookUserDAO.java (.../INotebookUserDAO.java) (revision 8e090b3ddf269cdffececa4bc55a9333da5b0858) @@ -30,6 +30,7 @@ import org.lamsfoundation.lams.notebook.service.ICoreNotebookService; import org.lamsfoundation.lams.tool.notebook.dto.StatisticDTO; import org.lamsfoundation.lams.tool.notebook.model.NotebookUser; +import org.lamsfoundation.lams.usermanagement.service.IUserManagementService; /** * DAO for accessing the NotebookUser objects - interface defining @@ -65,7 +66,7 @@ * Will return List<[NotebookUser, String, Date]> where the String is the notebook entry and the modified date. */ List getUsersForTablesorter(final Long sessionId, int page, int size, int sorting, String searchString, - ICoreNotebookService coreNotebookService); + ICoreNotebookService coreNotebookService, IUserManagementService userManagementService); int getCountUsersBySession(final Long sessionId, String searchString); Index: lams_tool_notebook/src/java/org/lamsfoundation/lams/tool/notebook/dao/hibernate/NotebookUserDAO.java =================================================================== diff -u -r2f725f8ef2aa09a2663b2335bf67213074426d11 -r8e090b3ddf269cdffececa4bc55a9333da5b0858 --- lams_tool_notebook/src/java/org/lamsfoundation/lams/tool/notebook/dao/hibernate/NotebookUserDAO.java (.../NotebookUserDAO.java) (revision 2f725f8ef2aa09a2663b2335bf67213074426d11) +++ lams_tool_notebook/src/java/org/lamsfoundation/lams/tool/notebook/dao/hibernate/NotebookUserDAO.java (.../NotebookUserDAO.java) (revision 8e090b3ddf269cdffececa4bc55a9333da5b0858) @@ -40,6 +40,7 @@ import org.lamsfoundation.lams.tool.notebook.dto.StatisticDTO; import org.lamsfoundation.lams.tool.notebook.model.NotebookUser; import org.lamsfoundation.lams.tool.notebook.util.NotebookConstants; +import org.lamsfoundation.lams.usermanagement.service.IUserManagementService; import org.springframework.stereotype.Repository; /** @@ -103,7 +104,7 @@ * Will return List<[NotebookUser, String, Date]> where the String is the notebook entry and the modified date. */ public List getUsersForTablesorter(final Long sessionId, int page, int size, int sorting, - String searchString, ICoreNotebookService coreNotebookService) { + String searchString, ICoreNotebookService coreNotebookService, IUserManagementService userManagementService) { String sortingOrder; switch (sorting) { case NotebookConstants.SORT_BY_USERNAME_ASC: @@ -131,14 +132,18 @@ String[] notebookEntryStrings = coreNotebookService.getNotebookEntrySQLStrings(sessionId.toString(), NotebookConstants.TOOL_SIGNATURE, "user.user_id", true); + String[] portraitStrings = userManagementService.getPortraitSQL("user.user_id"); + // Basic select for the user records StringBuilder queryText = new StringBuilder(); queryText.append("SELECT user.* "); queryText.append(notebookEntryStrings[0]); + queryText.append(portraitStrings[0]); queryText.append(" FROM tl_lantbk11_user user "); queryText.append( " JOIN tl_lantbk11_session session ON user.notebook_session_uid = session.uid and session.session_id = :sessionId"); queryText.append(notebookEntryStrings[1]); + queryText.append(portraitStrings[1]); // If filtering by name add a name based where clause buildNameSearch(searchString, queryText); @@ -148,7 +153,8 @@ SQLQuery query = getSession().createSQLQuery(queryText.toString()); query.addEntity("user", NotebookUser.class).addScalar("notebookEntry", StringType.INSTANCE) - .addScalar("notebookModifiedDate", TimestampType.INSTANCE).setLong("sessionId", sessionId.longValue()) + .addScalar("notebookModifiedDate", TimestampType.INSTANCE).addScalar("portraitId", IntegerType.INSTANCE) + .setLong("sessionId", sessionId.longValue()) .setFirstResult(page * size).setMaxResults(size); return query.list(); } Index: lams_tool_notebook/src/java/org/lamsfoundation/lams/tool/notebook/notebookApplicationContext.xml =================================================================== diff -u -ra6641bf9262a01d07740a517643f8fe187ec5b1f -r8e090b3ddf269cdffececa4bc55a9333da5b0858 --- lams_tool_notebook/src/java/org/lamsfoundation/lams/tool/notebook/notebookApplicationContext.xml (.../notebookApplicationContext.xml) (revision a6641bf9262a01d07740a517643f8fe187ec5b1f) +++ lams_tool_notebook/src/java/org/lamsfoundation/lams/tool/notebook/notebookApplicationContext.xml (.../notebookApplicationContext.xml) (revision 8e090b3ddf269cdffececa4bc55a9333da5b0858) @@ -39,6 +39,7 @@ + Index: lams_tool_notebook/src/java/org/lamsfoundation/lams/tool/notebook/service/NotebookService.java =================================================================== diff -u -r2abc3485dc2d24ea02044a64271f3ee0d3b8c11b -r8e090b3ddf269cdffececa4bc55a9333da5b0858 --- lams_tool_notebook/src/java/org/lamsfoundation/lams/tool/notebook/service/NotebookService.java (.../NotebookService.java) (revision 2abc3485dc2d24ea02044a64271f3ee0d3b8c11b) +++ lams_tool_notebook/src/java/org/lamsfoundation/lams/tool/notebook/service/NotebookService.java (.../NotebookService.java) (revision 8e090b3ddf269cdffececa4bc55a9333da5b0858) @@ -67,6 +67,7 @@ import org.lamsfoundation.lams.tool.service.ILamsToolService; import org.lamsfoundation.lams.usermanagement.User; import org.lamsfoundation.lams.usermanagement.dto.UserDTO; +import org.lamsfoundation.lams.usermanagement.service.IUserManagementService; import org.lamsfoundation.lams.util.JsonUtil; import org.lamsfoundation.lams.util.MessageService; import org.lamsfoundation.lams.util.audit.IAuditService; @@ -100,6 +101,8 @@ private ICoreNotebookService coreNotebookService; private IEventNotificationService eventNotificationService; + + private IUserManagementService userManagementService; private MessageService messageService; @@ -485,7 +488,7 @@ public List getUsersForTablesorter(final Long sessionId, int page, int size, int sorting, String searchString) { return notebookUserDAO.getUsersForTablesorter(sessionId, page, size, sorting, searchString, - coreNotebookService); + coreNotebookService, userManagementService); } @Override @@ -565,6 +568,14 @@ this.auditService = auditService; } + public IUserManagementService getUserManagementService() { + return userManagementService; + } + + public void setUserManagementService(IUserManagementService userManagementService) { + this.userManagementService = userManagementService; + } + public ICoreNotebookService getCoreNotebookService() { return coreNotebookService; } Index: lams_tool_notebook/src/java/org/lamsfoundation/lams/tool/notebook/util/NotebookConstants.java =================================================================== diff -u -rc6ad8493ef2064430e8783b28258cc9f223a3844 -r8e090b3ddf269cdffececa4bc55a9333da5b0858 --- lams_tool_notebook/src/java/org/lamsfoundation/lams/tool/notebook/util/NotebookConstants.java (.../NotebookConstants.java) (revision c6ad8493ef2064430e8783b28258cc9f223a3844) +++ lams_tool_notebook/src/java/org/lamsfoundation/lams/tool/notebook/util/NotebookConstants.java (.../NotebookConstants.java) (revision 8e090b3ddf269cdffececa4bc55a9333da5b0858) @@ -52,6 +52,8 @@ public static final String PARAM_ORDER_ID = "orderId"; public static final String PARAM_USER_UID = "userUid"; + public static final String ATTR_USER_ID = "userId"; + public static final String ATTR_PORTRAIT_ID = "portraitId"; public static final String ATTR_DELETED_CONDITION_LIST = "deletedConditionList"; public static final String USER_ENTRY_DEFINITION_NAME = "user.entry.output.definition.notebook"; public static final String ALL_USERS_ENTRIES_DEFINITION_NAME = "all.users.entries.definition.notebook"; Index: lams_tool_notebook/src/java/org/lamsfoundation/lams/tool/notebook/web/actions/MonitoringAction.java =================================================================== diff -u -r7e8d2e658c8363cb1878c6f9270b5e1f64c3afac -r8e090b3ddf269cdffececa4bc55a9333da5b0858 --- lams_tool_notebook/src/java/org/lamsfoundation/lams/tool/notebook/web/actions/MonitoringAction.java (.../MonitoringAction.java) (revision 7e8d2e658c8363cb1878c6f9270b5e1f64c3afac) +++ lams_tool_notebook/src/java/org/lamsfoundation/lams/tool/notebook/web/actions/MonitoringAction.java (.../MonitoringAction.java) (revision 8e090b3ddf269cdffececa4bc55a9333da5b0858) @@ -173,6 +173,11 @@ } else { responseRow.put(NotebookConstants.PARAM_MODIFIED_DATE, noEntry); } + + responseRow.put(NotebookConstants.ATTR_USER_ID, user.getUserId()); + if (userAndReflection.length > 3 && userAndReflection[3] != null) { + responseRow.put(NotebookConstants.ATTR_PORTRAIT_ID, userAndReflection[3]); + } rows.put(responseRow); } responsedata.put("rows", rows); Index: lams_tool_notebook/web/pages/monitoring/headItems.jsp =================================================================== diff -u -r1f6a1bb81739621fc0172aa2fe3dd623ad3897fa -r8e090b3ddf269cdffececa4bc55a9333da5b0858 --- lams_tool_notebook/web/pages/monitoring/headItems.jsp (.../headItems.jsp) (revision 1f6a1bb81739621fc0172aa2fe3dd623ad3897fa) +++ lams_tool_notebook/web/pages/monitoring/headItems.jsp (.../headItems.jsp) (revision 8e090b3ddf269cdffececa4bc55a9333da5b0858) @@ -21,4 +21,6 @@ + + Index: lams_tool_notebook/web/pages/monitoring/summary.jsp =================================================================== diff -u -rc6ad8493ef2064430e8783b28258cc9f223a3844 -r8e090b3ddf269cdffececa4bc55a9333da5b0858 --- lams_tool_notebook/web/pages/monitoring/summary.jsp (.../summary.jsp) (revision c6ad8493ef2064430e8783b28258cc9f223a3844) +++ lams_tool_notebook/web/pages/monitoring/summary.jsp (.../summary.jsp) (revision 8e090b3ddf269cdffececa4bc55a9333da5b0858) @@ -5,6 +5,7 @@ +