public string GetAutoCompleteResults(AutoSuggestSearchParameters search)
        {
            var searchManager = new AutoCompleteSearchManager();
            var searchOptions = new SearchOptions
            {
                SearchMode = "Advisor",
                SearchType = SearchTypes.Advisor.ToString(),
                // SortType = "AdvisorNameAsc",
                FacetCategories = null,
                SearchTerms     = search.SearchTerms + "*"
            };
            var results = searchManager.GetAllAdvisorsAutoCompleteList(searchOptions);

            return(results);
        }
        public JsonResult GetAutoCompleteResultsDetailed(string searchTerm)
        {
            const string defaultProfileImageWidthHeight = "150";
            var          searchManager = new AutoCompleteSearchManager();
            var          searchOptions = new SearchOptions
            {
                SearchMode      = "Advisor",
                SearchType      = SearchTypes.Advisor.ToString(),
                FacetCategories = null,
                SearchTerms     = searchTerm
            };

            var results = searchManager.GetDetailedAdvisorAutoCompleteListEx(searchOptions);

            var suggestionList = new List <Suggestion>(results.docs.Count);

            foreach (var result in results.docs)
            {
                suggestionList.Add(new Suggestion()
                {
                    AdvisorCompany = (result.advisor_is_independent_contractor
                        ? $"{SearchResultsHelpers.FormatAdvisorAffiliateOf(result.advisor_doing_business_as)} {result.advisor_company}" // customized company name
                        : result.advisor_company),
                    AdvisorEmail        = result.advisor_email,
                    AdvisorLocation     = SearchResultsHelpers.FormatCityStateCountryFromJson(result.advisor_city_state_country, true),
                    AdvisorMeid         = result.advisor_id,
                    AdvisorPhone        = result.advisor_office_phone_number,
                    Label               = result.name_suggestion,
                    ProfileImage        = SearchResultsHelpers.GetImageUriFromWidthHeight(result.advisor_image_url, defaultProfileImageWidthHeight, defaultProfileImageWidthHeight),
                    OptedInHotelBooking = result.advisor_is_in_hotel_booking
                });
            }

            return(Json(Framework.Utilities.Json.Serialize(suggestionList.ToArray()),
                        JsonRequestBehavior.AllowGet));
        }