};
$(window).on("popstate", function(e) {
- if (e.originalEvent.state !== null) {loadPage(location.href, false);}
+ loadPage(location.href, false);
});
loadPage = function(href, push_state) {
/****************************************************/
var timer = null;
- var refresh_onair_interval = 25000;
var ticker_interval = null;
- /*
- //TODO: mini icon version for player, (playpause only)
- $('#togglePlayer').on('click',function(e) {
- e.preventDefault();
- if($(this).is('.icon-double-angle-left')){
- $("#player").fadeOut('fast',function(){
- $("#player-container").toggleClass('minimized');
- $('#togglePlayer').toggleClass('icon-double-angle-left icon-double-angle-right');
- });
- }else{
- $("#player").fadeIn('fast',function(){
- $("#player-container").toggleClass('minimized');
- $('#togglePlayer').toggleClass('icon-double-angle-left icon-double-angle-right');
- });
- }
- return false;
- });
- */
$('#WhatsOnAir').on('load',function(){
var WhatsOnAir = $(this);
- $('#RefreshWhatsOnAir').addClass('spinning');
$.getJSON('/onair.json', function(onair) {
- setTimeout(function() { $('#RefreshWhatsOnAir').removeClass('spinning'); }, 5000);
var onairContainer = $('<span>');
if(onair.data.episode || onair.data.emission) {
if(onair.data.emission){
}
});
});
- $('#RefreshWhatsOnAir').on('activate',function(e){
- $('#WhatsOnAir').trigger('load');
- timer = setInterval( "$('#WhatsOnAir').trigger('load');", refresh_onair_interval);
- }).on('deactivate',function(e){
- $(this).removeClass('spinning');
- $('#WhatsOnAir').removeClass('active');
- clearInterval(timer);
- }).on('click',function(e){
- $(this).toggleClass('active');
- if($(this).is('.active')){
- $(this).trigger('deactivate');
- }else{
- $(this).trigger('activate');
- }
- return false;
- }).trigger('activate');
+ $('#WhatsOnAir').trigger('load');
+ var refresh_onair_interval = 25000;
+ setInterval("$('#WhatsOnAir').trigger('load');", refresh_onair_interval);
$("#DirectStreamPanikControler").on('click',function(e) {
e.preventDefault();
var stream = $('#DirectStreamPanik').get(0);
$('#DirectStreamPanik').on('play',function(){
$('audio:not(#DirectStreamPanik)').each(function(){this.pause();});
$('#streamSymbol').removeClass('icon-volume-up').addClass('icon-pause');
- $('#RefreshWhatsOnAir').trigger('activate');
}).on('pause',function(){
//$('audio:not(#DirectStreamPanik)').each(function(){this.pause();});
$('#streamSymbol').addClass('icon-volume-up').removeClass('icon-pause');
topPosition = $('#mainHeader > div').offset().top + $('#mainHeader > div').height();
$(window).bind('scroll load',function (event) {
//$('#player-container').removeClass('fixed');
- var y = $(this).scrollTop() + 40;
+ var y = $(this).scrollTop() + 60;
if (topPosition!== 0 && y >= topPosition) {
$('#player-container').addClass('fixed').removeClass('normal');
} else {
activeTab.trigger('load');
});
$('[data-player-action]').on('click',function(){
- var audio = $('#'+$(this).attr('data-player-audio'));
+ var audio = $('audio[data-sound-id=' + $(this).attr('data-sound-id') + ']');
var sound_id = audio.data('sound-id');
if($(this).attr('data-player-action') == "registerAudio"){
- $localList.playlist("registerAudio",audio,doLog(audio.attr('title')+' has been added to your playlist.','ok'));
+ $localList.playlist("registerAudio",audio);
}else if($(this).attr('data-player-action') == "playAudio"){
if ($(this).hasClass('icon-play-sign')) {
- $localList.playlist("registerAudio",audio,doLog(audio.attr('title')+' will play soon.','ok'));
+ $localList.playlist("registerAudio",audio);
$localList.playlist("playSoundId", sound_id);
if ($(this).parent().find('.icon-pause').length) {
$(this).hide();
}
});
$('[data-player-control]').each(function(){
- var audio = $('#'+$(this).attr('data-player-audio'));
+ var audio = $('audio[data-sound-id=' + $(this).attr('data-sound-id') + ']');
$localList.playlist("bindControl",$(this).attr('data-player-control'),audio,$(this));
});
if (matching_audio.length == 0) return;
matching_audio = matching_audio[0];
if (matching_audio.paused || matching_audio.ended) {
- $(this).parents('.sound').find('.icon-play').click();
+ $(this).parents('.sound').find('.icon-play-sign').click();
return;
}
/* try to set time */
return false;
});
+ if ($('.sound + .content .text ').length) {
+ var text_content = $('.sound + .content .text')[0];
+ text_content.innerHTML = text_content.innerHTML.replace(
+ /[0-9][0-9]+:[0-9][0-9]/g,
+ function(x) { return '<span class="timestamp">' + x + "</span>"; });
+ $(text_content).find('span.timestamp').on('click', function() {
+ var $waveform = $('div.waveform').first();
+ var sound_id = $waveform.prev().data('sound-id');
+ var total_duration = parseFloat($waveform.data('duration'));
+ var nb_ticks = $waveform.find('span').length;
+ var timestamp = $(this).text().split(':');
+ var timestamp_position = timestamp[0] * 60 + timestamp[1] * 1;
+ var tick_idx = parseInt(nb_ticks * timestamp_position / total_duration);
+ // play, then set rough position
+ $('.episode.detail .icon-play-sign').first().trigger('click');
+ var matching_audio = $('audio[data-sound-id=' + sound_id + ']');
+ matching_audio[0].currentTime = timestamp_position;
+ });
+ }
+
if (document.cookie.indexOf('panikdb=on') != -1) {
panikdb_path = null;
if (window.location.pathname.indexOf('/emissions/') == 0) {