public virtual async Task <ActionResult> AddBadgePost(BadgeEditViewModel badgeEditViewModel, HttpPostedFileBase badgeImage) { ClearModelErrors(); var badgeEdit = BadgeEdit.CreateBadge(); badgeEditViewModel.Badge = badgeEdit as BadgeEdit; if (badgeImage != null) { var bytes = badgeImage.InputStream.GetBytes(); badgeEditViewModel.Badge.SetBadgeImage(bytes); } SetActivitiesToAdd(badgeEditViewModel); if (await SaveObjectAsync(badgeEditViewModel.Badge, be => { UpdateModel(be, "Badge"); CheckForValidImage(be); if (be.Priority == 0) { be.Priority = Int32.MaxValue; } }, true)) { return(RedirectToAction(Mvc.BadgeManager.Index().Result)); } return(await AddBadge()); }
public async Task GetBadgeEditById() { var activityEdit = await BadgeEdit.GetBadgeEditByIdAsync(1); Assert.IsNotNull(activityEdit); Assert.AreEqual(1, activityEdit.Id); }
private void CheckForValidImage(BadgeEdit be) { // We need to handle it this way because the CSLA Model Binder doesn't handle private setters. if (be.BrokenRulesCollection.Any()) { var imagePathRules = be.BrokenRulesCollection.Where(br => br.OriginProperty == BadgeEdit.ImagePathProperty.Name); foreach (var imagePathRule in imagePathRules) { ModelState.AddModelError(imagePathRule.Property, imagePathRule.Description); } } }
public async virtual Task <ActionResult> AddBadge() { var allActivities = await ActivityCollection.GetAllActivitiesAsync(false); var badgeEdit = BadgeEdit.CreateBadge(); var badgeEditViewModel = new BadgeEditViewModel(allActivities); badgeEditViewModel.Badge = badgeEdit as BadgeEdit; badgeEditViewModel.Badge.Priority = 0; return(View(Mvc.BadgeManager.Views.AddBadge, badgeEditViewModel)); }
public async Task DeleteBadge() { const string newName = "Test Name"; const string newDescription = "Test Description"; var badgeEdit = CreateBadgeEdit(newName, newDescription); var id = badgeEdit.Id; badgeEdit.Delete(); badgeEdit.Save(); badgeEdit = ((IBadgeEdit)await BadgeEdit.GetBadgeEditByIdAsync(id)); Assert.Fail("Badge Edit Fail should not return."); }
public async Task SetBadgeImage() { var builder = new ContainerBuilder(); builder.RegisterType(typeof(BadgeEdit)).As(typeof(IBadgeEdit)); builder.RegisterType(typeof(BadgeEditDAL)).As(typeof(IBadgeEditDAL)); builder.RegisterGeneric(typeof(ObjectFactory <>)).As(typeof(IObjectFactory <>)); IoC.Container = builder.Build(); var badge = await BadgeEdit.GetBadgeEditByIdAsync(1); var image = new byte[] { 0, 1, 2, 4 }; badge.SetBadgeImage(image); Assert.AreEqual(string.Empty, badge.ImagePath); }
private IBadgeEdit CreateBadgeEdit(string newName, string newDescription) { var badgeEdit = BadgeEdit.CreateBadge(); badgeEdit.Name = newName; badgeEdit.Description = newDescription; badgeEdit.Tagline = "dsfds"; badgeEdit.Priority = 5; var badgeActivity = new BadgeActivityEdit(); badgeActivity.ActivityId = 1; badgeEdit.BadgeActivities.Add(badgeActivity); badgeEdit = (IBadgeEdit)badgeEdit.Save(); return(badgeEdit); }
public virtual async Task <ActionResult> EditBadge(int id) { var allActivities = await ActivityCollection.GetAllActivitiesAsync(false); var badgeEdit = await BadgeEdit.GetBadgeEditByIdAsync(id); if (BusinessRules.HasPermission(AuthorizationActions.EditObject, badgeEdit)) { var badgeEditViewModel = new BadgeEditViewModel(allActivities, badgeEdit.BadgeActivities); badgeEditViewModel.Badge = badgeEdit as BadgeEdit; if (badgeEditViewModel.Badge.Priority == Int32.MaxValue) { badgeEditViewModel.Badge.Priority = 0; } return(View(Mvc.BadgeManager.Views.EditBadge, badgeEditViewModel)); } return(RedirectToAction(Mvc.Error.AccessDenied())); }
public virtual async Task <ActionResult> EditBadgePost(int id, BadgeEditViewModel badgeEditViewModel, HttpPostedFileBase badgeImage) { badgeEditViewModel.Badge = await BadgeEdit.GetBadgeEditByIdAsync(id) as BadgeEdit; if (badgeImage != null) { var bytes = badgeImage.InputStream.GetBytes(); badgeEditViewModel.Badge.SetBadgeImage(bytes); } SetActivitiesToAdd(badgeEditViewModel); SetActivitiesToRemove(badgeEditViewModel); TryUpdateModel(badgeEditViewModel.Badge, "Badge"); CheckForValidImage(badgeEditViewModel.Badge); if (await SaveObjectAsync(badgeEditViewModel.Badge, true)) { return(RedirectToAction(Mvc.BadgeManager.Index().Result)); } return(await EditBadge(id)); }
public async Task UpdateBadge() { var newName = "TestName"; var badgeEdit = await BadgeEdit.GetBadgeEditByIdAsync(1); var oldName = badgeEdit.Name; badgeEdit.Name = newName; using (var fileStream = System.IO.File.OpenRead(@"..\..\1537400.jpg")) { var buffer = new byte[fileStream.Length]; fileStream.Read(buffer, 0, (int)(fileStream.Length - 1)); badgeEdit.SetBadgeImage(buffer); } badgeEdit = (IBadgeEdit)badgeEdit.Save(); Assert.AreEqual(newName, badgeEdit.Name); //reset badgeEdit.Name = oldName; badgeEdit.Save(); }
/// <summary> /// Initializes a new instance of the <see cref="BadgeEditViewModel"/> class. /// </summary> public BadgeEditViewModel() { //SelectedActivityIds = new List<int>(); this.Badge = ((BadgeEdit)BadgeEdit.CreateBadge()); }