public void Initialize(Voucher[] inVouchers, FeatureManager ftm) { _ftm = ftm; var vouchers = ftm.ReadUniqueVouchers(inVouchers); _totalVouchers = vouchers.Length; // feature per category likellihood _categCounts = vouchers.GroupBy(x => x.TagName).ToDictionary(x => x.Key, x => x.Count()); _featureLikellihood = vouchers.GroupBy(g => g.TagName) .SelectMany(y =>y.SelectMany(c => _ftm.ReadFeatures(c.OcrFeatures.ToList()).Select(f=>new Tuple<string,int>(y.Key,f.Item1)))) .GroupBy(x=>x.Item1) .ToDictionary(x=>x.Key,x=>x.GroupBy(y=>y.Item2).ToDictionary(z =>/*_ftm._featureById[*/z.Key/*]*/, z=> ((double)z.Count() + 1) / (x.Count() + _ftm._featureById.Count))); // user per category likellihood: p(categ,user) = p(categ|user)*p(user) int totalUsers = vouchers.Select(x => x.OrganizationId).Distinct().Count(); _userPrior = vouchers.GroupBy(x => x.OrganizationId).ToDictionary(x => x.Key, x => ((double)x.Count() + 1) / (_totalVouchers + totalUsers)); _categUserLikellihood = vouchers.GroupBy(g => g.OrganizationId) .ToDictionary(x => x.Key, x => x.GroupBy(y => y.TagName).ToDictionary(y => y.Key, y => ((double)y.Count() + 1) / (_categCounts[y.Key] + totalUsers))); //var tmp = vouchers.Where(x => x.OrganizationId == 3634).GroupBy(x => x.TagName).Select(x => new Tuple<string, double>(x.Key, ((double)x.Count() + 1) / (categCounts[x.Key] + totalUsers))).ToList(); }
public ActionResult Features() { ViewBag.Title = PresentationModel.GetViewTitleForTenant("Manage Features", this.Session.GetTenant()); FeatureManager featureManager = new FeatureManager(); List<FeatureTreeViewModel> features = new List<FeatureTreeViewModel>(); IQueryable<Feature> roots = featureManager.GetRoots(); roots.ToList().ForEach(f => features.Add(FeatureTreeViewModel.Convert(f, new IsFeatureInEveryoneGroupDelegate(IsFeatureInEveryoneGroup)))); return View(features.AsEnumerable<FeatureTreeViewModel>()); }
public async Task GetsAvailableVersionsForFeature() { // Arrange var documentStoreProvider = DocumentStoreProvider; await documentStoreProvider.StoreDbFeatureAsync("MyProduct", "MyGroup", "MyFirstFeature", "1.0.0"); await documentStoreProvider.StoreDbFeatureAsync("MyProduct", "MyGroup", "MyFirstFeature", "2.0.0"); WaitForIndexing(documentStoreProvider.Store); // Act var sut = new FeatureManager(documentStoreProvider, logger); var result = await sut.GetFeatureAvailableVersions("MyProduct", "MyGroup", "MyFirstFeature"); // Assert result.ShouldNotBeNull(); result.SequenceEqual(new[] { "2.0.0", "1.0.0" }).ShouldBeTrue(); }
public ActionResult Subjects_Select(long featureId) { FeaturePermissionManager featurePermissionManager = null; SubjectManager subjectManager = null; FeatureManager featureManager = null; try { featurePermissionManager = new FeaturePermissionManager(); subjectManager = new SubjectManager(); featureManager = new FeatureManager(); var feature = featureManager.FindById(featureId); var featurePermissions = new List <FeaturePermissionGridRowModel>(); if (feature == null) { return(View(new GridModel <FeaturePermissionGridRowModel> { Data = featurePermissions })); } var subjects = subjectManager.Subjects.ToList(); foreach (var subject in subjects) { var rightType = featurePermissionManager.GetPermissionType(subject.Id, feature.Id); var hasAccess = featurePermissionManager.HasAccess(subject.Id, feature.Id); featurePermissions.Add(FeaturePermissionGridRowModel.Convert(subject, featureId, rightType, hasAccess)); } return(View(new GridModel <FeaturePermissionGridRowModel> { Data = featurePermissions })); } finally { featureManager?.Dispose(); featurePermissionManager?.Dispose(); subjectManager?.Dispose(); } }
public async Task <IActionResult> Assign(string type, string data) { Dictionary <string, object> Values = null; if (type == "edition") { Values = (await EditionManager.GetFeatureValuesAsync(int.Parse(data))).ToDictionary(o => o.Name, o => (object)o.Value); } else if (type == "tenant") { Values = (await TenantManager.GetFeatureValuesAsync(int.Parse(data))).ToDictionary(o => o.Name, o => (object)o.Value); } var features = FeatureManager.GetAll(); ViewData["Features"] = features; ViewData["Values"] = Values; return(View()); }
public void Remove_Feature_ReturnsTrue() { // arrange string name = string.Empty; FeatureManager featureManager = new FeatureManager(); featureManager.FeatureRemoved += (s, e) => { name = e; }; featureManager.Add(new Feature <int>("F1")); // act bool r1 = featureManager.Remove("F1"); // assert Assert.AreEqual(true, r1); Assert.AreEqual("F1", name); }
public async Task CanGetAllDbFeatures() { // Arrange var documentStoreProvider = DocumentStoreProvider; await documentStoreProvider.StoreDbFeatureAsync("MyProduct", "MyGroup", "MyFirstFeature", "0.0.0"); await documentStoreProvider.StoreDbFeatureAsync("MyOtherProduct", "MyOtherGroup", "MySecondFeature", "0.0.0"); WaitForIndexing(documentStoreProvider.Store); // Act var sut = new FeatureManager(documentStoreProvider, logger); var result = await sut.GetAllDbFeatures(); // Assert result.ShouldNotBeNull(); result.FirstOrDefault().Title.ShouldBe("MyFirstFeature"); result.LastOrDefault().Title.ShouldBe("MySecondFeature"); }
public void GenerateSeedData() { using (FeatureManager featureManager = new FeatureManager()) using (FeaturePermissionManager featurePermissionManager = new FeaturePermissionManager()) using (OperationManager operationManager = new OperationManager()) { List <Feature> features = featureManager.FeatureRepository.Get().ToList(); Feature Search = features.FirstOrDefault(f => f.Name.Equals("Search")); if (Search == null) { Search = featureManager.Create("Search", "Search"); } if (!operationManager.Exists("MMM", "ShowMultimediaData", "*")) { operationManager.Create("MMM", "ShowMultimediaData", "*", Search); } } }
public void Add_OneFeature_ReturnsTrue() { // arrange FeatureBase featureBase = null; FeatureManager featureManager = new FeatureManager(); featureManager.FeatureAdded += (s, e) => { featureBase = e as FeatureBase; }; Feature <int> feature = new Feature <int>("F"); // act bool r = featureManager.Add(feature); // assert Assert.AreEqual(true, r); Assert.IsNotNull(featureBase); Assert.AreEqual("F", featureBase.Name); }
public ActionResult Create(UserCreateModel model) { if (ModelState.IsValid) { SubjectManager subjectManager = new SubjectManager(); User user = subjectManager.CreateUser(model.Username, model.Password, model.FullName, model.Email, model.SecurityQuestion, model.SecurityAnswer, model.AuthenticatorList.Id); // Feature FeatureManager featureManager = new FeatureManager(); Feature feature = featureManager.FeaturesRepo.Get(f => f.Name == "Search").FirstOrDefault(); // Permissions PermissionManager permissionManager = new PermissionManager(); permissionManager.CreateFeaturePermission(user.Id, feature.Id); return Json(new { success = true }); } return PartialView("_CreatePartial", model); }
/// <summary> /// The operation to query for similar shapes in the database. /// </summary> /// <param name="options">The options object which contains extra information /// which helps during the exeuction of this modus.</param> public static void Start(QueryOptions options) { if (options == null) { throw new ArgumentNullException(nameof(options)); } Logger.Log(I_StartProc_Query); FeatureManager manager = FeatureHandler.LoadFeatures(options.ShouldImport); QueryResult[] results = LoadQueryResults(false, manager, options); if (options.ShouldExport) { SaveQueries(results); } ShowQueryResults(results); Logger.Log(I_EndProc_Query); }
public async Task CanGetFeatureDescriptionsByProductAndGroupAsync() { // Arrange var documentStoreProvider = DocumentStoreProvider; await documentStoreProvider.StoreDbFeatureAsync("MyProduct", "Group1", "MyFirstFeature", "0.0.0"); await documentStoreProvider.StoreDbFeatureAsync("MyProduct", "Group2", "MySecondFeature", "0.0.0"); await documentStoreProvider.StoreDbFeatureAsync("MyOtherProduct", "Group1", "MyThirdFeature", "0.0.0"); WaitForIndexing(documentStoreProvider.Store); // Act var sut = new FeatureManager(documentStoreProvider, logger); var result = await sut.GetFeatureDescriptionsByProductAndGroupAsync("MyProduct", "Group1"); // Assert result.ShouldNotBeNull(); result.Count().ShouldBe(1); result.FirstOrDefault()?.Title.ShouldBe("MyFirstFeature"); }
private static void createSecuritySeedData() { #region Security // Authenticators AuthenticatorManager authenticatorManager = new AuthenticatorManager(); Authenticator a1 = authenticatorManager.CreateAuthenticator("local", "BExIS.Security.Services.Authentication.BuiltInAuthenticationManager", "BExIS.Security.Services", "", AuthenticatorType.Internal); Authenticator a2 = authenticatorManager.CreateAuthenticator("ldap test server", "BExIS.Security.Services.Authentication.LdapAuthenticationManager", "BExIS.Security.Services", "ldapHost:ldap.forumsys.com;ldapPort:389;ldapBaseDn:dc=example,dc=com;ldapSecure:false;ldapAuthUid:uid;ldapProtocolVersion:3", AuthenticatorType.External); // Security Questions SecurityQuestionManager securityQuestionManager = new SecurityQuestionManager(); SecurityQuestion sq1 = securityQuestionManager.CreateSecurityQuestion("What is the first name of the person you first kissed?"); SecurityQuestion sq2 = securityQuestionManager.CreateSecurityQuestion("What was your favorite place to visit as a child?"); SecurityQuestion sq3 = securityQuestionManager.CreateSecurityQuestion("What is the name of the place your wedding reception was held?"); SecurityQuestion sq4 = securityQuestionManager.CreateSecurityQuestion("In what city or town did you meet your spouse/partner?"); SecurityQuestion sq5 = securityQuestionManager.CreateSecurityQuestion("What was the make and model of your first car?"); SecurityQuestion sq6 = securityQuestionManager.CreateSecurityQuestion("What was the name of your first teacher?"); SecurityQuestion sq7 = securityQuestionManager.CreateSecurityQuestion("What is the name of your best friend from childhood?"); SecurityQuestion sq8 = securityQuestionManager.CreateSecurityQuestion("What color was your first bycicle?"); SecurityQuestion sq9 = securityQuestionManager.CreateSecurityQuestion("What was the first name of your manager at your first job?"); SecurityQuestion sq10 = securityQuestionManager.CreateSecurityQuestion("What was the name of your first pet?"); SecurityQuestion sq11 = securityQuestionManager.CreateSecurityQuestion("What was the name of your elementary/primary school?"); // Entities EntityManager entityManager = new EntityManager(); entityManager.CreateEntity("Dataset", "BExIS.Dlm.Entities.Data.Dataset", "BExIS.Dlm.Entities",true,true); // Subjects SubjectManager subjectManager = new SubjectManager(); Group everyone = subjectManager.CreateGroup("everyone", "everyone group", true); Group g1 = subjectManager.CreateGroup("Admin", "Admin"); User u1 = subjectManager.CreateUser("Administrator", "gWg2xG", "Admin", "*****@*****.**", sq1.Id, "Nothing", a1.Id); subjectManager.AddUserToGroup(u1.Id, g1.Id); // Tasks TaskManager taskManager = new TaskManager(); taskManager.CreateTask("SAM", "Account", "*"); taskManager.CreateTask("Site", "Nav", "*"); taskManager.CreateTask("Shell", "Home", "*"); taskManager.CreateTask("System", "Utils", "*"); taskManager.CreateTask("DCM", "Help", "*"); taskManager.CreateTask("DDM", "Help", "*"); taskManager.CreateTask("DIM", "Help", "*"); taskManager.CreateTask("RPM", "Help", "*"); taskManager.CreateTask("SAM", "Help", "*"); taskManager.CreateTask("Site", "ContactUs", "*"); taskManager.CreateTask("Site", "Impressum", "*"); taskManager.CreateTask("Site", "PrivacyPolicy", "*"); taskManager.CreateTask("Site", "Terms", "*"); //generic form for metadata taskManager.CreateTask("DCM", "Form", "*"); // Features FeatureManager featureManager = new FeatureManager(); Feature f1 = featureManager.CreateFeature("BExIS", "BExIS"); Feature f9 = featureManager.CreateFeature("Search", "Search", f1.Id); #region Data Planning Feature f18 = featureManager.CreateFeature("Data Planning Management", "Data Planning Management", f1.Id); Feature f13 = featureManager.CreateFeature("Datastructure Management", "Datastructure Management", f18.Id); #endregion #region Data Dissemination Feature f16 = featureManager.CreateFeature("Data Dissemination", "Data Dissemination", f1.Id); #endregion #region Data Collection Feature f10 = featureManager.CreateFeature("Data Collection", "Data Collection", f1.Id); Feature f11 = featureManager.CreateFeature("Dataset Creation", "Dataset Creation", f10.Id); Feature f12 = featureManager.CreateFeature("Dataset Upload", "Dataset Upload", f10.Id); Feature f17 = featureManager.CreateFeature("Metadata Management", "Metadata Management", f10.Id); #endregion #region admin Feature f2 = featureManager.CreateFeature("Administration", "Administration", f1.Id); Feature f3 = featureManager.CreateFeature("Users Management", "Users Management", f2.Id); Feature f4 = featureManager.CreateFeature("Groups Management", "Groups Management", f2.Id); Feature f6 = featureManager.CreateFeature("Feature Permissions", "Feature Permissions", f2.Id); Feature f5 = featureManager.CreateFeature("Data Permissions", "Data Permissions", f2.Id); Feature f7 = featureManager.CreateFeature("Search Management", "Search Management", f2.Id); Feature f8 = featureManager.CreateFeature("Dataset Maintenance", "Dataset Maintenance", f2.Id); #endregion Task t1 = taskManager.CreateTask("SAM", "Users", "*"); t1.Feature = f3; taskManager.UpdateTask(t1); Task t2 = taskManager.CreateTask("SAM", "Groups", "*"); t2.Feature = f4; taskManager.UpdateTask(t2); Task t3 = taskManager.CreateTask("SAM", "DataPermissions", "*"); t3.Feature = f5; taskManager.UpdateTask(t3); Task t4 = taskManager.CreateTask("SAM", "FeaturePermissions", "*"); t4.Feature = f6; taskManager.UpdateTask(t4); Task t5 = taskManager.CreateTask("DDM", "Admin", "*"); t5.Feature = f7; taskManager.UpdateTask(t5); Task t7 = taskManager.CreateTask("DDM", "Data", "*"); t7.Feature = f9; taskManager.UpdateTask(t7); Task t8 = taskManager.CreateTask("DDM", "Home", "*"); t8.Feature = f9; taskManager.UpdateTask(t8); Task t33 = taskManager.CreateTask("DDM", "CreateDataset", "*"); t33.Feature = f9; taskManager.UpdateTask(t33); Task t9 = taskManager.CreateTask("DCM", "CreateDataset", "*"); t9.Feature = f11; taskManager.UpdateTask(t9); Task t10 = taskManager.CreateTask("DCM", "CreateSelectDatasetSetup", "*"); t10.Feature = f11; taskManager.UpdateTask(t10); Task t11 = taskManager.CreateTask("DCM", "CreateSetMetadataPackage", "*"); t11.Feature = f11; taskManager.UpdateTask(t11); Task t12 = taskManager.CreateTask("DCM", "CreateSummary", "*"); t12.Feature = f11; taskManager.UpdateTask(t12); Task t15 = taskManager.CreateTask("DCM", "Push", "*"); t15.Feature = f12; taskManager.UpdateTask(t15); Task t16 = taskManager.CreateTask("DCM", "Submit", "*"); t16.Feature = f12; taskManager.UpdateTask(t16); Task t17 = taskManager.CreateTask("DCM", "SubmitDefinePrimaryKey", "*"); t17.Feature = f12; taskManager.UpdateTask(t17); Task t18 = taskManager.CreateTask("DCM", "SubmitGetFileInformation", "*"); t18.Feature = f12; taskManager.UpdateTask(t18); Task t19 = taskManager.CreateTask("DCM", "SubmitSelectAFile", "*"); t19.Feature = f12; taskManager.UpdateTask(t19); Task t20 = taskManager.CreateTask("DCM", "SubmitSpecifyDataset", "*"); t20.Feature = f12; taskManager.UpdateTask(t20); Task t21 = taskManager.CreateTask("DCM", "SubmitSummary", "*"); t21.Feature = f12; taskManager.UpdateTask(t21); Task t22 = taskManager.CreateTask("DCM", "SubmitValidation", "*"); t22.Feature = f12; taskManager.UpdateTask(t22); Task t23 = taskManager.CreateTask("RPM", "Home", "*"); t23.Feature = f18; taskManager.UpdateTask(t23); Task t24 = taskManager.CreateTask("RPM", "DataAttribute", "*"); t24.Feature = f18; taskManager.UpdateTask(t24); Task t25 = taskManager.CreateTask("RPM", "Unit", "*"); t25.Feature = f18; taskManager.UpdateTask(t25); Task t26 = taskManager.CreateTask("DIM", "Admin", "*"); t26.Feature = f16; taskManager.UpdateTask(t26); Task t27 = taskManager.CreateTask("DCM", "ImportMetadataStructure", "*"); t27.Feature = f17; taskManager.UpdateTask(t27); Task t28 = taskManager.CreateTask("DCM", "ImportMetadataStructureReadSource", "*"); t28.Feature = f17; taskManager.UpdateTask(t28); Task t29 = taskManager.CreateTask("DCM", "ImportMetadataStructureSelectAFile", "*"); t29.Feature = f17; taskManager.UpdateTask(t29); Task t30 = taskManager.CreateTask("DCM", "ImportMetadataStructureSetParameters", "*"); t30.Feature = f17; taskManager.UpdateTask(t30); Task t31 = taskManager.CreateTask("DCM", "ImportMetadataStructureSummary", "*"); t31.Feature = f17; taskManager.UpdateTask(t31); Task t32 = taskManager.CreateTask("SAM", "Dataset", "*"); t32.Feature = f8; taskManager.UpdateTask(t32); Task t35 = taskManager.CreateTask("RPM", "DataStructureSearch", "*"); t35.Feature = f13; taskManager.UpdateTask(t35); Task t36 = taskManager.CreateTask("RPM", "DataStructureEdit", "*"); t36.Feature = f13; taskManager.UpdateTask(t36); Task t37 = taskManager.CreateTask("RPM", "DataStructureIO", "*"); t37.Feature = f13; taskManager.UpdateTask(t37); Task t38 = taskManager.CreateTask("DCM", "ManageMetadataStructure", "*"); t38.Feature = f17; taskManager.UpdateTask(t38); // Feature Permissions PermissionManager permissionManager = new PermissionManager(); permissionManager.CreateFeaturePermission(g1.Id, f1.Id); //permissionManager.CreateFeaturePermission(everyone.Id, f9.Id); #endregion Security }
public ActionResult Register(AccountRegisterModel model) { if (ModelState.IsValid) { SubjectManager subjectManager = new SubjectManager(); User user = subjectManager.CreateUser(model.Username, model.Password, model.FullName, model.Email, model.SecurityQuestion, model.SecurityAnswer, model.AuthenticatorList.Id); LoggerFactory.LogData(user.Id.ToString(), typeof(User).Name, Vaiona.Entities.Logging.CrudState.Created); // Feature FeatureManager featureManager = new FeatureManager(); Feature feature = featureManager.FeaturesRepo.Get(f => f.Name == "Search").FirstOrDefault(); // Permissions PermissionManager permissionManager = new PermissionManager(); permissionManager.CreateFeaturePermission(user.Id, feature.Id); FormsAuthentication.SetAuthCookie(model.Username, false); return Json(new { success = true }); } return PartialView("_RegisterPartial", model); }
// set feature permission of the group "bexisUser" public void SetFeaturePermissions(long groupId, string[] featureNames) { FeatureManager featureManager = new FeatureManager(); PermissionManager permissionManager = new PermissionManager(); // never set administration features (this parent Id) long parentId = featureManager.FeaturesRepo.Get().Where(f => f.Name.Equals("Administration")).FirstOrDefault().Id; for (int i = 0; i < featureNames.Length; i++) { long featureId = featureManager.FeaturesRepo.Get(f => featureNames[i].Equals(f.Name) && !f.Parent.Id.Equals(parentId)).FirstOrDefault().Id; permissionManager.CreateFeaturePermission(groupId, featureId); } }
public static bool FeatureSwitch(this HtmlHelper helper, string featureName) { var featureManager = new FeatureManager(); return featureManager.GetSwitchSetting<bool>(featureName); }
public bool SetFeaturePublicity(long featureId, bool value) { FeatureManager featureManager = new FeatureManager(); PermissionManager permissionManager = new PermissionManager(); SubjectManager subjectManager = new SubjectManager(); Feature feature = featureManager.GetFeatureById(featureId); if (feature != null) { if (value) { permissionManager.CreateFeaturePermission(subjectManager.GetGroupByName("everyone").Id, feature.Id); } else { permissionManager.DeleteFeaturePermission(subjectManager.GetGroupByName("everyone").Id, feature.Id); } return true; } return false; }
public ActionResult Subjects_Select(long id) { FeatureManager featureManager = new FeatureManager(); // DATA Feature feature = featureManager.GetFeatureById(id); List<FeaturePermissionGridRowModel> featurePermissions = new List<FeaturePermissionGridRowModel>(); if (feature != null) { PermissionManager permissionManager = new PermissionManager(); SubjectManager subjectManager = new SubjectManager(); IQueryable<Subject> data = subjectManager.GetAllSubjects(); data.ToList().ForEach(s => featurePermissions.Add(FeaturePermissionGridRowModel.Convert(s, feature, permissionManager.GetFeaturePermissionType(s.Id, feature.Id), permissionManager.HasSubjectFeatureAccess(s.Id, feature.Id)))); } return View(new GridModel<FeaturePermissionGridRowModel> { Data = featurePermissions }); }
public ActionResult Subjects(long id) { ViewData["FeatureId"] = id; FeatureManager featureManager = new FeatureManager(); return PartialView("_SubjectsPartial"); }
// // GET: /Account/Register public ActionResult Register() { var featureManager = new FeatureManager(); if (featureManager.GetSwitchSetting<bool>("EnableNewRegistrationSystem")) { return View(); } return View("OldRegistrationPage"); }