function MM_openBrWindow(theURL,winName,features) { //v2.0
    window.open(theURL,winName,features);
}

function openStreamWindow(streamUrl) {
    window.open(streamUrl,'streamPlayer', 'width=665,height=430,top=0,left=0,scrollbars=1,resizable=1');
}

function togglePreviewListClass(el,switcher,dummyClassName) {
    if(!$(el).hasClass(dummyClassName)) {
        $(el).toggleClass("active",switcher);
    }
}

function playDjStream() {
    if( djPreviewStreams[djPreviewClassAciveId] != null ) {
        openStreamWindow( 'http://www.eska.pl/lrmx_players/start.php?player=player_' + djPreviewStreams[djPreviewClassAciveId] );
    }
}

var flowplayerLicence = "#@ed4f41567066410432b";

var djPreviewImageStart = 20;
var djPreviewClassAciveId = 6;
var djPreviewClasses = new Array("dje_armin_van_buuren","dje_bob_sinclar","dje_carl_cox","dje_david_guetta","dje_ferry_corsten","dje_john_digweed","dje_puoteck");
var djPreviewStreams = new Array(1,null,4,2,5,3,6);
function toggleDjsPreviewListContainer(id,status) {
	
    $("#djsPreviewListContainer")
    .data("djsPreviewListContainerIntv")
    .should_pause=status;

    swapDjsPreview(id);
}

function cycleDjsPreviewListContainer() {
    id = djPreviewClassAciveId+1;
    if( id >= djPreviewClasses.length ){
        id=0;
    }
    swapDjsPreview(id);
}

function swapDjsPreview(id) {
    swapImages('m_dje_'+(djPreviewClassAciveId+1), (djPreviewImageStart+(djPreviewClassAciveId*2))); //off
    swapImages('m_dje_'+(id+1), (djPreviewImageStart+(id*2)+1)); //on
	
    $('#djsPreviewListContainer')
    .removeClass(djPreviewClasses[djPreviewClassAciveId])
    .addClass(djPreviewClasses[id]);
	
    /** disable stream for this dj */
    if( id==1 ) {
        $(".stream").hide();
    } else if($(".stream").is(':hidden')) {
        $(".stream").show();
    }
		
    djPreviewClassAciveId = id;
}

function goToDjProfile() {
    window.location.href = $("#djp"+djPreviewClassAciveId).attr("href");
}


/**
 * -=============--=============--=============--=============-
 */

function reloadFrontNewsCategoryArticles(val) {
    loadContentData('#contentFrontPageCategoryNewsItems', {
        start: 'getNewsCategoryArticles',
        cId: val
    });
}

function reloadToplist(divId, chcId, icoSuffix, noLn)
{
    loadContentData('#'+divId, {
        start: 'getToplist',
        chc_id: chcId,
        ico_suffix: icoSuffix,
        no_line_numbers: noLn
    });
    var comment = new Comment();
    comment.addCommentListParam ('offset', 0);
    comment.addCommentListParam ('container_suffix', '');
    comment.setCommentObjectType(2);
    comment.setCommentObjectId(chcId);
    comment.setAddCommentFormId('saveCommentForm');
    comment.setAddCommentFormContainerId('commentsFormAddContainer');
    comment.setAddCommentsListContainerId('commentsContainer');
    comment.loadCommentlist();
    comment.loadCommentForm();
}
function toggleToplist() {
    $("#topListOtherSongs").toggle();
}

function reloadPageDjTracklist(val,djId) {
    loadContentData('#contentPageDjTracklistItem', {
        start: 'getDjTracklist',
        tId: val,
        djId: djId
    });
}

function previewFrontNewsArticle(val) {
    loadContentData('#contentFrontPageNewsItem', {
        start: 'getNewsArticleItem',
        pId: val
    });
	
    $(".dummyActiveNews").removeClass("dummyActiveNews").removeClass("active");
    $("#aktualnosci_"+val).addClass("dummyActiveNews").addClass("active");
}

function previewFrontCoverage(val) {
    loadContentData('#contentFrontPageCoverageItem', {
        start: 'getCoverageItem',
        pId: val
    });

    $(".dummyActiveCoverage").removeClass("dummyActiveCoverage").removeClass("active");
    $("#relacje_"+val).addClass("dummyActiveCoverage").addClass("active");
}

