public async Task Run() { SponsorLevel expected = new SponsorLevel( 1, 2, $"Sponsor Level 3", 400, true, false, true, 5, 60, 70, false, true, false ); this.Database.AddJsonResult( JsonConvert.SerializeObject(new[] { expected }) ); TestLogger log = new TestLogger(); IActionResult actual = await this.Controller.Run(null, expected.Id, log); Assert.IsType <OkObjectResult>(actual); Assert.Equal( expected, (actual as OkObjectResult).Value ); }
public void JsonDeserializer_ItemsOutOfOrder() { SponsorLevel expected = CreateSponsorLevel(2015); string json = $@"{{'postconemail':{expected.PostConEmail.ToString().ToLower()},'midconemail':{expected.MidConEmail.ToString().ToLower()},'preconemail':{expected.PreConEmail.ToString().ToLower()},'cost':{expected.Cost},'displayinsidebar':{expected.DisplayInSidebar.ToString().ToLower()},'displayinemails':{expected.DisplayInEmails.ToString().ToLower()},'tickets':{expected.Tickets},'discount':{expected.Discount},'name':'{expected.Name}','displayorder':{expected.DisplayOrder},'id':{expected.Id},'timeonscreen':{expected.TimeOnScreen},'displaylink':{expected.DisplayLink.ToString().ToLower()}}}";; SponsorLevel actual = JsonConvert.DeserializeObject <SponsorLevel>(json); Assert.Equal(expected, actual); }
public async Task <ActionResult> DeleteConfirmed(string id) { SponsorLevel sponsorLevel = await db.SponsorLevels.FindAsync(id); sponsorLevel.Deleted = true; db.Entry(sponsorLevel).State = EntityState.Modified; await db.SaveChangesAsync(); return(RedirectToAction("Index")); }
public async Task <ActionResult> Edit([Bind(Include = "Id,Name,Rank")] SponsorLevel sponsorLevel) { if (ModelState.IsValid) { db.Entry(sponsorLevel).State = EntityState.Modified; await db.SaveChangesAsync(); return(RedirectToAction("Index")); } return(View(sponsorLevel)); }
public object Convert(object value, Type targetType, object parameter, CultureInfo culture) { if (value is SponsorLevel) { SponsorLevel level = (SponsorLevel)value; return(String.Format("{0} Sponsor", Enum.GetName(typeof(SponsorLevel), level))); } else { throw new ArgumentException("Value must be sponsorLevel type."); } }
public async Task <ActionResult> Create([Bind(Include = "Id,Name,Rank")] SponsorLevel sponsorLevel) { if (ModelState.IsValid) { sponsorLevel.Id = Guid.NewGuid().ToString(); db.SponsorLevels.Add(sponsorLevel); await db.SaveChangesAsync(); return(RedirectToAction("Index")); } return(View(sponsorLevel)); }
// GET: SponsorLevels/Edit/5 public async Task <ActionResult> Edit(string id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } SponsorLevel sponsorLevel = await db.SponsorLevels.FindAsync(id); if (sponsorLevel == null) { return(HttpNotFound()); } return(View(sponsorLevel)); }
public void JsonSerializer_IncludeNull() { SponsorLevel data = CreateSponsorLevel(2015).WithName(null); string expected = SponsorLevelToJson(data).Replace('\'', '\"'); string actual = JsonConvert.SerializeObject( data, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Include } ); Assert.Equal(expected, actual); }
public async Task <IActionResult> Edit(int id, [Bind("SponsorId,CompanyName,SponsorLevel,Bio,TwitterHandle,WebsiteUrl,ImageFile,PointOfContact,EmailAddress,PhoneNumber")] SponsorViewModel sponsorVM) { if (ModelState.IsValid) { if (id != sponsorVM.SponsorId) { return(NotFound()); } var sponsor = await _sponsorBL.GetSponsor(sponsorVM.SponsorId); sponsor.CompanyName = sponsorVM.CompanyName; sponsor.SponsorLevel = sponsorVM.SponsorLevel; sponsor.Bio = sponsorVM.Bio; sponsor.TwitterHandle = sponsorVM.TwitterHandle; sponsor.WebsiteUrl = sponsorVM.WebsiteUrl; sponsor.PointOfContact = sponsorVM.PointOfContact; sponsor.EmailAddress = sponsorVM.EmailAddress; sponsor.PhoneNumber = sponsorVM.PhoneNumber; // Convert the image to a byte array, reduce the size to 500px x 500px // and store it in the database if (sponsorVM.ImageFile != null && sponsorVM.ImageFile.ContentType.ToLower().StartsWith("image/") && sponsorVM.ImageFile.Length <= SponsorViewModel.MaxImageSize) { MemoryStream ms = new MemoryStream(); sponsorVM.ImageFile.OpenReadStream().CopyTo(ms); sponsor.Image = _sponsorBL.ResizeImage(ms.ToArray()); } var result = await _sponsorBL.UpdateSponsor(sponsor); if (result == false) { return(NotFound()); } else { return(RedirectToAction(nameof(Index))); } } ViewBag.SponsorshipLevels = SponsorLevel.GetSponsorshipLevels(); return(View(sponsorVM)); }
public async Task <IActionResult> Create([Bind("SponsorId,CompanyName,SponsorLevel,Bio,TwitterHandle,WebsiteUrl,ImageFile,PointOfContact,EmailAddress,PhoneNumber")] SponsorViewModel sponsorVM) { if (ModelState.IsValid) { var theEvent = await _eventBL.GetActiveEvent(); if (theEvent != null) { var sponsor = new Sponsor { SponsorId = sponsorVM.SponsorId, CompanyName = sponsorVM.CompanyName, SponsorLevel = sponsorVM.SponsorLevel, Bio = sponsorVM.Bio, TwitterHandle = sponsorVM.TwitterHandle, WebsiteUrl = sponsorVM.WebsiteUrl, PointOfContact = sponsorVM.PointOfContact, EmailAddress = sponsorVM.EmailAddress, PhoneNumber = sponsorVM.PhoneNumber, EventId = theEvent.EventId }; // Convert the image to a byte array, reduce the size to 500px x 500px // and store it in the database if (sponsorVM.ImageFile != null && sponsorVM.ImageFile.ContentType.ToLower().StartsWith("image/") && sponsorVM.ImageFile.Length <= SponsorViewModel.MaxImageSize) { MemoryStream ms = new MemoryStream(); sponsorVM.ImageFile.OpenReadStream().CopyTo(ms); sponsor.Image = _sponsorBL.ResizeImage(ms.ToArray()); } await _sponsorBL.CreateSponsor(sponsor); return(RedirectToAction(nameof(Index))); } } ViewBag.SponsorshipLevels = SponsorLevel.GetSponsorshipLevels(); return(View(sponsorVM)); }
public async Task <IActionResult> Run( [HttpTrigger(AuthorizationLevel.Anonymous, "get", Route = "v1/sponsorlevels/{id:int}")] HttpRequest req, int id, ILogger log ) { log.LogInformation("GetSponsorLevel processed a request."); try { SponsorLevel result = await this.Database.SponsorLevelsRepository.Select(id); return(null == result ? (IActionResult) new NotFoundResult() : (IActionResult) new OkObjectResult(result)); } catch (Exception ex) { log.LogError(ex, "GetSponsorLevel threw an exception."); return(new InternalServerErrorResult()); } finally { log.LogInformation("GetSponsorLevel finished a request."); } }
// GET: Sponsors/Edit/5 public async Task <IActionResult> Edit(int?id) { if (!id.HasValue) { return(NotFound()); } if (!await _sponsorBL.SponsorExists(id.Value)) { return(NotFound()); } var sponsorVM = await _sponsorBL.GetSponsorViewModel(id.Value); if (sponsorVM == null) { return(NotFound()); } ViewBag.SponsorshipLevels = SponsorLevel.GetSponsorshipLevels(); return(View(sponsorVM)); }
public async Task SelectOne() { SponsorLevel expected = new SponsorLevel( 1, 2, $"Sponsor Level 3", 400, true, false, true, 5, 60, 70, false, true, false ); Database.AddJsonResult(JsonConvert.SerializeObject(new[] { expected })); Assert.Equal(expected, await Repository.Select(1)); }
// TODO Sponsor levels are not currently tied to EventIds public IList <SponsorLevel> GetSponsorLevels() { var sponsorLevel = SponsorLevel.GetSponsorshipLevels(); return(sponsorLevel); }
// GET: Sponsors/Create public IActionResult Create() { ViewBag.SponsorshipLevels = SponsorLevel.GetSponsorshipLevels(); return(View()); }
internal static string SponsorLevelToJson(SponsorLevel x) => $"{{'id':{x.Id},'displayorder':{x.DisplayOrder},'name':{(null == x.Name ? "null" : $"'{x.Name}'")},'cost':{x.Cost},'displaylink':{x.DisplayLink.ToString().ToLower()},'displayinemails':{x.DisplayInEmails.ToString().ToLower()},'displayinsidebar':{x.DisplayInSidebar.ToString().ToLower()},'tickets':{x.Tickets},'discount':{x.Discount},'timeonscreen':{x.TimeOnScreen},'preconemail':{x.PreConEmail.ToString().ToLower()},'midconemail':{x.MidConEmail.ToString().ToLower()},'postconemail':{x.PostConEmail.ToString().ToLower()}}}";