Ejemplo n.º 1
0
        public ActionResult Edit(UserRoleViewModel userRoleModel)
        {
            var model         = userRoleModel.UserModel;
            var selectedRoles = userRoleModel.Roles;

            if (ModelState.IsValid)
            {
                try
                {
                    if (selectedRoles.Any())
                    {
                        var mUser = Membership.GetUser(model.UserName);
                        if (mUser != null)
                        {
                            mUser.Email = model.Email;

                            MembershipUserExtended.Update(mUser, model.FirstName, model.LastName,
                                                          model.Title, model.HourlyRate, model.Address, model.City,
                                                          model.State, model.Zip, model.Phone);
                        }
                        else
                        {
                            userRoleModel.Roles = Roles.GetAllRoles().ToList();
                            ModelState.AddModelError("", "Couldn't find user");
                            return(View(userRoleModel));
                        }
                        //delete all saved roles before adding new ones
                        var userSavedRoles = Roles.GetRolesForUser(model.UserName);
                        if (userSavedRoles.Any())
                        {
                            Roles.RemoveUserFromRoles(model.UserName, userSavedRoles);
                        }

                        Roles.AddUserToRoles(model.UserName, selectedRoles.ToArray());

                        var user = MembershipUserExtended.GetUser(model.UserName, false);

                        userRoleModel.UserModel = new UserModel(user);
                        userRoleModel.Roles     = Roles.GetAllRoles().ToList();
                        ViewBag.Message         = "Changes have been saved successfully";
                    }
                    else
                    {
                        userRoleModel.Roles = Roles.GetAllRoles().ToList();
                        ModelState.AddModelError("", "User must belong to atleast one Role.");
                    }
                }
                catch (Exception ex)
                {
                    ViewBag.Message = string.Empty;
                    ModelState.AddModelError("", ex.Message);
                }
            }
            else
            {
                userRoleModel.Roles = Roles.GetAllRoles().ToList();
            }
            // If we got this far, something failed, redisplay form
            return(View(userRoleModel));
        }
Ejemplo n.º 2
0
        public ActionResult Login(LoginModel model, string returnUrl)
        {
            if (ModelState.IsValid)
            {
                if (MembershipUserExtended.ValidateUser(model.UserName, model.Password))
                {
                    MembershipUserExtended.GetUser(model.UserName, true);
                    FormsAuthentication.SetAuthCookie(model.UserName, model.RememberMe);
                    if (Url.IsLocalUrl(returnUrl))
                    {
                        return(Redirect(returnUrl));
                    }
                    else
                    {
                        return(RedirectToAction("Index", "Home"));
                    }
                }
                else
                {
                    ModelState.AddModelError("", "The user name or password provided is incorrect.");
                }
            }

            // If we got this far, something failed, redisplay form
            return(View(model));
        }
Ejemplo n.º 3
0
        public ActionResult GetMenu()
        {
            var user = MembershipUserExtended.GetUser(HttpContext.User.Identity.Name, false);

            var userMenus = new WebMenuRole().GetMenuItemsForRoles(user.UserRoles);

            return(PartialView("_MenuPartial", userMenus));
        }
Ejemplo n.º 4
0
        public ActionResult List()
        {
            var membershipUserCollection = MembershipUserExtended.GetExtendedMembershipUserCollection();
            var userModelCollection      = new List <UserModel>();

            userModelCollection.AddRange(membershipUserCollection.Select(mu => new UserModel(mu)));


            return(View(userModelCollection));
        }
