Exemplo n.º 1
0
        public static string GetRoleByLoginName(string loginName)
        {
            string role = string.Empty;

            CPUserEntity u = CPUserService.Instance.CreateQuery().Where(o => o.Activity == true && o.LoginName == loginName).ToSingle();

            if (u == null)
            {
                return(role);
            }
            CPUserRoleEntity r = CPUserRoleService.Instance.CreateQuery().Where(o => o.UserID == u.ID).ToSingle();

            if (r == null)
            {
                return(role);
            }
            CPRoleEntity ur = CPRoleService.Instance.CreateQuery().Where(o => o.ID == r.RoleID).ToSingle();

            if (ur == null)
            {
                return(role);
            }
            role = ur.Code;

            return(role);
        }
Exemplo n.º 2
0
        public async Task <IActionResult> Edit(DefaultModel model, CPUserEntity item)
        {
            ViewBag.Title = "Chỉnh sửa";
            if (string.IsNullOrEmpty(model.ID) && string.IsNullOrEmpty(item.ID))
            {
                ViewBag.Message = "Chưa chọn đối tượng đê sửa";
            }
            else
            {
                string ID    = model.ID;
                var    _item = _service.GetByID(ID);
                item.ID      = _item.ID;
                item.Email   = _item.Email;
                item.Created = _item.Created > DateTime.MinValue ? _item.Created : DateTime.Now;
                if (item.Pass != _item.Pass)
                {
                    item.Pass = Security.Encrypt(item.Pass);
                }
                await _service.AddAsync(item);

                ViewBag.Data = _service.GetByID(ID);
            }
            ViewBag.Model    = model;
            ViewBag.RoleData = _listRoles;
            return(RedirectToAction("index"));
        }
Exemplo n.º 3
0
 public CPApiController(ILogs logs
                        , IConfiguration configuration
                        , CPMenuService menuService
                        , CPUserService userService
                        , CPRoleService roleService
                        , CPLangService langService
                        , Security security
                        , ModLessonService lessonService
                        , ModLessonPartService lessonPartService
                        , ModLessonExtendService lessonExtendService
                        , ModLessonPartAnswerService answerService
                        , CPLoginLogService loginLogService
                        , FileProcess fileProcess)
 {
     _configuration        = configuration;
     _logs                 = logs;
     _menu                 = new WebMenu();
     _security             = security;
     _menuService          = menuService;
     _userService          = userService;
     _roleService          = roleService;
     _langService          = langService;
     _lessionService       = lessonService;
     _lessionPartService   = lessonPartService;
     _lessionExtendService = lessonExtendService;
     _loginLogService      = loginLogService;
     _answerService        = answerService;
     _fileProcess          = fileProcess;
     _currentLang          = StartUp.CurrentLang;
     _currentUser          = StartUp.CurrentUser;
 }
Exemplo n.º 4
0
        public void ActionIndex(MSearchModel model)
        {
            // Lay thong tin user dang nhap
            int          loaiTV = 0, userId = 0;
            CPUserEntity user = CPLogin.CurrentUserOnWeb;

            if (user != null)
            {
                loaiTV = user.MenuID;
                userId = user.ID;
            }

            // Lay id chuyen muc la "Tin noi bo"
            int           tinNoiBoId = 0;
            WebMenuEntity menu       = WebMenuService.Instance.CreateQuery()
                                       .Where(o => o.Activity == true && o.Code == "TinNoiBo")
                                       .ToSingle();

            if (menu != null)
            {
                tinNoiBoId = menu.ID;
            }

            var dbQuery = ModNewsService.Instance.CreateQuery()
                          .Where(o => o.Activity == true)
                          .Where(!string.IsNullOrEmpty(model.Keyword), o => o.Name.Contains(model.Keyword))
                          .WhereIn(o => o.MenuID, WebMenuService.Instance.GetChildIDForWeb_Cache("News", 0, ViewPage.CurrentLang.ID));

            if (userId == 0)
            {   // Neu khong dang nhap thi khong cho phep tim kiem tin noi bo va tin canh bao
                dbQuery = dbQuery
                          .Where(o => o.MenuID != tinNoiBoId && o.WarnNews == false);
            }
            else
            {   // Neu dang nhap thi cho phep tim kiem tin noi bo va tin canh bao ung voi user duoc phep xem
                string userIds = userId.ToString();

                if (loaiTV > 0)
                {
                    dbQuery = dbQuery.Where(o => o.LoaiThanhVienID == 0 || o.LoaiThanhVienID == null || (o.LoaiThanhVienID > 0 && o.LoaiThanhVienID == loaiTV));
                }
                dbQuery = dbQuery.Where(o => o.WarnNews == false || (o.WarnNews == true && o.WarnUserIDs.Contains(userIds)));
            }

            dbQuery = dbQuery
                      .OrderByDesc(o => o.Order)
                      .Take(PageSize)
                      .Skip(PageSize * model.Page);

            ViewBag.Data      = dbQuery.ToList();
            model.TotalRecord = dbQuery.TotalRecord;
            model.PageSize    = PageSize;
            ViewBag.Model     = model;
        }
