var TracksPlayer = {
	initVolumeSlider: function(){
		var currentVolume = Cookie.get('soundVolume');
		if(currentVolume == null) currentVolume = 100;
		CjPlayer.setVolume(currentVolume);
		$('.volumeSlider').slider({animate: true, max:100, min:1, value:currentVolume, change: TracksPlayer.onVolumeSliderChange });
		$('.playNowPromo .slider').slider({animate: true, max:100, min:1, value:0, change: TracksPlayer.onPositionSliderChange });
		$('.trackBar').slider({animate: true, max:100, min:1, value:currentVolume, change: function(e, ui){CjPlayer.setVolume(ui.value);Cookie.set('soundVolume', ui.value, '2592000', ' ;path=/');} });
		$('.tooltipped').enableTooltip();  
	},
	onVolumeSliderChange: function (e, ui){
		CjPlayer.setVolume(ui.value);
		Cookie.set('soundVolume', ui.value, '2592000', ' ;path=/');
		try{ if( e.originalEvent.type  == "mouseup"){
			$('.volumeSlider').not(this).each(function(i,item){
					$(item).slider('value', ui.value);
			});
		} }catch(exc){}
	},
	currentPositionSlider: null,
	timerID: null,
	startPlaying: function(trackPositionSlider){
		TracksPlayer.stopPlaying();
		if (trackPositionSlider == null) return;
		TracksPlayer.currentPositionSlider = trackPositionSlider;
		TracksPlayer.timerID = setInterval('TracksPlayer.updatePosition()', 300);
	},
	updateSemaphore: false, 
	updatePosition: function(){
		if ( TracksPlayer.currentPositionSlider == null ) return;
		if ( TracksPlayer.updateSemaphore == true ) return;
		if (CjPlayer.isPlayingF()) {
			var pos = CjPlayer.getPosition();
			var time = TracksPlayer.currentPositionSlider.attr('timelength');
			var percents = (time == 0) ? 0 : (pos / time * 100);
			if (percents > 100) percents = 100;
			TracksPlayer.currentPositionSlider.slider('value', percents);
		}
	},
	stopPlaying: function(){
		clearInterval(TracksPlayer.timerID);
		TracksPlayer.currentPositionSlider = null;
	},
	seek: function (percents){
		TracksPlayer.updateSemaphore = true;
		if ( TracksPlayer.currentPositionSlider == null ) return;
		var time = TracksPlayer.currentPositionSlider.attr('timelength');
		var seek = time * percents / 100;
		CjPlayer.setPosition(seek);
		TracksPlayer.updateSemaphore = false;
	},
	onPositionSliderChange: function (e, ui){
		try{ if( e.originalEvent.type  == "mouseup"){
			TracksPlayer.seek(ui.value);
		} }catch(exc){}
	},
}
$( TracksPlayer.initVolumeSlider );
