2019-05-03 08:17:27 +10:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2013-02-05 14:16:51 -05:00
|
|
|
class UploadSerializer < ApplicationSerializer
|
2017-08-22 16:40:01 -04:00
|
|
|
attributes :id,
|
|
|
|
:url,
|
|
|
|
:original_filename,
|
|
|
|
:filesize,
|
|
|
|
:width,
|
|
|
|
:height,
|
2018-08-28 12:48:43 +10:00
|
|
|
:thumbnail_width,
|
|
|
|
:thumbnail_height,
|
2017-08-22 16:40:01 -04:00
|
|
|
:extension,
|
|
|
|
:short_url,
|
2020-04-15 09:19:59 +10:00
|
|
|
:short_path,
|
2019-02-21 10:13:37 +08:00
|
|
|
:retain_hours,
|
2022-09-20 10:28:17 +01:00
|
|
|
:human_filesize,
|
|
|
|
:dominant_color
|
2020-01-16 13:50:27 +10:00
|
|
|
|
2024-10-18 12:55:14 +04:00
|
|
|
has_one :thumbnail,
|
|
|
|
serializer: UploadThumbnailSerializer,
|
|
|
|
root: false,
|
|
|
|
embed: :object,
|
|
|
|
if: -> { SiteSetting.create_thumbnails && object.has_thumbnail? }
|
|
|
|
|
2020-01-16 13:50:27 +10:00
|
|
|
def url
|
2022-09-29 09:24:33 +10:00
|
|
|
if object.for_site_setting
|
|
|
|
object.url
|
2023-01-09 12:20:10 +00:00
|
|
|
else
|
2022-09-29 09:24:33 +10:00
|
|
|
UrlHelper.cook_url(object.url, secure: SiteSetting.secure_uploads? && object.secure)
|
2023-01-09 12:20:10 +00:00
|
|
|
end
|
2020-01-16 13:50:27 +10:00
|
|
|
end
|
2013-02-05 14:16:51 -05:00
|
|
|
end
|