Пример #1
0
        private void mybegin()
        {
            try
            {
                //设置日志存放路径
                LogModel._logFilePath  = HttpContext.Current.Server.MapPath("~/") + @"\Log\";
                FileHelper.defaultpath = HttpContext.Current.Server.MapPath("~/");

                BLL.BlogUsersSetBLL userbll = new BLL.BlogUsersSetBLL();
                var isbegin = userbll.GetList(t => true).Count() > 0;
                if (!isbegin)
                {
                    var user = new Blogs.ModelDB.BlogUsersSet()
                    {
                        UserName   = "******",
                        UserPass   = "******",
                        IsDel      = false,
                        IsLock     = false,
                        UserMail   = "无效",
                        CreateTime = DateTime.Now,
                        UserInfo   = new ModelDB.UserInfo()
                    };
                    userbll.Add(user);
                    userbll.save(false);
                }
            }
            catch (Exception) { }
        }
Пример #2
0
 /// <summary>
 /// 获取所有用户信息
 /// </summary>
 /// <returns></returns>
 public static IQueryable <ModelDB.BlogUsersSet> GetAllUser()
 {
     BLL.BlogUsersSetBLL user = new BLL.BlogUsersSetBLL();
     return(user.GetList(t => true));
     //.Select(t => new { Id = t.Id, UserName = t.UserName })
     //.ToList()
     //.Select(t => new ModelDB.BlogUsersSet() { Id = t.Id, UserName = t.UserName }).ToList();
 }
Пример #3
0
        /// <summary>
        /// 自定义 特殊页面 公共方法
        /// </summary>
        /// <param name="str">BlogTitle名字</param>
        /// <param name="pageName">存在MyPageId的KEY名</param>
        private void Forum(string str, string pageName)
        {
            #region 检测是否存在 admin 用户

            if (adminuserid <= 0)
            {
                BLL.BlogUsersSetBLL userbll = new BLL.BlogUsersSetBLL();
                var user = userbll.GetList(t => t.UserName == admin).FirstOrDefault();
                if (null == user)
                {
                    var usertemp = new Blogs.ModelDB.BlogUsersSet()
                    {
                        UserName     = admin,
                        UserPass     = "******".MD5().MD5(),
                        IsDel        = false,
                        IsLock       = false,
                        UserNickname = "",
                        UserInfo     = new ModelDB.UserInfo()
                    };
                    userbll.Add(usertemp);
                    userbll.save(false);
                    adminuserid = usertemp.Id;
                }
                else
                {
                    adminuserid = user.Id;
                }
            }

            #endregion

            #region 是否存在 自定义 特殊页面 (返回 blogid)
            if (MyPageId[pageName] == 0)
            {
                BLL.BlogsBLL blogbll = new BLL.BlogsBLL();
                var          blog    = blogbll.GetList(t => t.BlogTitle == str).FirstOrDefault();
                if (null == blog)
                {
                    var blogtemp = new Blogs.ModelDB.Blogs()
                    {
                        Id        = 0,
                        UsersId   = adminuserid,
                        IsDel     = false,
                        BlogTitle = str
                    };
                    blogbll.Add(blogtemp);
                    blogbll.save(false);
                    CacheData.GetAllUserInfo(true);//更新缓存
                    MyPageId[pageName] = blogtemp.Id;
                }
                else
                {
                    MyPageId[pageName] = blog.Id;
                }
            }
            #endregion
        }