Ejemplo n.º 5
0
        public PartialViewResult MigrateUser(string id)
        {
            var legacyUser = LegacyUsers.FirstOrDefault(c => c.User == id);

            if (legacyUser != null && MembershipUsers.All(c => c.UserName != legacyUser.User))
            {
                try
                {
                    double hourlyRate;
                    MembershipCreateStatus createStatus;
                    var membershipUser = MembershipUserExtended.CreateUser(legacyUser.User, legacyUser.Pwd,
                                                                           legacyUser.User + "@mmc.com",
                                                                           legacyUser.Firstname, legacyUser.Lastname,
                                                                           string.Empty,
                                                                           !double.TryParse(legacyUser.Hourly_rate,
                                                                                            out hourlyRate)
                                                                               ? 0.0
                                                                               : hourlyRate,
                                                                           legacyUser.Address, string.Empty,
                                                                           string.Empty,
                                                                           string.Empty, legacyUser.Phonenumber,
                                                                           out createStatus);
                    if (createStatus == MembershipCreateStatus.Success)
                    {
                        _membershipUsers = GetAllMemberShipUsers();
                        if (!string.IsNullOrEmpty(legacyUser.Role) && Roles.GetAllRoles().Contains(legacyUser.Role))
                        {
                            Roles.AddUserToRole(membershipUser.UserName, legacyUser.Role);
                        }
                        else
                        {
                            Roles.AddUserToRole(membershipUser.UserName,
                                                Roles.GetAllRoles().FirstOrDefault(c => c.ToLower().Equals("user")));
                        }

                        MigrateUserData(membershipUser.UserName);

                        ViewBag.Message = string.Format("User {0} migrated successfully.", id);
                        return(PartialView(viewName: "_LegacyUserList", model: GetLegacyUsers()));
                    }
                }
                catch (Exception ex)
                {
                    ViewBag.Message = string.Format("{0} error occured while migrating user {1}.", ex.Message.ToString(),
                                                    id);
                    return(PartialView("_LegacyUserList", GetLegacyUsers()));
                }
            }

            ViewBag.Message = string.Format("Error occured while migrating user {0}.", id);
            return(PartialView("_LegacyUserList", GetLegacyUsers()));
        }
 public CreateUserModel(MembershipUserExtended mue)
 {
     UserName = mue.UserName;
     Email = mue.Email;
     FirstName = mue.FirstName;
     LastName = mue.LastName;
     Title = mue.Title;
     HourlyRate = mue.HourlyRate;
     Phone = mue.Phone;
     Address = mue.Address;
     City = mue.City;
     State = mue.State;
     Zip = mue.Zip;
     LastActivityDate = mue.LastActivityDate;
     IsOnline = mue.IsOnline;
     UserRoles = mue.UserRoles;
 }
Ejemplo n.º 7
0
 public CreateUserModel(MembershipUserExtended mue)
 {
     UserName         = mue.UserName;
     Email            = mue.Email;
     FirstName        = mue.FirstName;
     LastName         = mue.LastName;
     Title            = mue.Title;
     HourlyRate       = mue.HourlyRate;
     Phone            = mue.Phone;
     Address          = mue.Address;
     City             = mue.City;
     State            = mue.State;
     Zip              = mue.Zip;
     LastActivityDate = mue.LastActivityDate;
     IsOnline         = mue.IsOnline;
     UserRoles        = mue.UserRoles;
 }
Ejemplo n.º 8
0
        public ActionResult Create(CreateUserRoleViewModel userRoleModel)
        {
            var model         = userRoleModel.UserModel;
            var selectedRoles = userRoleModel.Roles;

            if (ModelState.IsValid)
            {
                // Attempt to register the user
                MembershipCreateStatus createStatus;
                var user = MembershipUserExtended.CreateUser(model.UserName, model.Password, model.Email, model.FirstName, model.LastName, model.Title, model.HourlyRate, model.Address, model.City, model.State, model.Zip, model.Phone, out createStatus);

                if (createStatus == MembershipCreateStatus.Success)
                {
                    //Assign Users to Roles
                    if (selectedRoles.Any())
                    {
                        Roles.AddUserToRoles(user.UserName, selectedRoles.ToArray());
                    }
                    else
                    {
                        Roles.AddUserToRole(user.UserName, Roles.GetAllRoles().FirstOrDefault(c => c.ToLower().Equals("user")));
                    }


                    userRoleModel.UserModel = new CreateUserModel(user);
                    userRoleModel.Roles     = Roles.GetAllRoles().ToList();
                    //FormsAuthentication.SetAuthCookie(model.UserName, createPersistentCookie: false);
                    //return RedirectToAction("Index", "TimeTrack");
                    ModelState.AddModelError("", string.Format("User {0} created successfully", model.UserName));
                    return(View(userRoleModel));
                }
                else
                {
                    userRoleModel.Roles = Roles.GetAllRoles().ToList();
                    ModelState.AddModelError("", ErrorCodeToString(createStatus));
                }
            }
            else
            {
                userRoleModel.Roles = Roles.GetAllRoles().ToList();
            }

            // If we got this far, something failed, redisplay form
            return(View(userRoleModel));
        }
