Index: lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/dao/IChatMessageDAO.java =================================================================== diff -u -r60b2f162e62dae03dbb3286df12def81a2a748cb -r80866aafca40538e310fb42553c77be0a0b3f2fd --- lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/dao/IChatMessageDAO.java (.../IChatMessageDAO.java) (revision 60b2f162e62dae03dbb3286df12def81a2a748cb) +++ lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/dao/IChatMessageDAO.java (.../IChatMessageDAO.java) (revision 80866aafca40538e310fb42553c77be0a0b3f2fd) @@ -26,6 +26,7 @@ package org.lamsfoundation.lams.tool.chat.dao; import java.util.List; +import java.util.Map; import org.lamsfoundation.lams.dao.IBaseDAO; import org.lamsfoundation.lams.tool.chat.model.ChatMessage; @@ -45,4 +46,8 @@ ChatMessage getByUID(Long uid); List getLatest(ChatSession chatSession, int max); + + Map getCountBySession(Long chatUID); + + Map getCountByFromUser(Long sessionUID); } Index: lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/dao/hibernate/ChatMessageDAO.java =================================================================== diff -u -r60b2f162e62dae03dbb3286df12def81a2a748cb -r80866aafca40538e310fb42553c77be0a0b3f2fd --- lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/dao/hibernate/ChatMessageDAO.java (.../ChatMessageDAO.java) (revision 60b2f162e62dae03dbb3286df12def81a2a748cb) +++ lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/dao/hibernate/ChatMessageDAO.java (.../ChatMessageDAO.java) (revision 80866aafca40538e310fb42553c77be0a0b3f2fd) @@ -25,13 +25,15 @@ package org.lamsfoundation.lams.tool.chat.dao.hibernate; +import java.util.HashMap; +import java.util.Iterator; import java.util.List; +import java.util.Map; import org.hibernate.HibernateException; import org.hibernate.Query; import org.lamsfoundation.lams.dao.hibernate.BaseDAO; import org.lamsfoundation.lams.tool.chat.dao.IChatMessageDAO; -import org.lamsfoundation.lams.tool.chat.model.Chat; import org.lamsfoundation.lams.tool.chat.model.ChatMessage; import org.lamsfoundation.lams.tool.chat.model.ChatSession; import org.lamsfoundation.lams.tool.chat.model.ChatUser; @@ -55,6 +57,14 @@ + ChatMessage.class.getName() + " as f where f.chatSession=? order by f.sendDate desc"; + public static final String SQL_QUERY_FIND_MESSAGE_COUNT_BY_FROM_USER = "select f.fromUser.uid, count(*) from " + + ChatMessage.class.getName() + + " as f where f.chatSession=? group by f.fromUser"; + + public static final String SQL_QUERY_FIND_MESSAGE_COUNT_BY_SESSION = "select f.chatSession.uid, count(*) from " + + ChatMessage.class.getName() + + " as f where f.chatSession.chat=? group by f.chatSession"; + public void saveOrUpdate(ChatMessage chatMessage) { this.getHibernateTemplate().saveOrUpdate(chatMessage); this.getHibernateTemplate().flush(); @@ -91,4 +101,30 @@ return null; } } + + public Map getCountBySession(Long chatUID) { + List list = this.getHibernateTemplate().find( + SQL_QUERY_FIND_MESSAGE_COUNT_BY_SESSION, + new Object[] { chatUID }); + + Map resultMap = new HashMap(); + for (Iterator iter = list.iterator(); iter.hasNext();) { + Object[] row = (Object[]) iter.next(); + resultMap.put((Long) row[0], (Integer) row[1]); + } + return resultMap; + } + + public Map getCountByFromUser(Long sessionUID) { + List list = this.getHibernateTemplate().find( + SQL_QUERY_FIND_MESSAGE_COUNT_BY_FROM_USER, + new Object[] { sessionUID }); + + Map resultMap = new HashMap(); + for (Iterator iter = list.iterator(); iter.hasNext();) { + Object[] row = (Object[]) iter.next(); + resultMap.put((Long) row[0], (Integer) row[1]); + } + return resultMap; + } } Index: lams_tool_chat/web/pages/monitoring/statistics.jsp =================================================================== diff -u -r8d5c540b1da67b18a80b3145c81c1ce04c2c17b2 -r80866aafca40538e310fb42553c77be0a0b3f2fd --- lams_tool_chat/web/pages/monitoring/statistics.jsp (.../statistics.jsp) (revision 8d5c540b1da67b18a80b3145c81c1ce04c2c17b2) +++ lams_tool_chat/web/pages/monitoring/statistics.jsp (.../statistics.jsp) (revision 80866aafca40538e310fb42553c77be0a0b3f2fd) @@ -1 +1,55 @@ -

this is statistics

\ No newline at end of file +<%@ include file="/common/taglibs.jsp"%> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ heading.totalLearners + +

+ TODO. +

+
+ heading.totalMessages + +

+ +

+
+ Learner + + No of Posts +
+ + + +
+
Index: lams_tool_chat/web/pages/monitoring/summary.jsp =================================================================== diff -u -ra192bd5dfeb760636bbdf9415c9d67b2fcc5ca4d -r80866aafca40538e310fb42553c77be0a0b3f2fd --- lams_tool_chat/web/pages/monitoring/summary.jsp (.../summary.jsp) (revision a192bd5dfeb760636bbdf9415c9d67b2fcc5ca4d) +++ lams_tool_chat/web/pages/monitoring/summary.jsp (.../summary.jsp) (revision 80866aafca40538e310fb42553c77be0a0b3f2fd) @@ -1,7 +1,7 @@ <%@ include file="/common/taglibs.jsp"%> - + - - - - - - + + +
@@ -10,41 +10,45 @@
+ heading.totalLearners -

+

+

TODO.

+ heading.totalMessages -

- TODO +

+

+

+ heading.recentMessages +   +
- + message.noChatMessages - +