Пример #1
0
        async Task SendPage(String pageContent)
        {
            AppTitleModel appTitle = await _dbContext.LoadAsync <AppTitleModel>(_host.CatalogDataSource, "a2ui.[AppTitle.Load]");

            StringBuilder layout = new StringBuilder(_localizer.Localize(null, ResourceHelper.InitLayoutHtml));

            layout.Replace("$(Lang)", CurrentLang);
            layout.Replace("$(LayoutScripts)", _host.CustomAppScripts());
            layout.Replace("$(Partial)", pageContent);
            layout.Replace("$(Title)", appTitle.AppTitle);
            layout.Replace("$(SiteMeta)", Request.GetSiteMetaTags(_host));
            _host.ReplaceMacros(layout);

            StringBuilder script = new StringBuilder(ResourceHelper.AppLinksScript);

            script.Replace("$(PageData)", $"{{ version: '{_host.AppVersion}', title: '{appTitle?.AppTitle}', subtitle: '{appTitle?.AppSubTitle}', multiTenant: false, registation: false }}");
            script.Replace("$(Locale)", ResourceHelper.LocaleLibrary(_userLocale.Language));
            script.Replace("$(Utils)", ResourceHelper.PageUtils);
            script.Replace("$(AppLinks)", _localizer.Localize(null, _host.AppLinks()));
            layout.Replace("$(PageScript)", script.ToString());

            Response.Write(layout.ToString());
        }