diff --git a/.DS_Store b/.DS_Store deleted file mode 100644 index a9bd2e7..0000000 Binary files a/.DS_Store and /dev/null differ diff --git a/.gitignore b/.gitignore index 2d7189a..9495ca7 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,4 @@ data/* images/* -.DS_Store \ No newline at end of file +.DS_Store diff --git a/handlers.go b/handlers.go index 92fa3f1..e84636a 100644 --- a/handlers.go +++ b/handlers.go @@ -231,20 +231,17 @@ func GetItemImageHandler(w http.ResponseWriter, r *http.Request) { // Retrieve the item from the database var item Item if err := db.First(&item, itemID).Error; err != nil { - http.Error(w, "Item not found", http.StatusNotFound) - return - } - - // Check if the item has an associated image - if item.ImagePath == "" { - http.Error(w, "Item has no image", http.StatusNotFound) - return + item.ImagePath = "images/default.jpg" + } else if item.ImagePath == "" { + item.ImagePath = "images/default.jpg" } // Open the image file imageFile, err := os.Open(item.ImagePath) if err != nil { - http.Error(w, "Unable to open image file", http.StatusInternalServerError) + // Log the error for debugging, but don't return an HTTP error + fmt.Println("Error opening image.", err) + item.ImagePath = "images/default.png" return } defer imageFile.Close() @@ -252,7 +249,8 @@ func GetItemImageHandler(w http.ResponseWriter, r *http.Request) { // Determine the content type of the image imageData, err := io.ReadAll(imageFile) if err != nil { - http.Error(w, "Unable to read image file", http.StatusInternalServerError) + fmt.Println("Error reading image") + item.ImagePath = "images/default.png" return } contentType := http.DetectContentType(imageData)