Пример #4
0
        /// <summary>
        /// 自定义 特殊页面 公共方法
        /// </summary>
        /// <param name="str">BlogTitle名字</param>
        /// <param name="pageName">存在MyPageId的KEY名</param>
        private void Forum(string str, string pageName)
        {
            #region 检测是否存在 admin 用户

            if (adminuserid <= 0)
            {
                BLL.BlogUsersSetBLL userbll = new BLL.BlogUsersSetBLL();
                var user = userbll.GetList(t => t.UserName == admin).FirstOrDefault();
                if (null == user)
                {
                    var usertemp = new Blogs.ModelDB.BlogUsersSet()
                    {
                        UserName = admin,
                        UserPass = "******".MD5().MD5(),
                        IsDel = false,
                        IsLock = false,
                        UserNickname = "",
                        UserInfo = new ModelDB.UserInfo()
                    };
                    userbll.Add(usertemp);
                    userbll.save(false);
                    adminuserid = usertemp.Id;
                }
                else
                    adminuserid = user.Id;
            }

            #endregion

            #region 是否存在 自定义 特殊页面 (返回 blogid)
            if (MyPageId[pageName] == 0)
            {
                BLL.BlogsBLL blogbll = new BLL.BlogsBLL();
                var blog = blogbll.GetList(t => t.BlogTitle == str).FirstOrDefault();
                if (null == blog)
                {
                    var blogtemp = new Blogs.ModelDB.Blogs()
                    {
                        Id = 0,
                        UsersId = adminuserid,
                        IsDel = false,
                        BlogTitle = str
                    };
                    blogbll.Add(blogtemp);
                    blogbll.save(false);
                    CacheData.GetAllUserInfo(true);//更新缓存
                    MyPageId[pageName] = blogtemp.Id;
                }
                else
                    MyPageId[pageName] = blog.Id;
            }
            #endregion
        }
Пример #5
0
        public string Activate()
        {
            var json = new Common.CustomModel.JSData();

            #region 1.判断是否从正常途径访问此页面 如果是的话 默认存在 Session[tempUserinfo]  2.如果是已经登录状态则直接无视 跳转

            if (null == Session[tempUserinfo])
            {
                json.State = EnumState.失败;//json.Messg = "请您通过正常途径访问激活页面~";
                json.JSurl = "/";
                return json.ToJson();
            }
            if (BLLSession.UserInfoSessioin != null && !BLLSession.UserInfoSessioin.IsLock)
            {
                json.State = EnumState.失败; //json.Messg = "您都已经登录的还想获取激活码?别玩了~";
                json.JSurl = "/";
                return json.ToJson();
            }
            #endregion

            var tempuser = ((ModelDB.BlogUsersSet)Session[tempUserinfo]);
            var activate = Request.Form["txt_activate"];//激活码

            #region 2.验证激活码  (更新缓存 发送通知邮件 清空无用session)
            if (activate.Trim() == Session[jihuoma].ToString().Trim()) //验证激活码
            {
                BLL.BlogUsersSetBLL user = new BLL.BlogUsersSetBLL();
                var objuser = user.GetList(t => t.Id == tempuser.Id, isAsNoTracking: false).FirstOrDefault();
                if (null != objuser)
                {
                    objuser.IsLock = false;
                    objuser.UserPass = tempuser.UserPass.MD5().MD5();//【】这里有个小BUG 暂未处理(如果是迁移的用户 这第一次登录需要激活密码)
                    objuser.UserMail = tempuser.UserMail;
                }
                user.save();
                #region bug 记录
                //ModelDB.BlogUsers objuser = new ModelDB.BlogUsers();
                //objuser.Id = id;
                //objuser.IsLock = false;
                // user.Up(objuser, "IsLock");  //这个方法 正常情况用没问题,如果先添加   然后修改就有问题  (不能用)
                #endregion
                bool islock = BLL.Common.CacheData.GetAllUserInfo(true).Where(t => t.Id == tempuser.Id).FirstOrDefault().IsLock;
                if (!islock)
                {
                    #region 发送邮件 告知 激活成功
                    Helper.EmailHelper email = new Helper.EmailHelper()
                       {
                           mailPwd = s_mailPwd,
                           host = s_host,
                           mailFrom = s_mailFrom,
                           mailSubject = "欢迎您注册 嗨-博客",
                           mailBody = objuser.UserNickname + " 您好!欢迎注册 嗨-博客</br></br>" +
                           "您注册的的帐号:" + objuser.UserName +
                               //"   密码是:" + objuser.UserPass +
                           "</br></br>" +
                           "请您妥善保管~",
                           mailToArray = new string[] { ((ModelDB.BlogUsersSet)Session[tempUserinfo]).UserMail }
                       };

                    try
                    { email.Send(); }
                    catch (Exception)
                    { }
                    #endregion

                    Session[jihuoma] = null;
                    Session[tempUserinfo] = null;

                    BLLSession.UserInfoSessioin = objuser;
                    return new JSData()
                    {
                        Messg = "恭喜您~激活成功~",
                        State = EnumState.正常重定向,
                        JSurl = "/"
                    }.ToJson();
                }
                else
                {
                    return new JSData()
                    {
                        Messg = "激活失败,请联系管理员~",
                        State = EnumState.失败
                    }.ToJson();
                }
            }
            #endregion

            return new JSData()
            {
                Messg = "您输入的激活码错误,你可以重新激活~",
                State = EnumState.失败
            }.ToJson();
        }
