Exemple #1
0
        protected void Page_Load(object sender, EventArgs e)
        {
            //SmsSender.SendSmsBulkIfTicketOnStock("37789");

            Page.Title = PagesTitles.UserDefaultTitle + BackendHelper.TagToValue("page_title_part");
            OtherMethods.ActiveRightMenuStyleChanche("hlMain", this.Page);
            var userInSession = (Users)Session["userinsession"];
            var user          = new Users
            {
                ID = UserID
            };

            user.GetById();
            lblUID.Text   = user.ID.ToString();
            lblEmail.Text = user.Email;
            lblLogin.Text = user.Login;

            if (user.ManagerID != 0)
            {
                trLogistian.Visible = true;

                var userLogistian = new Users()
                {
                    ID = Convert.ToInt32(user.ManagerID)
                };
                lblLogistian.Text = userLogistian.Name + ", тел. " + userLogistian.PhoneWorkOne;
            }

            if (user.SalesManagerID != 0)
            {
                trManager.Visible = true;

                var userManager = new Users()
                {
                    ID = Convert.ToInt32(user.SalesManagerID)
                };
                lblManager.Text = userManager.Family + " " + userManager.Name + ", тел. " + userManager.PhoneWorkOne;
            }

            if (user.AllowApi == 1)
            {
                trApiKey.Visible = true;
                lblApiKey.Text   = user.ApiKey;
            }
            if (user.Discount == 0)
            {
                tdDiscount.Visible = false;
            }
            else
            {
                lblDiscount.Text = user.Discount + "%";
            }

            DeliveryOnMinskPhones = BackendHelper.TagToValue("delivery_on_minsk_phones");
            DeliveryOnMinskSkype  = BackendHelper.TagToValue("delivery_on_minsk_skype");

            //пересчитываем просмотренные новости
            //обновляем\задаем авторизационную куку с данными пользователя
            AuthenticationMethods.SetUserCookie(userInSession);
        }
Exemple #2
0
        protected void Login(Users user)
        {
            if (user.Status == 1)
            {
                Response.Redirect("~/usernotification/4/" + user.Name);
            }
            else if (user.Status == 3)
            {
                Response.Redirect("~/usernotification/2/" + user.Name);
            }
            else
            {
                //проверка на доступ по WhiteList
                AuthenticationMethods.CheckAccessByWhiteList(user, HttpContext.Current);

                //обновляем\задаем авторизационную куку с данными пользователя
                AuthenticationMethods.SetUserCookie(user);

                //задаем авторизовачные куки для поднятия пользователя при крахе сеcии.
                byte[] bytLogin = System.Text.Encoding.UTF8.GetBytes(user.Login);
                var    cookie   = new HttpCookie("_AUTHGRB")
                {
                    Value   = user.Password + Convert.ToBase64String(bytLogin),
                    Expires = cbRememberMe.Checked ? DateTime.Now.AddDays(15) : DateTime.Now.AddMinutes(60)
                };

                Response.Cookies.Add(cookie);

                Response.Redirect(user.Role == "User" ? "~/UserUI/" : "~/ManagerUI/");
            }
        }
Exemple #3
0
        protected void Page_Load(object sender, EventArgs e)
        {
            OtherMethods.ActiveRightMenuStyleChanche("hlNewsFeed", this.Page);
            Page.Title = PagesTitles.ManagerNewsFromFeedView + BackendHelper.TagToValue("page_title_part");

            if (Request.Params["title"] != null)
            {
                var userInSession = (Users)Session["userinsession"];
                var news          = new News {
                    TitleUrl = Request.Params["title"].ToString()
                };
                news.GetByTitleUrl();
                if (!IsPostBack && news.NewsTypeID == 2)
                {
                    lblTitle.Text      = news.Title;
                    lblBody.InnerHtml  = news.Body;
                    lblCreateDate.Text = news.CreateDate.ToString();

                    //если новость просмотрел клиент - записываем ему просмотр и обновляем список непрочтенных новостей
                    if (userInSession.Role == Users.Roles.User.ToString())
                    {
                        var dm = new DataManager();
                        var isUserViewCount = Convert.ToInt32(
                            dm.QueryWithReturnDataSet(
                                String.Format("select count(*) from `usertonewsview` WHERE `UserID` = {0} AND `NewsID` = {1};", userInSession.ID, news.ID)
                                ).Tables[0].Rows[0][0].ToString()
                            );
                        //записываем данные о инфе, что усер просмотрел новость
                        if (isUserViewCount == 0)
                        {
                            var userView = new UserToNewsView {
                                UserID = userInSession.ID, NewsID = news.ID
                            };
                            userView.Create();
                        }
                        //пересчитываем просмотренные новости
                        //обновляем\задаем авторизационную куку с данными пользователя
                        AuthenticationMethods.SetUserCookie(userInSession);
                    }
                }
                else
                {
                    //Response.Redirect("~/UserUI/NewsFeedView.aspx");
                }
            }
            else
            {
                //Response.Redirect("~/UserUI/NewsFeedView.aspx");
            }
        }
