/*
var testPlaylist = [
	{"trackName":"Lemonade","downloadable":false,"type":"audio","imageURL":"http:\/\/skatic.com\/files\/Album\/142\/image_934_thumb.jpg","url":"http:\/\/skatic.com\/files\/songs\/low\/435-opponens-lemonade-79234.mp4","licenceURL":"http:\/\/creativecommons.org\/licenses\/by\/3.0\/","licenceImgs":[1],"id":"435","artistName":"Opponens"},
	{"trackName":"test video","downloadable":false,"type":"video","imageURL":"http:\/\/skatic.com\/files\/Album\/142\/image_934_thumb.jpg","url":"http:\/\/skatic.com\/files\/songs\/low\/435-opponens-lemonade-79234.mp4","licenceURL":"http:\/\/creativecommons.org\/licenses\/by\/3.0\/","licenceImgs":[1],"id":"435","artistName":"Opponens"},
	{"trackName":"Scary Soviet Man","downloadable":false,"type":"audio","imageURL":"\/img\/no_pic\/noalbum-thumb.gif","url":"http:\/\/skatic.com\/files\/songs\/low\/101-bitqrusher-scary-soviet-ma-81422.mp4","licenceURL":"http:\/\/creativecommons.org\/licenses\/by-nc-sa\/3.0\/","licenceImgs":[4,2,1],"id":"101","artistName":"Bitqrusher"},
	{"trackName":"I Talk In Circles","downloadable":true,"type":"audio","imageURL":"\/img\/no_pic\/noalbum-thumb.gif","url":"http:\/\/skatic.com\/files\/songs\/low\/665-hayloft-i-talk-in-circl-57787.mp4","licenceURL":"http:\/\/creativecommons.org\/licenses\/by-nc\/2.0\/uk\/","licenceImgs":[2,1],"id":"665","artistName":"Hayloft"},
	{"trackName":"Lemonade","type":"video","downloadable":false,"url360P":"http:\/\/skatic.com\/files\/Video\/20\/5-opponens-lemonade-1_6513.flv","licenceURL":"http:\/\/creativecommons.org\/licenses\/by-nd\/3.0\/","licenceImgs":[3,1],"id":"20","artistName":"Opponens"},
	{"trackName":"Scary Soviet Man","downloadable":false,"type":"audio","imageURL":"\/img\/no_pic\/noalbum-thumb.gif","url":"http:\/\/skatic.com\/files\/songs\/low\/101-bitqrusher-scary-soviet-ma-81422.mp4","licenceURL":"http:\/\/creativecommons.org\/licenses\/by-nc-sa\/3.0\/","licenceImgs":[4,2,1],"id":"101","artistName":"Bitqrusher"},
	{"trackName":"The Great British Summer","downloadable":false,"type":"audio","imageURL":"http:\/\/skatic.com\/files\/Album\/118\/image_273_thumb.jpg","url":"http:\/\/skatic.com\/files\/songs\/low\/100-hayloft-the-great-briti-09569.mp4","licenceURL":"http:\/\/creativecommons.org\/licenses\/by-nd\/3.0\/","licenceImgs":[3,1],"id":"100","artistName":"Hayloft"},
	{"trackName":"A Graveyard Slowstep","downloadable":true,"type":"audio","imageURL":"http:\/\/skatic.com\/files\/Album\/3\/image_630_thumb.jpg","url":"http:\/\/skatic.com\/files\/songs\/low\/4-the-floating-op-a-graveyard-slo-21221.mp4","licenceURL":"http:\/\/creativecommons.org\/licenses\/by-nc-nd\/3.0\/","licenceImgs":[3,2,1],"id":"4","artistName":"The Floating Opera Orchestra"},
	{"trackName":"Spin","downloadable":true,"type":"audio","imageURL":"http:\/\/skatic.com\/files\/Album\/245\/image_363_thumb.jpg","url":"http:\/\/skatic.com\/files\/songs\/low\/632-enoki-spin-provisiona-36499.mp4","licenceURL":"http:\/\/creativecommons.org\/licenses\/by\/3.0\/","licenceImgs":[1],"id":"632","artistName":"enoki"},
	{"trackName":".&amp;#305;l&amp;#305;.Dj Paradox.&amp;#305;l&amp;","type":"video","downloadable":false,"url360P":"http:\/\/skatic.com\/files\/Video\/13\/34-305-l-305-dj-paradox-305-l-305-aldershot-whats-th_0272.flv","licenceURL":"http:\/\/creativecommons.org\/licenses\/by\/2.0\/uk\/","licenceImgs":[1],"id":"13","artistName":".\u0131l\u0131.Dj Paradox.\u0131l\u0131. (Aldershot)"},
	{"trackName":"Social Networking","downloadable":false,"type":"audio","imageURL":"http:\/\/skatic.com\/files\/Album\/118\/image_273_thumb.jpg","url":"http:\/\/skatic.com\/files\/songs\/low\/99-hayloft-social-networki-03735.mp4","licenceURL":"http:\/\/creativecommons.org\/licenses\/by-nd\/3.0\/","licenceImgs":[3,1],"id":"99","artistName":"Hayloft"},
	{"trackName":"Spin","downloadable":true,"type":"audio","imageURL":"http:\/\/skatic.com\/files\/Album\/245\/image_363_thumb.jpg","url":"http:\/\/skatic.com\/files\/songs\/low\/632-enoki-spin-provisiona-36499.mp4","licenceURL":"http:\/\/creativecommons.org\/licenses\/by\/3.0\/","licenceImgs":[1],"id":"632","artistName":"enoki"},
	{"trackName":"Switchgear","downloadable":false,"type":"audio","imageURL":"http:\/\/skatic.com\/files\/Album\/240\/image_681_thumb.jpg","url":"http:\/\/skatic.com\/files\/songs\/low\/400-rebecca-orr-switchgear-11451.mp4","licenceURL":"http:\/\/creativecommons.org\/licenses\/by\/2.5\/scotland\/","licenceImgs":[1],"id":"400","artistName":"Rebecca Orr"},
	{"trackName":"so fly","downloadable":false,"type":"audio","imageURL":"http:\/\/skatic.com\/files\/Album\/271\/image_443_thumb.jpg","url":"http:\/\/skatic.com\/files\/songs\/low\/492-colorz-so-fly-25231.mp4","licenceURL":"http:\/\/creativecommons.org\/licenses\/by-nd\/3.0\/","licenceImgs":[3,1],"id":"492","artistName":"Colorz"},
	{"trackName":"The Test &#40;original Mix&#41;","downloadable":false,"type":"audio","imageURL":"http:\/\/skatic.com\/files\/Album\/148\/image_748_thumb.jpg","url":"http:\/\/skatic.com\/files\/songs\/low\/198-dj-phew-the-test-40-ori-31142.mp4","licenceURL":"http:\/\/creativecommons.org\/licenses\/by-nd\/3.0\/","licenceImgs":[3,1],"id":"198","artistName":"Dj Phew"},
	{"trackName":"Scary Soviet Man","downloadable":false,"type":"audio","imageURL":"\/img\/no_pic\/noalbum-thumb.gif","url":"http:\/\/skatic.com\/files\/songs\/low\/101-bitqrusher-scary-soviet-ma-81422.mp4","licenceURL":"http:\/\/creativecommons.org\/licenses\/by-nc-sa\/3.0\/","licenceImgs":[4,2,1],"id":"101","artistName":"Bitqrusher"},
	{"trackName":"The Great British Summer","downloadable":false,"type":"audio","imageURL":"http:\/\/skatic.com\/files\/Album\/118\/image_273_thumb.jpg","url":"http:\/\/skatic.com\/files\/songs\/low\/100-hayloft-the-great-briti-09569.mp4","licenceURL":"http:\/\/creativecommons.org\/licenses\/by-nd\/3.0\/","licenceImgs":[3,1],"id":"100","artistName":"Hayloft"},
	{"trackName":"A Graveyard Slowstep","downloadable":true,"type":"audio","imageURL":"http:\/\/skatic.com\/files\/Album\/3\/image_630_thumb.jpg","url":"http:\/\/skatic.com\/files\/songs\/low\/4-the-floating-op-a-graveyard-slo-21221.mp4","licenceURL":"http:\/\/creativecommons.org\/licenses\/by-nc-nd\/3.0\/","licenceImgs":[3,2,1],"id":"4","artistName":"The Floating Opera Orchestra"},
	{"trackName":"Spin","downloadable":true,"type":"audio","imageURL":"http:\/\/skatic.com\/files\/Album\/245\/image_363_thumb.jpg","url":"http:\/\/skatic.com\/files\/songs\/low\/632-enoki-spin-provisiona-36499.mp4","licenceURL":"http:\/\/creativecommons.org\/licenses\/by\/3.0\/","licenceImgs":[1],"id":"632","artistName":"enoki"},
	{"trackName":"A Graveyard Slowstep","downloadable":true,"type":"audio","imageURL":"http:\/\/skatic.com\/files\/Album\/3\/image_630_thumb.jpg","url":"http:\/\/skatic.com\/files\/songs\/low\/4-the-floating-op-a-graveyard-slo-21221.mp4","licenceURL":"http:\/\/creativecommons.org\/licenses\/by-nc-nd\/3.0\/","licenceImgs":[3,2,1],"id":"4","artistName":"The Floating Opera Orchestra"}];

for (var i in testPlaylist) {
	if ($.browser.chrome) {
		var file = {'url': 'http://bliss.shakuro.com/video/chrome.webm', 'type': 'video/webm'};
	} else if ($.browser.safari) {
		var file = {'url': 'http://bliss.shakuro.com/video/safari.mp4', 'type': 'video/mp4'};
	} else {
		var file = {'url': 'http://bliss.shakuro.com/fideo/ff.ogv', 'type': 'video/ogg'};
	}

	if (testPlaylist[i].type == 'video') {
		testPlaylist[i].url = file.url;
	}
}

//console.log(testPlaylist);
*/
/* ----------------------------- [ player ] -----------------------------*/
skatic.player = {
	'flash':{},
	'html5':{}
};