Пример #6
0
        public JsonResult Regis(BlogUsersSet blog)
        {
            JsonResult jsonresult = new JsonResult();
            var json = new Common.CustomModel.JSData();

            #region 1.数据检验
            if (CacheData.GetAllUserInfo(true).Where(t => t.UserMail == blog.UserMail).Count() > 0)
                json.Messg = "此邮箱已经被注册~换个邮箱吧~";
            else if (CacheData.GetAllUserInfo().Where(t => t.UserName == blog.UserName).Count() > 0)
                json.Messg = "此用户名已经存在~";
            if (!string.IsNullOrEmpty(json.Messg))
            {
                json.State = EnumState.失败;
                jsonresult.Data = json;
                return jsonresult;
            }
            #endregion

            Blogs.ModelDB.BlogUsersSet user = new ModelDB.BlogUsersSet()
            {
                UserName = blog.UserName,
                UserPass = blog.UserPass,
                UserMail = blog.UserMail,
                UserNickname = blog.UserNickname,
                IsLock = true,
                UserInfo = new UserInfo()
            };
            Session[tempUserinfo] = user;
            JSData jsdata;

            #region 2.邮件发送失败
            if (!GetActivate(out jsdata)) //
            {
                jsdata.State = EnumState.失败;
                jsdata.Messg = jsdata.Messg + " ~请重新输入邮箱~";
            }
            #endregion

            #region 3.邮件发送成功
            else
            {

                BLL.BlogUsersSetBLL userBll = new BLL.BlogUsersSetBLL();
                userBll.Add(user);
                //在保存前 再做次验证
                if (GetDataHelper.GetAllUser().Where(t => t.UserName == blog.UserName || t.UserMail == blog.UserMail).Count() > 0)
                {
                    json.Messg = "此用户名后邮箱已经存在~";
                    json.State = EnumState.失败;
                    jsonresult.Data = json;
                    return jsonresult;
                }
                else
                    userBll.save();

                //验证是否注册成功 (并重新加载缓存信息)
                if (CacheData.GetAllUserInfo(true).Where(t => t.UserName == blog.UserName && t.UserPass == blog.UserPass).Count() > 0)
                {
                    BLLSession.UserInfoSessioin = user;
                }
                else
                {
                    json = new JSData()
                    {
                        Messg = "注册失败",
                        State = EnumState.失败
                    };
                    jsonresult.Data = json;
                    return jsonresult;
                }
            }
            #endregion

            jsonresult.Data = jsdata;
            return jsonresult;
        }
Пример #7
0
 /// <summary>
 /// 根据用户名  获取用户信息
 /// </summary>
 /// <param name="name"></param>
 /// <returns></returns>
 public static BlogUsersSet GetUser(string name)
 {
     BLL.BlogUsersSetBLL user = new BLL.BlogUsersSetBLL();
     return(user.GetList(t => t.UserName == name).FirstOrDefault());
 }
