/// <summary> /// Gets the params for the page /// </summary> /// <param name="skip">number of postings to skip</param> /// <param name="show">number to show</param> /// <param name="entryDate">Entry Date of search</param> /// <param name="interval">Interval of search</param> private void TryGetPageParams(ref int skip, ref int show, ref DateTime entryDate, ref int interval) { skip = InputContext.GetParamIntOrZero("skip", _docDnaSkip); show = InputContext.GetParamIntOrZero("show", _docDnaShow); if (show > 200) { show = 200; } else if (show < 1) { show = 25; } if (skip < 0) { skip = 0; } //find out which display mode is requested interval = 1; string intervalText = InputContext.GetParamStringOrEmpty("interval", _docDnaInterval); if (intervalText == "week") { interval = 2; } else if (intervalText == "month") { interval = 3; } if (InputContext.DoesParamExist("date", _docDnaEntryDate)) { string entryDateText = InputContext.GetParamStringOrEmpty("date", _docDnaEntryDate); DateRangeValidation dateValidation = new DateRangeValidation(); DateRangeValidation.ValidationResult isValid; DateTime tempEntryDate; isValid = ParseDate(entryDateText, out tempEntryDate); if (isValid == DateRangeValidation.ValidationResult.VALID) { isValid = dateValidation.ValidateDate(tempEntryDate, false); } else { AddErrorXml("invalidparameters", "Illegal date entry (" + isValid.ToString() + ")", null); return; } if (isValid == DateRangeValidation.ValidationResult.VALID) { entryDate = dateValidation.LastStartDate; } else { AddErrorXml("invalidparameters", "Illegal date parameters (" + isValid.ToString() + ")", null); return; } } else { entryDate = DateTime.Now; } }
/// <summary> /// This function is where the page gets to create and insert all the objects required /// </summary> public override void OnPageLoad() { Context.Items["VirtualUrl"] = "MessageBoardStats"; string skin = Request.GetParamStringOrEmpty("skin", "skin"); if (!IsDnaUserAllowed()) { if (skin != "purexml") { ShowHideControls(false); lblError.Text = "Insufficient permissions - Editor Status Required"; } else { XmlDocument errorDoc = new XmlDocument(); errorDoc.LoadXml("<ERROR TYPE='invalidcredentials' ERRORMESSAGE = 'Must be an editor or superuser to view messageboard statistics' />"); //Replace an existing node if (_basePage.WholePageBaseXmlNode.SelectSingleNode("/MESSAGEBOARDSTATS") != null) { XmlNode messageBoardStatisticsNode = _basePage.WholePageBaseXmlNode.SelectSingleNode("/MESSAGEBOARDSTATS"); _basePage.WholePageBaseXmlNode.ReplaceChild(messageBoardStatisticsNode, _basePage.WholePageBaseXmlNode.OwnerDocument.ImportNode(errorDoc.FirstChild, true)); } else { _basePage.WholePageBaseXmlNode.FirstChild.AppendChild(_basePage.WholePageBaseXmlNode.OwnerDocument.ImportNode(errorDoc.FirstChild, true)); } } return; } if (!Page.IsPostBack) { DateTime enteredDate = DateTime.MinValue; try { if (Request.DoesParamExist("date", _docDnaDate)) { string entryDateText = Request.GetParamStringOrEmpty("date", _docDnaDate); DateRangeValidation dateValidation = new DateRangeValidation(); DateRangeValidation.ValidationResult isValid; DateTime tempDate; isValid = MessageBoardStatistics.ParseDate(entryDateText, out tempDate); if (isValid == DateRangeValidation.ValidationResult.VALID) { isValid = dateValidation.ValidateDate(tempDate, true); if (isValid == DateRangeValidation.ValidationResult.FUTURE_STARTDATE) { lblError.Text = "Passed in Date is in the future."; return; } else if (isValid != DateRangeValidation.ValidationResult.VALID) { lblError.Text = "Passed in Date not valid."; return; } enteredDate = tempDate; } else { lblError.Text = "Passed in Date not valid."; return; } } else { //Yesterday enteredDate = DateTime.Now.AddDays(-1).Date; } entryDate.SelectedDate = enteredDate.Date; entryDate.VisibleDate = enteredDate.Date; } catch (FormatException) { lblError.Text = "Passed in Date format incorrect. It should be dd/mm/yyyy"; return; } if (skin != "purexml") { GetMessageBoardStatistics(false); ShowHideControls(true); } else { GetMessageBoardStatistics(true); } string emailFrom = Request.GetParamStringOrEmpty("emailFrom", "emailFrom address"); string emailTo = Request.GetParamStringOrEmpty("emailTo", "emailTo address"); MessageBoardStatistics messageBoardStatistics = new MessageBoardStatistics(_basePage); messageBoardStatistics.SendMessageBoardStatsEmail(enteredDate, emailFrom, emailTo); } else { ShowHideResultControls(false); } }
/// <summary> /// Gets the params for the page /// </summary> /// <param name="entryDate">Entry Date</param> /// <param name="emailFrom">Email from entry</param> /// <param name="emailTo">Email to entry</param> private void TryGetPageParams(ref DateTime entryDate, ref string emailFrom, ref string emailTo) { if (InputContext.DoesParamExist("date", _docDnaEntryDate)) { string entryDateText = InputContext.GetParamStringOrEmpty("date", _docDnaEntryDate); DateRangeValidation dateValidation = new DateRangeValidation(); DateRangeValidation.ValidationResult isValid; DateTime tempEntryDate; isValid = ParseDate(entryDateText, out tempEntryDate); if (isValid == DateRangeValidation.ValidationResult.VALID) { isValid = dateValidation.ValidateDate(tempEntryDate, false); } else { AddErrorXml("invalidparameters", "Illegal date entry (" + isValid.ToString() + ")", null); return; } if (isValid == DateRangeValidation.ValidationResult.VALID) { entryDate = dateValidation.LastStartDate; } else { AddErrorXml("invalidparameters", "Illegal date parameters (" + isValid.ToString() + ")", null); return; } } else { entryDate = DateTime.Now.AddDays(-1).Date; } if (InputContext.DoesParamExist("emailFrom", _docDnaEmailFrom) && InputContext.DoesParamExist("emailTo", _docDnaEmailTo)) { emailFrom = InputContext.GetParamStringOrEmpty("emailFrom", _docDnaEmailFrom); emailTo = InputContext.GetParamStringOrEmpty("emailTo", _docDnaEmailTo); } }
/// <summary> /// This function is where the page gets to create and insert all the objects required /// </summary> public override void OnPageLoad() { Context.Items["VirtualUrl"] = "StatisticsReport"; string skin = Request.GetParamStringOrEmpty("skin", "skin"); string skParam = Request.GetParamStringOrEmpty("_sk", "skin"); if (!IsDnaUserAllowed()) { ShowHideControls(false); DisplayError("PermissionsError", "Insufficient permissions - Editor Status Required"); return; } if (!Page.IsPostBack) { int passedInShow = Request.GetParamIntOrZero("show", "show"); if (passedInShow == 0) { _show = _basePage.GetSiteOptionValueInt("ArticleSearch", "DefaultShow"); } else if (passedInShow > 200) { _show = 200; } else { _show = passedInShow; } int passedInSkip = Request.GetParamIntOrZero("skip", "skip"); _skip = passedInSkip; DateTime enteredDate = DateTime.MinValue; try { if (Request.DoesParamExist("date", _docDnaDate)) { string entryDateText = Request.GetParamStringOrEmpty("date", _docDnaDate); DateRangeValidation dateValidation = new DateRangeValidation(); DateRangeValidation.ValidationResult isValid; DateTime tempDate; isValid = StatisticsReport.ParseDate(entryDateText, out tempDate); if (isValid == DateRangeValidation.ValidationResult.VALID) { isValid = dateValidation.ValidateDate(tempDate, true); if (isValid == DateRangeValidation.ValidationResult.FUTURE_STARTDATE) { DisplayError("DateError", "Passed in Date is in the future."); return; } else if (isValid != DateRangeValidation.ValidationResult.VALID) { DisplayError("DateError", "Passed in Date not valid."); return; } enteredDate = tempDate; } else { DisplayError("DateError", "Passed in Date not valid."); return; } } else { enteredDate = DateTime.Now; } entryDate.SelectedDate = enteredDate.Date; entryDate.VisibleDate = enteredDate.Date; } catch (FormatException) { DisplayError("DateError", "Passed in Date format incorrect. It should be yyyy/mm/dd"); return; } interval.SelectedValue = "1"; if (Request.DoesParamExist("interval", _docDnaInterval)) { string intervalText = Request.GetParamStringOrEmpty("interval", _docDnaInterval); if (intervalText == "week") { interval.SelectedValue = "2"; } else if (intervalText == "month") { interval.SelectedValue = "3"; } } if (skin == "purexml" || skParam == "purexml") { GetStatisticsReport(true); } else { GetStatisticsReport(false); ShowHideControls(true); } } else { ShowHideResultControls(false); } }