Encrypted messaging app
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

44 lines
1019 B

  1. package Friends
  2. import (
  3. "net/http"
  4. "git.tovijaeschke.xyz/tovi/Envelope/Backend/Database"
  5. "git.tovijaeschke.xyz/tovi/Envelope/Backend/Models"
  6. "github.com/gorilla/mux"
  7. )
  8. // RejectFriendRequest rejects friend requests
  9. func RejectFriendRequest(w http.ResponseWriter, r *http.Request) {
  10. var (
  11. friendRequest Models.FriendRequest
  12. urlVars map[string]string
  13. friendRequestID string
  14. ok bool
  15. err error
  16. )
  17. urlVars = mux.Vars(r)
  18. friendRequestID, ok = urlVars["requestID"]
  19. if !ok {
  20. http.Error(w, "Not Found", http.StatusNotFound)
  21. return
  22. }
  23. friendRequest, err = Database.GetFriendRequestByID(friendRequestID)
  24. if err != nil {
  25. http.Error(w, "Error", http.StatusInternalServerError)
  26. w.WriteHeader(http.StatusInternalServerError)
  27. return
  28. }
  29. err = Database.DeleteFriendRequest(&friendRequest)
  30. if err != nil {
  31. http.Error(w, "Error", http.StatusInternalServerError)
  32. w.WriteHeader(http.StatusInternalServerError)
  33. return
  34. }
  35. w.WriteHeader(http.StatusNoContent)
  36. }