public void StoreCategories() { SelectedCategory.Clear(); var lstCategories = new ArrayList(); if (Settings.Enablecategories == EventModuleSettings.DisplayCategories.SingleSelect) { lstCategories.Add(ddlCategories.SelectedValue); } else { if (ddlCategories.CheckedItems.Count > 0 && ddlCategories.CheckedItems.Count != ddlCategories.Items.Count) { foreach (var item in ddlCategories.CheckedItems) { lstCategories.Add(item.Value); } } else { lstCategories.Add("-1"); } } SelectedCategory = lstCategories; }
private void Page_Load(object sender, EventArgs e) { try { // Add the external Validation.js to the Page const string csname = "ExtValidationScriptFile"; var cstype = MethodBase.GetCurrentMethod().GetType(); var cstext = "<script src=\"" + ResolveUrl("~/DesktopModules/Events/Scripts/Validation.js") + "\" type=\"text/javascript\"></script>"; if (!Page.ClientScript.IsClientScriptBlockRegistered(csname)) { Page.ClientScript.RegisterClientScriptBlock(cstype, csname, cstext, false); } ddlCategories.EmptyMessage = Localization.GetString("NoCategories", LocalResourceFile); ddlCategories.Localization.AllItemsCheckedString = Localization.GetString("AllCategories", LocalResourceFile); ddlCategories.Localization.CheckAllString = Localization.GetString("SelectAllCategories", LocalResourceFile); if (Settings.Enablecategories == EventModuleSettings.DisplayCategories.SingleSelect) { ddlCategories.CheckBoxes = false; } if (!Page.IsPostBack) { //Bind DDL var ctrlEventCategories = new EventCategoryController(); var lstCategories = ctrlEventCategories.EventsCategoryList(PortalId); var arrCategories = new ArrayList(); if (Settings.Restrictcategories) { foreach (EventCategoryInfo dbCategory in lstCategories) { foreach (int category in Settings.ModuleCategoryIDs) { if (dbCategory.Category == category) { arrCategories.Add(dbCategory); } } } } else { arrCategories.AddRange(lstCategories); } if (lstCategories.Count == 0) { Visible = false; SelectedCategory.Clear(); return; } //Restrict categories by events in time frame. if (Settings.RestrictCategoriesToTimeFrame) { //Only for list view. var whichView = string.Empty; if (!(Request.QueryString["mctl"] == null) && ModuleId == Convert.ToInt32(Request.QueryString["ModuleID"])) { if (Request["mctl"].EndsWith(".ascx")) { whichView = Request["mctl"]; } else { whichView = Request["mctl"] + ".ascx"; } } if (whichView.Length == 0) { if (!ReferenceEquals( Request.Cookies.Get("DNNEvents" + Convert.ToString(ModuleId)), null)) { whichView = Request.Cookies.Get("DNNEvents" + Convert.ToString(ModuleId)).Value; } else { whichView = Settings.DefaultView; } } if (whichView == "EventList.ascx" || whichView == "EventRpt.ascx") { var objEventInfoHelper = new EventInfoHelper(ModuleId, TabId, PortalId, Settings); var lstEvents = default(ArrayList); var getSubEvents = Settings.MasterEvent; var numDays = Settings.EventsListEventDays; var displayDate = default(DateTime); var startDate = default(DateTime); var endDate = default(DateTime); if (Settings.ListViewUseTime) { displayDate = DisplayNow(); } else { displayDate = DisplayNow().Date; } if (Settings.EventsListSelectType == "DAYS") { startDate = displayDate.AddDays(Settings.EventsListBeforeDays * -1); endDate = displayDate.AddDays(Settings.EventsListAfterDays * 1); } else { startDate = displayDate; endDate = displayDate.AddDays(numDays); } lstEvents = objEventInfoHelper.GetEvents(startDate, endDate, getSubEvents, new ArrayList(Convert.ToInt32(new[] { "-1" })), new ArrayList(Convert.ToInt32(new[] { "-1" })), -1, -1); var eventCategoryIds = new ArrayList(); foreach (EventInfo lstEvent in lstEvents) { eventCategoryIds.Add(lstEvent.Category); } foreach (EventCategoryInfo lstCategory in lstCategories) { if (!eventCategoryIds.Contains(lstCategory.Category)) { arrCategories.Remove(lstCategory); } } } } //Bind categories. ddlCategories.DataSource = arrCategories; ddlCategories.DataBind(); if (Settings.Enablecategories == EventModuleSettings.DisplayCategories.SingleSelect) { ddlCategories.Items.Insert( 0, new RadComboBoxItem(Localization.GetString("AllCategories", LocalResourceFile), "-1")); ddlCategories.SelectedIndex = 0; } ddlCategories.OnClientDropDownClosed = "function() { btnUpdateClick('" + btnUpdate.UniqueID + "','" + ddlCategories.ClientID + "');}"; ddlCategories.OnClientLoad = "function() { storeText('" + ddlCategories.ClientID + "');}"; if (Settings.Enablecategories == EventModuleSettings.DisplayCategories.SingleSelect) { foreach (int category in SelectedCategory) { ddlCategories.SelectedIndex = ddlCategories.FindItemByValue(category.ToString()).Index; break; } } else { foreach (var category in SelectedCategory) { foreach (RadComboBoxItem item in ddlCategories.Items) { if (item.Value == category.ToString()) { item.Checked = true; } } } if (Convert.ToInt32(SelectedCategory[0]) == -1) { foreach (RadComboBoxItem item in ddlCategories.Items) { item.Checked = true; } } } } } catch (Exception) { //ProcessModuleLoadException(Me, exc) } }