Пример #8
0
 public static IQueryable <ModelDB.BlogUsersSet> GetAllUser <T>(Expression <Func <BlogUsersSet, T> > TTbName, bool isAsNoTracking = true)
 {
     BLL.BlogUsersSetBLL user = new BLL.BlogUsersSetBLL();
     return(user.GetList(t => true, tableName: TTbName, isAsNoTracking: isAsNoTracking));
 }
Пример #9
0
        private void mybegin()
        {
            try
            {
                //设置日志存放路径
                LogModel._logFilePath = HttpContext.Current.Server.MapPath("~/") + @"\Log\";
                FileHelper.defaultpath = HttpContext.Current.Server.MapPath("~/");

                BLL.BlogUsersSetBLL userbll = new BLL.BlogUsersSetBLL();
                var isbegin = userbll.GetList(t => true).Count() > 0;
                if (!isbegin)
                {
                    var user = new Blogs.ModelDB.BlogUsersSet()
                    {
                        UserName = "******",
                        UserPass = "******",
                        IsDel = false,
                        IsLock = false,
                        UserMail = "无效",
                        CreateTime = DateTime.Now,
                        UserInfo = new ModelDB.UserInfo()
                    };
                    userbll.Add(user);
                    userbll.save(false);
                }
            }
            catch (Exception) { }
        }
Пример #10
0
        public string Activate()
        {
            var json = new Common.CustomModel.JSData();

            #region 1.判断是否从正常途径访问此页面 如果是的话 默认存在 Session[tempUserinfo]  2.如果是已经登录状态则直接无视 跳转

            if (null == Session[tempUserinfo])
            {
                json.State = EnumState.失败;//json.Messg = "请您通过正常途径访问激活页面~";
                json.JSurl = "/";
                return(json.ToJson());
            }
            if (BLLSession.UserInfoSessioin != null && !BLLSession.UserInfoSessioin.IsLock)
            {
                json.State = EnumState.失败; //json.Messg = "您都已经登录的还想获取激活码?别玩了~";
                json.JSurl = "/";
                return(json.ToJson());
            }
            #endregion

            var tempuser = ((ModelDB.BlogUsersSet)Session[tempUserinfo]);
            var activate = Request.Form["txt_activate"];//激活码

            #region 2.验证激活码  (更新缓存 发送通知邮件 清空无用session)
            if (activate.Trim() == Session[jihuoma].ToString().Trim()) //验证激活码
            {
                BLL.BlogUsersSetBLL user = new BLL.BlogUsersSetBLL();
                var objuser = user.GetList(t => t.Id == tempuser.Id, isAsNoTracking: false).FirstOrDefault();
                if (null != objuser)
                {
                    objuser.IsLock   = false;
                    objuser.UserPass = tempuser.UserPass.MD5().MD5();//【】这里有个小BUG 暂未处理(如果是迁移的用户 这第一次登录需要激活密码)
                    objuser.UserMail = tempuser.UserMail;
                }
                user.save();
                #region bug 记录
                //ModelDB.BlogUsers objuser = new ModelDB.BlogUsers();
                //objuser.Id = id;
                //objuser.IsLock = false;
                // user.Up(objuser, "IsLock");  //这个方法 正常情况用没问题,如果先添加   然后修改就有问题  (不能用)
                #endregion
                bool islock = BLL.Common.CacheData.GetAllUserInfo(true).Where(t => t.Id == tempuser.Id).FirstOrDefault().IsLock;
                if (!islock)
                {
                    #region 发送邮件 告知 激活成功
                    Helper.EmailHelper email = new Helper.EmailHelper()
                    {
                        mailPwd     = s_mailPwd,
                        host        = s_host,
                        mailFrom    = s_mailFrom,
                        mailSubject = "欢迎您注册 嗨-博客",
                        mailBody    = objuser.UserNickname + " 您好!欢迎注册 嗨-博客</br></br>" +
                                      "您注册的的帐号:" + objuser.UserName +
                                      //"   密码是:" + objuser.UserPass +
                                      "</br></br>" +
                                      "请您妥善保管~",
                        mailToArray = new string[] { ((ModelDB.BlogUsersSet)Session[tempUserinfo]).UserMail }
                    };

                    try
                    { email.Send(); }
                    catch (Exception)
                    { }
                    #endregion

                    Session[jihuoma]      = null;
                    Session[tempUserinfo] = null;

                    BLLSession.UserInfoSessioin = objuser;
                    return(new JSData()
                    {
                        Messg = "恭喜您~激活成功~",
                        State = EnumState.正常重定向,
                        JSurl = "/"
                    }.ToJson());
                }
                else
                {
                    return(new JSData()
                    {
                        Messg = "激活失败,请联系管理员~",
                        State = EnumState.失败
                    }.ToJson());
                }
            }
            #endregion

            return(new JSData()
            {
                Messg = "您输入的激活码错误,你可以重新激活~",
                State = EnumState.失败
            }.ToJson());
        }
