feat: remove authentication requirement for avatar and image upload endpoints;
fix: remove 500 error responses from upload endpoints; fix: return validation error strings instead of error lists; fix: handle invalid avatar upload IDs with 400 Bad Request response; fix: add missing S3Controller to controller initialization; fix: change avatar_upload_id to string type and update validation rules; chore: add license header to smtp.go; refactor: replace manual proxy implementation with httputil.ReverseProxy; fix: inject S3Service dependency into ProfileService; fix: set color and color_grad fields during profile update; fix: correct DTO mapping for profile and settings; fix: check object existence before copying in SaveUpload; fix: adjust profile DTO mapping function for proper pointer handling
This commit is contained in:
@@ -47,14 +47,14 @@ func NewS3Controller(_log *zap.Logger, _us services.S3Service) Controller {
|
||||
{
|
||||
HttpMethod: GET,
|
||||
Path: "/avatar",
|
||||
Authorization: enums.UserRole,
|
||||
Authorization: enums.GuestRole,
|
||||
Middleware: []gin.HandlerFunc{},
|
||||
Function: ctrl.getAvatarUploadUrl,
|
||||
},
|
||||
{
|
||||
HttpMethod: GET,
|
||||
Path: "/image",
|
||||
Authorization: enums.UserRole,
|
||||
Authorization: enums.GuestRole,
|
||||
Middleware: []gin.HandlerFunc{},
|
||||
Function: ctrl.getImageUploadUrl,
|
||||
},
|
||||
@@ -62,14 +62,11 @@ func NewS3Controller(_log *zap.Logger, _us services.S3Service) Controller {
|
||||
}
|
||||
}
|
||||
|
||||
// XXX: untested
|
||||
// @Summary Get presigned URL for avatar upload
|
||||
// @Tags Upload
|
||||
// @Accept json
|
||||
// @Produce json
|
||||
// @Security JWT
|
||||
// @Success 200 {object} models.PresignedUploadResponse "Presigned URL and form data"
|
||||
// @Failure 500 "Internal server error"
|
||||
// @Router /upload/avatar [get]
|
||||
func (ctrl *S3Controller) getAvatarUploadUrl(c *gin.Context) {
|
||||
url, formData, err := ctrl.s3.CreateAvatarUrl()
|
||||
@@ -85,14 +82,11 @@ func (ctrl *S3Controller) getAvatarUploadUrl(c *gin.Context) {
|
||||
})
|
||||
}
|
||||
|
||||
// XXX: untested
|
||||
// @Summary Get presigned URL for image upload
|
||||
// @Tags Upload
|
||||
// @Accept json
|
||||
// @Produce json
|
||||
// @Security JWT
|
||||
// @Success 200 {object} models.PresignedUploadResponse "Presigned URL and form data"
|
||||
// @Failure 500 "Internal server error"
|
||||
// @Router /upload/image [get]
|
||||
func (ctrl *S3Controller) getImageUploadUrl(c *gin.Context) {
|
||||
url, formData, err := ctrl.s3.CreateImageUrl()
|
||||
|
||||
Reference in New Issue
Block a user