﻿jQuery.noConflict();

//JW Player
// zmienne
var player = null;
var tmp = false;
var pathtmp = null;
var jwvolume = 80;
//kliknieta mp3
var objplay = null;

function playerReady(thePlayer) {
    player = document.getElementById('playerjw');
    addListeners();
}

function addListeners() {
    if (player) {
        player.addModelListener("TIME", "timeListener");
        player.addModelListener("STATE", "stateListener");
        player.addControllerListener("VOLUME", "volumeListener");
    }
    else {
        setTimeout("addListeners()", 50);
    }
}

function play(obj, path) {
    jQuery(".mp3").removeClass("active");
    objplay = jQuery(obj);
    if (pathtmp != path & pathtmp != null) {
        jQuery(".mp3").removeClass("active");
        objplay.addClass("active");
        tmp = false;
        pathtmp = path;
    }
    if (tmp == false) {
        player.sendEvent('LOAD', path);
        objplay.addClass("active");
        tmp = true;
        pathtmp = path;
    }
    else {
        player.sendEvent('STOP');
        objplay.removeClass("active");
        tmp = false;
    }
}


function stateListener(obj) {
    //IDLE, BUFFERING, PLAYING, PAUSED, COMPLETED
    currentState = obj.newstate;
    previousState = obj.oldstate;
    
    //console.log(currentState +'; '+previousState);

    if ((currentState == "COMPLETED") && (previousState == "PLAYING")) {
        jQuery('#state').text('');
        jQuery('#jwPlay').removeClass('pause').addClass('play');
        objplay.removeClass("active");
        tmp = false;
    }
    if (currentState == "PLAYING") {
        jQuery('#state').text('');
        jQuery('#jwPlay').removeClass('play').addClass('pause');
        tmp = true;
    }
    if (currentState == "PAUSED") {
        jQuery('#jwPlay').removeClass('pause').addClass('play');
        tmp = true;
    }
    if (currentState == "IDLE") {
        jQuery('#state').text('');
        jQuery('#jwPlay').removeClass('pause').addClass('play');
        tmp = true;
    }
    if (currentState == "BUFFERING") {
        jQuery('#state').text("Buforuje...");
    }
}

function volumeListener(obj) {
    jwvolume = obj.percentage;
}
function timeListener(obj) {
    var dur = obj.duration;
    var pos = obj.position;
    var mmTotal = 0;
    var ssTotal = 0;
    mmTotal = Math.floor(dur / 60);
    ssTotal = Math.floor(dur - (mmTotal * 60));
    var mmT;
    var ssT;
    if (dur == 0)
        mmT = '--';
    else if (dur > 0 && mmTotal < 10)
        mmT = '0' + mmTotal.toString();
    else
        mmT = mmTotal;
    if (dur == 0)
        ssT = '--';
    else if (dur > 0 && ssTotal < 10)
        ssT = '0' + ssTotal.toString();
    else
        ssT = ssTotal;
    var mmCurent = 0;
    var ssCurent = 0;
    mmCurent = Math.floor(pos / 60);
    ssCurent = Math.floor(pos - (mmCurent * 60));
    var mmC;
    var ssC;
    if (pos == 0)
        mmC = '--';
    else if (pos > 0 && mmCurent < 10)
        mmC = '0' + mmCurent.toString();
    else
        mmC = mmCurent;
    if (pos == 0)
        ssC = '--';
    else if (pos > 0 && ssCurent < 10)
        ssC = '0' + ssCurent.toString();
    else
        ssC = ssCurent;
    jQuery("#time").html(mmC + ':' + ssC + ' / ' + mmT + ':' + ssT);
}

//funkcje zwracające odpowiednie id
function idDzwieki(tabId) {
	var idSection = tabId;
	switch (tabId) {
		case 1: idSection = 1227; break;
		case 2: idSection = 1228; break;
		case 3: idSection = 1229; break;
	}
	return idSection
}

