protected void LoadItems() { if (!HasEditPermission) { dgNotifications.Columns[dgNotifications.Columns.Count - 1].Visible = false; } var allNotifications = NotificationFilterCollection.FetchAll().Where(x => x.Deleted == null); dgNotifications.VirtualItemCount = allNotifications.Count(); if (dgNotifications.VirtualItemCount == 0) { phHasItems.Visible = false; phHasNoItems.Visible = true; lblNoItems.Text = NotificationStrings.GetText(@"MessageNoNotificationsFound"); } else { phHasItems.Visible = true; phHasNoItems.Visible = false; if (dgNotifications.PageSize * dgNotifications.CurrentPageIndex > dgNotifications.VirtualItemCount) { dgNotifications.CurrentPageIndex = 0; hfCurrentPageIndex_dgNotifications.Value = dgNotifications.CurrentPageIndex.ToString(); } BindList(allNotifications.ToList()); } }
protected void hlSendPush_Click(object sender, EventArgs e) { try { Button btn = (Button)(sender); var arguments = btn.CommandArgument; var notificationToSend = NotificationFilter.FetchByID(int.Parse(arguments)); var users = NotificationGroups.GetUsersOfFilter(notificationToSend); try { Task.Run(() => Snoopi.core.FcmService.SendTemplateToMany(notificationToSend.Name, notificationToSend.MessageTemplate, users)).Wait(); } catch (Exception ex) { using (System.IO.StreamWriter sw = System.IO.File.AppendText(AppDomain.CurrentDomain.BaseDirectory + @"\Output\push-log.txt")) { sw.WriteLine(@" ------------" + DateTime.Now + "--------------------" + '\n' + "Exception " + ex.Message + " CallStack : " + ex.StackTrace); } } Master.MessageCenter.DisplaySuccessMessage(NotificationStrings.GetText(@"NotificationSent")); } catch (Exception ex) { Master.MessageCenter.DisplayErrorMessage(NotificationStrings.GetText(@"DeleteErrorMessage") + " \n" + ex.Message + '\n' + ex.StackTrace); } }
protected void LoadView() { string[] itemNames = Enum.GetNames(typeof(NotificationGroupsEnum)); Array itemValues = Enum.GetValues(typeof(NotificationGroupsEnum)).Cast <int>().ToArray(); for (int i = 0; i <= itemValues.Length - 1; i++) { string localizationValue = NotificationStrings.GetText(itemNames[i]); ListItem item = new ListItem(localizationValue, itemValues.GetValue(i).ToString()); ddlFilteringGroup.Items.Add(item); } ddlFilteringGroup.DataBind(); var animals = AnimalCollection.FetchAll(); animals.Add(new Animal { AnimalId = 0, AnimalName = "All" }); ddlAnimalType.DataSource = animals.OrderBy(x => x.AnimalId); ddlAnimalType.DataValueField = "AnimalId"; ddlAnimalType.DataTextField = "AnimalName"; ddlAnimalType.DataBind(); var areas = AreaCollection.FetchAll(); areas.Add(new Area { AreaId = 0, AreaName = "All" }); ddlArea.DataSource = areas.OrderBy(x => x.AreaId); ddlArea.DataValueField = "AreaId"; ddlArea.DataTextField = "AreaName"; ddlArea.DataBind(); if (FilterId > 0) { var notificationFilter = NotificationFilter.FetchByID(FilterId); ddlArea.SelectedValue = notificationFilter.AreaId.ToString(); txtFromDate.Text = notificationFilter.FromDate.ToString(); txtToDate.Text = notificationFilter.ToDate.ToString(); txtMaxFrequency.Text = notificationFilter.MaxFrequency.ToString(); txtMinFrequency.Text = notificationFilter.MinFrequency.ToString(); txtName.Text = notificationFilter.Name; txtPriority.Text = notificationFilter.Priority.ToString(); ddlAnimalType.SelectedValue = notificationFilter.AnimalTypeId.ToString(); ddlFilteringGroup.SelectedValue = ((int)notificationFilter.Group).ToString(); txtMessage.Text = notificationFilter.MessageTemplate; txtRunEvery.Text = notificationFilter.RunEvery.ToString(); cbIsAuto.Checked = notificationFilter.IsAuto; if (!string.IsNullOrEmpty(notificationFilter.AdImageUrl)) { HomeImage.ImageUrl = MediaUtility.GetImagePath("Banners", notificationFilter.AdImageUrl, 0, 64, 64); HomeImage.ImageUrl = HomeImage.ImageUrl.Contains(".") ? HomeImage.ImageUrl : ""; ImageFileHandler(fuImage, HomeImage, btnDeleteImage, HomeImage.ImageUrl); } } }
protected void hlChechNumOfUsers(object sender, EventArgs e) { try { Button btn = (Button)(sender); var arguments = btn.CommandArgument; var notificationToSend = NotificationFilter.FetchByID(int.Parse(arguments)); var users = NotificationGroups.GetUsersOfFilter(notificationToSend); Master.MessageCenter.DisplaySuccessMessage(NotificationStrings.GetText(@"NotificationSent")); } catch (Exception ex) { Master.MessageCenter.DisplayErrorMessage(NotificationStrings.GetText(@"DeleteErrorMessage") + " \n" + ex.Message + '\n' + ex.StackTrace); } }
protected void hlDelete_Click(object sender, EventArgs e) { try { Button btn = (Button)(sender); var arguments = btn.CommandArgument; var notificationToDelete = NotificationFilter.FetchByID(int.Parse(arguments)); notificationToDelete.Deleted = DateTime.Now; notificationToDelete.Save(); Master.MessageCenter.DisplaySuccessMessage(NotificationStrings.GetText(@"DeleteMessage")); LoadItems(); } catch (Exception ex) { Master.MessageCenter.DisplayErrorMessage(NotificationStrings.GetText(@"DeleteErrorMessage") + " \n" + ex.Message + '\n' + ex.StackTrace); } }
protected void btnSave_Click(object sender, EventArgs e) { if (!Page.IsValid) { return; } var filter = GetCurrentFilter(); if (fuImage.HasFile) { MediaUtility.DeleteImageFilePath("Banners", filter.AdImageUrl, 64, 64, 0); filter.AdImageUrl = MediaUtility.SaveFile(fuImage.PostedFile, "Banners", 0); HomeImage.ImageUrl = MediaUtility.GetImagePath("Banners", filter.AdImageUrl, 0, 64, 64); ImageFileHandler(fuImage, HomeImage, btnDeleteImage, HomeImage.ImageUrl); } else if (filter.AdImageUrl != "" && fuImage.Visible) { MediaUtility.DeleteImageFilePath("Banners", Settings.GetSetting(Settings.Keys.BANNER_HOME), 64, 64, 0); filter.AdImageUrl = ""; } filter.Save(); //if (IsNewMode) //{ // string successMessage = NotificationStrings.GetText(@"NotificationFilterCreated"); // string url = @"NotificationsPanel.aspx"; // url += @"&message-success=" + Server.UrlEncode(successMessage); // Response.Redirect(url, true); //} //else { string successMessage = NotificationStrings.GetText(@"FilterSaved"); Master.MessageCenter.DisplaySuccessMessage(successMessage); LoadView(); } }
protected void Page_PreRender(object sender, EventArgs e) { Master.PageTitle = NotificationStrings.GetText(@"AllNotifications"); Master.ActiveMenu = "Notifications"; Master.AddClientScriptInclude(@"dgDateManager.js"); }
protected void Page_PreRender(object sender, EventArgs e) { Master.PageTitle = NotificationStrings.GetText(IsNewMode ? @"NewNotification" : @"EditNotification"); Master.ActiveMenu = IsNewMode ? "NotificationEdit" : "Notifications"; Master.AddClientScriptInclude(@"dgDatePicker.js"); }