public override async Task <IDisplayResult> EditAsync(ElasticSearchSettings section, BuildEditorContext context)
        {
            var user = _httpContextAccessor.HttpContext?.User;

            if (!await _authorizationService.AuthorizeAsync(user, Permissions.ManageElasticSearchSettings))
            {
                return(null);
            }

            return(Initialize <ElasticSearchSettingsViewModel>("ElasticSearchSettings_Edit", async model =>
            {
                model.ClusterUrl = section.ClusterUrl;
                model.SearchIndex = section.SearchIndex;
                var client = await _elasticIndexManager.Client();
                IEnumerable <string> elasticIndices = client.Indices.Stats(new IndicesStatsRequest( )).Indices.Select(x => x.Key).Distinct();
                model.SearchIndexes = elasticIndices;
            }).Location("Content:2").OnGroup(GroupId));
        }
Ejemplo n.º 2
0
        public async Task <ActionResult> Index()
        {
            var viewModel = new AdminIndexViewModel();
            var client    = await _elasticIndexManager.Client();

            IEnumerable <string> elasticIndices = client.Indices.Stats(new IndicesStatsRequest( )).Indices.Select(x => x.Key).Distinct();

            viewModel.Indexes = elasticIndices.Select(s => new IndexViewModel {
                Name = s
            }).ToArray();

            return(View(viewModel));
        }