//sterowanie tabs up
function tabsPlayer(me, tabId) {
	activUp = tabId;
	tabsAll();
	//zmiana tab up
	jQuery('.upperTabsSelected').attr('class', 'upperTabs');
	jQuery(me).attr('class', 'upperTabsSelected');
}
function tabsPlayer2(me, tabId) {
	//zmiana tab up
	jQuery('.listenLive').removeClass('active');
	jQuery(me).addClass('active');
	window.open('player.aspx?tab='+tabId,'','width=350,height=200,top='+tabId+'0,left='+tabId+'00'); return false;
}
//sterowanie tabs down
function tabsContent(me, tabId) {
	//activDown = tabId;
	activDown = 2;
	tabsAll();
	//zmiana tab down
	jQuery('.downTabSelected').attr('class', 'downTab');
	jQuery(me).attr('class', 'downTabSelected');
}
//sterowanie tabs wspólne
var b1;
var b2;
var b3;
function tabsAll() {
	if(player)
		player.sendEvent('STOP');
	jQuery("#state").html("");
	jQuery("#time").html('--:-- / --:--');
	//zmiana content
	
	if ((typeof(activUp) !== 'undefined' && activUp != "") && (typeof(activDown) !== 'undefined' && activDown != "")) {
		setCookie('cookieTab', activUp.toString() + ';' + activDown.toString(), 365);
	}
	jQuery(".lista").addClass('hiden');
	//undefined
	if (activUp != null) {
		if (activDown == 2) {
			//load Dzwieki + play first mp3
			loadDzwieki(activUp);
			//b3=setTimeout("loadDzwieki(activUp)",1000*5);
			jQuery('#mp3Lista').removeClass('hiden');
			jQuery('#time').removeClass('hiden');
		}
	}
}

//load Dzwieki
function loadDzwieki(tabId) {
    var toPlay = "";
    jQuery.ajax({
        type: "GET",
        url: "/_cms/sections/" + idDzwieki(tabId) + "/articles.xml",
        //url: "/_cms/sections/1203/articles.xml",
        dataType: "xml",
        success: function(xml) {
            jQuery("#mp3Lista").html("");
            var flag = 5;
            jQuery("<ul></ul>").appendTo("#mp3Lista");
            jQuery(xml).find('article').each(function(i) {
                if (i < flag) {
                    var $article = jQuery(this);
                    var id = $article.children('id').text();
                    var title = $article.children('title').text();
                    var pattern = /\D+/;
                    var strD = $article.children('date_show').text();
                    arrD = strD.split(pattern);
                    var mp3 = '';
                    jQuery(xml).find('file').each(function() {
                        var $file = jQuery(this);
                        var idtb_article = $file.attr("idtb_article");
                        if (idtb_article == id) {
                            mp3 = $file.attr("folder") + "/" + $file.text();
                            if (mp3.length != 0) {
                                toPlay = "/_files/" +mp3;
                                //jQuery("<li><a class='mp3' onClick='play(this,\"/_files/" + mp3 + "\");'><span class='date'>" + arrD[2] + "." + arrD[1] + "." + arrD[0] + "</span><span class='title'>" + title + "</span></a></li>").appendTo("#mp3Lista ul");
                                jQuery("<li><a class='mp3' onClick='play(this,\"/_files/" + mp3 + "\");'><span class='title'>" + title + "</span></a></li>").appendTo("#mp3Lista ul");
                            }
                        }
                    })
                }
            });
            //try { console.log(toPlay.length); }
            //catch (err) { }
            if (toPlay.length > 34) {
                jQuery("<a class='more' href='dzwieki/?id=" + idDzwieki(tabId) + "'>więcej&nbsp;&#187;</a>").appendTo("#mp3Lista");
                //play(jQuery('#mp3Lista ul li a:first'),toPlay);
            }
        },
        complete: function() { },
        error: function(a) {
            jQuery("#mp3Lista").html("<span class='laduje'>Ładuje ...</span>");
        }
    });
}

//COOKI
function getCookie(c_name) {
	if (document.cookie.length > 0) {
		c_start = document.cookie.indexOf(c_name + "=");
		if (c_start != -1) {
			c_start = c_start + c_name.length + 1;
			c_end = document.cookie.indexOf(";", c_start);
			if (c_end == -1) c_end = document.cookie.length
			return unescape(document.cookie.substring(c_start, c_end));
		}
	}
	return ""
}

function setCookie(c_name, value, expiredays) {
	var exdate = new Date();
	exdate.setDate(exdate.getDate() + expiredays);
	document.cookie = c_name + "=" + escape(value) + ((expiredays == null) ? "" : "; expires=" + exdate.toGMTString());
}

function checkCookie() {
	var cookieTab = getCookie('cookieTab');
	if (cookieTab != null && cookieTab != "") {
		var pattern = /\D+/;
		arrD = cookieTab.split(pattern);
		activUp = Number(arrD[0]);
		activDown = Number(arrD[1]);
	}
	else {
		
		if ((typeof(activUp) !== 'undefined' && activUp != "") && (typeof(activDown) !== 'undefined' && activDown != "")) {
			setCookie('cookieTab', activUp.toString()+';'+activDown.toString(), 365);
		}
		else {
			setCookie('cookieTab', '1;1', 365);
			activUp = 1;
			activDown = 1;
		}
	}
}


//page start
jQuery(document).ready(function() {
	checkCookie();
	tabsContent(jQuery('#tabVie #view' + activDown), activDown);
	tabsPlayer(jQuery('#tabAud #tab' + activUp), activUp);
})
