Shift modal closes 1142

we should also write a test for this saying that it pushes the new shift onto the `@user.shifts` and removes the old one for update