var radio_stream_id = '';
var stream_update_next = 60; // in seconds...
var stream_update_pe = null;

function stream_update_info() {
	new Ajax.Request('rpc_modules.php?module=onair&onair_okruh='+radio_stream_id,
	{
		method:'get',
		onSuccess: function(transport) {
			var ret = transport.responseJSON;
			var UpdateAfter = 30;
						
			if (ret != '') {
				Try.these(
					function() {
						var s_text = '';
						var s_interpret = ret['now']['song_interpret'];
						var s_title = ret['now']['song_skladba'];
						var s_songid = ret['now']['song_id'];
						
						if (s_interpret == null) s_interpret = '';
						if (s_title == null) s_title = '';
						
						UpdateAfter = ret['now']['song_plays_to'] - ret['timestamp'] + rand(5, 15);
						if (UpdateAfter < -30) {
							s_interpret = '';
							s_title = '';
							UpdateAfter = rand(40, 60);
						}
						
						s_text = s_interpret;
						if (s_title != '') {
							if (s_text != '') {	s_text += ' - '; }
							s_text += s_title;
						}
						// s_text += ' | update in: ' + UpdateAfter;
						
						stream_update_info_text(s_text);
						$('head_onair_song').href = 'index.php?pageid='+songinfo_pid+'&songid='+s_songid;
					}, 
					function() {
						stream_update_info_text('');
					}
				)
				
				Try.these(
					function() {
						var a_text = '';
						var a_title = ret['onair']['title'];
						var a_moderator = ret['onair']['moderator'];
						var a_moderator_name = ret['onair']['moderator_name'];
						
						if (a_title == null) a_title = '';
						if (a_moderator == null) a_moderator = '';
						if (a_moderator_name == null) a_moderator_name = '';
						
						a_text = a_title;
						if (a_moderator_name != '') {
							if (a_text != '') { a_text += ' s '; }
							a_text += a_moderator_name;
						}
						
						onair_update_info_text(a_text);
					},
					function() {
						onair_update_info_text('');
					}
				);
			}
			
			if (UpdateAfter < 15) UpdateAfter = rand(20, 35);
			if (UpdateAfter > 120) UpdateAfter = rand(105, 130);
			
			stream_update_pe = new PeriodicalExecuter(function(pe) {
				pe.stop();
				stream_update_info();
			}, UpdateAfter);
		} 
	});
	
	
	
}
function onair_update_info_text(text) {
	if ($('head_onair_info').innerHTML != text) {
		setTimeout("Effect.Fade('head_onair_info', { duration: 0.7 } )", 250);
		cmd = "$('head_onair_info').innerHTML = '" + replaceAll(text, "'", "&#39;") + "';";
		setTimeout(cmd, 1000);
		setTimeout("Effect.Appear('head_onair_info', { duration: 0.7 } )", 1250);
	}
}
function stream_update_info_text(text) {
	if ($('head_onair_song').innerHTML != text) {
		setTimeout("Effect.Fade('head_onair_song', { duration: 0.7 } )", 250);
		cmd = "$('head_onair_song').innerHTML = '" + replaceAll(text, "'", "&#39;") + "';";
		setTimeout(cmd, 1000);
		setTimeout("Effect.Appear('head_onair_song', { duration: 0.7 } )", 1250);
	}
}

radio_stream_id = 'cityfm';
stream_update_pe = new PeriodicalExecuter(function(pe) {
		pe.stop();
		stream_update_info();
	}, 1
);