Merge pull request #370 from philomena-dev/sources-fix

Fix single-source saving bug
This commit is contained in:
liamwhite 2024-11-15 08:42:19 -05:00 committed by GitHub
commit d218a2f45e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 10 additions and 1 deletions

View file

@ -4,6 +4,7 @@ defmodule PhilomenaWeb.Image.SourceController do
alias Philomena.SourceChanges.SourceChange alias Philomena.SourceChanges.SourceChange
alias Philomena.UserStatistics alias Philomena.UserStatistics
alias Philomena.Images.Image alias Philomena.Images.Image
alias Philomena.Images.Source
alias Philomena.Images alias Philomena.Images
alias Philomena.Repo alias Philomena.Repo
import Ecto.Query import Ecto.Query
@ -41,7 +42,9 @@ defmodule PhilomenaWeb.Image.SourceController do
PhilomenaWeb.Api.Json.ImageView.render("show.json", %{image: image, interactions: []}) PhilomenaWeb.Api.Json.ImageView.render("show.json", %{image: image, interactions: []})
) )
changeset = Images.change_image(image) changeset =
%{image | sources: sources_for_edit(image.sources)}
|> Images.change_image()
source_change_count = source_change_count =
SourceChange SourceChange
@ -74,4 +77,9 @@ defmodule PhilomenaWeb.Image.SourceController do
) )
end end
end end
# TODO: this is duplicated in ImageController
defp sources_for_edit(), do: [%Source{}]
defp sources_for_edit([]), do: sources_for_edit()
defp sources_for_edit(sources), do: sources
end end

View file

@ -219,6 +219,7 @@ defmodule PhilomenaWeb.ImageController do
end end
end end
# TODO: this is duplicated in Image.SourceController
defp sources_for_edit(), do: [%Source{}] defp sources_for_edit(), do: [%Source{}]
defp sources_for_edit([]), do: sources_for_edit() defp sources_for_edit([]), do: sources_for_edit()
defp sources_for_edit(sources), do: sources defp sources_for_edit(sources), do: sources