<%inherit file="base.html" /> <%! from headphones import db import headphones %> <%def name="headerIncludes()">
 
« Back to manage overview <%def name="body()">

manageManage Albums

Mark selected albums as
%for album in albums: <% if album['Status'] == 'Skipped': grade = 'Z' elif album['Status'] == 'Wanted': grade = 'X' elif album['Status'] == 'Snatched': grade = 'C' else: grade = 'A' myDB = db.DBConnection() totaltracks = len(myDB.select('SELECT TrackTitle from tracks WHERE AlbumID=?', [album['AlbumID']])) havetracks = len(myDB.select('SELECT TrackTitle from tracks WHERE AlbumID=? AND Location IS NOT NULL', [album['AlbumID']])) + len(myDB.select('SELECT TrackTitle from have WHERE ArtistName like ? AND AlbumTitle LIKE ?', [album['ArtistName'], album['AlbumTitle']])) try: percent = (havetracks*100.0)/totaltracks if percent > 100: percent = 100 except (ZeroDivisionError, TypeError): percent = 0 totaltracks = '?' avgbitrate = myDB.action("SELECT AVG(BitRate) FROM tracks WHERE AlbumID=?", [album['AlbumID']]).fetchone()[0] if avgbitrate: bitrate = str(int(avgbitrate)/1000) + ' kbps' else: bitrate = '' albumformatcount = myDB.action("SELECT COUNT(DISTINCT Format) FROM tracks WHERE AlbumID=?", [album['AlbumID']]).fetchone()[0] if albumformatcount == 1: albumformat = myDB.action("SELECT DISTINCT Format FROM tracks WHERE AlbumID=?", [album['AlbumID']]).fetchone()[0] elif albumformatcount > 1: albumformat = 'Mixed' else: albumformat = '' lossy_formats = [str.upper(fmt) for fmt in headphones.LOSSY_MEDIA_FORMATS] %> %endfor
Album Artist Date Type Status Have Bitrate Format
${album['AlbumTitle']} ${album['ArtistName']} ${album['ReleaseDate']} ${album['Type']} ${album['Status']}
${havetracks}/${totaltracks}
${bitrate} ${albumformat}
<%def name="headIncludes()"> <%def name="javascriptIncludes()">