Пример #1
0
        public void CreateGuest()
        {
            Guest newGuest = new Guest(GuestVM.Guest_No, GuestVM.Name, GuestVM.Address);

            GuestViewModel.AddGuest(newGuest);
            PersistencyGuest.GemDataTilAsync();
        }
Пример #2
0
        private static string GetVoteEmailBody(GuestViewModel guest)
        {
            string sVotes = guest.EmailContent;
            int    index  = sVotes.IndexOf("Q1");

            if (index > 0)
            {
                sVotes = sVotes.Substring(index);
            }
            index = sVotes.LastIndexOf("telephone");
            if (index > 0)
            {
                sVotes = sVotes.Substring(0, index);
            }
            sVotes = sVotes.Replace("accesscode", "Code d'accès");

            for (int i = Calculation.NB_CATEGORIES; i >= 0; i--)
            {
                sVotes = sVotes.Replace("Q" + (i + 1), "");
            }

            string body = "<html>" +
                          "<font size='4' color='#3333ff'>Merci!<br/><br/>" +
                          "Nous avons bien reçu vos votes. <br/><br/>" +
                          "Rendez-vous le <b>28 février 2016 à 18h45</b> pour " +
                          "le 14e Gala Annuel des Jojoscar! <br/><br/>" +
                          "Le comité organisateur des Jojoscar <br/>" +
                          "<a rel='nofollow' target='_blank' href='http://www.jojoscar.com'>www.jojoscar.com</a> </font><br/>" +
                          "<br/><br/><b>VOS VOTES, " + guest.Guest.FirstName.ToUpper() + " " + guest.Guest.LastName.ToUpper() + ": </b><br/><br/>" +
                          sVotes.Replace("\r\n", "<br/>") +
                          "</html>";

            return(body);
        }
        public async Task <ActionResult> Login(string returnUrl)
        {
            ViewBag.ReturnUrl = returnUrl;
            //NC Start of auto login code - always auto sign in as guest, copied from the guest post code!
            GuestViewModel model = new GuestViewModel {
                GuestAcct = "*****@*****.**", GuestPassword = "******"
            };
            var result = await SignInHelper.PasswordSignIn(model.GuestAcct, model.GuestPassword, false, shouldLockout : false);

            switch (result)
            {
            case SignInStatus.Success:
                return(RedirectToLocal(returnUrl));

            case SignInStatus.LockedOut:
                return(View("Lockout"));

            case SignInStatus.RequiresTwoFactorAuthentication:
                return(RedirectToAction("SendCode", new { ReturnUrl = returnUrl }));

            case SignInStatus.Failure:
            default:
                ModelState.AddModelError("", "Invalid login attempt.");
                return(View(model));
            }
            //NC - End of auto sign in code
            return(View());
        }
Пример #4
0
        public IHttpActionResult AddTicket(int id, GuestViewModel dto)
        {
            var @event = context.Events.Find(id);

            if (@event == null)
            {
                return(NotFound());
            }
            if (dto == null)
            {
                return(NotFound());
            }

            var guest   = Mapper.Map <Guest>(dto);
            var current = context.Guests.Find(dto.Id);

            if (current != guest)
            {
                var demoChange = Mapper.Map <DemographicChange>(guest);
                demoChange.Source = Source.RSVP;
                context.DemographicChanges.Add(demoChange);
            }

            @event.AddTickets(guest, dto.AdditionalTickets);

            context.Events.AddOrUpdate(@event);

            context.Guests.AddOrUpdate(guest);
            context.SaveChanges();

            Mapper.Map(guest, dto);
            dto.Event = @event;
            return(Ok(dto));
        }
        public async Task <ActionResult> GuestLogin(GuestViewModel model, string returnUrl)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            // This doen't count login failures towards lockout only two factor authentication
            // To enable password failures to trigger lockout, change to shouldLockout: true
            var result = await SignInHelper.PasswordSignIn(model.GuestAcct, model.GuestPassword, false, shouldLockout : false);

            switch (result)
            {
            case SignInStatus.Success:
                return(RedirectToLocal(returnUrl));

            case SignInStatus.LockedOut:
                return(View("Lockout"));

            case SignInStatus.RequiresTwoFactorAuthentication:
                return(RedirectToAction("SendCode", new { ReturnUrl = returnUrl }));

            case SignInStatus.Failure:
            default:
                ModelState.AddModelError("", "Invalid login attempt.");
                return(View(model));
            }
        }