Exemplo n.º 5
0
        public static bool CheckLogin1(string login_name, string password)
        {
            CPUserEntity _User = CPUserService.Instance.GetLogin2(login_name, password);

            if (_User != null)
            {
                SetLogin(_User.ID);

                return(true);
            }

            return(false);
        }
Exemplo n.º 6
0
        public static bool CheckLogin3(string LoginName, string password)
        {
            CPUserEntity _User = CPUserService.Instance.GetForLogin(LoginName, Global.Security.GetPass(password));

            if (_User != null)
            {
                SetLogin(_User.ID);

                return(true);
            }

            return(false);
        }
Exemplo n.º 7
0
 public IActionResult Index()
 {
     if (User.Identity.IsAuthenticated)
     {
         var email = User.Claims.SingleOrDefault(o => o.Type == ClaimTypes.Email).Value;
         if (!string.IsNullOrEmpty(email))
         {
             currentUser  = _userService.GetItemByEmail(email);
             ViewBag.Data = currentUser;
         }
     }
     return(View());
 }
Exemplo n.º 8
0
        public CPUserEntity getUser()
        {
            if (_oUser == null && CreateUserId > 0)
            {
                _oUser = CPUserService.Instance.GetByID(CreateUserId);
            }

            if (_oUser == null)
            {
                _oUser = new CPUserEntity();
            }

            return(_oUser);
        }
Exemplo n.º 9
0
        private bool IsValid()
        {
            if (UserInfo == null)
            {
                return(false);
            }

            CPUserEntity _User = CPUserService.Instance.GetLoginMd5(UserInfo.LoginName, UserInfo.Password);

            //Kiem tra quyen
            if (_User == null)
            {
                return(false);
            }

            return(_User.IsAdministrator);
        }
Exemplo n.º 10
0
        public void ActionAdd(SysUserModel model)
        {
            if (model.RecordID > 0)
            {
                item = CPUserService.Instance.GetByID(model.RecordID);

                // khoi tao gia tri mac dinh khi update
            }
            else
            {
                item = new CPUserEntity();

                // khoi tao gia tri mac dinh khi insert
            }

            ViewBag.Data  = item;
            ViewBag.Model = model;
        }
Exemplo n.º 11
0
        public void ActionAdd(SysUserModel model)
        {
            if (model.RecordID > 0)
            {
                entity = CPUserService.Instance.GetByID(model.RecordID);

                // khoi tao gia tri mac dinh khi update
            }
            else
            {
                entity = new CPUserEntity();

                // khoi tao gia tri mac dinh khi insert
            }

            ViewBag.Data = entity;
            ViewBag.Model = model;
        }
Exemplo n.º 12
0
 public async Task <IActionResult> Create(DefaultModel model, CPUserEntity item)
 {
     if (_service.GetItemByEmail(item.Email) != null)
     {
         ViewBag.Message = "Email đã tồn tại";
         return(View());
     }
     ViewBag.Title = "Thêm mới";
     if (!string.IsNullOrEmpty(model.ID) || !string.IsNullOrEmpty(item.ID))
     {
         return(RedirectToAction("Edit", new { model.ID }));
     }
     else
     {
         item.Pass = Security.Encrypt(item.Pass);
         await _service.AddAsync(item);
     }
     ViewBag.RoleData = _listRoles;
     return(View());
 }
