Beispiel #1
0
        public void CheckLogin(RequestContext requestContext, string productCode)
        {
            try
            {
                string requiredString    = requestContext.RouteData.GetRequiredString("controller");
                string requiredString2   = requestContext.RouteData.GetRequiredString("action");
                string accessingResource = "/" + requiredString + "/" + requiredString2;

                if (!accessingResource.Contains("/Shared/UnActived"))
                {
                    if (Authentication.today == null || Authentication.today != DateTime.Now.Day)
                    {
                        SerialKey     serialKey     = new SerialKey();
                        ModelCheckKey modelCheckKey = serialKey.CheckActive(productCode, System.Web.Hosting.HostingEnvironment.MapPath("~/bin"));
                        Authentication.today = DateTime.Now.Day;
                        if (!modelCheckKey.checkResult && !accessingResource.Equals("/OutOfDate"))
                        {
                            requestContext.HttpContext.Response.Redirect("/OutOfDate");
                            Authentication.Check = false;
                        }
                        else
                        {
                            Authentication.Check = true;
                        }
                    }
                    else if (Authentication.today == DateTime.Now.Day && !Authentication.Check)
                    {
                        requestContext.HttpContext.Response.Redirect("/OutOfDate");
                    }
                }

                if (accessingResource.Equals("/Shared/UnActived"))
                {
                    base.Initialize(requestContext);
                }
                else
                {
                    RouteValueDictionary defaults = ((Route)requestContext.RouteData.Route).Defaults;
                    if (defaults != null)
                    {
                        List <object> list = defaults.Values.ToList <object>();
                        Authentication.DefaultPage = "/" + list[0].ToString() + "/" + list[1].ToString();
                    }
                    if (this.UserContext == null)
                    {
                        if (!requiredString.Equals("Authenticate"))
                        {
                            if (AjaxRequestExtensions.IsAjaxRequest(requestContext.HttpContext.Request))
                            {
                                requestContext.HttpContext.Response.StatusCode = 401;
                                requestContext.HttpContext.Response.End();
                            }
                            else
                            {
                                requestContext.HttpContext.Response.Redirect("/Authenticate/Login?Url=" + accessingResource);
                            }
                        }
                        else
                        {
                            base.Initialize(requestContext);
                        }
                    }
                    else
                    {
                        if ((requiredString.Equals("Authenticate") && requiredString2.Equals("Login")) || requiredString.Equals("UploadFile") || (requiredString.Equals("Authenticate") && requiredString2.Equals("Validate")))
                        {
                            base.Initialize(requestContext);
                        }
                        else
                        {
                            if (!requiredString.Equals("Error") && !requiredString2.Equals("Logout"))
                            {
                                bool arg_212_0;
                                if (this.UserContext.Permissions != null)
                                {
                                    arg_212_0 = ((
                                                     from c in this.UserContext.Permissions
                                                     where c.Trim().ToLower().Equals(accessingResource.Trim().ToLower())
                                                     select c).FirstOrDefault <string>() != null);
                                }
                                else
                                {
                                    arg_212_0 = false;
                                }
                                if (!arg_212_0)
                                {
                                    if (AjaxRequestExtensions.IsAjaxRequest(requestContext.HttpContext.Request))
                                    {
                                        Authentication.isAuthenticate = false;
                                        this.JsonDataResult.Result    = "ERROR";
                                        this.JsonDataResult.ErrorMessages.Add(new Error()
                                        {
                                            MemberName = "Lỗi quyền truy cập", Message = "Tài khoản của bạn không có quyền thực hiện hành động này!."
                                        });
                                        base.Initialize(requestContext);
                                    }
                                    else
                                    {
                                        requestContext.HttpContext.Response.Redirect("~/Error/Index?ErrorType=1");
                                    }
                                }
                                else
                                {
                                    if (AjaxRequestExtensions.IsAjaxRequest(requestContext.HttpContext.Request))
                                    {
                                        Authentication.isAuthenticate = true;
                                    }
                                    base.Initialize(requestContext);
                                }
                            }
                            else
                            {
                                base.Initialize(requestContext);
                            }
                        }
                    }
                }
            }
            catch
            {
            }
        }
Beispiel #2
0
        static void Main()
        {
            try
            {
                SerialKey serialKey = new SerialKey();
                //  ModelStatic.dateCheckActive = DateTime.Now.Date;
                ModelCheckKey modelCheckKey = serialKey.CheckActive("GPRO_QMS", Application.StartupPath);
                if (modelCheckKey != null)
                {
                    if (!modelCheckKey.checkResult)
                    {
                        // if (!string.IsNullOrEmpty(modelCheckKey.message))
                        //       MessageBox.Show(modelCheckKey.message);
                        //   else
                        MessageBox.Show("Phần mềm QMS đã hết hạn sử dụng.\nQuý khách vui lòng liên hệ theo Hotline : Võ Đại Trí 0918319714 hoặc Email : [email protected] để được tư vấn và kích hoạt sử dụng.\nXin cám ơn quý khách.", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        Application.Exit();
                    }
                    else
                    {
                        if (!string.IsNullOrEmpty(modelCheckKey.message))
                        {
                            MessageBox.Show(modelCheckKey.message);
                        }

                        Application.EnableVisualStyles();
                        Application.SetCompatibleTextRenderingDefault(false);
                        QMSAppInfo.Version = (ConfigurationManager.AppSettings["AppVersion"] != null && !string.IsNullOrEmpty(ConfigurationManager.AppSettings["AppVersion"].ToString()) ? Convert.ToInt32(ConfigurationManager.AppSettings["AppVersion"].ToString()) : 1);
                        try
                        {
                            switch (QMSAppInfo.Version)
                            {
                            case 1: Application.Run(new frmMain()); break;

                            case 3: Application.Run(new frmMain_ver3()); break;

                            default: Application.Run(new frmMain()); break;
                            }
                        }
                        catch (Exception ex)
                        {
                            string errorsms = "Kết nối máy chủ SQL thất bại. Vui lòng kiểm tra lại.";
                            MessageBox.Show(errorsms + "- " + ex.Message, "Lỗi SQL", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            Application.Run(new FrmSQLConnect());
                        }
                        Process[] processe;
                        processe = Process.GetProcessesByName("QMS_System");
                        foreach (Process dovi in processe)
                        {
                            dovi.Kill();
                        }
                    }
                }
                else
                {
                    MessageBox.Show("Phần mềm QMS chưa được kích hoạt sử dụng.\nQuý khách vui lòng liên hệ theo Hotline : Võ Đại Trí 0918319714 hoặc Email : [email protected] để được tư vấn và kích hoạt sử dụng.\nXin cám ơn quý khách.", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    Application.Exit();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("lỗi khác" + ex.Message);
                throw ex;
            }
        }