Merge pull request 'auth-uploads' (#5) from auth-uploads into dev

Reviewed-on: #5
This commit is contained in:
grng 2025-06-08 18:02:57 +00:00
commit 57137a08d3
11 changed files with 596 additions and 606 deletions

View file

@ -1,7 +1,6 @@
package routes package routes
import ( import (
"encoding/base64"
"os" "os"
"path/filepath" "path/filepath"
"strings" "strings"
@ -42,8 +41,9 @@ func RegisterFileRoutes(cfg *types.StereoConfig, api *gin.RouterGroup) {
return return
} }
b64, err := convertToBase64(filePath) if file.Size <= 0 {
if err != nil { c.JSON(400, gin.H{"error": "file size must be greater than zero"})
return
} }
fileMeta := types.File{ fileMeta := types.File{
@ -51,7 +51,7 @@ func RegisterFileRoutes(cfg *types.StereoConfig, api *gin.RouterGroup) {
Path: filePath, Path: filePath,
Owner: uid, Owner: uid,
CreatedAt: time.Now(), CreatedAt: time.Now(),
Base64: b64, Size: file.Size,
} }
if err := cfg.Database.Create(&fileMeta).Error; err != nil { if err := cfg.Database.Create(&fileMeta).Error; err != nil {
@ -142,13 +142,3 @@ func RegisterFileRoutes(cfg *types.StereoConfig, api *gin.RouterGroup) {
c.JSON(200, files) c.JSON(200, files)
}) })
} }
func convertToBase64(filePath string) (string, error) {
file, err := os.ReadFile(filePath)
if err != nil {
return "", err
}
b64 := base64.StdEncoding.EncodeToString(file)
return b64, nil
}

View file

@ -26,6 +26,6 @@ type File struct {
ID string `gorm:"primaryKey"` ID string `gorm:"primaryKey"`
Path string `gorm:"not null;index"` Path string `gorm:"not null;index"`
Owner string `gorm:"not null;index"` Owner string `gorm:"not null;index"`
Size int64 `gorm:"not null;type:bigint"`
CreatedAt time.Time `gorm:"autoCreateTime"` CreatedAt time.Time `gorm:"autoCreateTime"`
Base64 string `gorm:"type:text"`
} }