-
Notifications
You must be signed in to change notification settings - Fork 6
/
Napster.bsstrategy
42 lines (42 loc) · 1.37 KB
/
Napster.bsstrategy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
//
// Napster.plist
// BeardedSpice
//
// Created by Aaron Pollack on 11/17/15.
// Copyright © 2015 GPL v3 http://www.gnu.org/licenses/gpl.html
//
BSStrategy = {
version:2,
displayName:"Napster",
accepts: {
method: "predicateOnTab",
format:"%K LIKE[c] '*app.napster.com*'",
args: ["URL"]
},
isPlaying: function () {return !!$('.player-play-button .icon-pause2').length;},
toggle: function () {
if ($('.player-play-button .icon-pause2').length) {
$('.player-play-button .icon-pause2').click();
} else {
$('.player-play-button .icon-play-button').click()
}
},
next: function () {$('.player-advance-button').click();},
favorite: function () {$('.favorite-button').click()},
previous: function () {$('.player-rewind-button').click();},
pause: function () {$('.player-play-button .icon-pause2').click();},
trackInfo: function () {
function titleize(slug) {
var words = slug.split('-');
return words.map(function(word) {
return word.charAt(0).toUpperCase() + word.substring(1).toLowerCase();
}).join(' ');
}
return {
'track': $('.player-track a')[0].innerText,
'artist': ($('.player-artist a')[0].innerText).split('- ').slice(1).join('- ').trim(),
'album': titleize($('.player-wrapper a').attr('href').split('album/')[1]),
'image': $('.player-album-thumbnail img')[0].src
};
}
}