public async Task <IHttpActionResult> PutEventGuest(int id, EventGuest eventGuest)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != eventGuest.EventGuestID)
            {
                return(BadRequest());
            }

            db.Entry(eventGuest).State = EntityState.Modified;

            try
            {
                await db.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!EventGuestExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
Пример #2
0
 public ActionResult RegisterGuest([Bind(Include = "GuestId,FirstName,LastName,Email,Preregistered,WonCheckInRaffle,ExtraRaffleEntry,WonExtraRaffleEntry")] EventGuest eventGuest)
 {
     Trace.WriteLine("POST /EventGuests/RegisterGuest eventGuest: " + eventGuest.ToString());
     ViewBag.Title     = "Register";
     ViewBag.Message   = EventGuestConstants.REGISTRATION_DEFAULT;
     ViewBag.EventName = Settings.Default.EventName;
     ViewBag.FailedCheckInPreregister = true;
     if (!ModelState.IsValid)
     {
         return(View(eventGuest));
     }
     if (!repository.AddEventGuestToDbContext(eventGuest))
     {
         String errorMessage = ViewBag.Message = EventGuestConstants.REGISTRATION_EXISTING_ERROR + eventGuest.Email;
         return(View(eventGuest));
     }
     if (eventGuest.Preregistered == false)
     {
         ViewBag.SuccessfulCheckIn = true;
     }
     else
     {
         ViewBag.SuccessfulPreregister = true;
     }
     ViewBag.FailedCheckInPreregister = null;
     return(View(new EventGuest {
     }));
 }
        public async Task <IActionResult> Edit(int id, [Bind("EventGuestID,EventID,GuestID,EventSponsorID,EventSeatID,RegistrationDate,Status")] EventGuest eventGuest)
        {
            if (id != eventGuest.EventGuestID)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(eventGuest);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!EventGuestExists(eventGuest.EventGuestID))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["EventID"]        = new SelectList(_context.Events, "EventId", "Name", eventGuest.EventID);
            ViewData["GuestID"]        = new SelectList(_context.Guests, "GuestID", "Name", eventGuest.GuestID);
            ViewData["EventSponsorID"] = new SelectList(_context.EventSponsors, "EventSponsorID", "EventSponsorID", eventGuest.EventSponsorID);
            return(View(eventGuest));
        }
Пример #4
0
        public async Task <IActionResult> AddGuest2Event(String[] guests)
        {
            String[] guestIds = Request.Form["guests[]"].ToArray();
            String   EventID  = Request.Form["EventID"].ToString();
            int      EID      = int.Parse(EventID);

            if (guestIds.Length > 0)
            {
                foreach (String guest in guestIds)
                {
                    int guestid = int.Parse(guest);
                    // Console.WriteLine(guestid);
                    EventGuest eg = new EventGuest {
                        GuestID = guestid, EventID = EID, EventSponsorID = _context.EventSponsors.Where(z => z.EventID == EID).First().EventSponsorID
                    };
                    _context.Add(eg);
                }
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            else
            {
                return(Ok("You selected no guests."));
            }
        }
        public Boolean DeleteEventGuestById(int id)
        {
            EventGuest eventGuest = context.EventGuests.Find(id);

            context.EventGuests.Remove(eventGuest);
            context.SaveChanges();
            return(true);
        }
        public EventGuest CreateEventGuestFromRowData(DataRow row, int[] firstLastEmailArray)
        {
            EventGuest guest = new EventGuest();

            guest.FirstName     = row.ItemArray.ElementAt(firstLastEmailArray[0]).ToString();
            guest.LastName      = row.ItemArray.ElementAt(firstLastEmailArray[1]).ToString();
            guest.Email         = row.ItemArray.ElementAt(firstLastEmailArray[2]).ToString();
            guest.Preregistered = true;
            return(guest);
        }
        public async Task <IHttpActionResult> GetEventGuest(int id)
        {
            EventGuest eventGuest = await db.EventGuests.FindAsync(id);

            if (eventGuest == null)
            {
                return(NotFound());
            }

            return(Ok(eventGuest));
        }
Пример #8
0
 public ActionResult EditGuest([Bind(Include = "GuestId,FirstName,LastName,Email")] EventGuest eventGuest)
 {
     Trace.WriteLine("POST EventGuest/Edit eventGuest: " + eventGuest.ToString());
     ViewBag.Title   = "Edit Guest";
     ViewBag.Message = "Make edits to a registered event guest.";
     if (ModelState.IsValid)
     {
         repository.UpdateEventGuest(eventGuest);
         return(RedirectToAction("GuestListIndex"));
     }
     return(View(eventGuest));
 }
        public async Task <IHttpActionResult> PostEventGuest(EventGuest eventGuest)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.EventGuests.Add(eventGuest);
            await db.SaveChangesAsync();

            return(CreatedAtRoute("DefaultApi", new { id = eventGuest.EventGuestID }, eventGuest));
        }
