mirror of
https://github.com/Tautulli/Tautulli.git
synced 2025-07-06 05:01:14 -07:00
Add ability to delete MusicBrainz lookup info
This commit is contained in:
parent
cba43f675a
commit
6908034a86
4 changed files with 20 additions and 11 deletions
2
API.md
2
API.md
|
@ -174,7 +174,7 @@ Delete the 3rd party API lookup info.
|
|||
```
|
||||
Required parameters:
|
||||
rating_key (int): 1234
|
||||
(Note: Must be the movie, show, or artist rating key)
|
||||
(Note: Must be the movie, show, artist, album, or track rating key)
|
||||
Optional parameters:
|
||||
None
|
||||
|
||||
|
|
|
@ -405,11 +405,11 @@ DOCUMENTATION :: END
|
|||
</a>
|
||||
</div>
|
||||
% endif
|
||||
% if data.get('tvmaze_id') or data.get('themoviedb_id'):
|
||||
% if data.get('tvmaze_id') or data.get('themoviedb_id') or data.get('musicbrainz_id'):
|
||||
<div class="btn-group">
|
||||
<button class="btn btn-danger btn-edit" data-toggle="modal" aria-pressed="false" autocomplete="off" id="delete-lookup-info"
|
||||
data-id="${data['grandparent_rating_key'] if data['media_type'] in ('episode', 'track') else data['parent_rating_key'] if data['media_type'] in ('season', 'album') else data['rating_key']}"
|
||||
data-title="${data['grandparent_title'] if data['media_type'] in ('episode', 'track') else data['parent_title'] if data['media_type'] in ('season', 'album') else data['title']}">
|
||||
data-id="${data['grandparent_rating_key'] if data['media_type'] == 'episode' else data['parent_rating_key'] if data['media_type'] == 'season' else data['rating_key']}"
|
||||
data-title="${data['grandparent_title'] if data['media_type'] == 'episode' else data['parent_title'] if data['media_type'] == 'season' else data['title']}">
|
||||
<i class="fa fa-search"></i> Delete Lookup Info
|
||||
</button>
|
||||
</div>
|
||||
|
@ -751,7 +751,7 @@ DOCUMENTATION :: END
|
|||
});
|
||||
</script>
|
||||
% endif
|
||||
% if data.get('tvmaze_id') or data.get('themoviedb_id'):
|
||||
% if data.get('tvmaze_id') or data.get('themoviedb_id') or data.get('musicbrainz_id'):
|
||||
<script>
|
||||
$('#delete-lookup-info').on('click', function () {
|
||||
var msg = 'Are you sure you want to delete the 3rd party API lookup for <strong>' + $(this).data('title') + '</strong>?<br><br>' +
|
||||
|
|
|
@ -1316,15 +1316,16 @@ class DataFactory(object):
|
|||
if str(rating_key).isdigit():
|
||||
lookup_key = rating_key
|
||||
elif metadata:
|
||||
if metadata['media_type'] in ('movie', 'show', 'artist'):
|
||||
if metadata['media_type'] in ('movie', 'show', 'artist', 'album', 'track'):
|
||||
lookup_key = metadata['rating_key']
|
||||
elif metadata['media_type'] in ('season', 'album'):
|
||||
elif metadata['media_type'] == 'season':
|
||||
lookup_key = metadata['parent_rating_key']
|
||||
elif metadata['media_type'] in ('episode', 'track'):
|
||||
elif metadata['media_type'] == 'episode':
|
||||
lookup_key = metadata['grandparent_rating_key']
|
||||
|
||||
lookup_info = {'tvmaze_id': '',
|
||||
'themoviedb_id': ''}
|
||||
'themoviedb_id': '',
|
||||
'musizbrainz_id': ''}
|
||||
|
||||
if lookup_key:
|
||||
try:
|
||||
|
@ -1339,6 +1340,13 @@ class DataFactory(object):
|
|||
themoviedb_info = monitor_db.select_single(query, args=[lookup_key])
|
||||
if themoviedb_info:
|
||||
lookup_info['themoviedb_id'] = themoviedb_info['themoviedb_id']
|
||||
|
||||
query = 'SELECT musicbrainz_id FROM musicbrainz_lookup ' \
|
||||
'WHERE rating_key = ?'
|
||||
musicbrainz_info = monitor_db.select_single(query, args=[lookup_key])
|
||||
if musicbrainz_info:
|
||||
lookup_info['musicbrainz_id'] = musicbrainz_info['musicbrainz_id']
|
||||
|
||||
except Exception as e:
|
||||
logger.warn(u"Tautulli DataFactory :: Unable to execute database query for get_lookup_info: %s." % e)
|
||||
|
||||
|
@ -1352,7 +1360,8 @@ class DataFactory(object):
|
|||
% (title, rating_key))
|
||||
result_tvmaze = monitor_db.action('DELETE FROM tvmaze_lookup WHERE rating_key = ?', [rating_key])
|
||||
result_themoviedb = monitor_db.action('DELETE FROM themoviedb_lookup WHERE rating_key = ?', [rating_key])
|
||||
return True if (result_tvmaze or result_themoviedb) else False
|
||||
result_musicbrainz = monitor_db.action('DELETE FROM musicbrainz_lookup WHERE rating_key = ?', [rating_key])
|
||||
return True if (result_tvmaze or result_themoviedb or result_musicbrainz) else False
|
||||
|
||||
def get_search_query(self, rating_key=''):
|
||||
monitor_db = database.MonitorDatabase()
|
||||
|
|
|
@ -4302,7 +4302,7 @@ class WebInterface(object):
|
|||
```
|
||||
Required parameters:
|
||||
rating_key (int): 1234
|
||||
(Note: Must be the movie, show, or artist rating key)
|
||||
(Note: Must be the movie, show, artist, album, or track rating key)
|
||||
Optional parameters:
|
||||
None
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue