summaryrefslogtreecommitdiffstats
path: root/clerk_helper
diff options
context:
space:
mode:
authorRasmus Steinke <rasi@xssn.at>2015-07-29 19:55:55 +0200
committerRasmus Steinke <rasi@xssn.at>2015-07-29 19:55:55 +0200
commit2d3af663d681d057e5bd6aabd6afb37f0d737302 (patch)
treec608468ae229aa4334cdc151cbdc2dfcec81ee45 /clerk_helper
parent76f748dabe36324d9147f6fff53269304d57a45f (diff)
downloadperl-app-clerk-2d3af663d681d057e5bd6aabd6afb37f0d737302.tar.gz
perl-app-clerk-2d3af663d681d057e5bd6aabd6afb37f0d737302.tar.xz
print warnings on missing tags
Diffstat (limited to 'clerk_helper')
-rwxr-xr-xclerk_helper103
1 files changed, 45 insertions, 58 deletions
diff --git a/clerk_helper b/clerk_helper
index b0d4c8c..91b6042 100755
--- a/clerk_helper
+++ b/clerk_helper
@@ -69,24 +69,55 @@ def createCache(args):
for i in alist:
date_time=i['last-modified']
mtime=date_time[:10]
- if isinstance(i['albumartist'], list):
- albumartist = i['albumartist'][0]
+
+ if 'albumartist' in i:
+ if isinstance(i['albumartist'], list):
+ albumartist = i['albumartist'][0]
+ else:
+ albumartist = i['albumartist']
+ else:
+ print("albumartist tag missing from "+i['file'])
+
+ if 'date' in i:
+ date=i['date']
+ if isinstance(i['date'], list):
+ album = i['date'][0]
+ else:
+ album = i['date']
+ else:
+ print("date tag missing from "+i['file'])
+
+ if 'title' in i:
+ if isinstance(i['title'], list):
+ title = i['title'][0]
+ else:
+ title=i['title']
else:
- albumartist = i['albumartist']
- date=i['date']
- if isinstance(i['album'], list):
- album = i['album'][0]
+ print("title tag missing from "+i['file'])
+
+ if 'track' in i:
+ if isinstance(i['track'], list):
+ track = i['track'][0]
+ else:
+ track = i['track']
else:
- album = i['album']
- title=i['title']
- if isinstance(i['track'], list):
- track = i['track'][0]
+ print("track tag missing from "+i['file'])
+
+ if 'album' in i:
+ if isinstance(i['album'], list):
+ track = i['album'][0]
+ else:
+ track = i['album']
else:
- track = i['track']
- if isinstance(i['artist'], list):
- artist = i['artist'][0]
+ print("album tag missing from "+i['file'])
+
+ if 'artist' in i:
+ if isinstance(i['artist'], list):
+ artist = i['artist'][0]
+ else:
+ artist = i['artist']
else:
- artist = i['artist']
+ print("artist tag missing from "+i['file'])
latest.append(mtime+" • "+albumartist+" • "+date+" • "+album)
@@ -106,41 +137,6 @@ def track_sort(track_num):
return int(track_num.split('/')[0])
-def getTracks(args):
- with open(os.getenv('HOME')+'/.config/clerk/tracks.cache.json') as cache_file:
- content = json.load(cache_file)
- sorted_content = sorted(content, key=lambda x: (x['artist'],
- x['album'],
- x['disc'],
- track_sort(x['track'])))
- print('\n'.join([os.getenv('separator').join([entry['artist'],
- entry['track'],
- entry['title'],
- entry['album']])
- for entry in sorted_content]))
-
-
-def getAlbums(args):
- with open(os.getenv('HOME')+'/.config/clerk/albums.cache.json') as cache_file:
- content = json.load(cache_file)
- sorted_content = sorted(content, key=lambda x: (x['albumartist'], x['date'], x['album']))
- print('\n'.join([os.getenv('separator').join([entry['albumartist'],
- entry['date'],
- entry['album']])
- for entry in sorted_content]))
-
-
-def getLatest(args):
- with open(os.getenv('HOME')+'/.config/clerk/albums.cache.json') as cache_file:
- content = json.load(cache_file)
- sorted_content = sorted(content, key=lambda x: (x['last-modified']), reverse=True)
- print('\n'.join([os.getenv('separator').join([entry['date'],
- entry['albumartist'],
- entry['album'],
- entry['last-modified']])
- for entry in sorted_content]))
-
-
def loadjson(fname):
with open(fname) as data_file:
data = json.load(data_file)
@@ -424,15 +420,6 @@ parser_saveto.set_defaults(call=savetoPlaylist)
parser_createcache = subparsers.add_parser('createcache', help="create track cache for clerk")
parser_createcache.set_defaults(call=createCache)
-parser_gettracks = subparsers.add_parser('getTracks', help="get all tracks from track cache for clerk")
-parser_gettracks.set_defaults(call=getTracks)
-
-parser_getalbums = subparsers.add_parser('getAlbums', help="get all albums from album cache for clerk")
-parser_getalbums.set_defaults(call=getAlbums)
-
-parser_getlatest = subparsers.add_parser('getLatest', help="get all albums from album cache for clerk, sorted by mtime")
-parser_getlatest.set_defaults(call=getLatest)
-
parser_ratealbum = subparsers.add_parser('ratealbum', help="rate current Album")
parser_ratealbum.add_argument('artist', action="store")
parser_ratealbum.add_argument('album', action="store")