function showCoverageAdditionalMediaContainer(cId,tp) {
    ccnt = '#layerAdditionalMediaContainer';

    var w = $(window);
    var toTop = Math.max((w.height() - 410) / 2 - 30, 0) + w.scrollTop();
    var toLeft = Math.max((w.width() - 620) / 2, 0) + w.scrollLeft();
	
    $(ccnt).expose( {
        color: '#000',
        opacity: 0.7,
        loadSpeed: 'fast',
        zIndex: 34111,
        onBeforeLoad: function() {
            this.getExposed().html('').css({
                position:'absolute',
                top:toTop,
                left:toLeft
            }).fadeIn('fast');
        },
        onBeforeClose: function() {
            if(this.getExposed())
                this.getExposed().hide();
        }
    });
	
    updateCoverageAdditionalMediaContainer(cId,tp);
}

function updateCoverageAdditionalMediaContainer(cId,tp) {
    loadLayerMediaContainerData({
        start: 'getCoverageItemLayer',
        cId: cId,
        lType: tp
    });
}

function closeCoverageAdditionalMediaContainer() {
    $.expose.getExposed().html('');
    $.expose.close();
}


/**
 * -=============--=============--=============--=============-
 */

function playVideoContent( id, type ) {
	
}


/**
 * -=============--=============--=============--=============-
 */

function reloadPageNewsCategoryArticles(val) {
    window.location.href='?page=news&cId='+val;
}

var foldTXT = "zwiń";
var readMoreTXT = "czytaj więcej";
var activePageNewsItem = null;

function toggleNewsItemContainer(id,el)
{
    if($("#articleItemContent_"+id).is(':hidden')) {
        $("#articleItemToggle_"+id+"_0").html(foldTXT);
        $("#articleItemToggle_"+id+"_1").html(foldTXT);
        $("#articleItemToggleContent_"+id+"_1").show();
    }
    else {
        $("#articleItemToggle_"+id+"_0").html(readMoreTXT);
        $("#articleItemToggleContent_"+id+"_1").hide();
    }
			
    $("#articleItemContent_"+id).slideToggle(100);
    $("#commentsContent").toggle();
    return false;
}

function toggleRemixItemContainer(id,el) {
    if( $("#remixItemContent_"+id).is(':hidden') ) {
        $("#remixItemToggle_"+id + "_0").html(foldTXT);
        $("#remixItemToggle_"+id + "_1").html(foldTXT);
		
        $("#remixItemLead_"+id).hide();
        $("#remixItemContent_"+id).slideDown('fast');
    } else {
        $("#remixItemToggle_"+id + "_0").html(readMoreTXT);
		
        $("#remixItemContent_"+id).hide();
        $("#remixItemLead_"+id).show();
    }
    return false;
}

function toggleEventItemContainer(id,el) {
    if($("#eventItemContent_"+id).is(':hidden')) {
        $("#eventItemToggle_"+id + "_0").html(foldTXT);
        $("#eventItemToggle_"+id + "_1").html(foldTXT);
        $("#eventItemToggleContent_"+id+"_1").show();
        $("#commentsContent_"+id).show();

    }
    else {
        $("#eventItemToggle_"+id + "_0").html(readMoreTXT);
        $("#eventItemToggleContent_"+id+"_1").hide();
        $("#commentsContent_"+id).hide();
    }
	
    $("#eventItemContent_"+id).slideToggle(100);

    return false;
}

/**
 * -=============--=============--=============--=============-
 */


function updateBoxCoverageContainer(varV) {
    loadContentData('#boxCoverageItems', {
        start: 'getBoxCoverages',
        offset: varV
    });
}

/**
 * -=============--=============--=============--=============-
 */

function checkEventDates(cal) {
    time = cal.date.getTime();
    field2 = ( cal.params.inputField.id == "eDateTo" ) ? $("#eDateFrom") : $("#eDateTo");
 
    if( field2.val() ) {
        fD = field2.val().split("-");
        date2 = new Date(parseInt(fD[0]),parseInt(fD[1])-1,parseInt(fD[2]));
        
        if( ( cal.params.inputField.id == "eDateTo" ) ) {
            if( time < date2.getTime() ) {
                field2.val('');
            }
        } else {
            if( time > date2.getTime() ) {
                field2.val('');
            }
        }
    }
	
    if($('#eDateCustomRange').not(":checked")) {
        $('#eDateCustomRange').attr('checked', true);
    }
}
 
