non-hi-only
morpheus65535 4 months ago
parent 3ed863a3be
commit c22435dacf

@ -182,7 +182,9 @@ def list_missing_subtitles(no=None, epno=None, send_event=True):
if any(x['code2'] == language['language'] for x in get_audio_profile_languages( if any(x['code2'] == language['language'] for x in get_audio_profile_languages(
episode_subtitles.audio_language)): episode_subtitles.audio_language)):
continue continue
desired_subtitles_list.append([language['language'], language['forced'], language['hi']]) desired_subtitles_list.append({'language': language['language'],
'forced': language['forced'],
'hi': language['hi']})
# get existing subtitles # get existing subtitles
actual_subtitles_list = [] actual_subtitles_list = []
@ -204,7 +206,9 @@ def list_missing_subtitles(no=None, epno=None, send_event=True):
elif subtitles[1] == 'hi': elif subtitles[1] == 'hi':
forced = False forced = False
hi = True hi = True
actual_subtitles_list.append([lang, str(forced), str(hi)]) actual_subtitles_list.append({'language': lang,
'forced': str(forced),
'hi': str(hi)})
# check if cutoff is reached and skip any further check # check if cutoff is reached and skip any further check
cutoff_met = False cutoff_met = False
@ -231,24 +235,30 @@ def list_missing_subtitles(no=None, epno=None, send_event=True):
# get difference between desired and existing subtitles # get difference between desired and existing subtitles
missing_subtitles_list = [] missing_subtitles_list = []
for item in desired_subtitles_list: for item in desired_subtitles_list:
if item not in actual_subtitles_list: if item['hi'] == 'never':
missing_subtitles_list.append(item) desired_item = {'language': item['language'], 'forced': item['forced'], 'hi': 'False'}
if desired_item not in actual_subtitles_list:
# remove missing that have hi subtitles for this language in existing missing_subtitles_list.append(desired_item)
for item in actual_subtitles_list: elif item['hi'] == 'hi_only':
if item[2] == 'True': desired_item = {'language': item['language'], 'forced': item['forced'], 'hi': 'True'}
try: if desired_item not in actual_subtitles_list:
missing_subtitles_list.remove([item[0], 'False', 'False']) missing_subtitles_list.append(desired_item)
except ValueError: elif item['hi'] == 'hi_also':
pass desired_items = [{'language': item['language'], 'forced': item['forced'], 'hi': 'True'},
{'language': item['language'], 'forced': item['forced'], 'hi': 'False'}]
if [x for x in desired_items if x in actual_subtitles_list]:
continue
else:
for desired_item in desired_items:
missing_subtitles_list.append(desired_item)
# make the missing languages list looks like expected # make the missing languages list looks like expected
missing_subtitles_output_list = [] missing_subtitles_output_list = []
for item in missing_subtitles_list: for item in missing_subtitles_list:
lang = item[0] lang = item['language']
if item[1] == 'True': if item['forced'] == 'True':
lang += ':forced' lang += ':forced'
elif item[2] == 'True': elif item['hi'] == 'True':
lang += ':hi' lang += ':hi'
missing_subtitles_output_list.append(lang) missing_subtitles_output_list.append(lang)

Loading…
Cancel
Save