From b24a252cb8441cac91b0da177a316498bdee9598 Mon Sep 17 00:00:00 2001 From: Liam Date: Mon, 27 Jan 2025 20:11:55 -0500 Subject: [PATCH] Update aspect ratio on dimension change --- lib/philomena/images/image.ex | 16 ++++++++++++++-- lib/philomena/images/thumbnailer.ex | 3 ++- 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/lib/philomena/images/image.ex b/lib/philomena/images/image.ex index e02356dd..2a10fa4c 100644 --- a/lib/philomena/images/image.ex +++ b/lib/philomena/images/image.ex @@ -235,13 +235,25 @@ defmodule Philomena.Images.Image do def thumbnail_changeset(image, attrs) do image - |> cast(attrs, [:image_sha512_hash, :image_size, :image_width, :image_height]) + |> cast(attrs, [ + :image_sha512_hash, + :image_size, + :image_width, + :image_height, + :image_aspect_ratio + ]) |> change(thumbnails_generated: true, duplication_checked: true) end def process_changeset(image, attrs) do image - |> cast(attrs, [:image_sha512_hash, :image_size, :image_width, :image_height]) + |> cast(attrs, [ + :image_sha512_hash, + :image_size, + :image_width, + :image_height, + :image_aspect_ratio + ]) |> change(processed: true) end diff --git a/lib/philomena/images/thumbnailer.ex b/lib/philomena/images/thumbnailer.ex index b8be742b..c90a638b 100644 --- a/lib/philomena/images/thumbnailer.ex +++ b/lib/philomena/images/thumbnailer.ex @@ -134,7 +134,8 @@ defmodule Philomena.Images.Thumbnailer do "image_sha512_hash" => Sha512.file(file), "image_size" => File.stat!(file).size, "image_width" => width, - "image_height" => height + "image_height" => height, + "image_aspect_ratio" => width / height }) |> Repo.update!() end