function updateEventTypeInputs(itm) {
    if( itm.val() == 0) {
        $("#eTown").attr("disabled",true).val('');
    } else {
        $('#eTown').attr('disabled',false);
    }
}

function updateEventCustomDateRangeInputs(itm) {
    if( itm.val() == 0) {
        $("#eDateFrom").attr('disabled',true).val('');
        $("#eDateTo").attr('disabled',true).val('');
    } else {
        $("#eDateFrom").attr('disabled',false);
        $("#eDateTo").attr('disabled',false);
    }
}

function appendEventSearchFormObservers() {

    Calendar.setup({
        inputField     :    "eDateFrom",
        ifFormat       :    "%Y-%m-%d",
        button         :    "eDateFromTrigger",
        align          :    "Bl",
        firstDay       :    1,
        showsTime      :    false,
        onUpdate       :    checkEventDates
    });
   
    Calendar.setup({
        inputField     :    "eDateTo",
        ifFormat       :    "%Y-%m-%d",
        button         :    "eDateToTrigger",
        align          :    "Bl",
        firstDay       :    1,
        showsTime      :    false,
        onUpdate       :    checkEventDates
    });

   
    $("form input:radio[name='eType']").click(function(){
        updateEventTypeInputs($(this));
    });
	
    $("form input:radio[name='eDateCustomRange']").click(function(){
        updateEventCustomDateRangeInputs($(this));
    });
	
    $("form input:radio[name='eType']:checked").trigger('click');
    $("form input:radio[name='eDateCustomRange']:checked").trigger('click');
}

 
/**
 * -=============--=============--=============--=============-
 */
 
function appendObservers() {

    $("#formSearchFieldItem").click( function(event) {
        if (this._cleared) return;
        $(this).val('');
        this._cleared = true;
    });

}

$(document).ready( function() {
    try {
        appendObservers();
    } catch(e) {
        alert(e);
    }
});


function loadContentData( containerId, params ){
    try {
        $(containerId).fadeTo('fast',0.01);
        $(containerId).load( "ajaxindex.php", params, function() {
            $(containerId).fadeTo(1, 1);
        });
    } catch(e) {
        alert('wystąpił błąd, przeglądarka uważa, że '+e);
    }
}

