private int OnStats(HttpReqResp req)
{
try
{
var date = GetVisualizationDateFromUrlParameters(req);
date = VerifyDateForRetrospection(date);
var visType = GetVisualizationTypesFromUrlParameters(req);
// get data to display
var title = GetRetrospectionTitle(visType, date);
var dashboard = ((string)_resourceManager.GetObject("personalanalytics_html"));
var visualizations = GetVisualizationsHtml(visType, date);
visualizations.Wait(); // wait for the async task to complete
// prepare html which is displayed in the browser control
var html = dashboard.Replace("{title}", title).Replace("{visualizations}", visualizations.Result);
req.Write(html);
req.SetHeader("Content-Type", "text/html; charset=utf-8");
}
catch (Exception e)
{
req.Write(e.ToString());
req.SetHeader("Content-Type", "text/html; charset=utf-8");
}
return 200;
}