public ActionResult ListOfEvents() { @ViewData["headerName"] = "Collage Events"; List <EventDetailBusinessModel> allEvents = new List <EventDetailBusinessModel>(); List <EventDetailModel> listofEvents = new List <EventDetailModel>(); allEvents = applicationLEvelBusinessOperation.GetAllEvents(); foreach (EventDetailBusinessModel item in allEvents) { EventDetailModel eventItem = new EventDetailModel { EventName = item.EventName, EventDate = item.EventDate, EventDescription = item.EventDescription, EventDetailID = item.EventDetailID, EventType = item.EventType, CollageID = item.CollageID }; listofEvents.Add(eventItem); } //ModelState.AddModelError("EventName", "This is my server-side error."); return(View(listofEvents)); }
public async Task <IActionResult> EventDetailAsync(int eventId) { EventDetailModel eventDetailModel = (from e in _context.Events join u in _context.Users on e.HostId equals u.Id where e.EventId == eventId select new EventDetailModel { EventId = e.EventId, EventTitle = e.EventTitle, Location = e.Location, Date = e.Date, StartTime = e.StartTime, EndTime = e.EndTime, Description = e.Description, Image = e.Image, IsAdultOnly = e.IsAdultOnly == 1 ? 1 : 0, EventType = e.EventType == 1 ? 1 : 0, Host = u.UserName, HostId = e.HostId }).FirstOrDefault(); if (eventDetailModel == null) // event does not exist { return(View("Error")); } else { eventDetailModel.DayOfWeek = Convert.ToDateTime(eventDetailModel.Date).DayOfWeek.ToString(); try { int amOrPm = Convert.ToInt32(eventDetailModel.StartTime[..2]);
public async Task <List <KeyValuePair <string, string> > > Validate(EventDetailModel model, CampaignSummaryModel parentCampaign) { var result = new List <KeyValuePair <string, string> >(); if (model.EndDateTime < model.StartDateTime) { result.Add(new KeyValuePair <string, string>(nameof(model.EndDateTime), "End date cannot be earlier than the start date")); } if (model.StartDateTime < parentCampaign.StartDate) { result.Add(new KeyValuePair <string, string>(nameof(model.StartDateTime), "Start date cannot be earlier than the campaign start date " + parentCampaign.StartDate.ToString("d"))); } if (model.EndDateTime > parentCampaign.EndDate) { result.Add(new KeyValuePair <string, string>(nameof(model.EndDateTime), "End date cannot be later than the campaign end date " + parentCampaign.EndDate.ToString("d"))); } var postalCodeValidation = new LocationEditModelValidator(_mediator); var postalCodeErrors = await postalCodeValidation.Validate(model.Location); postalCodeErrors.ToList().ForEach(e => result.Add(new KeyValuePair <string, string>(e.Key, e.Value))); return(result); }
// GET: @event /Details/5 public IActionResult Details(int id) { if (id == 0) { return(NotFound()); } var @event = _service.Get(id); //创建一个新的模型类 var models = new EventDetailModel { EventId = @event.EventId, Describe = @event.Describe, Duration = @event.Duration, Email = @event.Email, NewPeriod = @event.NewPeriod, NewPeriodTime = @event.NewPeriodTime, Period = @event.Period, StartTime = @event.StartTime, Summary = @event.Summary }; if (@event == null) { return(NotFound()); } return(View(@event)); }
public ActionResult BuyTickets(EventDetailModel model, string imageId) { var currentCart = CurrentCart.Create(SnuffoSettings.STORE_NAME); var tickets = model.Event.TicketsSale.ToList(); model.Event.LazyLoadProperties(); for (int i = 0; i < tickets.Count; i++) { string dropdownName = string.Concat("TicketType", i); int ticketsQuantityToBuy = !Request.Form[dropdownName].IsNullOrEmpty() ? int.Parse(Request.Form[dropdownName]) : 0; ViewData[dropdownName] = ticketsQuantityToBuy; if (ticketsQuantityToBuy > 0) { currentCart.AddTicket( tickets[i].Id, model.Event.DisplayName(), ticketsQuantityToBuy, metaData: imageId); } } return(Redirect($"/{CurrentUser.LanguageCode}/cart/")); }
public bool insertSale() { string eventIdStr = Request.Form["eventId"]; string ssi = Request.Form["ssi"]; string amount = Request.Form["amount"]; string ssiDec = UseKardoEncryption.getDecipherString(ssi); if (ssiDec == "KardoEncryptionError") { return(false); } int userId = Convert.ToInt32(UseKardoEncryption.getDecipherString(Session["KardoUserId"].ToString())); Dictionary <string, Object> theUser = DefaultModel.getUserFromUserId(userId); int eventId, ssId, amountInt; int kpId = (int)theUser["kardoPassoId"]; bool isNumeric = int.TryParse(eventIdStr, out eventId); bool isNumeric2 = int.TryParse(ssiDec, out ssId); bool isNumeric3 = int.TryParse(amount, out amountInt); if (isNumeric && isNumeric2 && isNumeric3) { return(EventDetailModel.insertSale(eventId, ssId, kpId, amountInt, userId)); } return(false); }
public int Create(EventDetailModel eventDetail) { var res = AutoMapper.MapItem <EventDetailModel, DAL.EventDetail>(eventDetail); dbContext.EventDetails.Add(res); return(dbContext.SaveChanges()); }
public void DisplayItineraries_ReturnsFalse_WhenEventIsNotItineraryManaged() { var sut = new EventDetailModel(); sut.EventType = AllReady.Models.EventType.Rally; Assert.False(sut.DisplayItineraries); }
public void DisplayItineraries_ReturnsTrue_WhenEventIsItineraryManaged() { var sut = new EventDetailModel(); sut.EventType = AllReady.Models.EventType.Itinerary; Assert.True(sut.DisplayItineraries); }
public async Task CreatePostReturnsEditView_When_ModelStateNotValid() { var sut = GetEventController(); sut.ModelState.AddModelError("test", "test"); var eventModel = new EventDetailModel(); var result = (ViewResult)await sut.Create(1, eventModel, null); Assert.Equal("Edit", result.ViewName); }
public async Task UpdateAsync(EventDetailModel model) { var entity = MapScheduledEvent(model); await ValidateHeatingZone(entity.HeatingZoneId); await scheduledEventRepository.UpdateAsync(model.Id, entity); RestartScheduler(); }
public int Update(EventDetailModel eventDetail) { var res = AutoMapper.MapItem <EventDetailModel, DAL.EventDetail>(eventDetail); //dbContext.Tournaments.Attach(res); dbContext.Entry(res).State = EntityState.Modified; return(dbContext.SaveChanges()); }
private EventDetailModel buildNewEventDetailsModel(EventDetailModel existingEvent, DuplicateEventModel newEventDetails) { existingEvent.Id = 0; existingEvent.Name = newEventDetails.Name; existingEvent.Description = newEventDetails.Description; existingEvent.StartDateTime = newEventDetails.StartDateTime; existingEvent.EndDateTime = newEventDetails.EndDateTime; return(existingEvent); }
public IActionResult Detail(int id) { var eEvent = _event.GetById(id); var model = new EventDetailModel { Id = id, Name = eEvent.Name, ExpiredTime = eEvent.TicketsInfos.ExpiredTime, Filling = eEvent.Filling, }; return(View(model)); }
public static EventUpdateItem ToUpdateItemEntity(this EventDetailModel model) { return(new EventUpdateItem { ScoId = model.ScoId, FolderId = model.FolderId, Name = model.Name, Description = model.Description, Language = model.Language, DateBegin = model.BeginDate.ToString(CultureInfo.CurrentCulture), DateEnd = model.EndDate.ToString(CultureInfo.CurrentCulture), UrlPath = model.UrlPath, Type = ScoType.Event, SourceScoId = model.MeetingId }); }
private static ScheduledEvent MapScheduledEvent(EventDetailModel model) { var validTo = model.SelectedScheduleMode == ScheduleMode.OneTimeOnly ? model.ValidFrom ?? throw new InvalidOperationException($"{nameof(model.ValidFrom)} not set for {nameof(ScheduleMode.OneTimeOnly)} mode.") : model.ValidTo; var entity = new ScheduledEvent( model.HeatingZoneId, model.Time.TimeOfDay, model.Temperature, model.ValidFrom, validTo, model.SelectedScheduleMode); return(entity); }
public void ReturnsCorrectErrorWhenEndDateTimeIsLessThanStartDateTime() { var validator = new EventDetailModelValidator(); var parentCampaign = new CampaignSummaryModel { EndDate = new DateTimeOffset(new DateTime(1999, 2, 1)) }; var model = new EventDetailModel { StartDateTime = new DateTimeOffset(new DateTime(2000, 1, 1)), EndDateTime = new DateTimeOffset(new DateTime(1999, 1, 1)) }; var errors = validator.Validate(model, parentCampaign); Assert.True(errors.Exists(x => x.Key.Equals("EndDateTime"))); Assert.Equal(errors.Find(x => x.Key == "EndDateTime").Value, "End date cannot be earlier than the start date"); }
public async Task <IActionResult> Edit(EventDetailModel campaignEvent, IFormFile fileUpload) { if (campaignEvent == null) { return(HttpBadRequest()); } var organizationId = _mediator.Send(new ManagingOrganizationIdByEventIdQuery { EventId = campaignEvent.Id }); if (!User.IsOrganizationAdmin(organizationId)) { return(HttpUnauthorized()); } var campaign = await _mediator.SendAsync(new CampaignSummaryQuery { CampaignId = campaignEvent.CampaignId }); var validator = new EventDetailModelValidator(_mediator); var errors = await validator.Validate(campaignEvent, campaign); errors.ForEach(e => ModelState.AddModelError(e.Key, e.Value)); if (ModelState.IsValid) { if (fileUpload != null) { if (fileUpload.IsAcceptableImageContentType()) { campaignEvent.ImageUrl = await _imageService.UploadEventImageAsync(campaign.OrganizationId, campaignEvent.Id, fileUpload); } else { ModelState.AddModelError("ImageUrl", "You must upload a valid image file for the logo (.jpg, .png, .gif)"); return(View(campaignEvent)); } } var id = await _mediator.SendAsync(new EditEventCommand { Event = campaignEvent }); return(RedirectToAction(nameof(Details), new { area = "Admin", id = id })); } return(View(campaignEvent)); }
public async Task ReportErrorsWhenEndDateIsInvalid() { // arrage var mediator = new Mock <IMediator>(); var validator = new EventDetailModelValidator(mediator.Object); var campaign = new CampaignSummaryModel(); var model = new EventDetailModel { StartDateTime = new DateTimeOffset(new DateTime(2000, 1, 1)), EndDateTime = new DateTimeOffset(new DateTime(1999, 1, 1)) }; // act var errors = await validator.Validate(model, campaign); // assert Assert.True(errors.Exists(x => x.Key.Equals("EndDateTime"))); }
public async Task EventDoesNotExist() { var context = ServiceProvider.GetService <AllReadyContext>(); var htb = new Organization { Id = 123, Name = "Humanitarian Toolbox", LogoUrl = "http://www.htbox.org/upload/home/ht-hero.png", WebUrl = "http://www.htbox.org", Campaigns = new List <Campaign>() }; var firePrev = new Campaign { Id = 1, Name = "Neighborhood Fire Prevention Days", ManagingOrganization = htb, TimeZoneId = "Central Standard Time" }; htb.Campaigns.Add(firePrev); context.Organizations.Add(htb); context.SaveChanges(); var vm = new EventDetailModel { CampaignId = 1, TimeZoneId = "Central Standard Time" }; var query = new EditEventCommand { Event = vm }; var handler = new EditEventCommandHandler(context); var result = await handler.Handle(query); Assert.True(result > 0); var data = context.Events.Count(_ => _.Id == result); Assert.True(data == 1); }
public async Task <IActionResult> Create(int campaignId, EventDetailModel campaignEvent, IFormFile fileUpload) { var campaign = await _mediator.SendAsync(new CampaignSummaryQuery { CampaignId = campaignId }); if (campaign == null || !User.IsOrganizationAdmin(campaign.OrganizationId)) { return(HttpUnauthorized()); } var validator = new EventDetailModelValidator(_mediator); var errors = await validator.Validate(campaignEvent, campaign); errors.ToList().ForEach(e => ModelState.AddModelError(e.Key, e.Value)); //TryValidateModel is called explictly because of MVC 6 behavior that supresses model state validation during model binding when binding to an IFormFile. //See #619. if (ModelState.IsValid && TryValidateModel(campaignEvent)) { if (fileUpload != null) { if (!fileUpload.IsAcceptableImageContentType()) { ModelState.AddModelError("ImageUrl", "You must upload a valid image file for the logo (.jpg, .png, .gif)"); return(View("Edit", campaignEvent)); } } campaignEvent.OrganizationId = campaign.OrganizationId; var id = await _mediator.SendAsync(new EditEventCommand { Event = campaignEvent }); if (fileUpload != null) { // resave now that event has the ImageUrl campaignEvent.Id = id; campaignEvent.ImageUrl = await _imageService.UploadEventImageAsync(campaign.OrganizationId, id, fileUpload); await _mediator.SendAsync(new EditEventCommand { Event = campaignEvent }); } return(RedirectToAction(nameof(Details), new { area = "Admin", id = id })); } return(View("Edit", campaignEvent)); }
public void RetrunsCorrectErrorWhenModelsEndDateTimeIsGreaterThanParentCampaignsEndDate() { var validator = new EventDetailModelValidator(); var parentCampaign = new CampaignSummaryModel { StartDate = new DateTimeOffset(new DateTime(2000, 1, 1)), EndDate = new DateTimeOffset(new DateTime(2001, 1, 1)) }; var model = new EventDetailModel { StartDateTime = new DateTimeOffset(new DateTime(2001, 1, 1)), EndDateTime = new DateTimeOffset(new DateTime(2001, 2, 1)), }; var errors = validator.Validate(model, parentCampaign); Assert.True(errors.Exists(x => x.Key.Equals("EndDateTime"))); Assert.Equal(errors.Find(x => x.Key == "EndDateTime").Value, "End date cannot be later than the campaign end date " + parentCampaign.EndDate.ToString("d")); }
public ActionResult CreateEvent(EventDetailModel eventDetail, string AllCollages) { if (ModelState.IsValid) { eventDetail.CollageID = Convert.ToInt32(AllCollages); EventDetailBusinessModel eventBizModel = new EventDetailBusinessModel { CollageID = eventDetail.CollageID, EventDate = eventDetail.EventDate, EventDescription = eventDetail.EventDescription, EventName = eventDetail.EventName, EventType = eventDetail.EventType }; adminBusinessOperations.CreateEvent(eventBizModel); return(RedirectToAction("ListOfEvents")); } ViewBag.AllCollages = new SelectList(StaticMethod.GetAlCollages(), "CollageID", "CollageName"); return(View(eventDetail)); }
public async Task CreatePostReturnsEditView_When_EventEndDateAfterCampaignEndDate() { var campaignStartDate = new DateTimeOffset(new DateTime(1900, 1, 1)); var campaignEndDate = campaignStartDate.AddDays(4); var sut = GetEventController(campaignStartDate, campaignEndDate); var eventModel = new EventDetailModel { EndDateTime = campaignEndDate.AddDays(1), StartDateTime = campaignStartDate }; var result = (ViewResult)await sut.Create(1, eventModel, null); Assert.Equal("Edit", result.ViewName); var errors = sut.ModelState.GetErrorMessages(); Assert.Equal(1, errors.Count); Assert.Equal("End date cannot be later than the campaign end date " + campaignEndDate.ToString("d"), errors[0]); }
// // GET: /EventDetailAdmin/ public ActionResult Index(string eventId) { if (string.IsNullOrEmpty(eventId)) { return(Redirect("/")); } int eventIdInt; bool isNumeric = int.TryParse(eventId, out eventIdInt); if (!isNumeric) { return(Redirect("/")); } if ((Session["KardoUserId"] != null && Session["KardoUserName"] != null)) { int userId = Convert.ToInt32(UseKardoEncryption.getDecipherString(Session["KardoUserId"].ToString())); Dictionary <string, Object> theUser = DefaultModel.getUserFromUserId(userId); ViewBag.userInfos = theUser; if (!(bool)theUser["can_examine_salesDetails"]) { return(Redirect("/")); } } else { return(Redirect("/")); } Dictionary <string, Object> theEvent = EventDetailModel.getEventInfo(eventIdInt); ViewBag.theEvent = theEvent; Dictionary <string, List <Object> > ticketInfos = EventDetailModel.getEventTicketInfo(eventIdInt); ViewBag.ticketInfos = ticketInfos; return(View()); }
public void AddDetails(EventDetailModel model) { using (var unitofwork = new UnitOfWork()) { var item = unitofwork.EventRepository.GetById(model.EventID); if (item != null) { item.EventDetails.Add(new Data.Entities.EventDetail { EventDetailID = model.EventDetailID, EventID = model.EventID, EventDetailNumber = model.EventDetailNumber, EventDetailsName = model.EventDetailsName, EventOdd = model.EventOdd, FinishingPosition = model.FinishingPosition, FirstTimer = model.FirstTimer, }); } unitofwork.EventRepository.Update(item); } }
public ActionResult EventDetailPage(ContentModel model, long?e) { if (!long.TryParse(Request.QueryString["e"], out long id)) { return(Redirect(string.Concat("/", CurrentUser.LanguageCode, "/page-not-found"))); } var evnt = UvendiaContext.Events.Single(id); if (evnt == null) { return(Redirect(string.Concat("/", CurrentUser.LanguageCode, "/page-not-found"))); } var imageUrl = CloudinaryService.GetCloudinaryUrl(evnt["Image 1"].ConvertTo <string>(), 886, 575, CropType.Fit, gravityType: GravityType.None, effect: Effect.Incognito); var edm = new EventDetailModel(model.Content); edm.Event = evnt; edm.ImageUrl = imageUrl; return(CurrentTemplate(edm)); }
public List <KeyValuePair <string, string> > Validate(EventDetailModel model, CampaignSummaryModel parentCampaign) { var result = new List <KeyValuePair <string, string> >(); if (model.EndDateTime < model.StartDateTime) { result.Add(new KeyValuePair <string, string>(nameof(model.EndDateTime), "End date cannot be earlier than the start date")); } if (model.StartDateTime < parentCampaign.StartDate) { result.Add(new KeyValuePair <string, string>(nameof(model.StartDateTime), "Start date cannot be earlier than the campaign start date " + parentCampaign.StartDate.ToString("d"))); } if (model.EndDateTime > parentCampaign.EndDate) { result.Add(new KeyValuePair <string, string>(nameof(model.EndDateTime), "End date cannot be later than the campaign end date " + parentCampaign.EndDate.ToString("d"))); } return(result); }
public string getSectionInfo() { string eventIdStr = Request.Form["eventId"]; string ssi = Request.Form["ssi"]; string ssiDec = UseKardoEncryption.getDecipherString(ssi); if (ssiDec == "KardoEncryptionError") { return("{}"); } int eventId, ssId; bool isNumeric = int.TryParse(eventIdStr, out eventId); bool isNumeric2 = int.TryParse(ssiDec, out ssId); if (isNumeric && isNumeric2) { return(EventDetailModel.getSectionInfo(eventId, ssId)); } return("{}"); }
public async Task <IActionResult> Create(int campaignId) { var campaign = await _mediator.SendAsync(new CampaignSummaryQuery { CampaignId = campaignId }); if (campaign == null || !User.IsOrganizationAdmin(campaign.OrganizationId)) { return(HttpUnauthorized()); } var campaignEvent = new EventDetailModel { CampaignId = campaign.Id, CampaignName = campaign.Name, TimeZoneId = campaign.TimeZoneId, OrganizationId = campaign.OrganizationId, OrganizationName = campaign.OrganizationName, StartDateTime = DateTime.Today.Date, EndDateTime = DateTime.Today.Date.AddMonths(1) }; return(View("Edit", campaignEvent)); }