public MaintenanceGroupActivateModel CanActivate(int customerId)
        {
            var model = new MaintenanceGroupActivateModel();

            GetCustomerBaseModel(customerId, model);

            var customerProfile = RbacEntities.CustomerProfiles.FirstOrDefault(m => m.CustomerId == customerId);
            var settingFactory  = new SettingsFactory();

            // Has a default password?
            string defaultPassword = settingFactory.GetValue("DefaultPassword", customerId);

            if (string.IsNullOrWhiteSpace(defaultPassword))
            {
                model.Issues.Add(new MaintenanceGroupActivateIssue()
                {
                    Description = "Default password is missing.",
                    Controller  = "MaintenanceGroups",
                    Action      = "EditMaintenanceGroup"
                });
            }

            // Has a time zone
            if (customerProfile.TimeZoneID == null || customerProfile.TimeZoneID == -1)
            {
                model.Issues.Add(new MaintenanceGroupActivateIssue()
                {
                    Description = "Select customer time zone.",
                    Controller  = "MaintenanceGroups",
                    Action      = "EditMaintenanceGroup"
                });
            }

            // Can activate?
            model.CanActivate = !model.Issues.Any();

            // Post a message that customer can be activated.
            if (model.CanActivate)
            {
                model.ActivateMessage = model.DisplayName + " may be activated.";
            }

            return(model);
        }
        public ActionResult ActivateMaintenanceGroup(int customerId)
        {
            MaintenanceGroupActivateModel model = (new MaintenanceGroupFactory()).CanActivate(customerId);

            return(View(model));
        }