skatic.player.currentPlayed = {
	'id': null,
	'type': null,
    'content_type': null
};


skatic.player.currentPlaylist = null;


skatic.player.history = [];


skatic.player.player = function() {
	if ($('#player_container').length > 0) {
	    return skatic.player.html5;
	} else {
	    return skatic.player.flash;
	}
};


/*---------------------[ common ]------------------------*/

skatic.player.gotoTrackPage = function(params){
	switch (params.type) {
	case 'audio':
		document.location.hash = '/songs/viewById/'+params.id+'/';
		loadPage('/songs/viewById/'+params.id+'/');
		break;
	case 'video':
		document.location.hash = '/video/view/'+params.id+'/';
		loadPage('/video/view/'+params.id+'/');
		break;
	}
};


skatic.player.play = function(song){
	song.trackName = htmlspecialchars_decode(html_entity_decode(html_entity_decode(song.trackName)));
	song.artistName = htmlspecialchars_decode(html_entity_decode(html_entity_decode(song.artistName)));

	skatic.player.player().play(song);
};


skatic.player.playBySongId = function(songId) {
	$.ajax({
        'url':' /songs/play/'+songId+'/',
        'type':'GET',
        'success':function(response){
            if (typeof response.error != 'undefined') {
            return ;
            //stub
            }
            skatic.player.currentPlayed = {
                'id': response.id,
                'type': 'audio',
                'content_type': 'audio'
            };
            skatic.player.currentPlaylist = null;
            var result = skatic.player.play(response);
        },
        'cache':true,
        'dataType':'json'
	});
};


