public ActionResult Search(ProviderFilter status = ProviderFilter.AllExceptInactive)
        {
            var model = new ProvidersListVM
            {
                DetailList = ProviderRepository.GetProviderListItems(status),
                Base       = new ViewModelBase(PushState, "/Providers/Search", "Provider Search")
            };

            model.ListBase.CallbackFilterValue                     = status.ToString();
            model.ListBase.GridTitlePanelSettings.Title            = $"Providers ({EnumHelper.GetTextAsString(status)})";
            model.ListBase.GridTitlePanelSettings.ShowAddButton    = true;
            model.ListBase.GridTitlePanelSettings.AddNewAction     = "Create";
            model.ListBase.GridTitlePanelSettings.AddNewController = "Providers";
            var filters = new List <ProviderFilter> {
                ProviderFilter.All, ProviderFilter.AllExceptInactive, ProviderFilter.Active, ProviderFilter.Inactive, ProviderFilter.Potential
            }
            .Select(m => new GridTitlePanelFilterItem
            {
                RouteUrl = $"/Providers/Search/?status={m}",
                Text     = EnumHelper.GetTextAsString(m),
                IsActive = status == m
            }).ToList();

            model.ListBase.GridTitlePanelSettings.FilterItems = filters;
            var isFilterCallback = Request.Params["isFilterCallback"] == "true";

            return(GetView(isFilterCallback ? "ListGrid" : "List", model));
        }
        public ActionResult SelectedProviders(int caseID)
        {
            var model = new ProvidersListVM <SelectedProviderListItemVM>
            {
                CaseID    = caseID,
                Providers = repository.GetSelectedProviders(caseID)
            };

            model.ListBase.GridTitlePanelSettings.Title = "Selected Providers";
            return(GetView("SelectedProvidersGrid", model));
        }
        public ActionResult SelectableProviders(int caseID)
        {
            var model = new ProvidersListVM <ProviderListItemVM>
            {
                CaseID    = caseID,
                Providers = repository.GetSelectableProviders(caseID)
            };

            model.ListBase.GridTitlePanelSettings.Title = "Select Providers";
            var staffingLog = repository.GetByID(caseID);

            model.PreferredGender = staffingLog.ProviderGenderPreference;
            return(GetView("ProvidersGrid", model));
        }