Exemplo n.º 13
0
 public async Task <IActionResult> Create(DefaultModel model, CPUserEntity item)
 {
     if (_service.IsExistByEmail(item.Email))
     {
         ViewBag.Message = "Email đã tồn tại";
         return(View());
     }
     ViewBag.Title = "Thêm mới";
     if (model.ID > 0 || item.ID > 0)
     {
         return(RedirectToAction("Edit", new { model.ID }));
     }
     else
     {
         item.Pass = Security.Encrypt(item.Pass);
         await _service.SaveAsync(item);
     }
     ViewBag.RoleData = _listRoles;
     return(View());
 }
Exemplo n.º 14
0
        public void ActionLogin(MLoginModel model)
        {
            CPUserEntity entity = new CPUserEntity();

            entity.LoginName = model.LoginName;
            entity.Password  = model.Password;
            ViewBag.Data     = entity;
            //2553: dang ky moi; 2554: chap nhan; 2555: bi khoa; 2556: tu choi; 2557: bannick
            //var user = CPUserService.Instance.GetByEmail(model.Email.Trim());
            //var user = CPUserService.Instance.GetLogin(model.LoginName.Trim(), entity.Password);
            if (CPLogin.CheckLogin1(model.LoginName, model.Password))
            {
                string redirect = HL.Core.Web.HttpQueryString.GetValue("ReturnPath").ToString();
                ViewPage.Response.Redirect(string.IsNullOrEmpty(redirect) ? "/" : redirect);
            }
            else
            {
                ViewBag.Login = model;
                ViewPage.Alert("Đăng nhập không thành công! Tên đăng nhập hoặc mật khẩu không đúng.");
            }
        }
Exemplo n.º 15
0
        public static bool CheckLogin1(string login_name, string password, bool isTV = false)
        {
            string role = GetRoleByLoginName(login_name);

            if (isTV == true && !string.IsNullOrEmpty(role) && role != "TV")
            {
                return(false);
            }
            else if (isTV == false && (string.IsNullOrEmpty(role) || role == "TV"))
            {
                return(false);
            }
            CPUserEntity _User = CPUserService.Instance.GetLogin2(login_name, password);

            if (_User != null)
            {
                SetLoginOnWeb(_User.ID);

                return(true);
            }

            return(false);
        }
Exemplo n.º 16
0
        public void ActionLogin(MLoginModel model)
        {
            CPUserEntity entity = new CPUserEntity();

            entity.LoginName = model.LoginName;
            entity.Password  = model.Password;
            ViewBag.Data     = entity;
            //2553: dang ky moi; 2554: chap nhan; 2555: bi khoa; 2556: tu choi; 2557: bannick
            //var user = CPUserService.Instance.GetByEmail(model.Email.Trim());
            //var user = CPUserService.Instance.GetLogin(model.LoginName.Trim(), entity.Password);
            if (CPLogin.CheckLogin1(model.LoginName, model.Password))
            {
                string redirect = HL.Core.Web.HttpQueryString.GetValue("ReturnPath").ToString();
                ViewPage.Response.Redirect(string.IsNullOrEmpty(redirect) ? "/vn/Dashboard.aspx" : redirect);
            }
            else
            {
                ViewBag.Login = model;
                ViewPage.Alert("Đăng nhập không thành công! Tên đăng nhập hoặc mật khẩu không đúng.");
            }

            //if (user.State == 2554)
            //{
            //    if (CPLogin.CheckLogin2(model.Email, model.Password))
            //    {
            //        string redirect = HL.Core.Web.HttpQueryString.GetValue("ReturnPath").ToString();
            //        ViewPage.Response.Redirect(string.IsNullOrEmpty(redirect) ? "/Dang-tin.aspx" : redirect);
            //    }
            //    else
            //    {
            //        ViewBag.Login = model;
            //        ViewPage.Alert("Đăng nhập không thành công! Tên đăng nhập hoặc mật khẩu không đúng.");
            //    }
            //}
            //else if (user.State == 2553)
            //    ViewPage.Alert("Đăng ký thành viên của bạn chưa được chấp thuận. Bạn vui lòng chờ đợi Ban Quản trị chấp thuận.Thân chào.");
            //else if (user.State == 2555)
            //{
            //    var todate = string.Format("{0:dd/MM/yyyy}", user.NgayMoLock);
            //    if (user.NgayMoLock < DateTime.Now)
            //    {
            //        if (CPLogin.CheckLogin2(model.Email, model.Password))
            //        {
            //            user.State = 2554;
            //            user.NgayActive = user.NgayMoLock;
            //            user.SoNgayLock = 0;
            //            user.NgayLock = DateTime.MinValue;
            //            user.NgayMoLock = DateTime.MinValue;
            //            CPUserService.Instance.Save(user);
            //            string redirect = HL.Core.Web.HttpQueryString.GetValue("ReturnPath").ToString();
            //            ViewPage.Response.Redirect(string.IsNullOrEmpty(redirect) ? "/Dang-tin.aspx" : redirect);
            //        }
            //        else
            //        {
            //            ViewBag.Login = model;
            //            ViewPage.Alert("Đăng nhập không thành công! Tên đăng nhập hoặc mật khẩu không đúng.");
            //        }
            //    }
            //    else ViewPage.Alert("Tin post của bạn phạm quy, bạn vui lòng ở ngoài đọc tin cho đến hết ngày " + todate + ". Cần biết thêm chi tiết bạn vui lòng liên lạc với Ban Quản trị qua email: [email protected] hoặc điện thoại 0909993960.");
            //}
            //else if (user.State == 2556)
            //{
            //    ViewPage.Alert("Rất tiếc, thông tin đăng kí thành viên của bạn không phù hợp. Nên không được chấp thuận làm thành viên. Bạn vui lòng liên lạc với Ban Quản Trị để được hướng dẫn hoặc biết thêm chi tiết: Địa chỉ email [email protected]. Điện thoại: 0909993960.");
            //}
            //else if (user.State == 2557) { }
        }
