check only the existence of the thumb and add ContentType metadata when creating the thumb
This commit is contained in:
parent
216efb95a8
commit
48d6803d17
|
@ -87,11 +87,8 @@ func (api *fileApi) download(c echo.Context) error {
|
||||||
servedName = thumbSize + "_" + filename
|
servedName = thumbSize + "_" + filename
|
||||||
servedPath = baseFilesPath + "/thumbs_" + filename + "/" + servedName
|
servedPath = baseFilesPath + "/thumbs_" + filename + "/" + servedName
|
||||||
|
|
||||||
// check if the thumb exists:
|
// create a new thumb if it doesn exists
|
||||||
// - if doesn't exist - create a new thumb with the specified thumb size
|
if exists, _ := fs.Exists(servedPath); !exists {
|
||||||
// - if exists - compare last modified dates to determine whether the thumb should be recreated
|
|
||||||
tAttrs, tAttrsErr := fs.Attributes(servedPath)
|
|
||||||
if tAttrsErr != nil || oAttrs.ModTime.After(tAttrs.ModTime) {
|
|
||||||
if err := fs.CreateThumb(originalPath, servedPath, thumbSize); err != nil {
|
if err := fs.CreateThumb(originalPath, servedPath, thumbSize); err != nil {
|
||||||
servedPath = originalPath // fallback to the original
|
servedPath = originalPath // fallback to the original
|
||||||
}
|
}
|
||||||
|
|
|
@ -411,8 +411,12 @@ func (s *System) CreateThumb(originalKey string, thumbKey, thumbSize string) err
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
opts := &blob.WriterOptions{
|
||||||
|
ContentType: r.ContentType(),
|
||||||
|
}
|
||||||
|
|
||||||
// open a thumb storage writer (aka. prepare for upload)
|
// open a thumb storage writer (aka. prepare for upload)
|
||||||
w, writerErr := s.bucket.NewWriter(s.ctx, thumbKey, nil)
|
w, writerErr := s.bucket.NewWriter(s.ctx, thumbKey, opts)
|
||||||
if writerErr != nil {
|
if writerErr != nil {
|
||||||
return writerErr
|
return writerErr
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue