diff --git a/lib/pinchflat/sources/source.ex b/lib/pinchflat/sources/source.ex index 38da139..d595ef0 100644 --- a/lib/pinchflat/sources/source.ex +++ b/lib/pinchflat/sources/source.ex @@ -28,7 +28,7 @@ defmodule Pinchflat.Sources.Source do series_directory index_frequency_minutes fast_index - use_cookies + cookie_behaviour download_media last_indexed_at original_url @@ -78,7 +78,7 @@ defmodule Pinchflat.Sources.Source do field :collection_type, Ecto.Enum, values: [:channel, :playlist] field :index_frequency_minutes, :integer, default: 60 * 24 field :fast_index, :boolean, default: false - field :use_cookies, :boolean, default: false + field :cookie_behaviour, Ecto.Enum, values: [:disabled, :indexing_only, :all_operations], default: :disabled field :download_media, :boolean, default: true field :last_indexed_at, :utc_datetime # Only download media items that were published after this date diff --git a/priv/repo/erd.png b/priv/repo/erd.png index 2acc8aa..4b10886 100644 Binary files a/priv/repo/erd.png and b/priv/repo/erd.png differ diff --git a/priv/repo/migrations/20250304185528_add_cookie_behaviour_to_sources.exs b/priv/repo/migrations/20250304185528_add_cookie_behaviour_to_sources.exs new file mode 100644 index 0000000..0eb9eb0 --- /dev/null +++ b/priv/repo/migrations/20250304185528_add_cookie_behaviour_to_sources.exs @@ -0,0 +1,18 @@ +defmodule Pinchflat.Repo.Migrations.AddCookieBehaviourToSources do + use Ecto.Migration + + def change do + alter table(:sources) do + add :cookie_behaviour, :string, null: false, default: "disabled" + end + + execute( + "UPDATE sources SET cookie_behaviour = 'all_operations' WHERE use_cookies = TRUE", + "UPDATE sources SET use_cookies = TRUE WHERE cookie_behaviour = 'all_operations'" + ) + + alter table(:sources) do + remove :use_cookies, :boolean, null: false, default: false + end + end +end