From 066d3e2d24ece6afa5f43c57a2876d0a00166238 Mon Sep 17 00:00:00 2001 From: Jonathan Cremin Date: Thu, 4 Dec 2014 20:02:27 +0000 Subject: [PATCH] Improve artwork quality --- lib/services/deezer.js | 61 ++++++++++++++++++++++-------------------- 1 file changed, 32 insertions(+), 29 deletions(-) diff --git a/lib/services/deezer.js b/lib/services/deezer.js index 955c8f1..aa73867 100644 --- a/lib/services/deezer.js +++ b/lib/services/deezer.js @@ -18,35 +18,38 @@ module.exports.lookupId = function(id, type) { request.get(apiRoot + path, function(res) { var result = res.body; - - if (type == "album") { - deferred.resolve({ - service: "deezer", - type: type, - id: result.id, - name: result.title, - url: result.link, - artwork: result.cover, - artist: { - name: result.artist.name - }, - }); - } else if (type == "track") { - deferred.resolve({ - service: "deezer", - type: type, - id: result.id, - name: result.title, - url: result.link, - artwork: result.album.cover, - artist: { - name: result.artist.name - }, - album: { - name: result.album.title - } - }); - }; + var cover = result.cover || result.album.cover; + request.get(cover).redirects(0).end(function(res) { + var artwork = res.headers.location.replace("120x120", "200x200"); + if (type == "album") { + deferred.resolve({ + service: "deezer", + type: type, + id: result.id, + name: result.title, + url: result.link, + artwork: artwork, + artist: { + name: result.artist.name + }, + }); + } else if (type == "track") { + deferred.resolve({ + service: "deezer", + type: type, + id: result.id, + name: result.title, + url: result.link, + artwork: artwork, + artist: { + name: result.artist.name + }, + album: { + name: result.album.title + } + }); + }; + }); }); return deferred.promise; };