Exemple #4
0
        protected override void OnInit(EventArgs e)
        {
            base.OnInit(e);
            //òóò ïðîâåðÿåì, åëè ñåèÿ ðàçðóøåíà îîòâåòñòâóþò ëè êóêè íóæíîìó ïîëüçîâàòåëþ. Åñëè ñîîòâåòòâóþò - ïîäíèìàåì ïîëüçîâàòåëÿ. Òàêèì îáðàçîì ïî êóêè ñåèÿ æèâåò ïîêà êóêè âåðû.
            var user = (Users)Session["userinsession"];

            if (user == null)
            {
                var httpCookie = Request.Cookies["_AUTHGRB"];
                if (httpCookie != null)
                {
                    if (httpCookie.Value.Length > 33)
                    {
                        var    authCookie  = httpCookie.Value;
                        var    base64Login = authCookie.Remove(0, 32);
                        byte[] byteLogin   = Convert.FromBase64String(base64Login);
                        var    login       = System.Text.Encoding.UTF8.GetString(byteLogin);
                        var    password    = authCookie.Substring(0, 32);
                        var    userOld     = new Users {
                            Login = login
                        };
                        userOld.GetByLogin();
                        if ((login == userOld.Login) && (password == userOld.Password))
                        {
                            if (userOld.Status == 1)
                            {
                                //ðàçðóøàåì êóêè
                                var cookie = new HttpCookie("_AUTHGRB")
                                {
                                    Expires = DateTime.Now.AddDays(-1000)
                                };
                                Response.Cookies.Add(cookie); //ðàçðóøàåì ñåññèþ
                                Session["userinsession"] = null;
                                Response.Redirect("~/");
                            }
                            else
                            {
                                //проверка на доступ по WhiteList
                                AuthenticationMethods.CheckAccessByWhiteList(userOld, HttpContext.Current);

                                //обновляем\задаем авторизационную куку с данными пользователя
                                AuthenticationMethods.SetUserCookie(userOld);
                            }
                        }
                    }
                }
            }
        }