skatic.player.loadPlaylist = function(playlist, repeat, autoStart) {
	if (typeof playlist.flash != 'undefined') {
	    return skatic.ajaxResponse(playlist);
	}
	if (typeof repeat == 'undefined') {
	    repeat = true;
	}
	if (typeof autoStart == 'undefined') {
	    autoStart = true;
	}
	
	if (playlist.length > 0) {
        //	console.log(playlist);
        for (var i = 0; i < playlist.length; i++) {
            playlist[i].trackName = htmlspecialchars_decode(html_entity_decode(html_entity_decode(playlist[i].trackName)));
            playlist[i].artistName = htmlspecialchars_decode(html_entity_decode(html_entity_decode(playlist[i].artistName)));
        }

        skatic.player.player().loadPlaylist(playlist, repeat, autoStart);

        skatic.player.currentPlayed = {
            'id': playlist[0].id,
            'type': playlist[0].type,
            'content_type': playlist[0].type
        }
	}
};


skatic.player.ready = function() {
	setTimeout(function(){
        if(typeof skatic.player.history == 'string' && skatic.player.history.isJSON()) {
            skatic.player.history = JSON.parse(skatic.player.history);
        }
        skatic.player.loadPlaylist(skatic.player.history, true, false); //no autostart

	}, 100);
};


