Exemplo n.º 1
0
        public string BuildListViewTitleFromFormula(ListView viewSettings, ReadOrgUnitSearchSettingsResponse searchSettings)
        {
            string formula = string.Empty;

            if (Parameters.ContainsKey("LocationText"))
                formula = searchSettings.SearchResultsKeywordPageTitleFormula;
            else if (Parameters.ContainsKey("PostalCode"))
                formula = searchSettings.SearchResultsZipCodePageTitleFormula;
            else
                formula = searchSettings.SearchResultsBasePageTitleFormula;

            var title = formula
                .Replace("{" + LocationSearchResultsToken.KeywordSearched.ToString() + "}", Parameters.ContainsKey("LocationText") ? Parameters["LocationText"] : string.Empty)
                .Replace("{" + LocationSearchResultsToken.ZipCodeSearched.ToString() + "}", Parameters.ContainsKey("PostalCode") ? Parameters["PostalCode"] : string.Empty)
                .Replace("{" + LocationSearchResultsToken.PageNum.ToString() + "}", (viewSettings.PageNumber + 1).ToString(CultureInfo.InvariantCulture));

            return ApplyCommonTitleFormatting(title, searchSettings.SeoTitleReplacementValues);
        }
Exemplo n.º 2
0
        public string GetModel(ConvertServiceRequest request)
        {
            _locationContext = ResolveLocationContext(request);

            if (!string.IsNullOrEmpty(request.Data))
                _viewModel = CommonUtils.JsonDeserialize<AdminSettingsViewModel>(request.Data);
            else
                CreateInitialViewModel();

            // Handle special commands
            var command = request.Parameters.ContainsKey("Command") ? request.Parameters["Command"] : null;

            switch (command)
            {
                case "InheritSettings":
                    InheritSettings(_locationContext.Id, "Organizational Units");
                    InheritSettings(_locationContext.Id, "Lead Management");
                    _viewModel.SetSuccessMessage("Settings Successfully Inherited");
                    break;
                case "ChangeCmsType":
                    var existingGroup = _viewModel.SettingGroups.Single(g => g.Name == _cmsIntegrationSettingsGroupName);
                    var updatedGroup = BuildCmsIntegrationSettings(CommonUtils.GetFieldValue(existingGroup.Fields, "CmsType"));
                    existingGroup.Fields = updatedGroup.Fields;
                    return CommonUtils.JsonSerialize(_viewModel);
                case "RefreshSiteSearchIndex":
                    ProcessOneWayRequest(new UpdateAllLocationsG2RecordRequest());
                    _viewModel.SetSuccessMessage("The Site Search index is being updated in the background. Changes should become visible within a few minutes.");
                    return CommonUtils.JsonSerialize(_viewModel);
            }

            // Load latest settings
            _searchSettings = ProcessRequest<ReadOrgUnitSearchSettingsResponse>(new ReadOrgUnitSearchSettingsRequest() { OrgUnitContextId = _locationContext.Id });

            // Handle settings save request
            if (!string.IsNullOrEmpty(request.Data) && string.IsNullOrEmpty(command))
            {
                Save();
                _viewModel.SetSuccessMessage("Settings Successfully Saved");
            }

            LoadPage(request);

            return CommonUtils.JsonSerialize(_viewModel);
        }