示例#1
0
        //public ActionResult Index()
        public async Task <ActionResult> Index(HttpRequestMessage request, FormCollection formCollection)
        {
            //return View();
            try
            {
                #region Права

                HttpCookie CookieIPOL = Request.Cookies["CookieIPOL"];

                Classes.Account.Login       login = new Classes.Account.Login();
                Classes.Account.Login.Field field = await Task.Run(() => login.Return(CookieIPOL, true)); //HttpCookie CookieIPOL = Request.Cookies["CookieIPOL"];

                if (!field.Access)
                {
                    return(Redirect("~/account/login/"));
                }
                //if (field.RetailOnly) { return Redirect("~/Retail/"); }

                #endregion


                #region Обновление - это есть в Дефолте

                Classes.Function.Variables.ConnectionString connectionString = new Classes.Function.Variables.ConnectionString();
                string ConStr = connectionString.Return(field.DirCustomersID, null, false);

                Classes.Update.Update update = new Classes.Update.Update();
                string[] sResultawait        = await update.UpdatingOne(ConStr, field.DirCustomersID); //update.Start();

                #endregion


                #region Тема, Язык, Интерфейс

                //Тема
                ViewData["CookieT"] = CookieIPOL["CookieT"]; if (ViewData["CookieT"] == null)
                {
                    ViewData["CookieT"] = 1;
                }
                //Язык
                ViewData["CookieL"] = CookieIPOL["CookieL"]; if (ViewData["CookieL"] == null)
                {
                    ViewData["CookieL"] = 1;
                }
                //Интерфейс
                ViewData["CookieI"] = CookieIPOL["CookieI"]; if (ViewData["CookieI"] == null)
                {
                    ViewData["CookieI"] = 1;
                }

                #endregion


                return(View());
            }
            catch (Exception ex)
            {
                Classes.Function.Exceptions.ExceptionEntry exceptionEntry = new Classes.Function.Exceptions.ExceptionEntry();
                return(Redirect("~/account/login?Err=" + exceptionEntry.Return(ex)));
            }
        }
示例#2
0
        private bool mLogin(Models.Login.Dir.DirCustomerLogin dirCustomerLogin)
        {
            HttpCookie CookieIPOL = null;

            if (!String.IsNullOrEmpty(dirCustomerLogin.Login) && !String.IsNullOrEmpty(dirCustomerLogin.Pswd))
            {
                #region 1. Проверяем Логин и Пароль

                Classes.Account.Login login = new Classes.Account.Login();
                field = login.Return(dirCustomerLogin.Login, dirCustomerLogin.Pswd, false);
                if (!field.Access)
                {
                    return(false);
                }

                #endregion


                #region Если выбрали упращённый режим входа

                if (dirCustomerLogin.DirLanguageID == 0)
                {
                    dirCustomerLogin.DirLanguageID = 1;
                }
                if (dirCustomerLogin.DirThemeID == 0)
                {
                    dirCustomerLogin.DirThemeID = 1;
                }
                if (dirCustomerLogin.DirInterfaceID == 0)
                {
                    dirCustomerLogin.DirInterfaceID = 2;
                }

                #endregion


                #region 2. Создаём Куку

                CookieIPOL            = new HttpCookie("CookieIPOL");
                CookieIPOL["CookieU"] = encode.UnionEncode(dirCustomerLogin.Login);
                CookieIPOL["CookieP"] = encode.UnionEncode(dirCustomerLogin.Pswd);
                CookieIPOL["CookieL"] = dirCustomerLogin.DirLanguageID.ToString();
                CookieIPOL["CookieT"] = dirCustomerLogin.DirThemeID.ToString();
                CookieIPOL["CookieI"] = dirCustomerLogin.DirInterfaceID.ToString();
                Response.Cookies.Add(CookieIPOL);

                #endregion


                #region 3. Пишем в БД о посещении (только Comercial)

                Classes.Function.FunctionMSSQL.Jurn.JurnDispLogining jurnDispLogining = new Classes.Function.FunctionMSSQL.Jurn.JurnDispLogining();
                jurnDispLogining.Write(field.DirCustomersID, dirCustomerLogin.Login, dirCustomerLogin.Pswd, "Browser: " + Request.Browser.Browser + ". UserAgent: " + Request.UserAgent);

                #endregion


                #region 4. Обновление - это есть в Дефолте

                Classes.Function.Variables.ConnectionString connectionString = new Classes.Function.Variables.ConnectionString();
                string ConStr = connectionString.Return(field.DirCustomersID, null, false);

                Classes.Update.Update update = new Classes.Update.Update();
                update.UpdatingOne(ConStr, field.DirCustomersID); //update.Start();

                #endregion


                return(true);
            }

            return(false);
        }