Exemplo n.º 17
0
        public override void OnLoad()
        {
            // Lay thong tin user dang nhap
            int          loaiTV = 0, userId = 0;
            CPUserEntity user = CPLogin.CurrentUserOnWeb;

            if (user != null)
            {
                loaiTV = user.MenuID;
                userId = user.ID;
            }

            // Lay id chuyen muc la "Tin noi bo"
            int           tinNoiBoId = 0;
            WebMenuEntity menu       = WebMenuService.Instance.CreateQuery()
                                       .Where(o => o.Activity == true && o.Code == "TinNoiBo")
                                       .ToSingle();

            if (menu != null)
            {
                tinNoiBoId = menu.ID;
            }

            ViewBag.Data = ModNewsService.Instance.CreateQuery()
                           .Where(o => o.Activity == true && o.WarnNews != true && o.MenuID != tinNoiBoId)
                           .WhereIn(MenuID > 0, o => o.MenuID, WebMenuService.Instance.GetChildIDForWeb_Cache("News", MenuID, ViewPage.CurrentLang.ID))
                           .Where(State > 0, o => (o.State & State) == State)
                           .OrderByDesc(o => o.Order)
                           .Take(PageSize)
                           .ToList();

            ViewBag.Data2 = ModNewsService.Instance.CreateQuery()
                            .Where(o => o.Activity == true && o.WarnNews != true && o.MenuID != tinNoiBoId)
                            .WhereIn(MenuID2 > 0, o => o.MenuID, WebMenuService.Instance.GetChildIDForWeb_Cache("News", MenuID2, ViewPage.CurrentLang.ID))
                            .Where(State > 0, o => (o.State & State) == State)
                            .OrderByDesc(o => o.Order)
                            .Take(PageSize)
                            .ToList();

            ViewBag.HotNews = ModNewsService.Instance.CreateQuery()
                              .Where(o => o.Activity == true && o.WarnNews != true && o.MenuID != tinNoiBoId)
                              .WhereIn(MenuID > 0, o => o.MenuID, WebMenuService.Instance.GetChildIDForWeb_Cache("News", MenuID, ViewPage.CurrentLang.ID))
                              .Where(State > 0, o => (o.State & State) == State)
                              .OrderByDesc(o => o.Order)
                              .Take(PageSize)
                              .ToSingle();

            var dbQueryTinNoiBo = ModNewsService.Instance.CreateQuery()
                                  .Where(o => o.Activity == true)
                                  .Where(o => o.MenuID == tinNoiBoId && o.LoaiThanhVienID == loaiTV)
                                  .WhereIn(MenuID > 0, o => o.MenuID, WebMenuService.Instance.GetChildIDForWeb_Cache("News", MenuID, ViewPage.CurrentLang.ID))
                                  .Where(State > 0, o => (o.State & State) == State)
                                  .OrderByDesc(o => o.Order)
                                  .Take(PageSize);

            ViewBag.TinNoiBo = dbQueryTinNoiBo.ToList();

            var    tmp = ModNewsService.Instance.CreateQuery().Where(a => a.Activity == true && a.WarnUserIDs != "" && a.WarnUserIDs != null).ToList();
            string s   = "";

            if (tmp != null)
            {
                s = string.Join(";", tmp.Select(o => o.WarnUserIDs).ToArray());
            }
            var dbQueryTinCanhBao = ModNewsService.Instance.CreateQuery()
                                    .Where(o => o.Activity == true && o.WarnNews == true)
                                    .Where(userId > 0, o => o.WarnUserIDs.Contains(userId.ToString()))
                                    .WhereIn(MenuID > 0, o => o.MenuID, WebMenuService.Instance.GetChildIDForWeb_Cache("News", MenuID, ViewPage.CurrentLang.ID))
                                    .Where(State > 0, o => (o.State & State) == State)
                                    .OrderByDesc(o => o.Order)
                                    .Take(PageSize);

            ViewBag.TinCanhBao = dbQueryTinCanhBao.ToList();

            ViewBag.Title  = Title;
            ViewBag.Title2 = Title2;

            SysPageEntity page1 = SysPageService.Instance.CreateQuery().Where(o => o.MenuID == MenuID).ToSingle();

            if (page1 != null)
            {
                ViewBag.Url1 = ViewPage.GetPageURL(page1);
            }
            SysPageEntity page2 = SysPageService.Instance.CreateQuery().Where(o => o.MenuID == MenuID2).ToSingle();

            if (page2 != null)
            {
                ViewBag.Url2 = ViewPage.GetPageURL(page2);
            }

            ViewBag.Video = ModVideoService.Instance.CreateQuery()
                            .Where(o => o.Activity == true)
                            //.Where(State > 0, o => (o.State & State) == State)
                            //.WhereIn(MenuID > 0, o => o.MenuID, WebMenuService.Instance.GetChildIDForWeb_Cache("Video", MenuID, ViewPage.CurrentLang.ID))
                            .OrderByDesc(o => o.Order)
                            .Take(4)
                            .ToList_Cache();

            ViewBag.Album = ModAlbumService.Instance.CreateQuery()
                            .Where(o => o.Activity == true)
                            .OrderByDesc(o => o.Order)
                            .Take(4)
                            .ToList_Cache();
        }
