public CategoriesPresenter(IRolesCache rolesCache, ICategoriesCache categoriesCache, IAuthorizationService authorizationService, OperationKeysContainer operationKeysContainer) { OperationKeys = operationKeysContainer; this.authorizationService = authorizationService; this.categoriesCache = categoriesCache; this.rolesCache = rolesCache; }
public ActivitiesController( OperationKeysContainer operationKeysContainer, ICategoriesCache categoriesCache, IAuthorizationService authorizationService, IActivitiesPresenter activitiesPresenter, IServiceProvider serviceProvider) : base(serviceProvider) { OperationKeys = operationKeysContainer; this.categoriesCache = categoriesCache; this.authorizationService = authorizationService; this.activitiesPresenter = activitiesPresenter; }
public BlogController(IOptions <BlogOptions> blogOptions, IAuthorizationService authorizationService, ICategoriesCache categoriesCache, OperationKeysContainer operationKeysContainer, IBlogPresenter blogPresenter, IServiceProvider serviceProvider) : base(serviceProvider) { OperationKeys = operationKeysContainer; this.blogOptions = blogOptions.Value; this.authorizationService = authorizationService; this.categoriesCache = categoriesCache; this.blogPresenter = blogPresenter; }
public CategoriesPresenter( IRolesCache rolesCache, ICategoriesCache categoriesCache, IOptionsMonitor <GlobalOptions> globalOptions, IAuthorizationService authorizationService, OperationKeysContainer operationKeysContainer) { OperationKeys = operationKeysContainer; this.authorizationService = authorizationService; this.categoriesCache = categoriesCache; this.rolesCache = rolesCache; this.globalOptions = globalOptions; }
public ForumController(IOptions <ForumOptions> forumOptions, IAuthorizationService authorizationService, ICategoriesCache categoriesCache, IContentCache contentCache, OperationKeysContainer operationKeysContainer, IForumPresenter forumPresenter, IServiceProvider serviceProvider) : base(serviceProvider) { OperationKeys = operationKeysContainer; this.forumPresenter = forumPresenter; this.forumOptions = forumOptions.Value; this.authorizationService = authorizationService; this.categoriesCache = categoriesCache; }
public ArticlesController( IOptions <ArticlesOptions> articlesOptions, IAuthorizationService authorizationService, ICategoriesCache categoriesCache, OperationKeysContainer operationKeysContainer, IArticlesPresenter articlesPresenter, IServiceProvider serviceProvider) : base(serviceProvider) { OperationKeys = operationKeysContainer; this.articlesOptions = articlesOptions.Value; this.authorizationService = authorizationService; this.categoriesCache = categoriesCache; this.articlesPresenter = articlesPresenter; }
public CommentsController( IMaterialsManager materialsManager, CommentsAuthorization commentsAuthorization, OperationKeysContainer operationKeys, ICommentsManager commentsManager, IAuthorizationService authorizationService, ICommentsPresenter commentsPresenter, IServiceProvider serviceProvider) : base(serviceProvider) { OperationKeys = operationKeys; this.commentsAuthorization = commentsAuthorization; this.materialsManager = materialsManager; this.commentsManager = commentsManager; this.authorizationService = authorizationService; this.commentsPresenter = commentsPresenter; }
private void SeedOperationKeys() { Console.WriteLine("OperationKeys"); var keys = OperationKeysContainer.GetAllOperationKeys(); foreach (var key in keys) { var operationKey = new OperationKey { OperationKeyId = dataContainer.NextOperationKeyId(), Name = key }; dataContainer.OperationKeys.Add(operationKey); } }
public ArticlesController( IOptionsMonitor <ArticlesOptions> articlesOptions, IAuthorizationService authorizationService, ICategoriesCache categoriesCache, OperationKeysContainer operationKeysContainer, IArticlesPresenter articlesPresenter, IMaterialsManager materialManager, MaterialsAuthorization materialsAuthorization, IServiceProvider serviceProvider) : base(serviceProvider) { OperationKeys = operationKeysContainer; this.articlesOptions = articlesOptions; this.authorizationService = authorizationService; this.categoriesCache = categoriesCache; this.articlesPresenter = articlesPresenter; this.materialManager = materialManager; this.materialsAuthorization = materialsAuthorization; }
public MaterialsController( MaterialsAuthorization materialsAuthorization, ICategoriesCache categoriesCache, IMaterialsManager materialsManager, IMaterialsPresenter materialsPresenter, IMaterialsVisitsCounterCache materialsVisitsCounterCache, ISectionsCache sectionsCache, IServiceProvider serviceProvider, OperationKeysContainer operationKeysContainer, IAuthorizationService authorizationService) : base(serviceProvider) { this.materialsAuthorization = materialsAuthorization; this.categoriesCache = categoriesCache; this.materialsManager = materialsManager; this.materialsPresenter = materialsPresenter; this.materialsVisitsCounterCache = materialsVisitsCounterCache; this.sectionsCache = sectionsCache; this.serviceProvider = serviceProvider; this.operationKeysContainer = operationKeysContainer; this.authorizationService = authorizationService; }
public void Seed(string jsonText) { IList <string> allSuperKeys = OperationKeysContainer.GetAllSuperKeys(); JObject rolesJson = JObject.Parse(jsonText); var errors = schema.Validate(rolesJson); if (errors != null && errors.Count > 0) { throw new Exception(string.Join(@"\n\n\n", errors)); } int id = 0; int categoryAccessId = 0; foreach (JProperty jProp in rolesJson.Properties()) { JObject userGroupJson = (JObject)jProp.Value; id++; if (!((IDictionary <string, JToken>)userGroupJson).ContainsKey("Title")) { throw new Exception("Can not find category title"); } var roleName = jProp.Name; Role role = new Role { Id = id, Name = roleName, NormalizedName = Normalizer.Normalize(roleName), Title = (string)userGroupJson["Title"], IsSuper = ((IDictionary <string, JToken>)userGroupJson).ContainsKey("IsSuper") && (bool)userGroupJson["IsSuper"], SortNumber = id }; roles.Add(role); if (!userGroupJson.TryGetValue("Categories", out var categoriesAccessJsonList)) { continue; } foreach (var categoriesAccessJson in categoriesAccessJsonList) { string name = (string)categoriesAccessJson["Category"]; if (!categories.ContainsKey(name)) { throw new Exception("No such category: " + name); } Category category = categories[name]; categoryAccessId++; CategoryAccess categoryAccess = new CategoryAccess { Id = categoryAccessId, CategoryId = category.Id, RoleId = role.Id }; if (role.CategoryAccesses == null) { role.CategoryAccesses = new List <CategoryAccess>(); } role.CategoryAccesses.Add(categoryAccess); categoryAccesses.Add(categoryAccess); var operationKeysJsonObject = (JObject)categoriesAccessJson["OperationKeys"]; foreach (var operationKeyJson in operationKeysJsonObject.Properties()) { string keyName = operationKeyJson.Name; if (!role.IsSuper && allSuperKeys.Contains(keyName)) { throw new Exception( $"Ordinary UserGroup '{role.Name}' can not contain IsSuper key '{keyName}'"); } if (!operationKeys.ContainsKey(keyName)) { throw new Exception($"No such key in registered keys '{keyName}'"); } var operationKey = operationKeys[keyName]; CategoryOperationAccess categoryOperationAccess = new CategoryOperationAccess { CategoryAccessId = categoryAccess.Id, OperationKeyId = operationKey.OperationKeyId, Access = (bool)operationKeyJson.Value }; categoryOperationAccesses.Add(categoryOperationAccess); } } } }