Example #1
0
        public IActionResult Login(login model)
        {
            string pass = Crypto.password_encrypt(model.userhash);
            login_authentication resp = _master.user_authenticateAsync(model.username, pass).Result;

            ClaimsIdentity identity = null;

            if (resp.username != null)
            {
                CookieOptions options = new CookieOptions();
                if (model.remember_me != true)
                {
                    options.Expires = DateTime.Now.AddDays(1);
                }
                else
                {
                    options.Expires = DateTime.Now.AddDays(365);
                }

                Response.Cookies.Append("UserId", Crypto.url_encrypt(resp.user_id.ToString()), options);
                Response.Cookies.Append("WarehouseId", Crypto.url_encrypt(resp.warehouse_id.ToString()), options);
                Response.Cookies.Append("CompanyId", Crypto.url_encrypt(resp.company_id.ToString()), options);
                Response.Cookies.Append("AccessLevelId", Crypto.url_encrypt(resp.access_level_id.ToString()), options);
                Response.Cookies.Append("DisplayName", resp.display_name.ToString(), options);
                //Response.Cookies.Append("Department", Crypto.password_encrypt(resp.department.ToString()), options);
                //Response.Cookies.Append("ImgPath", Crypto.password_encrypt(resp.img.ToString()), options);

                identity = new ClaimsIdentity(new[] {
                    new Claim(ClaimTypes.Name, model.username),
                    new Claim(ClaimTypes.Role, resp.user_group_id.ToString())
                }, CookieAuthenticationDefaults.AuthenticationScheme);

                var principal = new ClaimsPrincipal(identity);

                var login = HttpContext.SignInAsync(CookieAuthenticationDefaults.AuthenticationScheme, principal);

                return(RedirectToAction("Dashboard"));
            }
            else
            {
                return(View());
            }
        }
        public login_authentication user_authenticate(string username, string userhash)
        {
            login_authentication ret = new login_authentication();
            DataTable            dt  = new DataTable();

            try
            {
                SqlConnection  oConn = new SqlConnection(_master);
                SqlTransaction oTrans;
                oConn.Open();
                oTrans = oConn.BeginTransaction();
                SqlCommand oCmd = new SqlCommand();
                oCmd.Connection  = oConn;
                oCmd.Transaction = oTrans;
                oCmd.CommandText = "login_authentication";
                oCmd.CommandType = CommandType.StoredProcedure;
                oCmd.Parameters.Clear();
                oCmd.Parameters.AddWithValue("@username", username);
                oCmd.Parameters.AddWithValue("@userhash", userhash);
                SqlDataReader sdr = oCmd.ExecuteReader();
                while (sdr.Read())
                {
                    ret.user_id         = Convert.ToInt32(sdr["user_id"].ToString());
                    ret.user_code       = sdr["user_code"].ToString();
                    ret.username        = sdr["username"].ToString();
                    ret.userhash        = sdr["userhash"].ToString();
                    ret.first_name      = sdr["first_name"].ToString();
                    ret.middle_name     = sdr["middle_name"].ToString();
                    ret.last_name       = sdr["last_name"].ToString();
                    ret.full_name       = sdr["full_name"].ToString();
                    ret.display_name    = sdr["display_name"].ToString();
                    ret.nick_name       = sdr["nick_name"].ToString();
                    ret.email_address   = sdr["email_address"].ToString();
                    ret.birthday        = sdr["birthday"].ToString();
                    ret.birth_place     = sdr["birth_place"].ToString();
                    ret.height          = sdr["height"].ToString();
                    ret.weight          = sdr["weight"].ToString();
                    ret.phone_home      = sdr["phone_home"].ToString();
                    ret.phone_work      = sdr["phone_work"].ToString();
                    ret.phone_mobile    = sdr["phone_mobile"].ToString();
                    ret.phone_fax       = sdr["phone_fax"].ToString();
                    ret.phone_other     = sdr["phone_other"].ToString();
                    ret.address_street  = sdr["address_street"].ToString();
                    ret.address_city    = sdr["address_city"].ToString();
                    ret.address_state   = sdr["address_state"].ToString();
                    ret.address_country = sdr["address_country"].ToString();
                    ret.address_zipcode = sdr["address_zipcode"].ToString();
                    ret.perm_street     = sdr["perm_street"].ToString();
                    ret.perm_city       = sdr["perm_city"].ToString();
                    ret.perm_state      = sdr["perm_state"].ToString();
                    ret.perm_country    = sdr["perm_country"].ToString();
                    ret.perm_zipcode    = sdr["perm_zipcode"].ToString();
                    ret.image_path      = sdr["image_path"].ToString();
                    ret.question1       = Convert.ToInt32(sdr["question1"].ToString());
                    ret.answer1         = sdr["answer1"].ToString();
                    ret.question2       = Convert.ToInt32(sdr["question2"].ToString());
                    ret.answer2         = sdr["answer2"].ToString();
                    ret.website         = sdr["website"].ToString();
                    ret.facebook        = sdr["facebook"].ToString();
                    ret.twitter         = sdr["twitter"].ToString();
                    ret.instagram       = sdr["instagram"].ToString();
                    ret.linkedin        = sdr["linkedin"].ToString();
                    ret.skype           = sdr["skype"].ToString();
                    ret.tumblr          = sdr["tumblr"].ToString();
                    ret.salutation_id   = Convert.ToInt32(sdr["salutation_id"].ToString());
                    ret.gender_id       = Convert.ToInt32(sdr["gender_id"].ToString());
                    ret.civil_status_id = Convert.ToInt32(sdr["civil_status_id"].ToString());
                    ret.nationality_id  = Convert.ToInt32(sdr["nationality_id"].ToString());
                    ret.religion_id     = Convert.ToInt32(sdr["religion_id"].ToString());
                    ret.user_group_id   = Convert.ToInt32(sdr["user_group_id"].ToString());
                    ret.access_level_id = Convert.ToInt32(sdr["access_level_id"].ToString());
                    ret.warehouse_id    = Convert.ToInt32(sdr["warehouse_id"].ToString());
                    ret.company_id      = Convert.ToInt32(sdr["company_id"].ToString());
                    ret.active          = Convert.ToInt32(sdr["active"].ToString());
                    ret.created_by      = Convert.ToInt32(sdr["created_by"].ToString());
                    ret.date_created    = sdr["date_created"].ToString();
                    ret.approved        = Convert.ToInt32(sdr["approved"].ToString());
                    ret.bp_status       = sdr["bp_status"].ToString();
                    ret.enc_key         = sdr["enc_key"].ToString();
                }
                sdr.Close();
                oConn.Close();
            }
            catch (Exception e)
            {
                Console.WriteLine("Error: " + e.Message);
                error_log_in("0", "SP = login_users_view_sel | " + e.Message, Convert.ToInt32(ret.company_id), 0);
            }

            return(ret);
        }