skatic.player.playlinkLive = function() {
	$('.playlink').live('click', function(){

	var relData = $(this).attr('rel').split('_');

	if (relData[0] == 'song') {
		var url = '/songs/play/'+relData[1]+'/';
	} else if (relData[0] == 'user') {
		var url = '/songs/playUser/'+relData[1]+'/';
	} else if (relData[0] == 'playlist') {
		var url = '/playlists/play/'+relData[1]+'/';
	} else if (relData[0] == 'genre') {
		var url = '/genres/play/'+relData[1]+'/';
	} else if (relData[0] == 'video') {
		var url = '/video/play/'+relData[1]+'/';
	}

	$.ajax({
		'url':url,
		'type':'GET',
		'success':function(response){

		if (typeof response.error != 'undefined') {
			return ;
			//stub
		}

		if (relData[0] == 'video') {
			skatic.player.currentPlayed.type = skatic.player.currentPlayed.content_type = 'video';
		} else {
			skatic.player.currentPlayed.type = skatic.player.currentPlayed.content_type = 'audio';
		}

		if (relData[0] == 'song' || relData[0] == 'user' || relData[0] == 'video') {
			skatic.player.currentPlayed.id = response.id;
			skatic.player.currentPlaylist = null;
			var result = skatic.player.play(response);
		} else {
			skatic.player.currentPlaylist = relData[1];
			var result = skatic.player.loadPlaylist(response);
		}

		//console.log(result);

		},
		'cache':true,
		'dataType':'json'
	});

	return false;

	}); //$('.playlink').live
};

skatic.player.onTransmitStatisticalData = function (statisticsForTrack, skipIfCurrent) {
	var id = statisticsForTrack.id;
	var type = statisticsForTrack.type;

	if (typeof skipIfCurrent == 'undefined') {
	    skipIfCurrent = true; //true for flash player.	false will be sent from html5 player
	}

	if (skipIfCurrent && skatic.player.currentPlayed.content_type == type && skatic.player.currentPlayed.id == id) {
	    return false;
	}

	skatic.player.currentPlayed = {
        'id': id,
        'type': type,
        'content_type': type
	};

	if (!skatic.user.isLoggedIn()) {
	    return false;
	}

	//console.log(skatic.player.currentPlayed, id);

	if (skatic.menu.editPlaylists.mouseOverElem) {
	    skatic.menu.editPlaylists.ajaxLoadMenu();
	}

	switch (type) {
	case 'audio':
		setTimeout(function(){
		//ajax put statististic if after 10 playing secongs song is still current
		if (skatic.player.currentPlayed.content_type != type || skatic.player.currentPlayed.id != id) {
			return false;
		}

		//skatic.flash(['songs/played/'+id+'/']);

		$.ajax({
			'url':'/songs/played/'+id+'/',
			'type':'GET',
			'success':function(response){
			},
			'cache':false,
			'dataType':'json'
		});
		}, 10000);
		break;
	case 'video':
		setTimeout(function(){
		//ajax put statististic if after 10 playing secongs song is still current
		if (skatic.player.currentPlayed.content_type != type || skatic.player.currentPlayed.id != id) {
			return false;
		}
		$.ajax({
			'url':'/video/played/'+id+'/',
			'type':'GET',
			'success':function(response){
			},
			'cache':false,
			'dataType':'json'
		});
		}, 10000);
		break;
	}
};

/*-----------------------[ flash ]-------------------------*/

skatic.player.flash.getMovie = function() {
	var M$ =	navigator.appName.indexOf("Microsoft") != -1;
	return (M$ ? window : document)["playerObject"];
};


skatic.player.flash.changeFlashSize = function(screenMode) {
	switch (screenMode) {
	case 'audio'://650x100
		$('#divPlayer').css('height', '100px');
		$('#header').css('height', $('#header').data('defaultHeight')+'px');
		break;
	case 'video'://650x394
		if ($('#header').data('defaultHeight') === null) {
		    $('#header').data('defaultHeight', $('#header').height());
		}
		$('#divPlayer').css('height', '394px');
		$('#header').css('height', '394px');
		break;
	case 'full':
		//console.log('skatic.player.changeFlashSize', screenMode);
		break;
	}
};


skatic.player.flash.playlistMenuButtonOverOrOut = function(overOrOut) {
	//console.log('skatic.player.playlistMenuButtonOverOrOut', overOrOut, skatic.menu.editPlaylists.showTimeout);
	if (overOrOut == 'over') {
        skatic.menu.editPlaylists.mouseOverElem = true;
        setTimeout(function(){
            skatic.menu.editPlaylists.over();
        }, 200);
	} else if (overOrOut == 'out') {
        skatic.menu.editPlaylists.mouseOverElem = false;
        setTimeout(function(){
            skatic.menu.editPlaylists.out();
        }, 2000);
	}
};

skatic.player.playlistMenuButtonOverOrOut = skatic.player.flash.playlistMenuButtonOverOrOut;