Exemplo n.º 18
0
 public AdminController()
 {
     _menu        = new WebMenu();
     _currentLang = StartUp.CurrentLang;
     _currentUser = StartUp.CurrentUser;
 }
Exemplo n.º 19
0
        public Response StartPage()
        {
            var listRole = new List <CPRoleEntity>()
            {
                new CPRoleEntity()
                {
                    Name = "Administrator",
                    Code = "administrator",
                    Lock = true
                },
                new CPRoleEntity()
                {
                    Name = "Member",
                    Code = "member",
                    Lock = true
                }
            };

            _roleService.AddRange(listRole);
            List <CPUserEntity> listUser = new List <CPUserEntity>();

            for (int i = 0; i < listRole.Count; i++)
            {
                var user = new CPUserEntity()
                {
                    IsActive = true,
                    BirthDay = DateTime.Now,
                    Created  = DateTime.Now,
                    Email    = listRole[i].Code + "@gmail.com",
                    Name     = listRole[i].Name,
                    RoleID   = listRole[i].ID,
                    Phone    = "0976497928",
                    Skype    = "breakingdawn1235",
                    Pass     = Security.Encrypt("123")
                };
                _userService.Add(user);
                listUser.Add(user);
            }
            List <CPLangEntity> listLang = new List <CPLangEntity>()
            {
                new CPLangEntity()
                {
                    IsActive = true,
                    Code     = "VN",
                    Name     = "Việt Nam"
                },
                new CPLangEntity()
                {
                    IsActive = true,
                    Code     = "EN",
                    Name     = "English"
                }
            };

            _langService.AddRange(listLang);
            IDictionary <string, dynamic> data = new Dictionary <string, dynamic>();

            data.Add("Role", listRole);
            data.Add("User", listUser);
            data.Add("Lang", listLang);
            return(new Response(201, "Create Success", data));
        }
