feat: add basic deletion finding
This commit is contained in:
@@ -17,8 +17,8 @@ func RegisterFileRoutes(file *gin.RouterGroup, env bootstrap.Environment, db *go
|
||||
// prefix: file
|
||||
// for example: /file/<file-name>
|
||||
file.GET("/:filename", func(c *gin.Context) {
|
||||
f := c.Param("filename")
|
||||
p := filepath.Join(env.ContentDirectory, f)
|
||||
fileParam := c.Param("filename")
|
||||
p := filepath.Join(env.ContentDirectory, fileParam)
|
||||
|
||||
c.File(p)
|
||||
})
|
||||
@@ -50,7 +50,7 @@ func RegisterFileRoutes(file *gin.RouterGroup, env bootstrap.Environment, db *go
|
||||
return
|
||||
}
|
||||
|
||||
if err := database.RegisterFile(db, fileData); err != nil {
|
||||
if err := database.CreateFile(db, fileData); err != nil {
|
||||
if errors.Is(err, gorm.ErrDuplicatedKey) {
|
||||
slog.Debug("discarding file since its checksum is a duplicate", "error", err)
|
||||
c.JSON(http.StatusConflict, response.BasicResponse{
|
||||
@@ -80,4 +80,18 @@ func RegisterFileRoutes(file *gin.RouterGroup, env bootstrap.Environment, db *go
|
||||
Data: fileData,
|
||||
})
|
||||
})
|
||||
|
||||
file.DELETE("/:filename", func(c *gin.Context) {
|
||||
fileParam := c.Param("filename")
|
||||
f, err := database.FindFileByName(db, fileParam)
|
||||
|
||||
slog.Info("received a detelte request for a file", "file", f, "filename", fileParam)
|
||||
|
||||
if err != nil {
|
||||
slog.Error("failed to filter the file database for the name")
|
||||
c.JSON(http.StatusNotFound, response.BasicResponse{
|
||||
Msg: response.IntErrMes,
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user