Rev 4638 | Rev 4816 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
<%@page import="java.util.Hashtable"%><%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%><%@ page import="com.google.appengine.api.datastore.DatastoreServiceFactory" %><%@ page import="com.google.appengine.api.datastore.DatastoreService" %><%@ page import="com.google.appengine.api.datastore.Query" %><%@ page import="com.google.appengine.api.datastore.Entity" %><%@ page import="com.google.appengine.api.datastore.PreparedQuery" %><%@ page import="com.google.appengine.api.datastore.Query.SortDirection"%><%@ page import="java.util.Calendar"%><%@ page import="java.util.Map"%><%@ page import="java.util.Map.Entry"%><%@ page import="java.text.ParseException"%><%@ page import="java.util.TimeZone"%><%@ page import="java.util.Date"%><%@ page import="java.text.SimpleDateFormat"%><%@ page import="in.shop2020.model.Category"%><html><head><link rel="stylesheet" href="/DataTables/media/css/demo_table.css" type="text/css" /><link rel="stylesheet" href="/DataTables/extras/TableTools/media/css/TableTools.css" type="text/css" /><title>Search Analysis</title></head><body><%Date toDate = new Date();Calendar cal = Calendar.getInstance(TimeZone.getTimeZone("IST"));cal.add(Calendar.DAY_OF_MONTH, -2);Date fromDate = cal.getTime();SimpleDateFormat iSdf = new SimpleDateFormat("yyyyMMdd");String toDateStr = request.getParameter("toDate");String fromDateStr = request.getParameter("fromDate");if (fromDateStr == null || fromDateStr.isEmpty()) {fromDateStr = iSdf.format(fromDate);}if (toDateStr == null || toDateStr.isEmpty()) {toDateStr = iSdf.format(toDate);}String eventType = "PRODUCT_SEARCH";String productQuery = request.getParameter("productQuery");%><form id="searchfilter" name="searchfilter" method="post" action="/jsp/productSearch.jsp"><label>From Date(YYYYMMDD) : </label> <input type="text" name="fromDate" id="fromDate" value="<%= fromDateStr %>"/><label>To Date(YYYYMMDD) : </label> <input type="text" name="toDate" id="toDate" value="<%= toDateStr %>"/><input type="Submit" id="Submit" name="Submit" value="Submit" /></form><%try {if (fromDateStr != null) {fromDate = iSdf.parse(fromDateStr);}if (toDateStr != null) {toDate = iSdf.parse(toDateStr);}}catch (ParseException pe) {%><span>Invalid Date Format</span><%}SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");sdf.setTimeZone(TimeZone.getTimeZone("IST"));DatastoreService datastore = DatastoreServiceFactory.getDatastoreService();Query query = new Query("DataLog");query.addFilter("eventType", Query.FilterOperator.EQUAL, "PRODUCT_SEARCH");query.addFilter("date", Query.FilterOperator.GREATER_THAN_OR_EQUAL, fromDate);query.addFilter("date", Query.FilterOperator.LESS_THAN_OR_EQUAL, toDate);if(productQuery!=null){query.addFilter("query",Query.FilterOperator.EQUAL,productQuery);}PreparedQuery pq = datastore.prepare(query);%><table cellpadding="0" cellspacing="0" border="0" class="display" id="searchData"><thead><tr><th>Date</th><th>UserId</th><th>Session</th><th>Query String</th><th>Category</th><th>Number of Results</th></tr></thead><tbody><%for (Entity result : pq.asIterable()) {%><tr><td><%=sdf.format((Date) (result.getProperty("date")))%></td><td><a href="/jsp/user-activity.jsp?email=<%=result.getProperty("email").toString()%>"><%= result.getProperty("email").toString() %></a></td><td><a href="/jsp/session-activity.jsp?sessionId=<%=result.getProperty("sessionId").toString()%>">View Session</a></td><td><%=(result.getProperty("query")) %></td><td><%=Category.findByValue(Integer.parseInt(result.getProperty("categoryId").toString())) %></td><td><%=(result.getProperty("totalResults")) %></td></tr><%}%></tbody></table><h3><a href= "/jsp/productSearchFrequency.jsp?toDate=<%=toDateStr%>&fromDate=<%=fromDateStr%>">Go back to Product Search Frequencies</h3><script type="text/javascript" language="javascript" src="/DataTables/media/js/jquery.js"></script><script type="text/javascript" language="javascript" src="/DataTables/media/js/jquery.dataTables.min.js"></script><script type="text/javascript" charset="utf-8" src="/DataTables/extras/TableTools/media/js/ZeroClipboard.js"></script><script type="text/javascript" charset="utf-8" src="/DataTables/extras/TableTools/media/js/TableTools.js"></script><script type="text/javascript" charset="utf-8">$(document).ready(function() {$('#searchData').dataTable({"sPaginationType": "full_numbers","bProcessing": true,"bStateSave": true,"sDom": 'T<"clear">lfrtip',"bFilter": false,"oTableTools": {"sSwfPath": "/DataTables/extras/TableTools/media/swf/copy_cvs_xls_pdf.swf"},"aoColumns": [null,null,null,null,null,null]});} );</script></body></html>