Exemplo n.º 20
0
        public void ActionRePassPOST(PasswordModel model)
        {
            if (model.Email.Trim() == string.Empty)
            {
                ViewPage.Message.ListMessage.Add("Bạn chưa nhập Email.");
            }
            else if (Utils.GetEmailAddress(model.Email) == string.Empty)
            {
                ViewPage.Message.ListMessage.Add("Định dạng Email không đúng.");
            }
            else
            {
                entity = CPUserService.Instance.CreateQuery()
                         .Where(o => o.Email == model.Email).Select(o => new { o.ID, o.LoginName, o.Phone, o.TempPassword, o.Email }).ToSingle();
                if (entity == null)
                {
                    ViewPage.Message.ListMessage.Add("Email không tồn tại.");
                }
            }
            if (ViewPage.Message.ListMessage.Count > 0)
            {
                string s = @"Các thông tin còn thiếu hoặc sai chính xác \r\n";
                for (int i = 0; i < ViewPage.Message.ListMessage.Count; i++)
                {
                    s += @"\r\n" + ViewPage.Message.ListMessage[i];
                }
                ViewPage.Alert(s);
            }
            else
            {
                string pas = Utils.GetRandString();
                entity.TempPassword = Security.GetPass(pas);
                CPUserService.Instance.Save(entity, o => o.TempPassword);
                string statesendmail = Mail.SendMailUseSMTP_2(entity.Email.Trim(), Global.Setting.Sys_SiteID + " - Thông báo lấy lại mật khẩu", "Mật khẩu mới của bạn là : <b>" + pas + "</b><br />Email đăng nhập : " + entity.Email + "<br /><b><i>+ Lưu ý: Nếu không phải bạn yêu cầu đổi mật khẩu thì hãy bỏ qua thư này và đăng nhập bằng mật khẩu hiện tại.</i></b>", "");

                var objMailTo = ModConfigSendMailService.Instance.CreateQuery().Where(o => o.Activity == true && o.MailType == 137).ToSingle();
                if (objMailTo != null)
                {
                    string sHTML = string.Empty;
                    sHTML += "<p style='text-align: center;'><span style='font-size: 14px;'><strong>Th&ocirc;ng tin th&agrave;nh vi&ecirc;n reset mật khẩu:</strong></span></p>";
                    sHTML += "<table align='center' border='1' cellpadding='2' cellspacing='0' height='114' width='284'><tbody>";
                    sHTML += "<tr><td style='width: 80px;'><strong>ID</strong></td><td>" + entity.ID + "</td></tr>";
                    sHTML += "<tr><td style='width: 80px;'><strong>T&ecirc;n thảo luận</strong></td><td>" + entity.LoginName + "</td></tr>";
                    sHTML += "<tr><td style='width: 80px;'><strong>Email</strong></td><td>" + entity.Email + "</td></tr>";
                    sHTML += "<tr><td style='width: 80px;'><strong>Thời gian</strong></td><td>" + string.Format("{0:dd/MM/yyyy HH:mm}", DateTime.Now) + "</td></tr>";
                    sHTML += "<tr><td style='width: 80px;'><strong>Mật khẩu mới</strong></td><td>" + pas + "</td></tr>";
                    sHTML += "</tbody></table>";
                    Mail.SendMailUseSMTP_2(objMailTo.ToMail, Global.Setting.Sys_SiteID + " - Thông báo lấy lại mật khẩu", sHTML, "");
                }
                var userresetpass = new ModUserResetPassEntity
                {
                    UserID    = entity.ID,
                    LoginName = entity.LoginName,
                    Phone     = entity.Phone,
                    Email     = entity.Email,
                    TimeReset = DateTime.Now,
                    PassReset = pas,
                    StateSend = string.IsNullOrEmpty(statesendmail)
                };
                ModUserResetPassService.Instance.Save(userresetpass);

                ViewPage.Alert("Hệ thống đã gửi lại mật khẩu mới cho bạn, vui lòng kiểm tra hòm thư !");
                ViewPage.Navigate("/");
            }
            ViewBag.ResetPass = model;
        }
