public virtual async Task <DefaultPageModel> GetDefaultPageModelAsync(CancellationToken cancellationToken) { AppEnvironment activeAppEnvironment = _appEnvironmentProvider.GetActiveAppEnvironment(); DefaultPageModel defaultPageModel = new DefaultPageModel { AppVersion = activeAppEnvironment.AppInfo.Version, DebugMode = activeAppEnvironment.DebugMode, AppName = activeAppEnvironment.AppInfo.Name }; UserSetting userSetting = _usersSettingsProvider == null ? null : await _usersSettingsProvider.GetCurrentUserSettingAsync(cancellationToken).ConfigureAwait(false); string theme = userSetting?.Theme ?? activeAppEnvironment.AppInfo.DefaultTheme; string culture = userSetting?.Culture ?? activeAppEnvironment.AppInfo.DefaultCulture; string desiredTimeZone = userSetting?.DesiredTimeZone ?? activeAppEnvironment.AppInfo.DefaultTimeZone; string desiredTimeZoneValue = null; if (culture == null || string.Equals(culture, "Auto", StringComparison.OrdinalIgnoreCase)) { culture = "EnUs"; } if (desiredTimeZone != null && !string.Equals(desiredTimeZone, "Auto", StringComparison.CurrentCulture)) { desiredTimeZoneValue = desiredTimeZone; } string appTitle = activeAppEnvironment.Cultures.Any() ? activeAppEnvironment.Cultures .ExtendedSingle($"Finding culture {culture} in environment {activeAppEnvironment.Name}", c => c.Name == culture).Values.ExtendedSingle($"Finding AppTitle in culture {culture}", v => string.Equals(v.Name, "AppTitle", StringComparison.OrdinalIgnoreCase)).Title : string.Empty; defaultPageModel.AppTitle = appTitle; defaultPageModel.Culture = culture; defaultPageModel.DesiredTimeZoneValue = desiredTimeZoneValue; defaultPageModel.Theme = theme; defaultPageModel.EnvironmentConfigsJSON = _contentFormatter.Serialize(activeAppEnvironment .Configs.Where(c => c.AccessibleInClientSide == true) .Select(c => new { value = c.Value, key = c.Key })); defaultPageModel.BaseHref = activeAppEnvironment.GetHostVirtualPath(); return(defaultPageModel); }
public virtual DefaultPageModel GetDefaultPageModel() { AppEnvironment activeAppEnvironment = _appEnvironmentProvider.GetActiveAppEnvironment(); DefaultPageModel defaultPageModel = new DefaultPageModel { AppVersion = activeAppEnvironment.AppInfo.Version, DebugMode = activeAppEnvironment.DebugMode, AppName = activeAppEnvironment.AppInfo.Name }; UserSetting userSetting = _usersSettingsProvider?.GetCurrentUserSetting(); string theme = userSetting?.Theme ?? activeAppEnvironment.AppInfo.DefaultTheme; string culture = userSetting?.Culture ?? activeAppEnvironment.AppInfo.DefaultCulture; string desiredTimeZone = userSetting?.DesiredTimeZone ?? activeAppEnvironment.AppInfo.DefaultTimeZone; string desiredTimeZoneValue = null; if (culture == null || string.Equals(culture, "Auto", StringComparison.OrdinalIgnoreCase)) { culture = "EnUs"; } if (desiredTimeZone != null && !string.Equals(desiredTimeZone, "Auto", StringComparison.CurrentCulture)) { desiredTimeZoneValue = desiredTimeZone; } string appTitle = activeAppEnvironment.Cultures.Any() ? activeAppEnvironment.Cultures .Single(c => c.Name == culture).Values.Single(v => string.Equals(v.Name, "AppTitle", StringComparison.OrdinalIgnoreCase)).Title : string.Empty; defaultPageModel.AppTitle = appTitle; defaultPageModel.Culture = culture; defaultPageModel.DesiredTimeZoneValue = desiredTimeZoneValue; defaultPageModel.Theme = theme; defaultPageModel.EnvironmentConfigsJSON = _contentFormatter.Serialize(activeAppEnvironment .Configs.Where(c => c.AccessibleInClientSide == true) .Select(c => new { value = c.Value, key = c.Key })); defaultPageModel.BaseHref = activeAppEnvironment.GetConfig("ClientHostVirtualPath", "/"); return(defaultPageModel); }
private DefaultPageModel DefaultModelCreate() { DefaultPageModel pageModel = null; if (!string.IsNullOrEmpty(User.Identity.Name)) { pageModel = new DefaultPageModel(); pageModel.User = new UserModel { Login = User.Identity.Name, Permissions = new PermissionModel { Admin = true } }; } return(pageModel); }
public virtual void Configure(IAppBuilder owinApp) { owinApp.Map("/ClientAppProfile", innerOwinApp => { innerOwinApp.UseXContentTypeOptions(); innerOwinApp.Use <OwinNoCacheResponseMiddleware>(); innerOwinApp.Run(async context => { IDependencyResolver dependencyResolver = context.GetDependencyResolver(); IDefaultPageModelProvider defaultPageModelProvider = dependencyResolver.Resolve <IDefaultPageModelProvider>(); DefaultPageModel model = await defaultPageModelProvider.GetDefaultPageModelAsync(context.Request.CallCancelled); string clientAppProfile = $@" clientAppProfile = {{ theme: ""{model.Theme}"", culture: ""{model.Culture}"", version: ""{model.AppVersion}"", isDebugMode: {model.DebugMode.ToString().ToLowerInvariant()}, appTitle: ""{model.AppTitle}"", appName: ""{model.AppName}"", desiredTimeZone: ""{model.DesiredTimeZoneValue}"", environmentConfigs: {model.EnvironmentConfigsJson} }}; "; context.Response.ContentType = "text/javascript; charset=utf-8"; await context.Response.WriteAsync(clientAppProfile, context.Request.CallCancelled); }); }); }
public IActionResult Payment() { DefaultPageModel model = DefaultModelCreate(); return(View(model)); }