Exemple #5
0
        public void Page_Load(object sender, EventArgs e)
        {
            Page.Title = PagesTitles.ManagerDefaultTitle + BackendHelper.TagToValue("page_title_part");
            OtherMethods.ActiveRightMenuStyleChanche("hlMain", this.Page);
            var user = (Users)Session["userinsession"];

            lblUserName.Text = user.Name;
            lblUID.Text      = user.ID.ToString();
            lblLogin.Text    = user.Login;
            lblEmail.Text    = user.Email;
            lblRole.Text     = user.RussRole;

            var userInSession = (Users)Session["userinsession"];
            var rolesList     = Application["RolesList"] as List <Roles>;
            var currentRole   = (Roles)rolesList.SingleOrDefault(u => u.Name.ToLower() == userInSession.Role.ToLower());

            if (currentRole.Name == Users.Roles.SuperAdmin.ToString())
            {
                lbRestartSubMemcache.Visible = true;
            }
            var dm = new DataManager();

            lblAllUsers.Text =
                MoneyMethods.MoneySeparator(dm.QueryWithReturnDataSet("SELECT COUNT(*) FROM `users` WHERE `Role` = 'User';").Tables[0].Rows[0][0].ToString());
            lblBlockedUsers.Text =
                MoneyMethods.MoneySeparator(dm.QueryWithReturnDataSet("SELECT COUNT(*) FROM `users` WHERE `Role` = 'User' AND `Status` = 3;").Tables[0].Rows[0][0].ToString());
            lblActiveUsers.Text =
                MoneyMethods.MoneySeparator(dm.QueryWithReturnDataSet("SELECT COUNT(*) FROM `users` WHERE `Role` = 'User' AND `Status` = 2;").Tables[0].Rows[0][0].ToString());
            lblNewUsers.Text =
                MoneyMethods.MoneySeparator(dm.QueryWithReturnDataSet("SELECT COUNT(*) FROM `users` WHERE `Role` = 'User' AND `Status` = 1;").Tables[0].Rows[0][0].ToString());
            pnlUsers.Visible = true;

            if (currentRole.PageUserTicketView == 1 || currentRole.PageUserTicketNotProcessedView == 1 || currentRole.PageUserTicketByDeliveryOnMinsk == 1 || currentRole.PageUserTicketByDeliveryOnBelarus == 1)
            {
                lblTicketsAll.Text =
                    MoneyMethods.MoneySeparator(dm.QueryWithReturnDataSet("select count(*) from `tickets`;").Tables[0].Rows[0][0].ToString());
                lblCreateToday.Text =
                    MoneyMethods.MoneySeparator(dm.QueryWithReturnDataSet(String.Format("select count(*) from `tickets` WHERE (`CreateDate` > '{0}' AND `CreateDate` < '{1}' );", DateTime.Now.ToString("yyyy-MM-dd"), DateTime.Now.AddDays(1).ToString("yyyy-MM-dd"))).Tables[0].Rows[0][0].ToString());
                lblNewToday.Text =
                    MoneyMethods.MoneySeparator(dm.QueryWithReturnDataSet(String.Format("select count(*) from `tickets` WHERE (`CreateDate` > '{0}' AND `CreateDate` < '{1}' AND `StatusID` = 1);", DateTime.Now.ToString("yyyy-MM-dd"), DateTime.Now.AddDays(1).ToString("yyyy-MM-dd"))).Tables[0].Rows[0][0].ToString());
                lblNewAll.Text =
                    MoneyMethods.MoneySeparator(dm.QueryWithReturnDataSet("select count(*) from `tickets` WHERE `StatusID` = 1;").Tables[0].Rows[0][0].ToString());
                lblDeliveryToday.Text =
                    MoneyMethods.MoneySeparator(dm.QueryWithReturnDataSet(String.Format("select count(*) from `tickets` WHERE (`DeliveryDate` = '{0}');", DateTime.Now.ToString("yyyy-MM-dd"))).Tables[0].Rows[0][0].ToString());
                lblDeliveryTomorow.Text =
                    MoneyMethods.MoneySeparator(dm.QueryWithReturnDataSet(String.Format("select count(*) from `tickets` WHERE (`DeliveryDate` = '{0}');", DateTime.Now.AddDays(1).ToString("yyyy-MM-dd"))).Tables[0].Rows[0][0].ToString());
                lblInProgress.Text =
                    MoneyMethods.MoneySeparator(dm.QueryWithReturnDataSet("select count(*) from `tickets` WHERE `StatusID` = 3;").Tables[0].Rows[0][0].ToString());
                lblDelivered.Text =
                    MoneyMethods.MoneySeparator(dm.QueryWithReturnDataSet("select count(*) from `tickets` WHERE `StatusID` = 12;").Tables[0].Rows[0][0].ToString());
                lblProcessed.Text =
                    MoneyMethods.MoneySeparator(dm.QueryWithReturnDataSet("select count(*) from `tickets` WHERE `StatusID` = 5;").Tables[0].Rows[0][0].ToString());
                lblCompleted.Text =
                    MoneyMethods.MoneySeparator(dm.QueryWithReturnDataSet("select count(*) from `tickets` WHERE `StatusID` = 6;").Tables[0].Rows[0][0].ToString());
                pnlTickets.Visible = true;
            }

            if (currentRole.PageCategoryView == 1)
            {
                lblTitles.Text =
                    MoneyMethods.MoneySeparator(dm.QueryWithReturnDataSet("select count(*) from `titles`;").Tables[0].Rows[0][0].ToString());
                pnlCategory.Visible = true;
            }

            if (currentRole.PageCityView == 1)
            {
                lblCity.Text =
                    MoneyMethods.MoneySeparator(dm.QueryWithReturnDataSet("select count(*) from `city`;").Tables[0].Rows[0][0].ToString());
                pnlCity.Visible = true;
            }

            if (currentRole.PageDriversView == 1)
            {
                lblDrivers.Text =
                    MoneyMethods.MoneySeparator(dm.QueryWithReturnDataSet("SELECT COUNT(*) FROM `drivers` WHERE `StatusID` = 1;").Tables[0].Rows[0][0].ToString());
                pnlDrivers.Visible = true;
            }

            if (currentRole.PageManagersView == 1)
            {
                lblManagers.Text =
                    MoneyMethods.MoneySeparator(dm.QueryWithReturnDataSet("SELECT COUNT(*) FROM `users` WHERE `Role` <> 'User';").Tables[0].Rows[0][0].ToString());
                pnlManagers.Visible = true;
            }

            if (currentRole.PageNewsView == 1)
            {
                lblNews.Text =
                    MoneyMethods.MoneySeparator(dm.QueryWithReturnDataSet("select count(*) from `news`;").Tables[0].Rows[0][0].ToString());
                pnlNews.Visible = true;
            }

            if (currentRole.PageErrorsLogView == 1)
            {
                lblErrors.Text =
                    MoneyMethods.MoneySeparator(dm.QueryWithReturnDataSet("select count(*) from `errorslog`;").Tables[0].Rows[0][0].ToString());
                pnlErrors.Visible = true;
            }

            if (currentRole.PageFeedbacksView == 1)
            {
                lblFeedback.Text =
                    MoneyMethods.MoneySeparator(dm.QueryWithReturnDataSet("SELECT COUNT(*) FROM `feedback` WHERE StatusID = 0;").Tables[0].Rows[0][0].ToString());
                pnlFeedback.Visible = true;
            }

            if (currentRole.PageTracksView == 1)
            {
                lblTracks.Text =
                    MoneyMethods.MoneySeparator(dm.QueryWithReturnDataSet("select count(*) from `tracks`;").Tables[0].Rows[0][0].ToString());
                pnlTracks.Visible = true;
            }

            if (currentRole.PageLogsView == 1)
            {
                lblLogs.Text =
                    MoneyMethods.MoneySeparator(dm.QueryWithReturnDataSet("select count(*) from `userslog`;").Tables[0].Rows[0][0].ToString());
                pnlLogs.Visible = true;
            }

            if (currentRole.PageApiLogView == 1)
            {
                lblApiLogs.Text =
                    MoneyMethods.MoneySeparator(dm.QueryWithReturnDataSet("select count(*) from `apilog`;").Tables[0].Rows[0][0].ToString());
                pnlApiLogs.Visible = true;
            }

            if (currentRole.PageClientsView == 1)
            {
                lblCategory.Text =
                    MoneyMethods.MoneySeparator(dm.QueryWithReturnDataSet("select count(*) from `category`;").Tables[0].Rows[0][0].ToString());
                pnlClients.Visible = true;
            }

            lblProvidersView.Text =
                MoneyMethods.MoneySeparator(dm.QueryWithReturnDataSet("select count(*) from `providers`;").Tables[0].Rows[0][0].ToString());

            var lastNews = dm.QueryWithReturnDataSet("SELECT `CreateDate`, `Title`, `Body`, `TitleUrl` FROM `news` WHERE `NewsTypeID` = '1' ORDER BY ID DESC LIMIT 1;").Tables[0];

            if (lastNews.Rows.Count != 0)
            {
                lblNewsDate.Text  = Convert.ToDateTime(lastNews.Rows[0][0]).ToString("dd.MM.yyyy");
                lblNewsTitle.Text = lastNews.Rows[0][1].ToString();
                var body = lastNews.Rows[0][2].ToString();
                if (body.Length > 300)
                {
                    lblNewsText.Text = body.Remove(300, body.Length - 300) + "...";
                }
                else
                {
                    lblNewsText.Text = body;
                }
                hlNewsTitle.NavigateUrl = string.Format("~/ManagerUI/Menu/NewsFeed/NewsFromFeedView.aspx?title={0}", lastNews.Rows[0][3].ToString());
            }

            //пересчитываем просмотренные новости
            //обновляем\задаем авторизационную куку с данными пользователя
            AuthenticationMethods.SetUserCookie(userInSession);

            //механизм нотификаций
            lblStatus.Text = String.Empty;
            if (Session["flash:now"] != null && Session["flash:now"].ToString() != String.Empty)
            {
                lblStatus.Text       = Session["flash:now"].ToString();
                Session["flash:now"] = String.Empty;
            }
        }