예제 #1
0
        private SearchView BuildPublicSettingsView(ModuleInstanceView parent, SearchView settingsData, IDictionary<string, string> parameters)
        {
            // Establish correct search results page URL
            settingsData.UpdateSettingValue("SearchResultsPageUrl", LocationUtils.CalculateSearchResultsUrl(settingsData, parent.SearchSettings.SearchResultsPageUrl));

            foreach (var zone in settingsData.StaticPageZones.Select(z => z.Value).Union(settingsData.DynamicPageZones))
            {
                foreach (var column in zone.FieldColumns)
                {
                    foreach (var field in column.Fields)
                    {
                        if (field.FieldName == "RadiusDistance")
                        {
                            field.Value = "";
                            field.Options.Clear();
                            field.Options.Add(new KeyValuePair<object, object>("", "Any"));
                            field.Options.AddRange(parent.SearchSettings.SearchRadiusOptions.Select(s => new KeyValuePair<object, object>(s, s)).ToList());
                        }
                    }
                }
            }
            return settingsData;
        }
예제 #2
0
        private SearchView BuildPublicSettingsView(ModuleInstanceView parent, SearchView settingsData, IDictionary<string, string> parameters)
        {
            // Establish correct search results page URL
            settingsData.UpdateSettingValue("SearchResultsPageUrl", ProviderUtils.CalculateSearchResultsUrl(settingsData, parent.SearchSettings.SearchResultsPageUrl));

            // Handle pre-filled drop-down controls
            foreach (var zone in settingsData.StaticPageZones.Select(z => z.Value).Union(settingsData.DynamicPageZones))
            {
                foreach (var column in zone.FieldColumns)
                {
                    foreach (var field in column.Fields)
                    {
                        if (field.FieldName == "RadiusDistance")
                        {
                            field.Value = "";
                            field.Options.Clear();
                            field.Options.Add(new KeyValuePair<object, object>("", "Any"));
                            field.Options.AddRange(parent.SearchSettings.SearchRadiusOptions.Select(s => new KeyValuePair<object, object>(s, s)).ToList());
                        }
                        if (field.FieldName == "Gender")
                        {
                            field.Value = "";
                            field.Options.Clear();
                            field.Options.Add(new KeyValuePair<object, object>("", "Any"));
                            var genderNameRequest = new ListGendersRequest() { IsEnabled = true };
                            var genderNameResponse = parent.ProcessRequest<ListGendersResponse>(genderNameRequest);
                            foreach (var gender in genderNameResponse.Genders)
                                field.Options.Add(new KeyValuePair<object, object>(gender.Id, gender.Name));
                        }

                        PreloadQueryValuesFromQueryString(field, parameters);
                    }
                }
            }
            return settingsData;
        }
예제 #3
0
 private SearchView BuildPublicSettingsView(ModuleInstanceView parent, SearchView settingsData, IDictionary<string, string> parameters)
 {
     // Establish correct search results page URL
     settingsData.UpdateSettingValue("SearchResultsPageUrl", LocationUtils.CalculateSearchResultsUrl(settingsData, parent.SearchSettings.SearchResultsPageUrl));
     return settingsData;
 }