Пример #10
0
        public void AttendEvent(long userId, long eventId)
        {
            var eventGuest = new EventGuest
            {
                UserId     = userId,
                EventId    = eventId,
                IsApproved = false,
                Deleted    = false
            };

            _eventGuestRepository.Add(eventGuest);
            _unitOfWork.Commit();
        }
Пример #11
0
        public ActionResult DeleteGuest(int?id)
        {
            Trace.WriteLine("GET EventGuest/Delete id: " + id);
            ViewBag.Title   = "Delete Guest";
            ViewBag.Message = "Are you sure you want to delete this event guest?";
            EventGuest eventGuest = repository.GetEventGuestById(id);

            if (eventGuest == null)
            {
                return(RedirectToAction("GuestListIndex"));
            }
            return(View(eventGuest));
        }
Пример #12
0
        public ActionResult EditGuest(int?id)
        {
            Trace.WriteLine("GET EventGuest/EditGuest int: " + id);
            ViewBag.Title   = "Edit Guest";
            ViewBag.Message = "Make edits to a registered guest.";
            EventGuest eventGuest = repository.GetEventGuestById(id);

            if (eventGuest == null)
            {
                return(RedirectToAction("GuestListIndex"));
            }
            return(View(eventGuest));
        }
        public Boolean UncheckInEventGuest(int id)
        {
            EventGuest eventGuest = context.EventGuests.Find(id);

            if (eventGuest == null)
            {
                return(false);
            }
            eventGuest.TimeOfCheckIn        = null;
            context.Entry(eventGuest).State = EntityState.Modified;
            context.SaveChanges();
            return(true);
        }
        public async Task <IActionResult> Create([Bind("EventGuestID,EventID,GuestID,EventSponsorID,EventSeatID,RegistrationDate,Status")] EventGuest eventGuest)
        {
            if (ModelState.IsValid)
            {
                _context.Add(eventGuest);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["EventID"]        = new SelectList(_context.Events, "EventId", "Name", eventGuest.EventID);
            ViewData["GuestID"]        = new SelectList(_context.Guests, "GuestID", "EmailAddress", eventGuest.GuestID);
            ViewData["EventSponsorID"] = new SelectList(_context.EventSponsors, "EventSponsorID", "EventSponsorID", eventGuest.EventSponsorID);
            return(View(eventGuest));
        }
        public async Task <IHttpActionResult> DeleteEventGuest(int id)
        {
            EventGuest eventGuest = await db.EventGuests.FindAsync(id);

            if (eventGuest == null)
            {
                return(NotFound());
            }

            db.EventGuests.Remove(eventGuest);
            await db.SaveChangesAsync();

            return(Ok(eventGuest));
        }
        public Boolean CheckInEventGuestToEvent(int?id)
        {
            EventGuest entity = context.EventGuests.Find(id);

            if (entity == null)
            {
                return(false);
            }
            if (entity.TimeOfCheckIn != null)
            {
                return(false);
            }
            entity.TimeOfCheckIn = service.GetCurrentDateTimeWithOffSet();
            context.SaveChanges();
            return(true);
        }
 public Boolean AddEventGuestToDbContext(EventGuest guest)
 {
     if (String.IsNullOrEmpty(guest.Email))
     {
         return(false);
     }
     if (context.EventGuests.Count(g => g.Email.Equals(guest.Email)) > 0)
     {
         return(false);
     }
     if (guest.Preregistered == false)
     {
         guest.TimeOfCheckIn = service.GetCurrentDateTimeWithOffSet();
     }
     context.EventGuests.Add(guest);
     context.SaveChanges();
     return(true);
 }
Пример #18
0
        public CsvUploadStatus UploadGuestsFromCsvFile(HttpPostedFileBase upload)
        {
            CsvUploadStatus status = new CsvUploadStatus();

            status.SuccessfulUpload = false;
            status.ErrorMessage     = EventGuestConstants.LOAD_REGISTRANTS_UPLOAD_ERROR;
            if (upload == null || upload.ContentLength <= 0)
            {
                return(status);
            }
            status.ErrorMessage = EventGuestConstants.LOAD_REGISTRANTS_FILE_TYPE_ERROR;
            if (!upload.FileName.EndsWith(".csv"))
            {
                return(status);
            }
            DataTable csvTable = createNewDataTableFromUpload(upload);

            int[] firstLastEmailArray = createIntArrayForFirstLastEmailColumns(csvTable);
            if (intArrayHasNegativeValues(firstLastEmailArray))
            {
                return(status);
            }
            int registeredCount    = 0;
            int notRegisteredCount = 0;

            foreach (DataRow row in csvTable.Rows)
            {
                EventGuest tableGuest = repository.CreateEventGuestFromRowData(row, firstLastEmailArray);
                if (repository.AddEventGuestToDbContext(tableGuest))
                {
                    registeredCount++;
                }
                else
                {
                    notRegisteredCount++;
                }
            }
            status.SuccessfulUpload    = true;
            status.EventGuestsUploaded = registeredCount;
            status.ColumnsNotUploaded  = notRegisteredCount;
            return(status);
        }
Пример #19
0
        public async Task <JsonResult> Save(string data)
        {
            var calendarEventViewModel = JsonConvert.DeserializeObject <CalendarEventViewModel>(data);

            var calendarEvent = new CalendarEvent();

            calendarEvent.Title           = calendarEventViewModel.Title;
            calendarEvent.FromDate        = calendarEventViewModel.FromDate;
            calendarEvent.ToDate          = calendarEventViewModel.ToDate;
            calendarEvent.StatusColour    = calendarEventViewModel.StatusColour;
            calendarEvent.Description     = calendarEventViewModel.Description;
            calendarEvent.AllDay          = calendarEventViewModel.AllDay;
            calendarEvent.CreatedByUserId = (await _userManager.FindByNameAsync(HttpContext.User.Identity.Name)).Id;
            calendarEvent.EventGuests     = new List <EventGuest>();
            foreach (var guestUserId in calendarEventViewModel.GuestUserId)
            {
                //var user = (await _userManager.FindByIdAsync(guestUserId));
                if (calendarEventViewModel.Id != 0)
                {
                    if (!_context.EventGuests.Any(e => e.CalendarEventId == calendarEventViewModel.Id && e.UserId == guestUserId))
                    {
                        EventGuest eventGuest = new EventGuest();
                        eventGuest.UserId = guestUserId;
                        eventGuest.Status = 1;
                        calendarEvent.EventGuests.Add(eventGuest);

                        //Send Notification
                        Notification notification = new Notification();
                        notification.AdderId            = (await _userManager.FindByNameAsync(HttpContext.User.Identity.Name)).Id;
                        notification.LinkAction         = "Index";
                        notification.LinkController     = "CICalendar";
                        notification.PostingTime        = DateTime.Now;
                        notification.NotificationTypeId = 2;
                        notification.Text = "You are invited to an event named - " + calendarEvent.Title;
                        _notificationRepository.CreateByUserId(notification, guestUserId);
                    }
                }
                else
                {
                    EventGuest eventGuest = new EventGuest();
                    eventGuest.UserId = guestUserId;
                    eventGuest.Status = 1;
                    calendarEvent.EventGuests.Add(eventGuest);

                    //Send Notification
                    Notification notification = new Notification();
                    notification.AdderId            = (await _userManager.FindByNameAsync(HttpContext.User.Identity.Name)).Id;
                    notification.LinkAction         = "Index";
                    notification.LinkController     = "CICalendar";
                    notification.PostingTime        = DateTime.Now;
                    notification.NotificationTypeId = 2;
                    notification.Text = "You are invited to an event named - " + calendarEvent.Title;
                    _notificationRepository.CreateByUserId(notification, guestUserId);
                }
            }


            if (calendarEventViewModel.Id != 0)
            {
                calendarEvent.Id = calendarEventViewModel.Id;
                _context.CalendarEvents.Update(calendarEvent);
                _context.SaveChanges();
                return(new JsonResult(true));
            }
            else
            {
                _context.CalendarEvents.Add(calendarEvent);
                _context.SaveChanges();
                return(new JsonResult(true));
            }
        }
 public Boolean UpdateEventGuest(EventGuest guest)
 {
     context.Entry(guest).State = EntityState.Modified;
     context.SaveChanges();
     return(true);
 }