private void LoadGrid(string display) { Ektron.Cms.Activity.ActivityTypeCriteria activityListCriteria = new Ektron.Cms.Activity.ActivityTypeCriteria(); activityListCriteria.OrderByDirection = Ektron.Cms.Common.EkEnumeration.OrderByDirection.Ascending; if (display == "colleagues") { activityListCriteria.AddFilter(Ektron.Cms.Activity.ActivityTypeProperty.Scope, CriteriaFilterOperator.EqualTo, EkEnumeration.ActivityActionSource.Colleague); } else { activityListCriteria.AddFilter(Ektron.Cms.Activity.ActivityTypeProperty.Scope, CriteriaFilterOperator.EqualTo, EkEnumeration.ActivityActionSource.CommunityGroup); } activityTypeList = _activityListApi.GetList(activityListCriteria); System.Data.DataTable dt = new System.Data.DataTable(); System.Data.DataRow dr; dt.Columns.Add(new System.Data.DataColumn("EMPTY", typeof(string))); dt.Columns.Add(new System.Data.DataColumn("EMAIL", typeof(string))); dt.Columns.Add(new System.Data.DataColumn("SMS", typeof(string))); dt.Columns.Add(new System.Data.DataColumn("NEWSFEED", typeof(string))); LoadPreferenceList(); for (int i = 0; i <= activityTypeList.Count - 1; i++) { dr = dt.NewRow(); dr["EMPTY"] = GetResourceText(activityTypeList[i].Name); if (preferenceList.Count > 0) { foreach (NotificationPreferenceData tempLoopVar_prefData in preferenceList) { prefData = tempLoopVar_prefData; if (CompareIds(activityTypeList[i].Id, 1)) { dr["EMAIL"] = "<center><input type=\"Checkbox\" name = \"email" + activityTypeList[i].Id + "\" id=\"email" + activityTypeList[i].Id + "\" checked=\"checked\" /></center>"; } else { dr["EMAIL"] = "<center><input type=\"Checkbox\" name = \"email" + activityTypeList[i].Id + "\" id=\"email" + activityTypeList[i].Id + "\" /></center>"; } if (CompareIds(activityTypeList[i].Id, 2)) { dr["NEWSFEED"] = "<center><input type=\"Checkbox\" name=\"feed" + activityTypeList[i].Id + "\" id=\"feed" + activityTypeList[i].Id + "\" checked=\"checked\" /></center>"; } else { dr["NEWSFEED"] = "<center><input type=\"Checkbox\" name=\"feed" + activityTypeList[i].Id + "\" id=\"feed" + activityTypeList[i].Id + "\" /></center>"; } if (CompareIds(activityTypeList[i].Id, 3)) { dr["SMS"] = "<center><input type=\"Checkbox\" name =\"sms" + activityTypeList[i].Id + "\" id=\"sms" + activityTypeList[i].Id + "\" checked=\"checked\" /></center>"; } else { dr["SMS"] = "<center><input type=\"Checkbox\" name =\"sms" + activityTypeList[i].Id + "\" id=\"sms" + activityTypeList[i].Id + "\" /></center>"; } } dt.Rows.Add(dr); } else { dr["EMAIL"] = "<center><input type=\"Checkbox\" name = \"email" + activityTypeList[i].Id + "\" id=\"email" + activityTypeList[i].Id + "\"/></center>"; dr["SMS"] = "<center><input type=\"Checkbox\" name =\"sms" + activityTypeList[i].Id + "\" id=\"sms" + activityTypeList[i].Id + "\"/></center>"; dr["NEWSFEED"] = "<center><input type=\"Checkbox\" name=\"feed" + activityTypeList[i].Id + "\" id=\"feed" + activityTypeList[i].Id + "\"/></center>"; dt.Rows.Add(dr); } } System.Data.DataView dv = new System.Data.DataView(dt); if (display == "colleagues") { CollGrid.DataSource = dv; CollGrid.DataBind(); } else { GroupGrid.DataSource = dv; GroupGrid.DataBind(); } }
private bool CompareIds(long prefActivityTypeId, long prefAgentId) { foreach (NotificationPreferenceData tempLoopVar_prefData in preferenceList) { prefData = tempLoopVar_prefData; if (prefData.ActivityTypeId == prefActivityTypeId && prefAgentId == prefData.AgentId) { return true; } } return false; }
private void UpdateActivityPreferences() { Ektron.Cms.Activity.ActivityTypeCriteria activityCollListCriteria = new Ektron.Cms.Activity.ActivityTypeCriteria(); Ektron.Cms.Activity.ActivityTypeCriteria activityGroupListCriteria = new Ektron.Cms.Activity.ActivityTypeCriteria(); long uId = 0; if ((!(Request.QueryString["id"] == null)) && Information.IsNumeric(Request.QueryString["id"])) { long.TryParse(Request.QueryString["id"], out uId); } activityCollListCriteria.AddFilter(Ektron.Cms.Activity.ActivityTypeProperty.Scope, CriteriaFilterOperator.EqualTo, EkEnumeration.ActivityActionSource.Colleague); activityGroupListCriteria.AddFilter(Ektron.Cms.Activity.ActivityTypeProperty.Scope, CriteriaFilterOperator.EqualTo, EkEnumeration.ActivityActionSource.CommunityGroup); collActivityTypeList = _activityListApi.GetList(activityCollListCriteria); groupActivityTypeList = _activityListApi.GetList(activityGroupListCriteria); if (uId > 0) { //Colleague Preferences preferenceList = new System.Collections.Generic.List<NotificationPreferenceData>(); preferenceList.Clear(); for (int i = 0; i <= collActivityTypeList.Count - 1; i++) { if ((Page.Request.Form["email" + collActivityTypeList[i].Id] != null) && Page.Request.Form["email" + collActivityTypeList[i].Id] == "on") { prefData = new NotificationPreferenceData(); prefData.ActivityTypeId = collActivityTypeList[i].Id; prefData.AgentId = 1; prefData.UserId = uId; preferenceList.Add(prefData); } else { prefData = new NotificationPreferenceData(); prefData.ActivityTypeId = collActivityTypeList[i].Id; prefData.DataState = Ektron.Cms.Common.EkEnumeration.DataState.Deleted; prefData.AgentId = 1; prefData.UserId = uId; preferenceList.Add(prefData); } if ((Page.Request.Form["sms" + collActivityTypeList[i].Id] != null) && Page.Request.Form["sms" + collActivityTypeList[i].Id] == "on") { prefData = new NotificationPreferenceData(); prefData.ActivityTypeId = collActivityTypeList[i].Id; prefData.AgentId = 3; prefData.UserId = uId; preferenceList.Add(prefData); } else { prefData = new NotificationPreferenceData(); prefData.ActivityTypeId = collActivityTypeList[i].Id; prefData.DataState = Ektron.Cms.Common.EkEnumeration.DataState.Deleted; prefData.AgentId = 3; prefData.UserId = uId; preferenceList.Add(prefData); } if ((Page.Request.Form["feed" + collActivityTypeList[i].Id] != null) && Page.Request.Form["feed" + collActivityTypeList[i].Id] == "on") { prefData = new NotificationPreferenceData(); prefData.ActivityTypeId = collActivityTypeList[i].Id; prefData.AgentId = 2; prefData.UserId = uId; preferenceList.Add(prefData); } else { prefData = new NotificationPreferenceData(); prefData.ActivityTypeId = collActivityTypeList[i].Id; prefData.DataState = Ektron.Cms.Common.EkEnumeration.DataState.Deleted; prefData.AgentId = 2; prefData.UserId = uId; preferenceList.Add(prefData); } } //Group Preferences for (int i = 0; i <= groupActivityTypeList.Count - 1; i++) { if ((Page.Request.Form["email" + groupActivityTypeList[i].Id] != null) && Page.Request.Form["email" + groupActivityTypeList[i].Id] == "on") { prefData = new NotificationPreferenceData(); prefData.ActivityTypeId = groupActivityTypeList[i].Id; prefData.AgentId = 1; prefData.UserId = uId; prefData.ActionSourceId = -1; preferenceList.Add(prefData); } else { prefData = new NotificationPreferenceData(); prefData.ActivityTypeId = groupActivityTypeList[i].Id; prefData.DataState = Ektron.Cms.Common.EkEnumeration.DataState.Deleted; prefData.AgentId = 1; prefData.UserId = uId; prefData.ActionSourceId = -1; preferenceList.Add(prefData); } if ((Page.Request.Form["feed" + groupActivityTypeList[i].Id] != null) && Page.Request.Form["feed" + groupActivityTypeList[i].Id] == "on") { prefData = new NotificationPreferenceData(); prefData.ActivityTypeId = groupActivityTypeList[i].Id; prefData.AgentId = 2; prefData.UserId = uId; prefData.ActionSourceId = -1; preferenceList.Add(prefData); } else { prefData = new NotificationPreferenceData(); prefData.ActivityTypeId = groupActivityTypeList[i].Id; prefData.DataState = Ektron.Cms.Common.EkEnumeration.DataState.Deleted; prefData.AgentId = 2; prefData.UserId = uId; prefData.ActionSourceId = -1; preferenceList.Add(prefData); } if ((Page.Request.Form["sms" + groupActivityTypeList[i].Id] != null) && Page.Request.Form["sms" + groupActivityTypeList[i].Id] == "on") { prefData = new NotificationPreferenceData(); prefData.ActivityTypeId = groupActivityTypeList[i].Id; prefData.AgentId = 3; prefData.UserId = uId; prefData.ActionSourceId = -1; preferenceList.Add(prefData); } else { prefData = new NotificationPreferenceData(); prefData.ActivityTypeId = groupActivityTypeList[i].Id; prefData.DataState = Ektron.Cms.Common.EkEnumeration.DataState.Deleted; prefData.AgentId = 3; prefData.UserId = uId; prefData.ActionSourceId = -1; preferenceList.Add(prefData); } } _notificationPreferenceApi.SaveUserPreferences(preferenceList); } }
private void EditSettings(string setting) { Ektron.Cms.Activity.ActivityTypeCriteria activityListCriteria = new Ektron.Cms.Activity.ActivityTypeCriteria(); if (setting == "colleagues") { activityListCriteria.AddFilter(Ektron.Cms.Activity.ActivityTypeProperty.Scope, CriteriaFilterOperator.EqualTo, EkEnumeration.ActivityActionSource.Colleague); } else { activityListCriteria.AddFilter(Ektron.Cms.Activity.ActivityTypeProperty.Scope, CriteriaFilterOperator.EqualTo, EkEnumeration.ActivityActionSource.CommunityGroup); } activityTypeList = _activityListApi.GetList(activityListCriteria); LoadPreferenceList(); if (Page.IsPostBack) { preferenceList.Clear(); for (int i = 0; i <= activityTypeList.Count - 1; i++) { if ((Page.Request.Form["email" + activityTypeList[i].Id] != null) && Page.Request.Form["email" + activityTypeList[i].Id] == "on") { prefData = new NotificationPreferenceData(); prefData.ActivityTypeId = activityTypeList[i].Id; prefData.AgentId = 1; prefData.UserId = -1; preferenceList.Add(prefData); } else { prefData = new NotificationPreferenceData(); prefData.ActivityTypeId = activityTypeList[i].Id; prefData.DataState = Ektron.Cms.Common.EkEnumeration.DataState.Deleted; prefData.AgentId = 1; prefData.UserId = -1; preferenceList.Add(prefData); } if ((Page.Request.Form["sms" + activityTypeList[i].Id] != null) && Page.Request.Form["sms" + activityTypeList[i].Id] == "on") { prefData = new NotificationPreferenceData(); prefData.ActivityTypeId = activityTypeList[i].Id; prefData.AgentId = 3; prefData.UserId = -1; preferenceList.Add(prefData); } else { prefData = new NotificationPreferenceData(); prefData.ActivityTypeId = activityTypeList[i].Id; prefData.DataState = Ektron.Cms.Common.EkEnumeration.DataState.Deleted; prefData.AgentId = 3; prefData.UserId = -1; preferenceList.Add(prefData); } if ((Page.Request.Form["feed" + activityTypeList[i].Id] != null) && Page.Request.Form["feed" + activityTypeList[i].Id] == "on") { prefData = new NotificationPreferenceData(); prefData.ActivityTypeId = activityTypeList[i].Id; prefData.AgentId = 2; prefData.UserId = -1; preferenceList.Add(prefData); } else { prefData = new NotificationPreferenceData(); prefData.ActivityTypeId = activityTypeList[i].Id; prefData.DataState = Ektron.Cms.Common.EkEnumeration.DataState.Deleted; prefData.AgentId = 2; prefData.UserId = -1; preferenceList.Add(prefData); } } _notificationPreferenceApi.SaveUserPreferences(preferenceList); if (setting == "colleagues") { Response.Redirect("DefaultNotificationPreferences.aspx?mode=colleagues"); } else { Response.Redirect("DefaultNotificationPreferences.aspx?mode=groups"); } } else { DisplayGrid(setting, ""); } }
private void DisplayGrid(string display, string mode) { NotificationAgentCriteria criteria = new NotificationAgentCriteria(); Ektron.Cms.Activity.ActivityTypeCriteria activityListCriteria = new Ektron.Cms.Activity.ActivityTypeCriteria(); activityListCriteria.OrderByDirection = Ektron.Cms.Common.EkEnumeration.OrderByDirection.Ascending; criteria.AddFilter(NotificationAgentProperty.IsEnabled, CriteriaFilterOperator.EqualTo, true); agentList = _notificationAgentApi.GetList(criteria); if ((agentList != null) && agentList.Count > 0) { if (display == "colleagues") { activityListCriteria.AddFilter(Ektron.Cms.Activity.ActivityTypeProperty.Scope, CriteriaFilterOperator.EqualTo, EkEnumeration.ActivityActionSource.Colleague); } else { activityListCriteria.AddFilter(Ektron.Cms.Activity.ActivityTypeProperty.Scope, CriteriaFilterOperator.EqualTo, EkEnumeration.ActivityActionSource.CommunityGroup); } activityTypeList = _activityListApi.GetList(activityListCriteria); DefaultPrefGrid.Columns.Clear(); DefaultPrefGrid.Columns.Add(_refStyle.CreateBoundField("EMPTY", "", "title-header", HorizontalAlign.Left, HorizontalAlign.NotSet, Unit.Percentage(20), Unit.Percentage(20), false, false)); foreach (NotificationAgentData agentData in agentList) { if (agentData.IsEnabled) { if ((agentData.Id) == 1) { DefaultPrefGrid.Columns.Add(_refStyle.CreateBoundField("EMAIL", "<center>" + msgHelper.GetMessage("sync conflict email") + "</center>", "title-header", HorizontalAlign.Left, HorizontalAlign.NotSet, Unit.Percentage(10), Unit.Percentage(10), false, false)); } else if ((agentData.Id) == 2) { DefaultPrefGrid.Columns.Add(_refStyle.CreateBoundField("NEWSFEED", "<center>" + msgHelper.GetMessage("colheader newsfeed") + "</center>", "title-header", HorizontalAlign.Left, HorizontalAlign.NotSet, Unit.Percentage(10), Unit.Percentage(10), false, false)); } else if ((agentData.Id) == 3) { DefaultPrefGrid.Columns.Add(_refStyle.CreateBoundField("SMS", "<center>" + msgHelper.GetMessage("colheader sms") + "</center>", "title-header", HorizontalAlign.Left, HorizontalAlign.NotSet, Unit.Percentage(10), Unit.Percentage(10), false, false)); } } } DataTable dt = new DataTable(); DataRow dr; dt.Columns.Add(new DataColumn("EMPTY", typeof(string))); dt.Columns.Add(new DataColumn("EMAIL", typeof(string))); dt.Columns.Add(new DataColumn("SMS", typeof(string))); dt.Columns.Add(new DataColumn("NEWSFEED", typeof(string))); LoadPreferenceList(); for (int i = 0; i <= activityTypeList.Count - 1; i++) { dr = dt.NewRow(); dr["EMPTY"] = GetMessageText(activityTypeList[i].Name); if (preferenceList.Count > 0) { foreach (NotificationPreferenceData tempLoopVar_prefData in preferenceList) { prefData = tempLoopVar_prefData; if (CompareIds(activityTypeList[i].Id, 1)) { dr["EMAIL"] = "<center><input type=\"Checkbox\" name = \"email" + activityTypeList[i].Id + "\" id=\"email" + activityTypeList[i].Id + "\" checked=\"checked\"" + mode + " /></center>"; } else { dr["EMAIL"] = "<center><input type=\"Checkbox\" name = \"email" + activityTypeList[i].Id + "\" id=\"email" + activityTypeList[i].Id + "\"" + mode + " /></center>"; } if (CompareIds(activityTypeList[i].Id, 2)) { dr["NEWSFEED"] = "<center><input type=\"Checkbox\" name=\"feed" + activityTypeList[i].Id + "\" id=\"feed" + activityTypeList[i].Id + "\" checked=\"checked\" " + mode + " /></center>"; } else { dr["NEWSFEED"] = "<center><input type=\"Checkbox\" name=\"feed" + activityTypeList[i].Id + "\" id=\"feed" + activityTypeList[i].Id + "\"" + mode + " /></center>"; } if (CompareIds(activityTypeList[i].Id, 3)) { dr["SMS"] = "<center><input type=\"Checkbox\" name =\"sms" + activityTypeList[i].Id + "\" id=\"sms" + activityTypeList[i].Id + "\" checked=\"checked\"" + mode + " /></center>"; } else { dr["SMS"] = "<center><input type=\"Checkbox\" name =\"sms" + activityTypeList[i].Id + "\" id=\"sms" + activityTypeList[i].Id + "\"" + mode + "/></center>"; } } dt.Rows.Add(dr); } else { dr["EMAIL"] = "<center><input type=\"Checkbox\" name = \"email" + activityTypeList[i].Id + "\" id=\"email" + activityTypeList[i].Id + "\"/></center>"; dr["SMS"] = "<center><input type=\"Checkbox\" name =\"sms" + activityTypeList[i].Id + "\" id=\"sms" + activityTypeList[i].Id + "\"/></center>"; dr["NEWSFEED"] = "<center><input type=\"Checkbox\" name=\"feed" + activityTypeList[i].Id + "\" id=\"feed" + activityTypeList[i].Id + "\"/></center>"; dt.Rows.Add(dr); } } //get totalpages this.TotalPagesNumber = dt.Rows.Count / _refContentApi.RequestInformationRef.PagingSize; if (TotalPagesNumber * _refContentApi.RequestInformationRef.PagingSize < dt.Rows.Count) { TotalPagesNumber++; } PageSettings(); DataView dv = new DataView(dt); DefaultPrefGrid.DataSource = dv; SetGridPagingProperties(); DefaultPrefGrid.DataBind(); } else { agentDisabled.Visible = true; } }
private void EditGroupsSettings(long groupId) { Ektron.Cms.Activity.ActivityTypeCriteria activityListCriteria = new Ektron.Cms.Activity.ActivityTypeCriteria(); activityListCriteria.AddFilter(Ektron.Cms.Activity.ActivityTypeProperty.Scope, CriteriaFilterOperator.EqualTo, EkEnumeration.ActivityActionSource.CommunityGroup); activityTypeList = _activityListApi.GetList(activityListCriteria); LoadPreferenceList(groupId); if (Page.IsPostBack) { preferenceList.Clear(); for (int i = 0; i <= activityTypeList.Count - 1; i++) { if ((Page.Request.Form["email" + activityTypeList[i].Id] != null)&& Page.Request.Form["email" + activityTypeList[i].Id] == "on") { prefData = new NotificationPreferenceData(); prefData.ActivityTypeId = activityTypeList[i].Id; prefData.AgentId = 1; prefData.UserId = _notificationPreferenceApi.RequestInformation.UserId; prefData.ActionSourceId = groupId; preferenceList.Add(prefData); } else { prefData = new NotificationPreferenceData(); prefData.ActivityTypeId = activityTypeList[i].Id; prefData.DataState = Ektron.Cms.Common.EkEnumeration.DataState.Deleted; prefData.AgentId = 1; prefData.UserId = _notificationPreferenceApi.RequestInformation.UserId; prefData.ActionSourceId = groupId; preferenceList.Add(prefData); } if ((Page.Request.Form["sms" + activityTypeList[i].Id] != null)&& Page.Request.Form["sms" + activityTypeList[i].Id] == "on") { prefData = new NotificationPreferenceData(); prefData.ActivityTypeId = activityTypeList[i].Id; prefData.AgentId = 3; prefData.UserId = _notificationPreferenceApi.RequestInformation.UserId; prefData.ActionSourceId = groupId; preferenceList.Add(prefData); } else { prefData = new NotificationPreferenceData(); prefData.ActivityTypeId = activityTypeList[i].Id; prefData.DataState = Ektron.Cms.Common.EkEnumeration.DataState.Deleted; prefData.AgentId = 3; prefData.UserId = _notificationPreferenceApi.RequestInformation.UserId; prefData.ActionSourceId = groupId; preferenceList.Add(prefData); } if ((Page.Request.Form["feed" + activityTypeList[i].Id] != null)&& Page.Request.Form["feed" + activityTypeList[i].Id] == "on") { prefData = new NotificationPreferenceData(); prefData.ActivityTypeId = activityTypeList[i].Id; prefData.AgentId = 2; prefData.UserId = _notificationPreferenceApi.RequestInformation.UserId; prefData.ActionSourceId = groupId; preferenceList.Add(prefData); } else { prefData = new NotificationPreferenceData(); prefData.ActivityTypeId = activityTypeList[i].Id; prefData.DataState = Ektron.Cms.Common.EkEnumeration.DataState.Deleted; prefData.AgentId = 2; prefData.UserId = _notificationPreferenceApi.RequestInformation.UserId; prefData.ActionSourceId = groupId; preferenceList.Add(prefData); } } _notificationPreferenceApi.SaveUserPreferences(preferenceList); } }