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);
     }
 }
Exemplo n.º 3
0
    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);
     }
 }
Exemplo n.º 6
0
    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");
 }
Exemplo n.º 8
0
 protected void Page_PreRender(object sender, EventArgs e)
 {
     Master.PageTitle  = NotificationStrings.GetText(IsNewMode ? @"NewNotification" : @"EditNotification");
     Master.ActiveMenu = IsNewMode ? "NotificationEdit" : "Notifications";
     Master.AddClientScriptInclude(@"dgDatePicker.js");
 }