Move code to extract iso codes to separate method

This commit is contained in:
Rahul Raturi
2016-08-14 23:30:11 +05:30
parent c5ba18392e
commit f8559fdd7c
2 changed files with 16 additions and 12 deletions

View File

@@ -205,6 +205,19 @@ def artist_credit_to_metadata(node, m, release=False):
m["~artists_sort"] = artistsort
def country_list_from_node(node):
# Extracts iso_3166_1_codes for all countries in `release_event_list`
if "release_event_list" in node.children:
country = []
for re in node.release_event_list[0].release_event:
try:
country.append(
re.area[0].iso_3166_1_code_list[0].iso_3166_1_code[0].text)
except AttributeError:
pass
return country
def label_info_from_node(node):
labels = []
catalog_numbers = []

View File

@@ -406,18 +406,9 @@ class TrackSearchDialog(SearchDialog):
release_to_metadata(rel_node, track)
rg_node = rel_node.release_group[0]
release_group_to_metadata(rg_node, track)
if "release_event_list" in rel_node.children:
# Extract contries list from `release_event_list` element
# Don't use `country` element as it contains information of a single release
# event and is basically for backward compatibility.
country = []
for re in rel_node.release_event_list[0].release_event:
try:
country.append(
re.area[0].iso_3166_1_code_list[0].iso_3166_1_code[0].text)
except AttributeError:
pass
track["country"] = ", ".join(country)
countries = country_list_from_node(rel_node)
if countries:
track["country"] = ", ".join(countries)
self.search_results.append((track, node))
else:
# This handles the case when no release is associated with a track