Exemplo n.º 21
0
        public void ActionRegisterPOST(CPUserEntity entity, MUserModel model)
        {
            if (entity.LoginName.Trim() == string.Empty)
            {
                ViewPage.Message.ListMessage.Add("+ Nhập tên truy cập.");
            }

            //if (entity.Name.Trim() == string.Empty)
            //    ViewPage.Message.ListMessage.Add("Nhập tên.");

            //if (entity.CityID.Trim() == string.Empty)
            //    ViewPage.Message.ListMessage.Add("Chọn Tỉnh/Thành phố.");

            if (Utils.GetEmailAddress(entity.Email) == string.Empty)
            {
                ViewPage.Message.ListMessage.Add("+ Địa chỉ email thiếu hoặc không chính xác.");
            }
            else
            {
                if (CPUserService.Instance.exits(entity.Email))
                {
                    ViewPage.Message.ListMessage.Add("Địa chỉ email đã được sử dụng.");
                }
            }

            //if (entity.Year < 0)
            //    ViewPage.Message.ListMessage.Add("Chọn năm sinh.");

            if (entity.Phone == string.Empty)
            {
                ViewPage.Message.ListMessage.Add("+ Nhập số điện thoại.");
            }

            //if (entity.Note.Trim() == string.Empty)
            //    ViewPage.Message.ListMessage.Add("Nhập lý do tham gia.");

            if (entity.Password.Trim() == string.Empty)
            {
                ViewPage.Message.ListMessage.Add("+ Nhập mật khẩu.");
            }

            if (model.RePassword.Trim() == string.Empty)
            {
                ViewPage.Message.ListMessage.Add("+ Nhập lại mật khẩu.");
            }
            else if (model.RePassword.Trim() != entity.Password)
            {
                ViewPage.Message.ListMessage.Add("+ Mật khẩu nhắc lại không đúng.");
            }

            //if (entity.Address == string.Empty)
            //    ViewPage.Message.ListMessage.Add("Nhập địa chỉ.");

            //if (model.Agree != 1)
            //    ViewPage.Message.ListMessage.Add("Bạn cần đồng ý điều khoản để trở thành thành viên.");


            if (ViewPage.Message.ListMessage.Count > 0)
            {
                ViewBag.DataRes = entity;
                string s = @"Các thông tin nhập còn thiếu hoặc chưa chính xác: \r\n";
                for (int i = 0; i < ViewPage.Message.ListMessage.Count; i++)
                {
                    s += @"\r\n" + ViewPage.Message.ListMessage[i];
                }
                ViewPage.Alert(s);
            }
            else
            {
                entity.Password = Lib.Global.Security.GetPass(entity.Password.Trim());
                //entity.Password = HL.Lib.Global.Security.MD5(entity.Password.Trim());
                entity.Created    = DateTime.Now;
                entity.NgayActive = DateTime.Now;
                entity.Activity   = true;
                entity.ClientIP   = System.Web.HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"];

                CPUserService.Instance.Save(entity);
                CPUserRoleService.Instance.Save(new CPUserRoleEntity()
                {
                    UserID = entity.ID, RoleID = 2
                });
                // xoa trang
                entity = new CPUserEntity();

                //ViewPage.Alert("Bạn đã đăng kí thành công! Bạn vui lòng chờ đợi Ban Quản trị chấp thuận. Thân chào."); ViewPage.Navigate("/");
                ViewPage.Alert("Chào mừng bạn đăng ký thành công và đã được kích hoạt"); ViewPage.Navigate("/");
            }
            ViewBag.DataRes = entity;
        }
