Created
November 30, 2011 18:20
-
-
Save UshaRani/1410125 to your computer and use it in GitHub Desktop.
Revisions
-
UshaRani revised this gist
Nov 30, 2011 . 2 changed files with 2 additions and 2 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -7,7 +7,7 @@ Member member = memberBO.getById(memberloginhistoryFromDB.getMember().getId()); // Memberloginhistory object values have to retrive in jsp. Memberloginhistory memberloginhistory = new Memberloginhistory(member, memberloginhistoryFromDB.getLastmodified(), memberloginhistoryFromDB.getIpaddress(), memberloginhistoryFromDB.getMemberlogintime(), parsedBrowserDetails, memberloginhistoryFromDB.isOnline()); This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,4 +1,4 @@ <%-- Already existing code to retrieve the values from memberLoginHistoryMap object without converting jsonstring -- --%> <div id="accordion" style="width: 850px;"> <gs:iterator value="memberLoginHistoryMap"> <h3><a href="#" style="padding-bottom: 0;">Date: <gs:date name="key" format="MMM-dd-yyyy"/></a></h3> -
UshaRani revised this gist
Nov 30, 2011 . 2 changed files with 3 additions and 1 deletion.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -35,6 +35,8 @@ public int compare(Memberloginhistory date1, Memberloginhistory date2) { } memberLoginHistoryMap.put(currentHistoryDate, memberLoginDetails); // existing code end. // these are the lines added to convert memberLoginHistoryMap object to json string . // To excute these lines action is taking more time. This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,4 +1,4 @@ <%-- Already existing code to retrive the values from memberLoginHistoryMap object without converting jsonstring -- --%> <div id="accordion" style="width: 850px;"> <gs:iterator value="memberLoginHistoryMap"> <h3><a href="#" style="padding-bottom: 0;">Date: <gs:date name="key" format="MMM-dd-yyyy"/></a></h3> -
UshaRani revised this gist
Nov 30, 2011 . 2 changed files with 5 additions and 6 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -35,7 +35,7 @@ public int compare(Memberloginhistory date1, Memberloginhistory date2) { } memberLoginHistoryMap.put(currentHistoryDate, memberLoginDetails); // these are the lines added to convert memberLoginHistoryMap object to json string . // To excute these lines action is taking more time. Gson jsonResponse = new Gson(); This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,6 +1,5 @@ <%-- Already existing to retrive the values from memberLoginHistoryMap object without converting jsonstring -- --%> <div id="accordion" style="width: 850px;"> <gs:iterator value="memberLoginHistoryMap"> <h3><a href="#" style="padding-bottom: 0;">Date: <gs:date name="key" format="MMM-dd-yyyy"/></a></h3> <table class="loginHistoryList" border="0" cellpadding="0" cellspacing="0"> @@ -34,9 +33,9 @@ </gs:else> </table> </gs:iterator> </div> <%-- newly added lines to retrive the values from jsonString which contains memberLoginHistoryMap object --%> <script type="text/javascript"> <%-- Trying to get values from jsonString ,need help in retriving the values--%> var memberhistorymap = jQuery.parseJSON('<gs:property value="jsonString" escapeJavaScript="true" escape="false"/>'); -
UshaRani revised this gist
Nov 30, 2011 . 2 changed files with 25 additions and 153 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,83 +1,17 @@ // this is already existing code for (Memberloginhistory memberloginhistoryFromDB : memberLoginHistoryListFromDB) { parsedBrowserDetails = memberloginhistoryFromDB.getBrowserdetails(); parsedBrowserDetails = UserAgentUtil.getBrowser(parsedBrowserDetails)[2] + " on " + UserAgentUtil.getOS(parsedBrowserDetails)[1]; Member member = memberBO.getById(memberloginhistoryFromDB.getMember().getId()); // Memberloginhistory object values has to retrive in jsp. Memberloginhistory memberloginhistory = new Memberloginhistory(member, memberloginhistoryFromDB.getLastmodified(), memberloginhistoryFromDB.getIpaddress(), memberloginhistoryFromDB.getMemberlogintime(), parsedBrowserDetails, memberloginhistoryFromDB.isOnline()); if (!GSDate.isEqual(currentHistoryDate, memberloginhistory.getMemberlogintime())) { if (currentHistoryDate != null) { memberLoginHistoryMap.put(currentHistoryDate, memberLoginDetails); @@ -99,36 +33,23 @@ public int compare(Memberloginhistory date1, Memberloginhistory date2) { } memberLoginDetails.put(memberloginhistory, member); } memberLoginHistoryMap.put(currentHistoryDate, memberLoginDetails); // these are the lines added to convert memberLoginHistoryMap object to json string - // To excute these lines action is taking more time. Gson jsonResponse = new Gson(); jsonString = jsonResponse.toJson(memberLoginHistoryMap); // in jsp i am trying to retrive values from this jsonString long actionendTime = System.currentTimeMillis(); System.out.println("Time taken to execute total action" + (actionendTime - actionstartTime)); return SUCCESS; } public String getJsonString() { return jsonString; } This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,14 +1,6 @@ <%-- Retrivering values from memberLoginHistoryMap object without converting jsonstring --%> <%-- existing code to get values from memberLoginHistoryMap object --%> <%--<div id="accordion" style="width: 850px;"> <gs:iterator value="memberLoginHistoryMap"> <h3><a href="#" style="padding-bottom: 0;">Date: <gs:date name="key" format="MMM-dd-yyyy"/></a></h3> <table class="loginHistoryList" border="0" cellpadding="0" cellspacing="0"> @@ -25,6 +17,7 @@ <gs:if test="%{!value.isEmpty()}"> <gs:iterator value="value" var="memberDetails"> <tr> <td align="center"><gs:property value="value.memberemail" /></td> <td align="center"><gs:property value="value.organization.organizationname" /></td> <td align="center"><gs:date name="key.lastmodified" format="MMM-dd-yyyy H:m:s" /></td> @@ -41,14 +34,14 @@ </gs:else> </table> </gs:iterator> </div> --%> <script type="text/javascript"> <%-- Trying to get values from jsonString ,need help in retriving the values--%> var memberhistorymap = jQuery.parseJSON('<gs:property value="jsonString" escapeJavaScript="true" escape="false"/>'); console.log(memberhistorymaps); jQuery.each(memberhistorymap, function(currentHistoryDate, memberLoginDetails) { console.log(currentHistoryDate); console.log(memberLoginDetails); jQuery.each(memberLoginDetails,function(memberloginhistory,member){ @@ -58,47 +51,5 @@ console.log("------------"); }); alert("hi"); console.log(memberhistorymapstring); </script> -
UshaRani revised this gist
Nov 30, 2011 . 2 changed files with 3 additions and 3 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -102,7 +102,7 @@ public int compare(Memberloginhistory date1, Memberloginhistory date2) { } memberLoginHistoryMap.put(currentHistoryDate, memberLoginDetails); // converting member login history to jsonString. For conversion it is more time(comment - usha) Gson jsonResponse = new Gson(); jsonString = jsonResponse.toJson(memberLoginHistoryMap); This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -45,14 +45,14 @@ <div id="morereults">More Results</div> <script type="text/javascript"> <%-- Trying to get values from jsonString ,need help in retriving the values(comment-usha)--%> var memberhistorymap = jQuery.parseJSON('<gs:property value="jsonString" escapeJavaScript="true" escape="false"/>'); console.log(memberhistorymaps); /*jQuery.each(memberhistorymap, function(currentHistoryDate, memberLoginDetails) { console.log(currentHistoryDate); console.log(memberLoginDetails); jQuery.each(memberLoginDetails,function(memberloginhistory,member){ console.log(memberloginhistory.lastmodified);//in console showing undefined. console.log(member); }); console.log("------------"); -
UshaRani created this gist
Nov 30, 2011 .There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,139 @@ package com.generalsentiment.action.admin.member; import com.generalsentiment.action.GSActionSupport; import com.generalsentiment.bo.member.MemberLoginHistoryBO; import com.generalsentiment.dao.member.MemberLoginHistoryDAO; import com.generalsentiment.om.member.Member; import com.generalsentiment.om.member.Memberloginhistory; import com.generalsentiment.util.GSDate; import com.generalsentiment.util.UserAgentUtil; import com.google.gson.Gson; import java.util.ArrayList; import java.util.Comparator; import java.util.Date; import java.util.TreeMap; /** * * @author Bhaskar Duvvuri@Indavest */ public class RecentLoginHistoryAction extends GSActionSupport { private static final long serialVersionUID = -6551584380472810590L; protected TreeMap<Date, TreeMap<Memberloginhistory, Member>> memberLoginHistoryMap; protected MemberLoginHistoryBO memberLoginHistoryBO = new MemberLoginHistoryDAO(); private int count; private String jsonString; @Override protected String gsexecute() throws Exception { long actionstartTime = System.currentTimeMillis(); Date toDate; Date fromDate; if (count != 0) { Date todaysDate = GSDate.getCurrentDate(); toDate = GSDate.getDateDifference(todaysDate, "day", -(30 * count)); fromDate = GSDate.getDateDifference(todaysDate, "day", -30 * (count + 1)); } else { toDate = GSDate.getCurrentDate(); fromDate = GSDate.getDateDifference(toDate, "day", -30); } long GettingdatafromdbstartTime = System.currentTimeMillis(); ArrayList<Memberloginhistory> memberLoginHistoryListFromDB = memberLoginHistoryBO.getOnlineMembersByDate(fromDate, toDate); long GettingdatafromdbendTime = System.currentTimeMillis(); System.out.println("Time taken to retrieve data from db" + (GettingdatafromdbendTime - GettingdatafromdbstartTime)); memberLoginHistoryMap = new TreeMap<Date, TreeMap<Memberloginhistory, Member>>(new Comparator<Date>() { @Override public int compare(Date date1, Date date2) { if (date1.before(date2)) { return 1; } if (date1.after(date2)) { return -1; } return 0; } }); TreeMap<Memberloginhistory, Member> memberLoginDetails = new TreeMap<Memberloginhistory, Member>(new Comparator<Memberloginhistory>() { @Override public int compare(Memberloginhistory date1, Memberloginhistory date2) { if ((date1.getMemberlogintime()).before(date2.getMemberlogintime())) { return 1; } if ((date1.getMemberlogintime()).after(date2.getMemberlogintime())) { return -1; } return 0; } }); String parsedBrowserDetails = ""; Date currentHistoryDate = null; for (Memberloginhistory memberloginhistoryFromDB : memberLoginHistoryListFromDB) { parsedBrowserDetails = memberloginhistoryFromDB.getBrowserdetails(); parsedBrowserDetails = UserAgentUtil.getBrowser(parsedBrowserDetails)[2] + " on " + UserAgentUtil.getOS(parsedBrowserDetails)[1]; Member member = memberBO.getById(memberloginhistoryFromDB.getMember().getId()); Memberloginhistory memberloginhistory = new Memberloginhistory(member, memberloginhistoryFromDB.getLastmodified(), memberloginhistoryFromDB.getIpaddress(), memberloginhistoryFromDB.getMemberlogintime(), parsedBrowserDetails, memberloginhistoryFromDB.isOnline()); if (!GSDate.isEqual(currentHistoryDate, memberloginhistory.getMemberlogintime())) { if (currentHistoryDate != null) { memberLoginHistoryMap.put(currentHistoryDate, memberLoginDetails); } currentHistoryDate = memberloginhistory.getMemberlogintime(); memberLoginDetails = new TreeMap<Memberloginhistory, Member>(new Comparator<Memberloginhistory>() { @Override public int compare(Memberloginhistory date1, Memberloginhistory date2) { if ((date1.getMemberlogintime()).before(date2.getMemberlogintime())) { return 1; } if ((date1.getMemberlogintime()).after(date2.getMemberlogintime())) { return -1; } return 0; } }); } memberLoginDetails.put(memberloginhistory, member); } memberLoginHistoryMap.put(currentHistoryDate, memberLoginDetails); // converting member login history to jsonString. For conversion it is more time Gson jsonResponse = new Gson(); jsonString = jsonResponse.toJson(memberLoginHistoryMap); long actionendTime = System.currentTimeMillis(); System.out.println("Time taken to execute total action" + (actionendTime - actionstartTime)); return SUCCESS; } public TreeMap<Date, TreeMap<Memberloginhistory, Member>> getMemberLoginHistoryMap() { return memberLoginHistoryMap; } public void setMemberLoginHistoryMap(TreeMap<Date, TreeMap<Memberloginhistory, Member>> memberLoginHistoryMap) { this.memberLoginHistoryMap = memberLoginHistoryMap; } public int getCount() { return count; } public void setCount(int count) { this.count = count; } public String getJsonString() { return jsonString; } public void setJsonString(String jsonString) { this.jsonString = jsonString; } } This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,104 @@ <%-- Document : recentloginhistory Created on : Feb 11, 2010, 4:36:52 PM Author : Bhaskar Duvvuri@Indavest --%> <%@ taglib prefix="gs" uri="/struts-tags" %> <%--<gs:iterator value="memberLoginHistoryList" status="memberStatus"> <gs:property value="browserdetails"/> </gs:iterator>--%> <div id="accordion" style="width: 850px;"> <gs:iterator value="memberLoginHistoryMap"> <h3><a href="#" style="padding-bottom: 0;">Date: <gs:date name="key" format="MMM-dd-yyyy"/></a></h3> <table class="loginHistoryList" border="0" cellpadding="0" cellspacing="0"> <thead> <tr> <th align="center">Member</th> <th align="center">Organization</th> <th align="center">Last Modified</th> <th align="center">Login Time</th> <th align="center">IP Address</th> <th align="center">Browser Details</th> </tr> </thead> <gs:if test="%{!value.isEmpty()}"> <gs:iterator value="value" var="memberDetails"> <tr> <td align="center"><gs:property value="value.memberemail" /></td> <td align="center"><gs:property value="value.organization.organizationname" /></td> <td align="center"><gs:date name="key.lastmodified" format="MMM-dd-yyyy H:m:s" /></td> <td align="center"><gs:date name="key.memberlogintime" format="MMM-dd-yyyy H:m:s" /></td> <td align="center"><gs:property value="key.ipaddress" escape="false" /></td> <td align="center"><gs:property value="key.browserdetails" escape="false" /></td> </tr> </gs:iterator> </gs:if> <gs:else> <tr> <td align="center" colspan="6">Currently there are no online users in the system</td> </tr> </gs:else> </table> </gs:iterator> </div> <div id="morereults">More Results</div> <script type="text/javascript"> <%-- Trying to get values jsonString --%> var memberhistorymap = jQuery.parseJSON('<gs:property value="jsonString" escapeJavaScript="true" escape="false"/>'); console.log(memberhistorymaps); /*jQuery.each(memberhistorymap, function(currentHistoryDate, memberLoginDetails) { console.log(currentHistoryDate); console.log(memberLoginDetails); jQuery.each(memberLoginDetails,function(memberloginhistory,member){ console.log(memberloginhistory[0]); console.log(member); }); console.log("------------"); }); alert("hi"); console.log(memberhistorymapstring);*/ var count=0; jQuery(function() { jQuery('.loginHistoryList').tableScroll({width:850, height:400}); jQuery("#accordion").accordion(); }); jQuery("#morereults").click(function(){ count = count+1; if(count==2){ jQuery("#morereults").css("display","none"); } jQuery.ajax({ type: "POST", url: '<gs:url action="ajaxrecentlogins" namespace="/admin/organization/member"/>', data:'count='+count, beforeSend: function(request){ jQuery.blockUI({ message : '<strong>Please wait while we are getting results....</strong><br />', css: { border: 'none', padding: '15px', backgroundColor: '#fff', '-webkit-border-radius': '10px', '-moz-border-radius': '10px', opacity: .5, color: '#000' } }); }, success: function (response) { jQuery('.ajaxloginHistoryList').tableScroll({width:850, height:400}); jQuery("#accordion").append(response); jQuery("#accordion").accordion('destroy').accordion(); }, error: function(response) { //jQuery("#moreresultdiv").append(response); } }); jQuery.unblockUI(); return false; }); </script>