예제 #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 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);
 }
예제 #3
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);
                }
            }
        }