2015-11-02 11:36:10 +01:00

64 lines
1.4 KiB
JavaScript

/*
* Document : radio.js
* Author : Gerrit Linnemann
* Description: Radio-functionallity.
*
*/
var Radio = function() {
var channels;
var $navigation;
return {
init: function(channels_) {
channels = channels_;
$navigation = $('#navigation');
initTiles();
console.log('Radio initialized with ' + channels.length + ' channels');
}
};
/* private */
function initTiles() {
var $tileTemplate = $navigation.find('.tile.template');
var counter = 1;
while(counter <= channels.length) {
var idx = counter - 1;
var channel = channels[idx];
var $tile = $tileTemplate.clone();
fillTileWithChannel($tile, channel);
addClickToTile($tile);
counter++;
}
}
/* private */
function fillTileWithChannel($tile, channel) {
$tile.appendTo($navigation);
$tile.attr('href', channel.stream).attr('title', channel.title).attr('data-type', channel.type);
$tile.find('.icon').attr('src', channel.icon);
$tile.find('.title').html(channel.title).hide();
$tile.hide();
$tile.removeClass('hidden');
$tile.fadeIn();
}
/* private */
function addClickToTile($tile) {
$tile.click(function(e) {
e.preventDefault();
var stream = $tile.attr('href');
console.log('Stream: ' + stream);
});
}
}();