skatic.player.flash.play = function(song) {
	try {
	    var res = skatic.player.flash.getMovie().addNewPlaylist([song], false, true);
	} catch (e) {
        setTimeout(function(){
            var res = skatic.player.flash.getMovie().addNewPlaylist([song], false, true);
        }, 500);
	}
};


skatic.player.flash.loadPlaylist = function(playlist, repeat, autoStart){
	skatic.player.flash.getMovie().addNewPlaylist(playlist, repeat, autoStart);
};


skatic.player.flash.onFlashPlayerIsReady = function() {
	skatic.player.ready();
};


skatic.player.flash.onTransmitStatisticalData = skatic.player.onTransmitStatisticalData;


/**
 * @deprecated
 */
skatic.player.flash.onDownloadSoundtrack = function(songId) {
  document.location.href = '/songs/download/'+songId+'/';
};

/*-----------------------[ html5 ]-------------------------*/

skatic.player.html5.loadedPlaylist = {
	'playlist': [],
	'playingTrackIndex': null,
	'repeat': false,
	'autoStart': false,
	'isPlayingNow': false,
	'sendStatisticOnNextPlay': false
};


skatic.player.html5.ready = function() {

	var global_lp = 0;
	var origVolume = 0;
	//$('#pbg').fadeTo(0, 0.6);

	var playItem = 0;

	$("#jquery_jplayer").jPlayer({
        'ready': function (){
            //skatic.player.html5.loadPlaylist(testPlaylist, false, false);
        },
        'oggSupport': false
	});

	$("#jquery_jplayer").jPlayer("onProgressChange", function(lp,ppr,ppa,pt,tt) {
        var lpInt = parseInt(lp);
        var ppaInt = parseInt(ppa);
        global_lp = lpInt;

        $('#jplayer_load_bar').progressbar('option', 'value', lpInt);
        $('#sliderPlayback').slider('option', 'value', ppaInt);
        var myPlayedTime = new Date(pt);
        var ptMin = (myPlayedTime.getUTCMinutes() < 10) ? "0" + myPlayedTime.getUTCMinutes() : myPlayedTime.getUTCMinutes();
        var ptSec = (myPlayedTime.getUTCSeconds() < 10) ? "0" + myPlayedTime.getUTCSeconds() : myPlayedTime.getUTCSeconds();
        $("#play_time").text(ptMin+":"+ptSec);

        var myTotalTime = new Date(tt);
        var ttMin = (myTotalTime.getUTCMinutes() < 10) ? "0" + myTotalTime.getUTCMinutes() : myTotalTime.getUTCMinutes();
        var ttSec = (myTotalTime.getUTCSeconds() < 10) ? "0" + myTotalTime.getUTCSeconds() : myTotalTime.getUTCSeconds();
        $("#total_time").text(ttMin+":"+ttSec);
	});

	$("#jquery_jplayer").jPlayer("onSoundComplete", function() {
	    skatic.player.html5.onSongComplete();
	});

	$("#jplayer_pause").hide();
	$("#sliderVolume").hide();


	skatic.player.html5.bindControlsAudio();

	skatic.player.html5.progressChange = function(val) {
        skatic.player.html5.showPauseBtn();
        skatic.player.html5.isPlayingNow = true;

        //skatic.flash(['playHead '+(val*(100.0/global_lp))]);

        $("#jquery_jplayer").jPlayer("playHead", (val * (100.0 / global_lp)));
	}

	
	// Slider
	$('#sliderPlayback').slider({
        'max': 100,
        'range': 'min',
        'animate': true,
        'slide': function(event, ui) {
            skatic.player.html5.progressChange(ui.value);
        }
	});

	$('#jplayer_volume_bar').slider({
        'value' : 50,
        'max': 100,
        'range': 'min',
        'animate': true,
        'slide': function(event, ui) {
            $("#jquery_jplayer").jPlayer("volume", ui.value);
        }
	});

	$('#loaderBar').progressbar();

	$('#addtolist').bind('click', function(){
        if ($('#playlists .playlists').is(':visible')) {
            skatic.menu.editPlaylists.mouseOverElem = false;
            skatic.menu.editPlaylists.out();
        } else {
            skatic.menu.editPlaylists.mouseOverElem = true;
            skatic.menu.editPlaylists.over();
        }
	});

};

skatic.player.html5.soundPlayerControlsBinded = false;


