public IHttpActionResult PutUser(int id, UserInfo user) { var ms = vs.validateModel(user); if (ms.Count > 0) { return(BadRequest(ms)); } try { if (id != user.Id) { return(BadRequest()); } string headerToken = ts.getTokenFromHeader(Request); User u = db.Users.Include("Token") .Where(us => us.Token.AccessToken == headerToken).FirstOrDefault(); if (u == null || !u.IsAdmin) { return(Unauthorized()); } var dbuser = db.Users.Find(user.Id); dbuser.Name = user.Name; /////// UPDATE USER PROPS db.Entry(dbuser).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); } catch (Exception) { if (!UserExists(id)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }
public IHttpActionResult PostMultipleReservations(List <ReservationPublic> reservations) { try { string headerToken = ts.getTokenFromHeader(Request); User u = db.Users.Include("Token") .Where(us => us.Token.AccessToken == headerToken).FirstOrDefault(); List <Reservation> newReservations = new List <Reservation>(); reservations.ForEach(r => { Reservation reservation = new Reservation(); reservation.Event = db.Events.Find(r.Event); reservation.Row = db.Rows.Find(r.Row); reservation.Seat = db.Seats.Find(r.Seat); reservation.Owner = u; newReservations.Add(reservation); }); foreach (Reservation r in newReservations) { var ms = vs.validateModel(r); if (ms.Count > 0) { return(BadRequest(ms)); } } db.Reservations.AddRange(newReservations); db.SaveChanges(); return(Ok()); } catch (Exception e) { return(InternalServerError(e)); } }