Allowed using auto subs when embedding

This commit is contained in:
Kieran Eglin 2024-07-17 10:13:58 -07:00
parent d423e4486f
commit 5663429152
No known key found for this signature in database
GPG key ID: 193984967FCF432D
3 changed files with 18 additions and 7 deletions

View file

@ -74,6 +74,9 @@ defmodule Pinchflat.Downloading.DownloadOptionBuilder do
{{:download_auto_subs, true}, %{download_subs: true}} ->
acc ++ [:write_auto_subs]
{{:download_auto_subs, true}, %{embed_subs: true}} ->
acc ++ [:write_auto_subs]
{{:embed_subs, true}, %{preferred_resolution: pr}} when pr != :audio ->
acc ++ [:embed_subs]

View file

@ -60,14 +60,14 @@
<ul class="list-disc list-inside mb-4 ml-2 md:ml-5 max-w-prose">
<li :for={{k, v} <- media_center_custom_output_template_options()} class="mt-1">
<.inline_code>{{ <%= k %> }}</.inline_code>
<span :if={v}>- <%= raw(v) %></span>
<span :if={v}>- <%= html_escape({:safe, v}) %></span>
</li>
</ul>
<h3 class="text-lg font-bold mb-2">Other Custom Aliases</h3>
<ul class="list-disc list-inside mb-4 ml-2 md:ml-5 max-w-prose">
<li :for={{k, v} <- other_custom_output_template_options()} class="mt-1">
<.inline_code>{{ <%= k %> }}</.inline_code>
<span :if={v}>- <%= raw(v) %></span>
<span :if={v}>- <%= html_escape({:safe, v}) %></span>
</li>
</ul>
<h3 class="text-lg font-bold mb-2">Common Options</h3>

View file

@ -93,15 +93,23 @@ defmodule Pinchflat.Downloading.DownloadOptionBuilderTest do
end
test "includes :write_auto_subs option when specified", %{media_item: media_item} do
media_item = update_media_profile_attribute(media_item, %{download_subs: true, download_auto_subs: true})
media_item_1 = update_media_profile_attribute(media_item, %{download_subs: true, download_auto_subs: true})
media_item_2 = update_media_profile_attribute(media_item, %{embed_subs: true, download_auto_subs: true})
assert {:ok, res} = DownloadOptionBuilder.build(media_item)
assert {:ok, res_1} = DownloadOptionBuilder.build(media_item_1)
assert {:ok, res_2} = DownloadOptionBuilder.build(media_item_2)
assert :write_auto_subs in res
assert :write_auto_subs in res_1
assert :write_auto_subs in res_2
end
test "doesn't include :write_auto_subs option when download_subs is false", %{media_item: media_item} do
media_item = update_media_profile_attribute(media_item, %{download_subs: false, download_auto_subs: true})
test "doesn't include :write_auto_subs option when download_subs and embed_subs is false", %{media_item: media_item} do
media_item =
update_media_profile_attribute(media_item, %{
download_subs: false,
embed_subs: false,
download_auto_subs: true
})
assert {:ok, res} = DownloadOptionBuilder.build(media_item)