skatic.player.html5.bindControlsAudio = function() {
	if (!skatic.player.html5.soundPlayerControlsBinded) {
		$("#ctrl_prev").click( function() {
			if (skatic.player.html5.isPlayingNow) {
				setTimeout("skatic.player.html5.startPlayback();", 50);
			}
			skatic.player.html5.prev();
			return false;
		});

		$("#ctrl_next").click( function() {
			if (skatic.player.html5.isPlayingNow) {
				setTimeout("skatic.player.html5.startPlayback();", 50);
			}
			skatic.player.html5.next();
			return false;
		});

		$("#jplayer_play").click(function() {
			skatic.player.html5.startPlayback();
			return false;
		});

		$("#jplayer_pause").click(function() {
			skatic.player.html5.pausePlayback();
			return false;
		});

		$("#volume-btn").click(function(){
			$('#jplayer_volume_bar').toggle();
			return false;
		});


		$("#player_progress_ctrl_bar a").live("click", function() {
			skatic.player.html5.progressChange(this.id.substring(3));
			return false;
		});

		$('#songpage').click(function(){
			var current = skatic.player.html5.loadedPlaylist.playlist[skatic.player.html5.loadedPlaylist.playingTrackIndex];
			return skatic.player.gotoTrackPage(current);
		});

		skatic.player.html5.soundPlayerControlsBinded = true;
	}

	



	/*
	$("#stop").click(function() {
	$("#jquery_jplayer").jPlayer("stop");
	skatic.player.html5.showPlayBtn();
	return false;
	});

	$("#volume-max").click( function() {
	origVolume = $('#jplayer_volume_bar').slider('option', 'value');
	$('#jquery_jplayer').jPlayer("volume", 0);
	skatic.player.html5.showMuteBtn();
	$('#jplayer_volume_bar').slider('option', 'value', 0);
	return false;
	});

	$("#volume-min").click( function() {
	$('#jquery_jplayer').volume(origVolume);
	skatic.player.html5.showVolumeBtn();
	$('#jplayer_volume_bar').slider('option', 'value', origVolume);
	return false;
	});
	*/

}



skatic.player.html5.bindControlsVideo = function() {
	$("#ctrl_prev_video").click( function() {
        //skatic.flash(['aaaaaa']);
        /*
		if (skatic.player.html5.isPlayingNow) {
			setTimeout("skatic.player.html5.startPlayback();", 50);
		}
		*/
		skatic.player.html5.prev();
		return false;
	});

    $("#ctrl_next_video").click( function() {
        //skatic.flash(['aaaaaa']);
        /*
        if (skatic.player.html5.isPlayingNow) {
            setTimeout("skatic.player.html5.startPlayback();", 50);
        }
        */
        skatic.player.html5.next();
        return false;
    });

    /*
    $("#volume-btn").click(function(){
        $('#jplayer_volume_bar').toggle();
        return false;
    });
    */
    
    $('#songpage_video').click(function(){
        var current = skatic.player.html5.loadedPlaylist.playlist[skatic.player.html5.loadedPlaylist.playingTrackIndex];
        return skatic.player.gotoTrackPage(current);
    });

    //this is binded in video player
	/* $('#playpause').click(function(){
		var icon = $(this).find('span');
		if (icon.hasClass('ui-icon-play')) {
			icon.removeClass('ui-icon-play').addClass('ui-icon-pause');
			skatic.player.html5.startPlayback();
			return false;
		} else {
			icon.addClass('ui-icon-play').removeClass('ui-icon-pause');
			skatic.player.html5.pausePlayback();
			return false;
		}
	}); */
}



skatic.player.html5.showPauseBtn = function() {
	$("#jplayer_play").hide();
	$("#jplayer_pause").show();
};


skatic.player.html5.showPlayBtn = function() {
	$("#jplayer_pause").hide();
	$("#jplayer_play").show();
};


skatic.player.html5.onSongComplete = function() {
	var isLast = skatic.player.html5.loadedPlaylist.playlist.playingTrackIndex == skatic.player.html5.loadedPlaylist.playlist.length - 1;
	if (isLast) {
        if (skatic.player.html5.loadedPlaylist.repeat) {
            skatic.player.html5.next();
            skatic.player.html5.startPlayback();
            return true;
        }
	} else {
        skatic.player.html5.next();
        skatic.player.html5.startPlayback();
        return true;
	}

	skatic.player.html5.isPlayingNow = false;
};