Ejemplo n.º 9
0
        public PartialViewResult GetUserHistory(FormCollection collection)
        {
            var    userList = MembershipUserExtended.GetFullNameUserNameList();
            string userName = collection["SelectedValue"];

            if (userList.ContainsValue(userName))
            {
                DateTime startDate;
                DateTime endDate;
                if (DateTime.TryParse(collection["txtStartDate"], out startDate) && DateTime.TryParse(collection["txtEndDate"], out endDate))
                {
                    var model = TimeTrackManager.GetUserTimeTrackHistoryForSpecifiedPeriod(userName, startDate, endDate);
                    return(PartialView("_GetUserHistory", model));
                }
            }

            return(PartialView("_GetUserHistory", new CustomTimeTrack()));
        }
Ejemplo n.º 10
0
        public void ExportUserHistory(FormCollection collection)
        {
            var    userList = MembershipUserExtended.GetFullNameUserNameList();
            string userName = collection["uname"];

            if (userList.ContainsValue(userName))
            {
                DateTime startDate;
                DateTime endDate;
                if (DateTime.TryParse(collection["startDate"], out startDate) && DateTime.TryParse(collection["endDate"], out endDate))
                {
                    var model = TimeTrackManager.GetUserTimeTrackHistoryForSpecifiedPeriod(userName, startDate, endDate);
                    //return PartialView("_GetUserHistory", model);
                    IExportPage export     = new ExportPage();
                    var         reportName = model.EmployeeName.Replace(" ", "_") + "_" + model.CustomStartEndDateDisplay.Replace(" ", "-");
                    export.ExportExcel(ExcelReportHelper.GetExcelString(model, reportName), reportName + ".xls");
                }
            }

            //return PartialView("_GetUserHistory", new CustomTimeTrack());
        }
Ejemplo n.º 11
0
        public PartialViewResult GetTimeTrackForEdit(FormCollection collection)
        {
            var    userList = MembershipUserExtended.GetFullNameUserNameList();
            string userName = collection["SelectedValue"];

            if (userList.ContainsValue(userName))
            {
                DateTime startDate;
                if (DateTime.TryParse(collection["txtStartDate"], out startDate))
                {
                    var endDate = startDate;
                    var model   = TimeTrackManager.GetDailyClockInOutTimeByDate(userName, startDate, endDate);

                    ViewBag.UserName = userName;
                    //ViewBag.UserFullName = collection["user"];
                    return(PartialView("_TimeTrackForEdit", new DailyTimeTrackViewModel(model, userList.FindKeyByValue(userName), userName)));
                }
            }

            return(PartialView("_TimeTrackForEdit", new DailyTimeTrackViewModel()));
        }