Пример #6
0
        public ActionResult UpdateGuest(IFormCollection form)
        {
            string guestID        = form["guestID"];
            int    guestid        = Convert.ToInt32(guestID);
            string firstName      = form["FirstName"];
            string lastName       = form["LastName"];
            string guestType      = form["GuestType"];
            string email          = form["Email"];
            string passportNumber = form["PassportNumber"];
            string secretPin      = form["secretpin"];

            if (_authenticator.AuthenticatePin(secretPin) && Update(guestid, firstName, lastName, guestType, email, passportNumber))
            {
                TempData["UpdateGuestMessage"] = "Success";
                return(Redirect("/Guest"));
            }
            else
            {
                ViewData["UpdateGuestMessage"] = "Error";
                Guest          guest          = _guestService.SearchByGuestId(guestid);
                GuestViewModel guestViewModel = (new GuestViewModel(guest.GuestIdDetails(), guest.FirstNameDetails(), guest.LastNameDetails(), guest.GuestTypeDetails(), guest.EmailDetails(), guest.PassportNumberDetails()));
                ViewBag.guest = guestViewModel;
                return(View());
            }
        }
        public async Task <ActionResult> GuestRegistration(GuestViewModel model)
        {
            if (User.IsInRole(Roles.Admin))
            {
                return(RedirectToAction("GuestList", "Admin"));
            }
            if (!model.IsAggree)
            {
                ModelState.AddModelError(nameof(model.IsAggree), Resources.Resources.IsGuestNotAggree);
            }
            if (ModelState.IsValid)
            {
                var user = new Guest {
                    Name = model.FIO, UserName = Guid.NewGuid().ToString(), Email = model.Email, PhoneNumber = model.Phone, Status = GuestStatus.Wait
                };
                var result = await UserManager.CreateAsync(user, "StubPass1#");

                if (result.Succeeded)
                {
                    await UserManager.AddToRoleAsync(user.Id, Roles.Guest);

                    return(View("GuestRegistrationSuccess"));
                }
                AddErrors(result);
            }

            // If we got this far, something failed, redisplay form
            return(View(model));
        }
Пример #8
0
        public async Task <object> UpdateRegistration(int id, [FromBody] GuestViewModel model)
        {
            var @event = await _context.Events.SingleOrDefaultAsync(e => e.Id == id);

            if (@event == null)
            {
                return(BadRequest("Event not found"));
            }

            var guest = await _context.Guests.FirstOrDefaultAsync(e => e.Id == model.Id);

            if (guest == null)
            {
                return(BadRequest("Guest not found"));
            }

            var dto = Mapper.Map <Guest>(model);

            if (guest != dto)
            {
                await CreateDemographicRecord(guest);
            }

            Mapper.Map(model, guest);
            guest.ResponseDate = DateTime.Now;

            @event.AddTickets(guest, model.AdditionalTickets);

            _context.Events.AddOrUpdate(@event);
            _context.Guests.AddOrUpdate(guest);
            _context.SaveChanges();

            model = Mapper.Map <GuestViewModel>(guest);
            return(Ok(model));
        }
Пример #9
0
        public static GuestViewModel BuildGuestViewModel(int year, GuestModel guest)
        {
            var guestViewModel = new GuestViewModel();

            guestViewModel.Guest      = guest;
            guestViewModel.Categories = CategoriesBusinessCtrl.GetCategoriesWithNominees(year)
                                        .Select(c => new CategoryViewModel {
                Category = c
            }).ToList();

            var votes = guestViewModel.Guest.GetVotes();

            if (votes != null && votes.Count == Calculation.NB_CATEGORIES)
            {
                for (int i = 0; i < guestViewModel.Categories.Count; i++)
                {
                    guestViewModel.Categories[i].SelectedLetter = votes[i];
                    if (guestViewModel.Categories[i].Category.AcademyChoiceLetter == votes[i])
                    {
                        guestViewModel.TotalNbPoints += guestViewModel.Categories[i].Category.NbPoints;
                        guestViewModel.TotalNbResponses++;
                    }
                }
            }
            return(guestViewModel);
        }