skatic.player.html5.loadPlaylist = function(playlist, repeat, autoStart) {
	if (typeof repeat == 'undefined') {
	    repeat = false;
	}
	if (typeof autoStart == 'undefined') {
	    autoStart = false;
	}

	skatic.player.html5.loadedPlaylist.playlist = playlist;
	skatic.player.html5.loadedPlaylist.repeat = repeat;
	skatic.player.html5.loadedPlaylist.autoStart = autoStart;

	skatic.player.html5.sendStatisticOnNextPlay = true;
	skatic.player.html5.setCurrent(0, autoStart);
};


skatic.player.html5.setCurrent = function(playingTrackIndex, startPlayback) {
	if (typeof startPlayback == 'undefined') {
	    startPlayback = false;
	}

	//index changed
	if (playingTrackIndex != skatic.player.html5.loadedPlaylist.playingTrackIndex) {
	    skatic.player.html5.sendStatisticOnNextPlay = true;
	}

	skatic.player.html5.loadedPlaylist.playingTrackIndex = playingTrackIndex;

	if (typeof skatic.player.html5.loadedPlaylist.playlist[playingTrackIndex] == 'undefined') {
	    return false;
	}

	var current = skatic.player.html5.loadedPlaylist.playlist[playingTrackIndex];

	if (startPlayback) {
	    skatic.player.html5.sendStatisticOnNextPlay = true;
	}

	skatic.player.currentPlayed = {'id': current.id, 'type': current.type, 'content_type': current.type};

	//skatic.flash(['current: '+current.trackName]);

	$('#trackname').html(current.artistName + ' - ' + current.trackName); //audio

	//todo: after videoChangeFile
	$('#progresbar').find('div:first').html(current.artistName + ' - ' + current.trackName); //video

	if (current.type == 'audio') {
		$('#jvideoplayer').remove();
		$('#videoOuter').remove();
		$('#progressbar').remove();
		$('#player_container').show();
		$("#jquery_jplayer").show().jPlayer("setFile", null, current.url);
	} else if (current.type == 'video') {
		$("#jquery_jplayer").hide();
		$('#player_container').hide();
//		skatic.player.html5.videoChangeFile(current.url);
		skatic.player.html5.videoChangeFile('http://bliss.shakuro.com/video/safari.mp4');
	}

	if (startPlayback) {
	    skatic.player.html5.startPlayback();
	}
};


skatic.player.html5.videoChangeFile = function(url, fileType) {
    //skatic.flash(['skatic.player.html5.videoChangeFile']);
	if (typeof fileType == 'undefined') {
        if ($.browser.chrome) {
            var fileType = 'video/webm';
        } else if ($.browser.safari) {
            var fileType = 'video/mp4';
        } else {
            var fileType = 'video/ogg';
        }
	}

	$('#jvideoplayer').remove();
	$('#videoOuter').remove();
	$('#progressbar').remove();

	setTimeout(function(){
		$('.memberbox.profilemenu').before(
		'<video id="jvideoplayer" width="512" height="286" autoplay style="border: 1px solid #999999;">' +
//			'<source src="'+url+'" type="'+fileType+'" />' +
			//type="'+fileType+'"
			'<source src="http://bliss.shakuro.com/video/safari.mp4" />' +
			'This browser is not compatible with HTML 5' +
		'</video>'
		);
		/*
		$('.memberbox.profilemenu').before(
		'<video id="jvideoplayer" autoplay controls>' +
			'<source src="'+url+'" />' +
			'This browser is not compatible with HTML 5' +
		'</video>'
		);
		*/
	}, 500);


	setTimeout(function(){
		$('#jvideoplayer').ready(function(){
			$('#jvideoplayer').jVideoPlayer({
				'rotationX': 0,
				'afterInitCallback': skatic.player.html5.bindControlsVideo
			});
		});


	}, 800);
};


skatic.player.html5.next = function() {
	var currentIndex = skatic.player.html5.loadedPlaylist.playingTrackIndex;

	if (currentIndex + 1 < skatic.player.html5.loadedPlaylist.playlist.length) {
	    var newIndex = currentIndex + 1;
	} else {
	    var newIndex = 0;
	}

	var startPlayback = skatic.player.html5.isPlayingNow;

	skatic.player.html5.setCurrent(newIndex, startPlayback);
};


skatic.player.html5.prev = function() {
	var currentIndex = skatic.player.html5.loadedPlaylist.playingTrackIndex;

	if (currentIndex - 1 >= 0) {
	    var newIndex = currentIndex - 1;
	} else {
	    var newIndex = skatic.player.html5.loadedPlaylist.playlist.length - 1;
	}

	var startPlayback = skatic.player.html5.isPlayingNow;

	skatic.player.html5.setCurrent(newIndex, startPlayback);
};


