예제 #1
0
 private static void ProcessKey(IHttpRequest Request, IHttpResponse Response, int usertype)
 {
     using (var a = new MemberShipBussiness())
     {
         using (var b = new PlayerBussiness())
         {
             var name = Request.Uri.QueryString["UserName"].ToSafeString();
             if (name != "" && a.ExistsUsername(name))
             {
                 var type = b.GetUserType(name);
                 if (usertype <= type)
                 {
                     Response.Write("对不起,你的权限不足");
                     return;
                 }
                 var pass = Guid.NewGuid().ToString();
                 PlayerManager.Add(name, pass);
                 string content = "user="******"&key=" + pass;
                 Response.Write(content);
             }
             else
             {
                 Response.Write("错误");
             }
         }
     }
 }
예제 #2
0
 protected bool CreateUsername(HttpContext context, ref string message)
 {
     password = FormsAuthentication.HashPasswordForStoringInConfigFile(password, "md5");
     using (MemberShipBussiness db = new MemberShipBussiness())
     {
         return(db.CreateUsername(SiteTitle, username, password, email, "1", "MD5", sex));
     }
 }
예제 #3
0
        public void ProcessRequest(HttpContext context)
        {
            string username = context.Request["username"];
            string password = context.Request["password"];

            using (MemberShipBussiness db = new MemberShipBussiness())
            {
                if (db.CheckUsername(SiteTitle, username, FormsAuthentication.HashPasswordForStoringInConfigFile(password, "md5")))
                {
                    context.Session["username"] = username;
                    context.Session["password"] = password;
                    context.Response.Write("ok");
                }
                else
                {
                    context.Response.Write("UserName or Password wrong!");
                }
            }
        }
예제 #4
0
 protected bool CheckPara(HttpContext context, ref string message)
 {
     if (string.IsNullOrEmpty(username))
     {
         message = "Bạn chưa nhập Tài khoản。";
         return(false);
     }
     if (string.IsNullOrEmpty(password))
     {
         message = "Bạn chưa nhập Mật khuẩu。";
         return(false);
     }
     if (string.IsNullOrEmpty(email))
     {
         message = "Bạn chưa nhập Email。";
         return(false);
     }
     if (password != repassword)
     {
         message = "Mật khuẩu không trùng nhau。";
         return(false);
     }
     if (((context.Session["CheckCode"] == null) || ("" == code)) || (code.ToLower() != context.Session["CheckCode"].ToString().ToLower()))
     {
         message = "Sai mã bảo mật!";
         return(false);
     }
     using (MemberShipBussiness db = new MemberShipBussiness())
     {
         if (db.ExistsUsername(username))
         {
             message = "Tài khoản đã được sử dụng!";
             return(false);
         }
     }
     return(true);
 }
예제 #5
0
        public static void Process(IHttpRequest Request, IHttpResponse Response)
        {
            string username = Request.Cookies["user"].content;
            string password = Request.Cookies["pass"].content;
            int    usertype = 0;

            using (var a = new MemberShipBussiness())
            {
                var result = a.CheckUser(username, password);
                if (result)
                {
                    using (var b = new PlayerBussiness())
                    {
                        usertype = b.GetUserType(username);
                    }
                }
            }

            if (usertype > 1)
            {
                var page = Request.Uri.QueryString["method"].ToSafeString();
                switch (page)
                {
                case "charge":
                    ProcessCharge(Request, Response);
                    break;

                case "forbid":
                    ProcessForbid(Request, Response);
                    break;

                case "kitoff":
                    ProcessKitoff(Request, Response);
                    break;

                case "notice":
                    ProcessNotice(Request, Response);
                    break;

                case "start":
                    ProcessStart(Request, Response);
                    break;

                case "stop":
                    ProcessStop(Request, Response);
                    break;

                case "reconnect":
                    ProcessReconnect(Request, Response);
                    break;

                case "loginkey":
                    ProcessKey(Request, Response, usertype);
                    break;

                default:
                    break;
                }
            }
            else
            {
                Response.Write("你无权访问GM管理平台!");
            }
        }
예제 #6
0
        public static void Process(IHttpRequest Request, IHttpResponse Response)
        {
            string username = Request.Cookies["user"].content;
            string password = Request.Cookies["pass"].content;
            int    usertype = 0;


            using (var a = new MemberShipBussiness())
            {
                var result = a.CheckUser(username, password);
                if (result)
                {
                    using (var b = new PlayerBussiness())
                    {
                        usertype = b.GetUserType(username);
                    }
                }
            }
            if (usertype >= 2)
            {
                var page = Request.Uri.QueryString["page"].ToSafeString();
                switch (page)
                {
                case "left":
                    ProcessLeft(Request, Response);
                    break;

                case "userlist":
                    ProcessUserlist(Request, Response);
                    break;

                case "version":
                    ProcessVersion(Request, Response);
                    break;

                case "top":
                    ProcessTop(Request, Response, username);
                    break;

                case "mail":
                    ProcessMail(Request, Response, usertype);
                    break;

                case "notice":
                    ProcessNotice(Request, Response);
                    break;

                case "status":
                    ProcessStatus(Request, Response);
                    break;

                default:
                    ProcessIndex(Request, Response);
                    break;
                }
            }
            else
            {
                Response.Write("你无权访问GM管理平台!");
            }
        }