Пример #10
0
        public ActionResult Create(int year, GuestViewModel guestViewModel)
        {
            ViewBag.Year = year;
            if (ModelState.IsValid)
            {
                bool success = false;

                if (guestViewModel.Guest == null)
                {
                    guestViewModel.Guest = new GuestModel();
                }

                if (!string.IsNullOrEmpty(guestViewModel.EmailContent))
                {
                    var guest = Calculation.FillInfoFromEmailContent(guestViewModel.Guest, guestViewModel.EmailContent, out success);
                    if (success)
                    {
                        guestViewModel.Guest = guest;
                        if (guestViewModel.SendEmail)
                        {
                            HandleVotes.SendReceivedVoteConfirmationEmail(guestViewModel);
                        }
                    }
                }

                GuestsBusinessCtrl.AddGuest(year, guestViewModel.Guest);

                return(RedirectToAction("Index"));
            }

            return(View(guestViewModel));
        }
        public ActionResult SaveGuest(Guest g, string BtnSubmit)
        {
            GuestViewModel guestViewModel = new GuestViewModel();

            guestViewModel.Statusflag = false;

            switch (BtnSubmit)
            {
            case "Save Guest":
                if (ModelState.IsValid)
                {
                    GuestBusinessLayer guestBusinessLayer = new GuestBusinessLayer();
                    g.ContactNo = new string(g.ContactNo.Where(char.IsDigit).ToArray());
                    guestBusinessLayer.SaveGuest(g);
                    guestViewModel.Statusflag = true;
                    return(View("SaveGuestList", guestViewModel));
                }
                else
                {
                    guestViewModel.Name       = g.Name;
                    guestViewModel.ContactNo  = g.ContactNo;
                    guestViewModel.TableNo    = g.TableNo;
                    guestViewModel.Attendance = g.Attendance;
                    guestViewModel.Statusflag = false;
                    return(View("SaveGuestList", guestViewModel));
                }

            case "Cancel":
                return(RedirectToAction("ManageGuests"));
            }
            return(new EmptyResult());
        }
Пример #12
0
        // GET: Guest/Create
        public ActionResult Create(int year)
        {
            ViewBag.Year = year;
            GuestViewModel model = new GuestViewModel();

            return(View(model));
        }
        public ActionResult Index()
        {
            GuestListViewModel guestListViewModel = new GuestListViewModel();
            GuestBusinessLayer guestBusinessLayer = new GuestBusinessLayer();

            List <Guest>          guests = guestBusinessLayer.GetGuests();
            List <GuestViewModel> mylist = new List <GuestViewModel>();

            int count = 0;

            foreach (Guest gs in guests)
            {
                if (count == 10)
                {
                    break;
                }
                GuestViewModel guestViewModel = new GuestViewModel();
                guestViewModel.Name       = gs.Name;
                guestViewModel.GuestId    = gs.GuestId.ToString();
                guestViewModel.ContactNo  = gs.ContactNo;
                guestViewModel.TableNo    = gs.TableNo;
                guestViewModel.Attendance = gs.Attendance;
                mylist.Add(guestViewModel);

                count++;
            }
            guestListViewModel.Guest = mylist;

            return(View("Index", guestListViewModel));
        }
        public ActionResult AddNew()
        {
            GuestViewModel status = new GuestViewModel();

            status.Statusflag = false;
            return(View("SaveGuestList", status));
        }
        public ActionResult FindGuest()
        {
            string searchname = Request.Form["SearchByName"];

            GuestListViewModel guestListViewModel = new GuestListViewModel();
            GuestBusinessLayer guestBusinessLayer = new GuestBusinessLayer();

            List <Guest> guests = new List <Guest>();

            if (searchname == "all")
            {
                guests = guestBusinessLayer.GetGuests();
            }
            else if (searchname != null && searchname != "")
            {
                guests = guestBusinessLayer.FindGuests(searchname);
            }

            List <GuestViewModel> mylist = new List <GuestViewModel>();

            foreach (Guest gs in guests)
            {
                GuestViewModel guestViewModel = new GuestViewModel();
                guestViewModel.Name       = gs.Name;
                guestViewModel.GuestId    = gs.GuestId.ToString();
                guestViewModel.ContactNo  = gs.ContactNo;
                guestViewModel.TableNo    = gs.TableNo;
                guestViewModel.Attendance = gs.Attendance;
                mylist.Add(guestViewModel);
            }
            guestListViewModel.Guest = mylist;

            return(View("Index", guestListViewModel));
        }
