Example #1
0
        public ActionResult GetSeoParameters(SearchFilterViewModel filter)
        {
            if (filter != null)
            {
                filter.SetTypeOfCareNames(this.TypesOfCareDefinitions);

                return Json(
                    new
                    {
                        typesofcare = filter.TypesOfCareSeoParameterFormatted
                    });
            }

            return Json(new { typesofcare = "" });
        }
Example #2
0
 /// <summary>
 /// Maps listing edit VM to listing details (search action) and adds city/state/zip
 /// </summary>
 /// <param name="listingEdit">Listing edit VM</param>
 /// <param name="cityStateZip">City state zip data</param>
 /// <param name="filter">Search filter VM</param>
 /// <returns>Listing details VM</returns>
 public static ListingDetailsViewModel ToListingDetails(this ListingViewModelEdit listingEdit, CityStateZip cityStateZip, SearchFilterViewModel filter)
 {
     return new ListingDetailsViewModel
     {
         CityStateZip = cityStateZip,
         FacilityGuid = listingEdit.FacilityGuid,
         FacilityName = listingEdit.FacilityName,
         FacilityShortDescription = listingEdit.Exerpt,
         FacilityLongDescription = listingEdit.Description,
         Address = listingEdit.Address,
         Website = listingEdit.Website,
         PhoneNumber = listingEdit.PhoneNumber,
         PhotoUri = listingEdit.PublicPhotoFileUri,
         Photos = listingEdit.FacilityPhotos.ToPhotoSliderList(),
         TypeOfCareList = listingEdit.TypeOfCareList,
         CurrentFilter = filter,
         Geolocation = new PSSLocation { Latitude = listingEdit.Latitude, Longitude = listingEdit.Longitude }
     };
 }
Example #3
0
        // general search by all criteria
        private SearchResultsViewModel SearchFacilities(SearchFilterViewModel filter, int? page)
        {
            var pageNumber = page ?? 1; // if no page was specified in the querystring, default to the first page (1)
            int pageminus1 = pageNumber - 1;
            int totalCount = 0;
            IList<SearchResultViewModel> results = new List<SearchResultViewModel>();
            FacilityLogic flogic = new FacilityLogic();
            var allFound =
                filter.SearchType == Enums.SearchTypes.Distance ?
                    this.SearchByDistance(filter, flogic, pageminus1, PAGESIZE, out totalCount ) :
                        filter.SearchType == Enums.SearchTypes.Filtered ?
                            this.SearchByFilter(filter, flogic, pageminus1, PAGESIZE, out totalCount) :
                                this.SearchByDistanceFilter(filter, flogic, pageminus1, PAGESIZE, out totalCount);
            allFound.ForEach(f =>
            {
                var csz = this.CityStateZipAll.FirstOrDefault(c => c.CityStateZipGuid == f.CityStateZipGuid);
                results.Add(f.ToSearchResult(csz));
            });

            var resultsPage = new StaticPagedList<SearchResultViewModel>(results, pageNumber, PAGESIZE, totalCount);
            filter.Page = pageNumber;
            return new SearchResultsViewModel { CurrentFilter = filter, CurrentResults = resultsPage };
        }
Example #4
0
 private List<Facility> SearchByFilter(SearchFilterViewModel filter, FacilityLogic flogic, int page, int pageSize, out int totalCount)
 {
     var allFound = flogic.GetAllFacilityFilter(
         new CityStateZip
         {
             City = filter.CityFilter ?? "",
             State = filter.StateFilter ?? "",
             ZipCode = filter.ZipFilter ?? ""
         },
         filter.TypeOfCareFilter.ToOfferingListCheckedOnly(),
         false, page, pageSize, out totalCount
     );
     return allFound;
 }
Example #5
0
 private List<Facility> SearchByDistanceFilter(SearchFilterViewModel filter, FacilityLogic flogic, int page, int pageSize, out int totalCount)
 {
     // distance radius is in miles
     var allFound = flogic.GetAllFacilityByDistanceFilter(
         new DistanceParameters
         {
             Latitude = filter.Latitude.Value,
             Longitude = filter.Longitude.Value,
             DistanceRadius = RADIUS
         },
         filter.TypeOfCareFilter.ToOfferingListCheckedOnly(),
         false, page, pageSize, out totalCount
     );
     return allFound;
 }
Example #6
0
 private List<Facility> SearchByDistance(SearchFilterViewModel filter, FacilityLogic flogic, int page, int pageSize, out int totalCount)
 {
     // distance radius is in miles
     var allFound = flogic.GetAllFacilityByDistance(
         new DistanceParameters
         {
             Latitude = filter.Latitude.Value,
             Longitude = filter.Longitude.Value,
             DistanceRadius = RADIUS
         },
         page, pageSize, out totalCount
     );
     return allFound;
 }
Example #7
0
 /// <summary>
 /// Maps SEO search filter VM to search filter VM
 /// </summary>
 /// <param name="seoFilter">SEO search filter VM</param>
 /// <param name="typesOfCare">Types of care collection</param>
 /// <returns>Search filter VM</returns>
 public static SearchFilterViewModel ToSearchFilter(this SeoSearchFilterViewModel seoFilter, IList<TypeOfCareViewModel> typesOfCare)
 {
     Enums.SearchTypes searchType = Enums.SearchTypes.Undefined;
     bool b = Enum.TryParse<Enums.SearchTypes>(seoFilter.SearchType, true, out searchType);
     var filter = new SearchFilterViewModel
     {
         Page = seoFilter.Page,
         Latitude = seoFilter.Latitude,
         Longitude = seoFilter.Longitude,
         SearchType = searchType,
         TypeOfCareFilter = seoFilter.RestoreTypesOfCare(typesOfCare),
         CityFilter = seoFilter.City,
         StateFilter = seoFilter.State,
         ZipFilter = seoFilter.Zip
     };
     return filter;
 }
Example #8
0
 public IQueryable<SearchResultViewModel> DoSearchQuery(SearchFilterViewModel filter)
 {
     return this.DoSearch(filter).AsQueryable();
 }
Example #9
0
        public IList<SearchResultViewModel> DoSearch(SearchFilterViewModel filter)
        {
            CityStateZip csz = new CityStateZip
            {
                CityStateZipGuid = Guid.NewGuid(),
                City = "New York",
                State = "New York",
                ZipCode = "00501"
            };

            string facilityNameFormat = "Facility name {0}";
            string descriptionFormat = "Facility description {0}";
            var outList = new List<SearchResultViewModel>();

            for (int i = 0; i < 200; i++)
            {
                var resultItem = new SearchResultViewModel
                {
                    FacilityGuid = Guid.NewGuid(),
                    PhotoUri = "../../Content/Images/homeProfileDrawing.png",
                    FacilityName = string.Format(facilityNameFormat, i),
                    FacilityShortDescription = string.Format(descriptionFormat, i),
                    CityStateZip = csz
                };
                outList.Add(resultItem);
            }

            return outList;
        }