Add request to get preview url
This commit is contained in:
@@ -72,3 +72,15 @@ type S3FileMetadata struct {
|
||||
DecryptionHeader string `json:"header"`
|
||||
Client string `json:"client"`
|
||||
}
|
||||
|
||||
type GetPreviewUrlRequest struct {
|
||||
FileID int64 `form:"fileID" binding:"required"`
|
||||
Type ente.ObjectType `form:"type" binding:"required"`
|
||||
}
|
||||
|
||||
func (g *GetPreviewUrlRequest) Validate() error {
|
||||
if g.Type != ente.PreviewVideo && g.Type != ente.PreviewImage {
|
||||
return ente.NewBadRequestWithMessage(fmt.Sprintf("unsupported object type %s", g.Type))
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
@@ -25,6 +25,17 @@ func AllObjects(fileID int64, ownerID int64, oType ente.ObjectType) []string {
|
||||
}
|
||||
}
|
||||
|
||||
func PreviewUrl(fileID int64, ownerID int64, oType ente.ObjectType) string {
|
||||
switch oType {
|
||||
case ente.PreviewVideo:
|
||||
return previewVideoPath(fileID, ownerID)
|
||||
case ente.PreviewImage:
|
||||
return previewImagePath(fileID, ownerID)
|
||||
default:
|
||||
panic(fmt.Sprintf("object type %s is not supported", oType))
|
||||
}
|
||||
}
|
||||
|
||||
func previewVideoPath(fileID int64, ownerID int64) string {
|
||||
return fmt.Sprintf("%s%s", BasePrefix(fileID, ownerID), string(ente.PreviewVideo))
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user