Пример #16
0
        public void AddGuest_Success_CallsRepositoryWithCorrectParameters()
        {
            //Arrenge
            var guestViewModel = new GuestViewModel()
            {
                FirstName = "Misha",
                LastName  = "Gonchak",
                City      = "Rakovets"
            };
            var guestRepoMock = new Mock <IGuestRepository>();

            guestRepoMock.Setup(r => r.AddGuest(It.IsAny <Guest>())).Returns(new Guest());
            var mappingConfig = new MapperConfiguration(mc =>
            {
                mc.AddProfile(new MappingProfile());
            });
            IMapper mapper       = mappingConfig.CreateMapper();
            var     guestService = new GuestService(mapper, guestRepoMock.Object);

            //Act
            var result = guestService.AddGuest(guestViewModel);

            //Assert
            guestRepoMock.Verify(r => r.AddGuest(It.Is <Guest>(g => g.FirstName == guestViewModel.FirstName)), Times.Once);
        }
Пример #17
0
        public void UpdateGuest_Success_CorrectUpdateWithMapper()
        {
            //Arrenge
            var guest = new Guest()
            {
                Id        = 1,
                FirstName = "Misha"
            };
            var guestViewModel = new GuestViewModel()
            {
                Id        = 1,
                FirstName = "Misha"
            };
            var guestRepoMock = new Mock <IGuestRepository>();

            guestRepoMock.Setup(r => r.UpdateGuests(guest.Id, It.IsAny <Guest>())).Returns(guest);
            var mappingConfig = new MapperConfiguration(mc =>
            {
                mc.AddProfile(new MappingProfile());
            });
            IMapper mapper       = mappingConfig.CreateMapper();
            var     guestService = new GuestService(mapper, guestRepoMock.Object);

            //Act
            var result = guestService.UpdateGuests(guestViewModel.Id, guestViewModel);

            //Assert
            guestRepoMock.Verify(r => r.UpdateGuests(guest.Id, It.Is <Guest>(g => g.Id == guestViewModel.Id && g.FirstName == guestViewModel.FirstName)), Times.Once);
        }
        public async Task <IActionResult> Create(GuestViewModel guestViewModel)
        {
            if (ModelState.IsValid)
            {
                Guest guest = new Guest
                {
                    _guestName  = guestViewModel.GuestName,
                    _guestEmail = guestViewModel.GuestEmail,
                    _guestPhone = guestViewModel.GuestPhone
                };
                _context.Add(guest);

                DateTime leaving = guestViewModel.arrival.AddHours(3);

                List <Table> TablesForThisReservation = _tableManager.GetOptimalTableConfig(guestViewModel.arrival, leaving, guestViewModel.size);

                Reservation currentRes = new Reservation(guestViewModel.size, guestViewModel.arrival, 3, guest);
                _context.Reservations.Add(currentRes);

                foreach (Table table in TablesForThisReservation)
                {
                    _context.ReservationTableCouplings.Add(new ReservationTableCoupling(currentRes, table));
                }



                await _context.SaveChangesAsync();

                return(RedirectToAction("ConfirmReservation", "Home"));
            }
            return(View());
        }
