Example #1
0
        public ActionResult Login(LoginModel model)
        {
            //sing out all froms auth
            FormsAuthentication.SignOut();
            //
            //check out if values null
            if (model.Username.IsNull() || model.Password.IsNull())
            {
                //return error message
                ModelState.AddModelError("ErrorMessage", "Kullanıcı adı veya parola boş bırakılamaz Lütfen doldurunuz");
                return(View("Login", model));
            }

            if (model.Username?.Trim().ToLower() != "Username".GetAppSetting().ToLower() || model.Password?.Trim() != "Password".GetAppSetting())
            {
                //return error message
                ModelState.AddModelError("ErrorMessage", "Kullanıcı adı veya parola yanlış. Lütfen kontol edip tekrar deneyin");
                return(View("Login", model));
            }
            //
            //save login data on cookie
            CookieHelper.SetCookiesValue(model);
            //
            _fR.DeleteLoginLogMoreThanThreeMonths();
            //
            string hostName, userHostAddress;

            try
            {
                userHostAddress = Helper.RequestHelpers.GetClientIpAddress(Request);
                //
                //get ip address
#pragma warning disable CS0618 // Type or member is obsolete
                hostName = System.Net.Dns.GetHostByName(hostName: Environment.MachineName)?.AddressList[0]?.ToString() ?? "";
#pragma warning restore CS0618 // Type or member is obsolete
            }
            catch (Exception ex)
            {
                hostName        = ex?.InnerException?.Message ?? ex.Message;
                userHostAddress = "";
            }
            //
            //
            _fR.Add(new AccountLog
            {
                HostName          = $"{Environment.MachineName} - {hostName}",
                UserHostAddress   = userHostAddress,
                LogonUserIdentity = Request?.LogonUserIdentity?.Name ?? "",
                LoggedTime        = DateTime.Now,
            });
            _fR.SaveChanges();
            //return main page
            return(RedirectToAction("Index", "Home"));
        }