public IHttpActionResult ResetPassword(PasswordResetRequest request) { BaseViewModel viewmodel = new BaseViewModel(); UserDataController dataCtrl = new UserDataController(); try { User user = dataCtrl.GetItems().SingleOrDefault(x => x.Email == request.Email); if (user == null) { return(Warning(viewmodel, "Eingegebene Email ist nicht registriert.")); } else { user = dataCtrl.SetPasswordReset(user.ID); EmailHelper.SendResetMail(user); } } catch (Exception ex) { return(Error(viewmodel, ex)); } return(Ok(viewmodel, "Dir wurde ein Link zugesendet.")); }
public IHttpActionResult Backend_Detail(Int32 id) { BackendCateringViewModel viewmodel = new BackendCateringViewModel(); CateringOrderDataController dataCtrl = new CateringOrderDataController(); EventDataController eventDataCtrl = new EventDataController(); UserDataController userDataCtrl = new UserDataController(); try { viewmodel.EventOptions = eventDataCtrl.GetItems().ToList().ConvertAll(x => { return(new BackendEventViewModelItem().FromModel(x)); }).OrderByDescending(x => x.ID).ToList(); viewmodel.UserOptions = userDataCtrl.GetItems().OrderBy(x => x.FirstName).ToList().ConvertAll(x => { return(new BackendUserViewModelItem().FromModel(x)); }); viewmodel.Data.FromModel(dataCtrl.GetItem(id)); } catch (Exception ex) { return(Error(viewmodel, ex)); } return(Ok(viewmodel)); }
public IHttpActionResult TransferReservation(TransferReservationRequest request) { BaseViewModel viewmodel = new BaseViewModel(); UserDataController dataCtrl = new UserDataController(); SeatDataController seatDataCtrl = new SeatDataController(); try { Int32 TransferUserID; Seat seat = seatDataCtrl.GetItem(request.SeatID); try { TransferUserID = dataCtrl.GetItems().Single(x => x.Email == request.Email).ID; } catch (Exception) { return(Warning(viewmodel, "Die Email wurde nicht vergeben.")); } if (TransferUserID == UserHelper.CurrentUserID) { return(Warning(viewmodel, "Du kannst keine Tickets an dich selber versenden.")); } if (seat.UserID != UserHelper.CurrentUserID) { return(Warning(viewmodel, "Du bist nicht Inhaber dieses Tickets.")); } if (dataCtrl.ValidateUser(UserHelper.CurrentUserEmail, request.Password)) { seat.TransferUserID = TransferUserID; seatDataCtrl.Update(seat); } else { return(Warning(viewmodel, "Das eingegebene Passwort stimmt nicht.")); } } catch (Exception ex) { return(Error(viewmodel, ex)); } return(Ok(viewmodel, "Ticket wurde versendet.")); }
public IHttpActionResult Backend_FilterList(ListArgsRequest <BackendSeatingFilter> request) { BackendSeatingListViewModel viewmodel = new BackendSeatingListViewModel(); SeatDataController dataCtrl = new SeatDataController(); EventDataController eventDataCtrl = new EventDataController(); UserDataController userDataCtrl = new UserDataController(); var events = eventDataCtrl.GetItems().OrderByDescending(x => x.Start).ToList(); var users = userDataCtrl.GetItems().OrderBy(x => x.FirstName).ToList(); var eID = request.Filter.EventSelected.ID; var seats = dataCtrl.FilterList(request); viewmodel.Filter.EventSelected = request.Filter.EventSelected; viewmodel.Filter.EventOptions = events.ConvertAll(x => { return(new SeatingFilterEvent() { ID = x.ID, Name = $"{x.EventType.Name} Vol.{x.Volume}" }); }); for (int i = 1; i <= Properties.Settings.Default.SeatAmount; i++) { BackendSeatingViewModelItem item = new BackendSeatingViewModelItem(); Seat model = seats.FirstOrDefault(x => x.SeatNumber == i); if (model == null) { model = new Seat() { SeatNumber = i, State = 0, Event = events[0] } } ; item.FromModel(model); viewmodel.Data.Add(item); } return(Ok(viewmodel)); }
public IHttpActionResult ResetPassword(String code) { BaseViewModel viewmodel = new BaseViewModel(); UserDataController dataCtrl = new UserDataController(); try { var user = dataCtrl.GetItems().SingleOrDefault(x => x.PasswordReset == code); if (user == null) { return(Warning(viewmodel, "Der Link ist abgelaufen.")); } } catch (Exception ex) { return(Error(viewmodel, ex)); } return(Ok(viewmodel)); }
public static CateringOrder ToModel(this BackendNewOrderRequest viewmodel) { UserDataController userDataCtrl = new UserDataController(); CateringOrder model = new CateringOrder(); model.EventID = viewmodel.Event.ID; model.OrderState = 0; model.Registered = DateTime.Now; model.UserID = userDataCtrl.GetItems().Single(x => x.Email == "*****@*****.**").ID; model.SeatID = 1; // TODO model.Note = viewmodel.Note; model.CateringOrderDetail = viewmodel.Data.ConvertAll(x => { return(x.ToModel()); }); return(model); }
public IHttpActionResult ResetPassword(String code, PasswordChangeRequest request) { BaseViewModel viewmodel = new BaseViewModel(); UserDataController dataCtrl = new UserDataController(); try { var user = dataCtrl.GetItems().SingleOrDefault(x => x.PasswordReset == code); if (user == null) { return(Warning(viewmodel, "Der Link ist abgelaufen.")); } String newPwd = PasswordHelper.ChangePassword(user, request.Password1, request.Password2); dataCtrl.ChangePassword(user.ID, newPwd); } catch (Exception ex) { return(Error(viewmodel, ex)); } return(Ok(viewmodel, "Dein Passwort wurde gesetzt.")); }
public IHttpActionResult Backend_Detail(Int32 EventID, Int32 SeatNumber) { BackendSeatingViewModel viewmodel = new BackendSeatingViewModel(); SeatDataController dataCtrl = new SeatDataController(); EventDataController eventDataCtrl = new EventDataController(); UserDataController userDataCtrl = new UserDataController(); try { viewmodel.UserOptions = userDataCtrl.GetItems().OrderBy(x => x.FirstName).ToList().ConvertAll(x => { return(new BackendUserViewModelItem().FromModel(x)); }); var seats = dataCtrl.GetItems().Where(x => x.EventID == EventID); Seat model = seats.FirstOrDefault(x => x.SeatNumber == SeatNumber); if (model == null) { model = new Seat() { SeatNumber = SeatNumber, State = 0, Event = eventDataCtrl.GetItem(EventID), ReservationDate = DateTime.Now } } ; viewmodel.Data.FromModel(model); } catch (Exception ex) { return(Error(viewmodel, ex)); } return(Ok(viewmodel)); }