예제 #7
0
        public void Process(object website, ProcessEventArgs args)
        {
            var log = args.Log;

            var Request = args.Request;

            var Uri = Request.Uri;

            if (Uri.ToString().StartsWith("/api.do"))
            {
                args.IsProcessed = true;
                while (!Request.IsReadFinish)
                {
                    Thread.Sleep(100);
                }
                args.Response = new HttpResponse();
                var Response = args.Response;

                var referer  = Request.Headers[eHttpHeader.Referer];
                var method   = Uri.QueryString["method"];
                var postdata = Request.Content.ReadAll().ConvertFromBytes(Encoding.UTF8);


                var Form = FormParser.Parse(postdata);

                if (method == "login")
                {
                    #region login
                    if (referer == "")
                    {
                        Response.Write("非法访问");
                    }
                    var name = Form["user"];
                    var pass = Form["pass"];

                    using (var a = new MemberShipBussiness())
                    {
                        if (name == "" || pass == "" || !a.CheckUser(name, pass))
                        {
                            ((HttpResponse)Response).ReturnAndRedirect("用户名或密码错误", referer);
                        }
                        else
                        {
                            Response.Cookies.Add(new HttpCookie {
                                name = "user", content = name, domain = domain, expires = DateTime.Now.AddHours(1)
                            });
                            Response.Cookies.Add(new HttpCookie {
                                name = "pass", content = pass, domain = domain, expires = DateTime.Now.AddHours(1)
                            });
                            ((HttpResponse)Response).Redirect(referer.Replace("login.aspx", "") + "select.aspx");
                        }
                    }
                    #endregion
                }

                else if (method == "register")
                {
                    #region register
                    if (referer == "")
                    {
                        Response.Write("非法访问");
                    }
                    var name     = Form["user"];
                    var pass     = Form["pass"];
                    int inviteid = Request.Cookies["inviteid"].content.ConvertToInt(0);
                    using (var a = new MemberShipBussiness())
                    {
                        if (!a.ExistsUsername(name) && a.CreateUsername(name, pass, inviteid))
                        {
                            Response.Cookies.Add(new HttpCookie {
                                name = "user", content = name, domain = domain, expires = DateTime.Now.AddHours(1)
                            });
                            Response.Cookies.Add(new HttpCookie {
                                name = "pass", content = pass, domain = domain, expires = DateTime.Now.AddHours(1)
                            });
                            ((HttpResponse)Response).ReturnAndRedirect("注册成功", Request.Headers[eHttpHeader.Referer].Replace("login.aspx", "") + "select.aspx");
                        }
                        else
                        {
                            ((HttpResponse)Response).ReturnAndRedirect("该用户名已被注册", Request.Headers[eHttpHeader.Referer]);
                        }
                    }
                    #endregion
                }
                else if (method == "getuserid")
                {
                    #region getuserid
                    var name = Uri.QueryString["name"];
                    using (PlayerBussiness a = new PlayerBussiness())
                    {
                        PlayerInfo[] b = a.GetUserByUserName(name);
                        if (b != null)
                        {
                            var userid = b.Where((x) => (x.ID != 0)).Select((x) => (x.ID)).ToArray().FirstOrDefault();
                            if (userid != 0)
                            {
                                Response.Write(userid.ToString());
                                return;
                            }
                        }
                    }
                    Response.Write("0");
                    #endregion
                }
                else if (method == "isopen")
                {
                    Response.Write(WebServer.Instance.IsOpen.ToString());
                }
                else if (method == "checkuser")
                {
                    #region checkuser
                    var username = Form["username"];
                    var password = Form["password"];
                    var inviteid = Form["inviteid"].ConvertToInt(0);

                    using (var a = new MemberShipBussiness())
                    {
                        var result = a.CheckUser(username, password);
                        if (result)
                        {
                            using (var b = new PlayerBussiness())
                            {
                                b.CreateUsername(username, inviteid);
                                Response.Write("1");
                            }
                        }
                        else
                        {
                            Response.Write("0");
                        }
                    }
                    #endregion
                }
                else if (method == "addplayer")
                {
                    var user = Form["user"];
                    var pass = Form["pass"];
                    PlayerManager.Add(user, pass);
                    Response.Write("OK");
                }
                else if (method == "existsusername")
                {
                    var name = Form["name"];
                    using (var a = new MemberShipBussiness())
                    {
                        Response.Write(a.ExistsUsername(name).ToString());
                    }
                }
                else if (method == "getidbyusername")
                {
                    var username = Form["username"];
                    using (PlayerBussiness a = new PlayerBussiness())
                    {
                        PlayerInfo[] b = a.GetUserByUserName(username);
                        if (b != null)
                        {
                            Response.Write(b.Where((x) => (x.ID != 0)).Select((x) => (x.ID)).ToArray().FirstOrDefault().ToString());
                        }
                    }
                }
                else if (method == "getusertype")
                {
                    var username = Form["username"];
                    using (var a = new PlayerBussiness())
                    {
                        Response.Write(a.GetUserType(username).ToString());
                    }
                }
                else if (method == "getusernamebyid")
                {
                    var id = Form["id"].ConvertToInt(0);
                    using (PlayerBussiness a = new PlayerBussiness())
                    {
                        var b = a.GetUserSingleByUserID(id);
                        {
                            if (b != null)
                            {
                                Response.Write(b.UserName);
                            }
                        }
                    }
                }
                else
                {
                    args.Response = ErrorHelper.Build(404, 0, args.ServerName);
                }
            }
        }