public IActionResult Index()
        {
            var pageViewModel = new Models.PageViewModel()
            {
                PageTitle = "Home",
                Branding  = "ESFA"
            };

            return(View(pageViewModel));
        }
        public IActionResult Privacy()
        {
            var pageViewModel = new Models.PageViewModel()
            {
                PageTitle = "Privacy Policy",
                Branding  = "ESFA"
            };

            return(View(pageViewModel));
        }
        private async Task SetApplicationContextAsync(string applicationName)
        {
            var applications = await _applicationManagementService.GetApplications();

            _applicationService.Application = applications.FirstOrDefault(f => string.Compare(f.Name, applicationName, true) == 0);

            ViewData["CorrelationId"] = _correlationContextAccessor.CorrelationContext.CorrelationId;

            _logger.LogInformation($"Loaded application for name: {applicationName}: {_applicationService.Application.MainMenuText}: {_correlationContextAccessor.CorrelationContext.CorrelationId}");

            _pageViewModel = MapApplicationToPageViewModel(_applicationService.Application);

            _applicationService.BearerToken    = (User.Identity.IsAuthenticated ? await HttpContext.GetTokenAsync("id_token") : null);
            _applicationService.User           = User;
            _applicationService.RequestBaseUrl = string.Format("{0}://{1}{2}", Request.Scheme, Request.Host, Url.Content("~"));

            if (_applicationService.Application == null)
            {
                ModelState.AddModelError(string.Empty, "Internal error: Missing Application definition");
            }
            else
            {
                if (string.IsNullOrEmpty(_applicationService.Application.RootUrl))
                {
                    ModelState.AddModelError(string.Empty, $"Application context error: ({_applicationService.Application.Title}) Missing RootUrl definition");
                }

                if (string.IsNullOrEmpty(_applicationService.Application.HealthCheckUrl))
                {
                    ModelState.AddModelError(string.Empty, $"Application context error: ({_applicationService.Application.Title}) Missing HealthCheckUrl definition");
                }

                if (string.IsNullOrEmpty(_applicationService.Application.EntrypointUrl))
                {
                    ModelState.AddModelError(string.Empty, $"Application context error: ({_applicationService.Application.Title}) Missing EntrypointUrl definition");
                }

                if (_applicationService.Application.ShowSideBar && string.IsNullOrEmpty(_applicationService.Application.SidebarUrl))
                {
                    ModelState.AddModelError(string.Empty, $"Application context error: ({_applicationService.Application.Title}) Missing SidebarUrl definition");
                }
            }

            if (ModelState.IsValid && !string.IsNullOrEmpty(_applicationService.Application.HealthCheckUrl))
            {
                await _applicationService.HeathCheckAsync();

                if (!_applicationService.Health.IsHealthy)
                {
                    ModelState.AddModelError(string.Empty, $"{_applicationService.Health.UnHealthyClue}: ({_applicationService.Application.Title})");
                }
            }
        }
        private Models.PageViewModel MapApplicationToPageViewModel(Dto.ApplicationDto application)
        {
            // this could be managed by AutoMapper if we add it's NuGet - but so far this is the only mapping requirement.
            // if AutoMapper is added, then this method should be replaced with a mapper operation
            var pageViewModel = new Models.PageViewModel()
            {
                LayoutName = application?.LayoutName,
                PageTitle  = application?.Title,
                Branding   = application?.Branding
            };

            return(pageViewModel);
        }
Ejemplo n.º 5
0
        // GET: Contents/Edit/5

        public ActionResult Edit(int id)
        {
            if (user == null)
            {
                return(RedirectToAction("Login", "Account"));
            }

            List <Content> co = datas.Contents.Where(t => t.pageId == id).ToList();

            Models.PageViewModel gelen = new Models.PageViewModel {
                pge         = datas.Pages.ToList(),
                contenttext = datas.Contents.Where(t => t.ID == id).FirstOrDefault().contenttext,
                status      = datas.Contents.Where(t => t.ID == id).FirstOrDefault().status,
                pageId      = datas.Contents.Where(t => t.ID == id).FirstOrDefault().pageId,
            };


            ViewBag.id = id;
            return(View(gelen));
        }
        private async Task SetApplicationContextAsync(string applicationName)
        {
            _applicationService.Application = _registeredApplications.Applications?.FirstOrDefault(f => string.Compare(f.Name, applicationName, true) == 0);

            _logger.LogInformation($"Loaded application for name: {applicationName}: {_applicationService.Application.MainMenuText}");

            _pageViewModel = MapApplicationToPageViewModel(_applicationService.Application);

            _applicationService.BearerToken = (User.Identity.IsAuthenticated ? await HttpContext.GetTokenAsync("id_token") : null);

            if (User.Identity.IsAuthenticated && string.IsNullOrEmpty(_applicationService.BearerToken))
            {
                var header = HttpContext.Request.Headers.FirstOrDefault(f => f.Key == "Authorization");

                if (header.Key != null)
                {
                    var parts = header.Value.First().Split(" ");

                    if (parts.Length > 1)
                    {
                        _applicationService.BearerToken = parts[1];
                    }
                }
            }
            //              logger.Log(LogLevel.Information, $"Added BearerToken: {_applicationService.BearerToken}");

            _applicationService.User           = User;
            _applicationService.RequestBaseUrl = string.Format("{0}://{1}{2}", Request.Scheme, Request.Host, Url.Content("~"));

            if (_applicationService.Application == null)
            {
                ModelState.AddModelError(string.Empty, "Internal error: Missing Application definition");
            }
            else
            {
                if (string.IsNullOrEmpty(_applicationService.Application.RootUrl))
                {
                    ModelState.AddModelError(string.Empty, $"Application context error: ({_applicationService.Application.Title}) Missing RootUrl definition");
                }

                if (string.IsNullOrEmpty(_applicationService.Application.HealthCheckUrl))
                {
                    ModelState.AddModelError(string.Empty, $"Application context error: ({_applicationService.Application.Title}) Missing HealthCheckUrl definition");
                }

                if (string.IsNullOrEmpty(_applicationService.Application.EntrypointUrl))
                {
                    ModelState.AddModelError(string.Empty, $"Application context error: ({_applicationService.Application.Title}) Missing EntrypointUrl definition");
                }

                if (_applicationService.Application.ShowSideBar && string.IsNullOrEmpty(_applicationService.Application.SidebarUrl))
                {
                    ModelState.AddModelError(string.Empty, $"Application context error: ({_applicationService.Application.Title}) Missing SidebarUrl definition");
                }
            }

            if (ModelState.IsValid && !string.IsNullOrEmpty(_applicationService.Application.HealthCheckUrl))
            {
                await _applicationService.HeathCheckAsync();

                if (!_applicationService.Health.IsHealthy)
                {
                    ModelState.AddModelError(string.Empty, $"{_applicationService.Health.UnHealthyClue}: ({_applicationService.Application.Title})");
                }
            }
        }