Exemplo n.º 22
0
        public void ActionChangeInfoPOST(CPUserEntity entity)
        {
            string alert = string.Empty;

            //if (entity.Name.Trim() == string.Empty)
            //    ViewPage.Message.ListMessage.Add("+ Nhập tên.");
            string file = Utils.Upload("Avatar", entity.File, "/Data/upload/images/User/" + entity.Email.Replace("@", "_").Trim(), ref alert);

            entity.File = string.IsNullOrEmpty(file) ? entity.File : file;


            if (entity.LoginName.Trim() == string.Empty)
            {
                ViewPage.Message.ListMessage.Add("+ Nhập tên truy cập.");
            }

            //if (entity.CityID.Trim() == string.Empty)
            //    ViewPage.Message.ListMessage.Add("Nhập tên thành phố.");

            if (Utils.GetEmailAddress(entity.Email) == string.Empty)
            {
                ViewPage.Message.ListMessage.Add("+ Địa chỉ email thiếu hoặc không chính xác.");
            }
            else
            {
                var loginName = entity.LoginName.Trim();
                var user      = CPUserService.Instance.CreateQuery().Where(o => o.LoginName == loginName).ToSingle();
                if (user.Email.Trim() != entity.Email.Trim() && CPUserService.Instance.exits(entity.Email))
                {
                    ViewPage.Message.ListMessage.Add("Địa chỉ email đã được sử dụng.");
                }
            }

            //if (entity.Year < 0)
            //    ViewPage.Message.ListMessage.Add("Chọn năm sinh.");

            //if (entity.Note.Trim() == string.Empty)
            //    ViewPage.Message.ListMessage.Add("Nhập lý do tham gia.");

            if (entity.Phone == string.Empty)
            {
                ViewPage.Message.ListMessage.Add("+ Nhập số điện thoại.");
            }

            if (alert != string.Empty)
            {
                ViewPage.Message.ListMessage.Add(alert);
            }
            if (ViewPage.Message.ListMessage.Count > 0)
            {
                string s = @"Thông tin nhập còn thiếu hoặc sai chính xác: \r\n";
                for (int i = 0; i < ViewPage.Message.ListMessage.Count; i++)
                {
                    s += @"\r\n" + ViewPage.Message.ListMessage[i];
                }
                ViewPage.Alert(s);
            }
            else
            {
                entity.ID = CPLogin.UserID;
                CPUserService.Instance.Save(entity, o => new { o.Name, o.Phone, o.Note, o.LoginName, o.Email, o.File, o.Sex, o.Year, o.CityID });
                ViewPage.Alert("Cập nhật thông tin thành công!");
                ViewPage.Navigate(ViewPage.Request.RawUrl);
            }
            ViewBag.Data = entity;
        }
Exemplo n.º 23
0
        private static ClaimsPrincipal GetCurrentUser(this HttpContext context, IConfiguration configuration, ref CPUserEntity user)
        {
            string token = context.GetValue(Cookies.DefaultLogin, false);

            if (string.IsNullOrEmpty(token))
            {
                return(null);
            }
            else
            {
                // neeus co cache
                var cache = CacheExtends.GetDataFromCache <ClaimsPrincipal>(token);
                if (cache != null)
                {
                    return(cache);
                }
                // ko co cache
                var    logs  = new CPLoginLogService(configuration);
                string email = logs.GetEmailFromDb(token);
                if (string.IsNullOrEmpty(email))
                {
                    return(null);
                }
                else
                {
                    var account = new CPUserService(configuration);
                    user = account.GetItemByEmail(email);
                    if (user == null)
                    {
                        return(null);
                    }
                    else
                    {
                        var role  = new CPRoleService(configuration);
                        var irole = role.GetByID(user.RoleID);
                        if (role == null)
                        {
                            return(null);
                        }
                        var claims = new List <Claim>
                        {
                            new Claim(ClaimTypes.Email, user.Email),
                            new Claim(ClaimTypes.Name, user.Name),
                            new Claim(ClaimTypes.Role, irole.Code),
                            new Claim("RoleID", irole.ID.ToString())
                        };
                        var claimsIdentity = new ClaimsIdentity(claims, Cookies.DefaultLogin);

                        var authenProperties = new AuthenticationProperties
                        {
                            IsPersistent = true,
                            ExpiresUtc   = DateTime.UtcNow.AddMinutes(Cookies.ExpiresLogin)
                        };
                        ClaimsPrincipal claim = new ClaimsPrincipal();
                        claim.AddIdentity(claimsIdentity);

                        CacheExtends.SetObjectFromCache(token, Cookies.ExpiresLogin, claim);

                        return(claim);
                    }
                }
            }
        }