function loadLayerMediaContainerData( params ){
    try {
        ccnt = '#layerAdditionalMediaContainer';
		
        $(ccnt).load( "ajaxindex.php", params);
    } catch(e) {
        alert('wystąpił błąd, przeglądarka uważa, że '+e);
    }
}
function openPopup(url) {
     window.open(url, 'popupRadio', 'width=830,height=605,status=no');
}
function Comment()
{
    this.commentObjectType = null;
    this.commentObjectId = null;
    this.addCommentFormId = null;
    this.addCommentFormContainerId = null;
    this.addCommentsListContainerId = null;
    this.commenstListParams = {};
    this.addCommentFormErrorMessages = {
        comment_title: {
            isNotNull: "[Wpisz tytuł komentarza]",
            StringLengthValidator: "[Tytuł komentarza może mieć maksymalnie 50 znaków]",
            CMBadWordsValidator:  "[Tytuł komentarza zawiera brzydkie słowa]"
        },
        comment_content: {
            isNotNull: "[Wpisz treść komentarza]",
            StringLengthValidator: "[Treść komentarza może mieć maksymalnie 500 znaków]",
            CMBadWordsValidator:  "[Treść komentarza zawiera brzydkie słowa]"
        },
        klub_login: {
            BadLogin: "[Niepoprawny login lub hasło]"
        }
    };
}
Comment.prototype.addCommentListParam = function(paramName, paramValue)
{
    this.commenstListParams[paramName] = paramValue;
}
Comment.prototype.loadCommentForm = function()
{
    this.reloadAddCommentForm();
}
Comment.prototype.loadCommentlist = function()
{
    this.reloadCommentslist();
}
Comment.prototype.reloadAddCommentForm = function()
{
    var params = this.commenstListParams;
    params['start'] = 'getCommentForm';
    params['comment_object_type'] = this.commentObjectType;
    params['comment_object_id'] = this.commentObjectId;
    var _this = null;
    _this = this;
    try {
        $("#" + this.addCommentFormId).fadeTo('fast', 0.5);
        $("#" + this.addCommentFormContainerId).load( "ajaxindex.php", params, function() {
            $("#" + _this.addCommentFormId).fadeTo(1, 1);
            $('#' + _this.addCommentFormId).ajaxForm({
                dataType:  'json',
                success:   function(errors, status, form){
                    _this.commentFormSuccessCalback(errors, status, form)
                    },
                beforeSubmit: function(formData, form, options){
                    _this.commentFormBeforeSubmitCallback(formData, form, options)
                    }
            });
        });
    } catch(e) {
        alert('wystąpił błąd, przeglądarka uważa, że '+e);
    }
}
Comment.prototype.reloadCommentslist = function()
{
    var params = this.commenstListParams;

    var _this = null;
    _this = this;
    params['start'] = 'getComments';
    params['comment_object_type'] = this.commentObjectType;
    params['comment_object_id'] = this.commentObjectId;
    try {
        $("#" + this.addCommentsListContainerId).fadeTo('fast', 0.5);
        $("#" + this.addCommentsListContainerId).load( "ajaxindex.php", params, function() {
            $("#" + _this.addCommentsListContainerId).fadeTo(1, 1);
        });
    } catch(e) {
        alert('wystąpił błąd, przeglądarka uważa, że '+e);
    }
}
Comment.prototype.commentFormBeforeSubmitCallback = function(formData, form, options) {
    $(form).fadeTo('fast', 0.5);
}
Comment.prototype.commentFormSuccessCalback = function(errors, status, form)  {
    var _this = null;
    _this = this;
    var formId = form.attr('id');
    var inputs = $('#' + formId +' input, #' + formId +' textarea');
    $(inputs).each(function(i, input) {
        //czyszcze komunikaty obłędów
        $(input).parent().parent().children('.err').html('');
    });
    if(errors.length == 0) {
        $(form).clearForm();
        _this.addCommentListParam ('offset', 0);
        _this.reloadCommentslist();
        _this.reloadAddCommentForm();
    }
    else {
        $(errors).each(function(index, error) {
            $('#' + formId +' #' + error.errorName).parent().parent().children('.err').html(_this.addCommentFormErrorMessages[error.errorName][error.errorType]);
        });
    }
    $(form).fadeTo(1, 1);
}
Comment.prototype.setCommentObjectType = function(commentObjectType)
{
    this.commentObjectType = commentObjectType;
}
Comment.prototype.setCommentObjectId = function(commentObjectId)
{
    this.commentObjectId = commentObjectId;
}
Comment.prototype.setAddCommentFormId = function(addCommentFormId)
{
    this.addCommentFormId = addCommentFormId;
}
Comment.prototype.setAddCommentFormContainerId = function(addCommentFormContainerId)
{
    this.addCommentFormContainerId = addCommentFormContainerId;
}
Comment.prototype.setAddCommentsListContainerId = function(addCommentsListContainerId)
{
    this.addCommentsListContainerId = addCommentsListContainerId;
}
Comment.prototype.fillContainer = function(containerId)
{
    $(".commentContainers").html('');
    $("#" + containerId).append($('<div class="margintop30"></div>'));
    $("#" + containerId).append($('<div id="commentsContainer" >'));
    $("#" + containerId).append($('<div class="margintop30"></div>'));
    $("#" + containerId).append($('<div id="commentsFormAddContainer"></div>'));
}
Comment.prototype.logoutEskaUser = function()
{
    var _this = null;
    _this = this;
    var params = {};
    params['start'] = 'logoutEskaUser';
    $.ajax({
        type: 'POST',
        url: "ajaxindex.php",
        data: params,
        success: function(data) {
            _this.reloadAddCommentForm();
        }
    });
}
Comment.prototype.toggleLoginPanel = function(panelId) {
    $("#" + panelId).toggle();
}
Comment.prototype.limitChars = function(textid, limit, infodiv)
{
    var text = $('#' + this.addCommentFormId +' #'+ textid).val();
    var textlength = text.length;

    if(textlength > limit)
    {
        $('#' + infodiv).html('[Nie możesz wpisać więcej niż ' + limit +' znaków]');
        $('#' + this.addCommentFormId +' #'+ textid).val(text.substr(0, limit));
        return false;
    }
    else
    {
        $('#' + infodiv).html('[Pozostało ' + (limit - textlength) +' znaków]');
        return true;
    }
}