skatic.player.html5.startPlayback = function() {
	//skatic.flash(['startPlayback']);

	skatic.player.html5.isPlayingNow = true;

	if (skatic.player.html5.sendStatisticOnNextPlay) {
        skatic.player.onTransmitStatisticalData(skatic.player.currentPlayed, false);

        skatic.player.html5.sendStatisticOnNextPlay = false;
	}


    /*
    for (var i in skatic.player.currentPlayed) {
        alert(i+' '+skatic.player.currentPlayed[i]);
    }
    */

	if (skatic.player.currentPlayed.content_type == 'audio') {
        skatic.player.html5.showPauseBtn();
		setTimeout('$("#jquery_jplayer").jPlayer("play");', 25);
	} else {
		//todo
	}

};


skatic.player.html5.pausePlayback = function() {
	skatic.player.html5.showPlayBtn();

	skatic.player.html5.isPlayingNow = false;

	$("#jquery_jplayer").jPlayer("pause");
};


skatic.player.html5.play = function(song) {
	try {
	    skatic.player.html5.loadPlaylist([song], false, true);
	} catch (e) {
        setTimeout(function(){
            skatic.player.html5.loadPlaylist([song], false, true);
        }, 500);
	}
};




















/*---------------------------------------------------------------------------------------------------*/

$(function(){

	try {
		skatic.player.playlinkLive();
	} catch (e) {
	//pass
	}

	if ($('#jquery_jplayer').length > 0) {
		skatic.player.html5.ready();
	}

});













/*skatic.player.addPlayer = function(){
	return;
	AC_FL_RunContent(
		'codebase', 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0',
		'width', '438',
		'height', '63',
		'src', '/flash/audio_player',
		'quality', 'high',
		'pluginspage', 'http://www.macromedia.com/go/getflashplayer',
		'align', 'middle',
		'play', 'true',
		'loop', 'true',
		'scale', 'showall',
		'wmode', 'window',
		'devicefont', 'false',
		'id', 'audio_player',
		'bgcolor', '#ffffff',
		'name', 'audio_player',
		'menu', 'true',
		'allowFullScreen', 'false',
		'allowScriptAccess','sameDomain',
		'movie', '/flash/audio_player',
		'salign', ''
		); //end AC code

//	if ($('#playerObjectId').length == 0 || $('#playerObjectId').find('embed').length == 0) {
//	$('#divPlayer').html('<object id="playerObjectId" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="438" height="63" name="playerObjectName"><param name="movie" value="/flash/audio_player.swf"><param name="quality" value="high"><param name="wmode" value="transparent"><param name="allowScriptAccess" value="sameDomain" /><embed src="/flash/audio_player.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="438" height="63" allowScriptAccess="sameDomain" id="playerEmbedId"></embed></object>');
//	}
}*/

/*skatic.player.embedPlayer = function(){
	var flashvars = {'test':'test'};
	var params = {
	'movie':'/flash/audio_player.swf',
	'quality':'high',
	'wmode':'transparent',
	'allowScriptAccess':'sameDomain'
	};
	var attributes = {
	'id': "playerObjectId",
		'name': "playerObjectName"
	};
//	if ($.browser.msie || $.browser.opera) {
//	swfobject.embedSWF("/flash/audio_player.swf", "divPlayer", "438", "63", "9.0.0", false, flashvars, params, attributes, function(result){
//		skatic.player.addPlayer();
//	});
//	} else {
//	skatic.player.addPlayer();
//	}
};*/

skatic.player.flash.callback = function(callback, params) {
	switch (callback) {
	case 'mplayerState':
		skatic.player.flash.onFlashPlayerIsReady(params);
		break;
	case 'trackInitialized':
		skatic.player.flash.onTransmitStatisticalData(params);
		break;
	case 'screenMode': //new
		skatic.player.flash.changeFlashSize(params);
		break;
	case 'playlistButtonState': //new
		skatic.player.flash.playlistMenuButtonOverOrOut(params);
		break;
	case 'gotoTrackPage':
		skatic.player.gotoTrackPage(params);
		break;
	case 'onDownloadSoundtrack':
		skatic.player.flash.onDownloadSoundtrack(params);
		break;
	default:
		alert(callback);
		break;
	}
};
skatic.player.callback = skatic.player.flash.callback;


/*
skatic.player.html5.showMuteBtn = function() {
	$("#volume-max").hide();
	$("#volume-min").show();
};

skatic.player.html5.showVolumeBtn = function() {
	$("#volume-min").hide();
	$("#volume-max").show();
};
*/