Пример #19
0
        public async Task <object> RemoveFromWaiting(int id, [FromBody] GuestViewModel model)
        {
            var @event = await _context.Events.SingleOrDefaultAsync(e => e.Id == id);

            if (@event == null)
            {
                return(BadRequest("Event not found"));
            }

            var guest = await _context.Guests.FirstOrDefaultAsync(e => e.Id == model.Id);

            if (guest == null)
            {
                return(BadRequest("Guest not found"));
            }

            var dto = Mapper.Map <Guest>(model);

            Mapper.Map(model, guest);

            @event.RemoveFromWaiting(guest);
            _context.Entry(@event.Template).State = EntityState.Unchanged;

            _context.Events.AddOrUpdate(@event);
            _context.Guests.AddOrUpdate(guest);
            _context.SaveChanges();

            model = Mapper.Map <GuestViewModel>(guest);
            return(Ok(model));
        }
Пример #20
0
        public GuestViewModel UpdateGuests(int id, GuestViewModel model)
        {
            var guestModel = mapper.Map <Guest>(model);

            var guest = guestRepository.UpdateGuests(id, guestModel);

            return(mapper.Map <GuestViewModel>(guest));
        }
Пример #21
0
        public GuestViewModel AddGuest(GuestViewModel model)
        {
            var guestModel = mapper.Map <Guest>(model);

            var guest = guestRepository.AddGuest(guestModel);

            return(mapper.Map <GuestViewModel>(guest));
        }
Пример #22
0
        public ActionResult UpdateGuest(int guestID)
        {
            Guest          guest          = _guestService.SearchByGuestId(guestID);
            GuestViewModel guestViewModel = (new GuestViewModel(guest.GuestIdDetails(), guest.FirstNameDetails(), guest.LastNameDetails(), guest.GuestTypeDetails(), guest.EmailDetails(), guest.PassportNumberDetails()));

            ViewBag.guest = guestViewModel;
            return(View());
        }
 public IActionResult Create(GuestViewModel model)
 {
     if (ModelState.IsValid)
     {
         guestService.AddGuest(model);
         return(RedirectToAction(nameof(Index)));
     }
     return(View(model));
 }
 public IActionResult Edit(int id, GuestViewModel guest)
 {
     if (ModelState.IsValid)
     {
         guestService.UpdateGuests(id, guest);
         return(RedirectToAction(nameof(Index)));
     }
     return(View(guest));
 }
Пример #25
0
        public async Task <IActionResult> Update(int guestId, GuestViewModel model)
        {
            var result = await _guestService.Update(guestId, model);

            if (result != default)
            {
                return(Created($"/api/event/{model.Id}", result));
            }
            return(BadRequest());;
        }
        public override bool IsValid(object value)
        {
            GuestViewModel guestViewModel = value as GuestViewModel;

            if (guestService.IsGuestExist(guestViewModel.Id))
            {
                return(true);
            }
            return(false);
        }
Пример #27
0
 public static bool SendReceivedVoteConfirmationEmail(GuestViewModel guest)
 {
     if (!string.IsNullOrEmpty(guest.Guest.Email))
     {
         if (SendConfirmationEmail(guest.Guest.Email, guest.Guest.AccessCode + " - Jojoscar 2016 - Merci pour vos votes.", GetVoteEmailBody(guest)))
         {
             return(true);
         }
     }
     return(false);
 }
Пример #28
0
 public async Task <GuestViewModel> Create(GuestViewModel model)
 {
     try
     {
         var mappedModel = _mapper.Map <Guest>(model);
         _repository.Add(mappedModel);
         if (await _repository.SaveChangesAsync())
         {
             return(_mapper.Map <GuestViewModel>(model));
         }
         return(default);
Пример #29
0
        public IActionResult EditGuest(int id)
        {
            var guestOne  = GetGuest(id);
            var viewModel = new GuestViewModel()
            {
                GuestOne = guestOne,
                GuestTwo = (guestOne.PartOfCouple) ? GetPartner(id) : null
            };

            return(View("EditGuestForm", viewModel));
        }
Пример #30
0
        public async Task <ActionResult> AddGuest(GuestViewModel guest, Guid?storerId = null)
        {
            if (storerId == null)
            {
                storerId = GuestStore.Helpers.GetStorerIdFromCookie(Request);
            }
            await _GuestManager.AddGuest(guest, storerId);

            TempData["StorerId"] = guest.AddedBy;
            Response.SetCookie(new HttpCookie("storer", guest.AddedBy.ToString()));
            return(RedirectToAction("/RSVP"));
        }