// Thanks for some inspiration and code examples
// http://ericburling.org/jetpacks/lfm.html
var previous = ""
function find_tab() {
for (var tab in jetpack.tabs) {
if (jetpack.tabs[tab].url == "http://songza.com/") {
return tab;
}
}
return false;
}
function show_song() {
jetpack.notifications.show({title: 'Currently Playing on Songza:', body: get_song(), icon: 'http://songza.com/favicon.ico'});
}
function get_song() {
return $(get_dom()).find("#songza-name").text();
}
function get_dom() {
return jetpack.tabs[find_tab()].contentDocument
}
function notify() {
if (get_song() != previous && get_song() != "" && is_playing() == true) {
show_song();
previous = get_song();
}
}
function make_script(command) {
var script_to_add = get_dom().createElement("script");
script_to_add.innerHTML=command;
get_dom().body.appendChild(script_to_add);
delete script_to_add;
}
function pause() {
make_script("Songza.pause()");
}
function play() {
make_script("Songza.resume()");
}
function next() {
make_script("Songza.playNext()");
}
function prev() {
make_script("Songza.playPrev()");
}
function is_playing() {
return $(get_dom()).find("#songza-status").text() != "Paused";
}
function update_ui(widget) {
if (find_tab() == false || $(get_dom()).find("#player-wrap").css("display") == "none") {
$(".pause", widget).css({display:"none"});
$(".play", widget).css({display:"none"});
$(".prev", widget).css({display:"none"});
$(".next", widget).css({display:"none"});
}
else if (is_playing() == true) {
$(".pause", widget).css({display:"inline"});
$(".play", widget).css({display:"none"});
$(".prev", widget).css({display:"inline"});
$(".next", widget).css({display:"inline"});
}
else {
$(".play", widget).css({display:"inline"});
$(".pause", widget).css({display:"none"});
$(".prev", widget).css({display:"inline"});
$(".next", widget).css({display:"inline"});
}
}
function main(widget) {
update_ui(widget);
if (find_tab() != false) {notify();}
}
jetpack.statusBar.append({
html: '<img src="http://stupidbob307.eshlook.com/jetpacks/images/prev.png" class="prev" />\
<span class="pause"> <img src="http://stupidbob307.eshlook.com/jetpacks/images/pause.png" /> </span> \
<img src="http://stupidbob307.eshlook.com/jetpacks/images/play.png" class="play" /> \
<img src="http://stupidbob307.eshlook.com/jetpacks/images/next.png" class="next" />',
width: 50,
onReady: function(widget) {
main(widget);
$(".next", widget).click(function(){
next();
update_ui(widget);
});
$(".play", widget).click(function(){
play();
update_ui(widget);
});
$(".pause", widget).click(function(){
pause();
update_ui(widget);
});
$(".prev", widget).click(function(){
prev();
update_ui(widget);
});
setInterval(main,1000,widget);
}
});