private ConsentViewModel CreateConsentViewModel( ConsentInputModel model, string returnUrl, AuthorizationRequest request, Client client, Models.Resources resources) { var vm = new ConsentViewModel(); vm.RememberConsent = model?.RememberConsent ?? true; vm.ScopesConsented = model?.ScopesConsented ?? Enumerable.Empty <string>(); vm.ReturnUrl = returnUrl; vm.ClientName = client.ClientName; vm.ClientUrl = client.ClientUri; vm.ClientLogoUrl = client.LogoUri; vm.AllowRememberConsent = client.AllowRememberConsent; vm.IdentityScopes = resources.IdentityResources.Select(x => CreateScopeViewModel(x, vm.ScopesConsented.Contains(x.Name) || model == null)).ToArray(); vm.ResourceScopes = resources.ApiResources.SelectMany(x => x.Scopes).Select(x => CreateScopeViewModel(x, vm.ScopesConsented.Contains(x.Name) || model == null)).ToArray(); if (ConsentOptions.EnableOfflineAccess && resources.OfflineAccess) { vm.ResourceScopes = vm.ResourceScopes.Union(new ScopeViewModel[] { GetOfflineAccessScope(vm.ScopesConsented.Contains(IdentityServerConstants.StandardScopes.OfflineAccess) || model == null) }); } return(vm); }
public bool canCarry(Models.Resources toAcquire) { return((toAcquire.Food > 0 && toAcquire.Food + Resources.Food < maxResources.Food) || (toAcquire.Stone > 0 && toAcquire.Stone + Resources.Stone < maxResources.Stone) || (toAcquire.Wood > 0 && toAcquire.Wood + Resources.Wood < maxResources.Wood) || (toAcquire.Gold > 0 && toAcquire.Gold + Resources.Gold < maxResources.Gold)); }
public void Carry(Models.Resources toAcquire) { this.Resources.Food += toAcquire.Food; this.Resources.Stone += toAcquire.Stone; this.Resources.Wood += toAcquire.Wood; this.Resources.Gold += toAcquire.Gold; }
/// <summary> /// Gets all resources. /// </summary> /// <returns></returns> public Task <Models.Resources> GetAllResourcesAsync() { var identity = _context.IdentityResources .Include(x => x.UserClaims); var apis = _context.ApiResources .Include(x => x.Secrets) .Include(x => x.Scopes) .ThenInclude(s => s.UserClaims) .Include(x => x.UserClaims) .Include(x => x.Properties) .AsNoTracking(); var result = new Models.Resources( identity.ToArray().Select(x => x.ToModel()).AsEnumerable(), apis.ToArray().Select(x => x.ToModel()).AsEnumerable()); _logger.LogDebug("Found {scopes} as all scopes in database", result.IdentityResources.Select(x => x.Name) .Union(result.ApiResources.SelectMany(x => x.Scopes).Select(x => x.Name))); return(Task.FromResult(result)); }
public void SetMaxResources(Models.Resources resources) { this.maxResources = resources; }