Esempio n. 1
0
        public ActionResult UsersAndTeachers(int?id)  // user id
        {
            checkLogin();

            List <QE_USER> list = DBS.findActiveRecords <QE_USER>();

            Session["userList"] = list;

            QE_USER displayingUser = id != null?list.Where(l => l.ID == (int)id).FirstOrDefault() : new QE_USER();

            UsersAndTeachersViewModel ViewModel = new UsersAndTeachersViewModel(list, displayingUser);

            return(View(ViewModel));
        }
Esempio n. 2
0
        public ActionResult InactiveUser(int id)
        {
            checkLogin();
            if (id > 0)
            {
                if (DBS.InactiveRecord("QE_USER", id, CP.userID))
                {
                    TempData[Constant.msg_success] = "User has been deleted";
                    List <QE_USER> userList = DBS.findActiveRecords <QE_USER>(); // regen userlist
                    Session["userList"] = userList;

                    UsersAndTeachersViewModel ViewModel = new UsersAndTeachersViewModel(userList, userList.FirstOrDefault());
                    return(View("UsersAndTeachers", ViewModel));
                }
                else
                {
                    TempData[Constant.msg_success] = "Failed to delete user";
                    return(UsersAndTeachers(id));
                }
            }
            return(UsersAndTeachers(id));
        }
Esempio n. 3
0
        public ActionResult UsersAndTeachersPost(QE_USER user)
        {
            checkLogin();

            //get user list
            List <QE_USER>            userList  = Session["userList"] != null ? (List <QE_USER>)Session["userList"] : DBS.findActiveRecords <QE_USER>();
            UsersAndTeachersViewModel viewModel = new UsersAndTeachersViewModel(userList, user);

            //string password = Membership.GeneratePassword(8, 4);
            //user.PASSWORD = AccountService.aesEncryptBase64(password, "QEKey");
            string password = "******";

            user.PASSWORD = "******";

            user.ACTIVE   = true;
            user.ADD_BY   = CP.userID;
            user.ADD_DATE = DateTime.Now;


            // fields checking
            if (!ModelState.IsValid)
            {
                return(View("UsersAndTeachers", viewModel)); // redirect to form with data
            }
            // business logic check
            //user.ID < 1 means this is a new user
            if (user.ID < 1)
            {
                if (userList != null && userList.Exists(u => u.ID == user.ID))
                {
                    TempData[Constant.msg_error] = "User ID already in use";
                    return(View("UsersAndTeachers", viewModel)); // redirect to form with data
                }
            }


            bool isSuccess = false;

            if (user.ID < 1)
            {
                user.ID   = DBS.addRecordReturnID(user);
                isSuccess = user.ID > 0 ? true : false;
            }
            else
            {
                isSuccess = DBS.updateRecord(user);
            }

            if (isSuccess)
            {
                //reset user list after user changes
                CP.teacherSelectList = UserService.getTeacherSelectList();
                userList             = DBS.findActiveRecords <QE_USER>();
                Session["userList"]  = userList;

                //MailService.SendNewPassword(user.EMAIL, user.USER_ID, password);
                TempData[Constant.msg_success] = ((user.ID < 1) ? "user has been created" : Constant.ChangeSucceed);
                return(UsersAndTeachers(user.ID));
            }
            else
            {
                TempData[Constant.msg_error] = "Ops! somethings gone wrong.";
                return(View("UsersAndTeachers", viewModel));
            }
        }