package Friends import ( "encoding/json" "io/ioutil" "net/http" "git.tovijaeschke.xyz/tovi/Capsule/Backend/Database" "git.tovijaeschke.xyz/tovi/Capsule/Backend/Models" "git.tovijaeschke.xyz/tovi/Capsule/Backend/Util" ) func FriendRequest(w http.ResponseWriter, r *http.Request) { var ( user Models.User requestBody []byte requestJson map[string]interface{} friendID string friendRequest Models.FriendRequest ok bool err error ) user, err = Util.GetUserById(w, r) if err != nil { http.Error(w, "Not Found", http.StatusNotFound) return } requestBody, err = ioutil.ReadAll(r.Body) if err != nil { http.Error(w, "Not Found", http.StatusNotFound) return } json.Unmarshal(requestBody, &requestJson) if requestJson["id"] == nil { http.Error(w, "Invalid Data", http.StatusBadRequest) return } friendID, ok = requestJson["id"].(string) if !ok { http.Error(w, "Error", http.StatusInternalServerError) return } friendRequest = Models.FriendRequest{ UserID: user.ID, FriendID: friendID, } err = Database.CreateFriendRequest(&friendRequest) if requestJson["id"] == nil { http.Error(w, "Error", http.StatusInternalServerError) return } w.WriteHeader(http.StatusNoContent) }