Пример #11
0
        public JsonResult Regis(BlogUsersSet blog)
        {
            JsonResult jsonresult = new JsonResult();
            var        json       = new Common.CustomModel.JSData();

            #region 1.数据检验
            if (CacheData.GetAllUserInfo(true).Where(t => t.UserMail == blog.UserMail).Count() > 0)
            {
                json.Messg = "此邮箱已经被注册~换个邮箱吧~";
            }
            else if (CacheData.GetAllUserInfo().Where(t => t.UserName == blog.UserName).Count() > 0)
            {
                json.Messg = "此用户名已经存在~";
            }
            if (!string.IsNullOrEmpty(json.Messg))
            {
                json.State      = EnumState.失败;
                jsonresult.Data = json;
                return(jsonresult);
            }
            #endregion

            Blogs.ModelDB.BlogUsersSet user = new ModelDB.BlogUsersSet()
            {
                UserName     = blog.UserName,
                UserPass     = blog.UserPass,
                UserMail     = blog.UserMail,
                UserNickname = blog.UserNickname,
                IsLock       = true,
                UserInfo     = new UserInfo()
            };
            Session[tempUserinfo] = user;
            JSData jsdata;

            #region 2.邮件发送失败
            if (!GetActivate(out jsdata)) //
            {
                jsdata.State = EnumState.失败;
                jsdata.Messg = jsdata.Messg + " ~请重新输入邮箱~";
            }
            #endregion

            #region 3.邮件发送成功
            else
            {
                BLL.BlogUsersSetBLL userBll = new BLL.BlogUsersSetBLL();
                userBll.Add(user);
                //在保存前 再做次验证
                if (GetDataHelper.GetAllUser().Where(t => t.UserName == blog.UserName || t.UserMail == blog.UserMail).Count() > 0)
                {
                    json.Messg      = "此用户名后邮箱已经存在~";
                    json.State      = EnumState.失败;
                    jsonresult.Data = json;
                    return(jsonresult);
                }
                else
                {
                    userBll.save();
                }

                //验证是否注册成功 (并重新加载缓存信息)
                if (CacheData.GetAllUserInfo(true).Where(t => t.UserName == blog.UserName && t.UserPass == blog.UserPass).Count() > 0)
                {
                    BLLSession.UserInfoSessioin = user;
                }
                else
                {
                    json = new JSData()
                    {
                        Messg = "注册失败",
                        State = EnumState.失败
                    };
                    jsonresult.Data = json;
                    return(jsonresult);
                }
            }
            #endregion

            jsonresult.Data = jsdata;
            return(jsonresult);
        }