using System; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using CMS.GlobalHelper; using CMS.UIControls; using CMS.WebAnalytics; public partial class CMSModules_WebAnalytics_Controls_SelectGraphPeriod : CMSAdminControl { #region "Properties" /// /// Start of itnerval. /// public DateTime From { get { return ucRangeDatePicker.SelectedDateTime; } set { ucRangeDatePicker.SelectedDateTime = value; } } /// /// Full date time representation (from) (return precise datetime, not start date of interval (end of year,month,day...). /// public DateTime FullFrom { get { return ucRangeDatePicker.SelectedFullDateTime; } set { ucRangeDatePicker.SelectedFullDateTime = value; } } /// /// Full date time representation (to) - (return precise datetime, not end date of interval (end of year,month,day...). /// public DateTime FullTo { get { return ucRangeDatePicker.AlternateSelectedFullDateTime; } set { ucRangeDatePicker.AlternateSelectedFullDateTime = value; } } /// /// End of interval. /// public DateTime To { get { return ucRangeDatePicker.AlternateSelectedDateTime; } set { ucRangeDatePicker.AlternateSelectedDateTime = value; } } /// /// Graph type interval. /// public HitsIntervalEnum Interval { get { return HitsIntervalEnumFunctions.StringToHitsConversion(ValidationHelper.GetString(ViewState["GraphTypePeriod"], "Month")); } set { ViewState["GraphTypePeriod"] = value; SetDateTimePickerSettings(); } } /// /// Enables/disables range date time picker /// public bool Enabled { get { return ucRangeDatePicker.Enabled; } set { ucRangeDatePicker.Enabled = value; btnUpdate.Enabled = value; } } #endregion #region "Methods" protected void Page_Load(object sender, EventArgs e) { SetDateTimePickerSettings(); pnlRange.DefaultButton = btnUpdate.ID; } /// /// Sets settings for datetime picker depending on interval. /// private void SetDateTimePickerSettings() { ucRangeDatePicker.DisableDaySelect = false; ucRangeDatePicker.DisableMonthSelect = false; ucRangeDatePicker.EditTime = false; switch (Interval) { case HitsIntervalEnum.Month: ucRangeDatePicker.DisableDaySelect = true; break; case HitsIntervalEnum.Year: ucRangeDatePicker.DisableMonthSelect = true; break; case HitsIntervalEnum.Hour: ucRangeDatePicker.EditTime = true; break; } } protected override void OnPreRender(EventArgs e) { base.OnPreRender(e); } #endregion }