Ejemplo n.º 12
0
        public ActionResult Create(UserTimeTrackHistoryMapped utth, FormCollection collection)
        {
            var    userList = MembershipUserExtended.GetFullNameUserNameList();
            string userName = collection["UserName"];

            if (userList.ContainsValue(userName))
            {
                utth.UserName = userName;

                DateTime clockInDt;
                DateTime clockOutDt;
                if (DateTime.TryParse(utth.ClockInTime, out clockInDt) && DateTime.TryParse(utth.ClockOutTime, out clockOutDt))
                {
                    if (clockOutDt.TimeOfDay.CompareTo(clockInDt.TimeOfDay) != -1) // if clock out time is earlier than clock in time than error
                    {
                        utth.ClockInTime  = string.Format("{0:t}", clockInDt);
                        utth.ClockOutTime = string.Format("{0:t}", clockOutDt);

                        utth.UserId      = MembershipUserExtended.GetUserIdByUserName(userName);
                        utth.CreatedBy   = LoggedInUserName;
                        utth.CreatedDate = WebHelpers.GetCurrentDateTimeByTimeZoneId(WebConfigurationManager.AppSettings["UserTimeZoneId"]);
                        utth.IsDeleted   = false;
                        var tth = utth.Get(utth.Save());
                        tth.UserName    = userList.FindKeyByValue(userName);
                        ViewBag.Message = "Record inserted successfully.";
                        return(View(tth));
                    }
                    ViewBag.Message = "Clock Out time can not be earlier than Clock In time.";
                    return(View(utth));
                }
                ViewBag.Message = "Not a valid Clock In/Out time, please make sure time is in correct format.";
                return(View(utth));
            }
            ViewBag.Message = "Error inserting record.";
            return(View(new UserTimeTrackHistoryMapped()));
        }
Ejemplo n.º 13
0
 public UserRoleViewModel(string userName)
 {
     UserModel            = new UserModel(MembershipUserExtended.GetUser(userName, false));
     Roles                = System.Web.Security.Roles.GetAllRoles().ToList();
     WeeklyTimeTrackModel = TimeTrackManager.GetCurrentWeekClockInOutTime(userName);
 }
Ejemplo n.º 14
0
        public ActionResult UserQuickSearch(string term)
        {
            var users = MembershipUserExtended.GetExtendedMembershipUserCollection(term).Select(c => new { label = c.FullName });

            return(Json(users, JsonRequestBehavior.AllowGet));
        }
Ejemplo n.º 15
0
        protected bool MigrateUserData(string userName)
        {
            var userNameIdDic = MembershipUserExtended.GetUserIdUserNameList();

            try
            {
                var ravenUserHistory =
                    RavenSession.Query <UserTimeStampsHistory>().Where(c => c.UserName == userName).ToList();
                var efUHistoryList = UserTimeTrackHistory.GetUserTimeStampHistory(userName);
                if (ravenUserHistory.Count > 0)
                {
                    if (efUHistoryList.Count > 0)
                    {
                        foreach (var efUserTimeStampHistory
                                 in from history in ravenUserHistory
                                 from timeStamp in history.History
                                 where !efUHistoryList.Any(
                                     c =>
                                     c.ClockInTime.Equals(timeStamp.Start_time) &&
                                     c.ClockOutTime.Equals(timeStamp.End_time))
                                 select new UserTimeTrackHistory()
                        {
                            UserId = userNameIdDic[userName],
                            UserName = userName,
                            ClockInTime = DateTime.Parse(timeStamp.Start_time).TimeOfDay.ToString(),
                            ClockOutTime = DateTime.Parse(timeStamp.End_time).TimeOfDay.ToString(),
                            StampDate = DateTime.Parse(timeStamp.Stampdate),
                            CreatedBy = HttpContext.User.Identity.Name,
                            CreatedDate = DateTime.Now,
                            UserIP = WebHelpers.GetIpAddress() + "~" + Request.UserHostName
                        })
                        {
                            efUserTimeStampHistory.Save();
                        }
                    }
                    else
                    {
                        foreach (var efUserTimeStampHistory
                                 in from history in ravenUserHistory
                                 from timeStamp in history.History
                                 select new UserTimeTrackHistory()
                        {
                            UserId = userNameIdDic[userName],
                            UserName = userName,
                            ClockInTime = DateTime.Parse(timeStamp.Start_time).TimeOfDay.ToString(),
                            ClockOutTime = DateTime.Parse(timeStamp.End_time).TimeOfDay.ToString(),
                            StampDate = DateTime.Parse(timeStamp.Stampdate),
                            CreatedBy = HttpContext.User.Identity.Name,
                            CreatedDate = DateTime.Now,
                            UserIP =
                                WebHelpers.GetIpAddress() + "~" + Request.UserHostName
                        })
                        {
                            efUserTimeStampHistory.Save();
                        }
                    }
                }
                return(true);
            }
            catch (Exception ex)
            {
                return(false);
            }
        }