var $ = jQuery;
var rebindScript = {};
var oldTallest;

function feedBack() {
    setTimeout('$(".feedback-top.portlet-msg-success").fadeOut(10000)', 8000);
    $(".feedback-top.portlet-msg-error .clearFeedback").show();
    $(".feedback-top.portlet-msg-success .clearFeedback").hide();
    $(".clearFeedback").click(function() {
        $(".feedback-top.portlet-msg-error").fadeOut(1000);
    });
}
function equalWidth(group, group2) {
    tallest = 0;
    group.each(function() {
        thisWidth = $(this).width();
        if (thisWidth > tallest) {
            tallest = thisWidth;
        }
    });
    group2.width(tallest);
}

function equalHeight(group, group2) {
    tallest = -1;
    group2.each(function() {
        thisHeight = $(this).height();
        divHeight = $(this).children("fieldset").children("div").height();
        if (thisHeight > tallest) {
            tallest = thisHeight;
        }
    });
    group.each(function() {
        thisHeight = $(this).height();
        divHeight = $(this).children("fieldset").children("div").height();
        if (thisHeight > tallest) {
            tallest = thisHeight;
        }
    });

    if (tallest > 0) {
        oldTallest = tallest;
        group.css("min-height", tallest);
        group.children("fieldset").css("min-height", (tallest - 16) + "px");
        group2.children("fieldset").css("min-height", (tallest - 16) + "px");
        group.css("min-height", tallest);
    }
}

$(document).ready(function() {
    feedBack();
    equalWidth($(".ligne2"), $(".ligne3"));
    equalHeight($(".colonne"), $(".colonne2"));
});


function liferaySessionExtend() {
    if (Liferay.Session.sessionTimeout != 0) {
        Liferay.Session.extend();
    }
}

function assetReady() {
    $("#btnPrev").hide();
}

function selectNextTab() {
    //Et on selectionne le bon onglet
    var selectedTab = $('.vertical-tab-srm .selected');
    var removableTab = selectedTab;
    var selectedPanel = $('div.vertical-tab-panel.selected');
    var removablePanel = selectedPanel;
    while (selectedTab != null && $(selectedTab).next().css('display') == 'none') {
        selectedTab = $(selectedTab).next();
        selectedPanel = $(selectedPanel).next();
    }
    if (selectedTab != null) {
        $(removableTab).removeClass('selected');
        /*$(selectedTab).next().removeClass('undone');*/
        $(selectedTab).next().addClass('selected');
        $(removablePanel).removeClass('selected');
        $(selectedPanel).next().addClass('selected');
        if ($(selectedTab).next().hasClass('last')/* || $(selectedTab).next().next().hasClass('noNavBtn')*/) {
            $('input[name=btnSuivant]').attr("disabled","disabled");
        } else {
            $('input[name=btnPrecedent]').removeAttr("disabled");
        }
    }
}

function selectPrevTab() {
    //Et on selectionne le bon onglet
    var selectedTab = $('.vertical-tab-srm .selected');
    var removableTab = selectedTab;
    var selectedPanel = $('div.vertical-tab-panel.selected');
    var removablePanel = selectedPanel;
    while (selectedTab != null && $(selectedTab).prev().css('display') == 'none') {
        selectedTab = $(selectedTab).prev();
        selectedPanel = $(selectedPanel).prev();
    }
    if (selectedTab != null) {
        $(removableTab).removeClass('selected');
        $(selectedTab).prev().addClass('selected');
        $(removablePanel).removeClass('selected');
        $(selectedPanel).prev().addClass('selected');
        if ($(selectedTab).prev().hasClass('tab0') /*|| $(selectedTab).prev().prev().hasClass('noNavBtn')*/) {
            $('input[name=btnPrecedent]').attr("disabled","disabled");
        } else {
            $('input[name=btnSuivant]').removeAttr("disabled");
        }
    }
}

function validateMandatory() {
    var valid = true ;

    $("span.tabsSRM:visible .labelMandatory").next("span").each(function() {
        var input = $(this).children("input");
        if ($(input).val() == undefined) {
            input = $(this).children("select");
        }
        var val = $(input).val().trim();

        if (val.length == 0) {
            $(input).addClass("error");
            $(input).bind("blur", function() {
                if ($(this).val().trim().length > 0) {
                    $(this).removeClass("error");
                    $(this).unbind("blur");
                }
            });
            valid = false;
        }
    });
    if (valid) {
        $("input[name=valider]").show();
    }
    return valid;
}
function afficheInfo(elem) {
    $(elem).children(".expendable").slideDown();
}

function cacheInfo(elem) {
    $(elem).children(".expendable").slideUp();

}
function casesReady() {
    $(".dataList .toggleInfo").toggle(
            function() {
                $(this).removeClass("expand");
                $(this).addClass("unexpand");
                afficheInfo($(this).parent());
            },
            function() {
                $(this).removeClass("unexpand");
                $(this).addClass("expand");
                cacheInfo($(this).parent());
            });
}

function casesNavigation() {
    $tabs = $("#caseNavigation #menuNavigation").tabs({
        select: function(event, ui) {
            return !$(ui.tab).parent().hasClass('undone');
        }
    });
    $("#detailCase").css("min-height", $("#caseNavigation").height());
    $('.undone').toggleClass('undone', 'done');
}
function homeReady() {
    $('#menuDock li').bind('click', function () {
        $('#menuDock li').removeClass('selected');
        $(this).addClass('selected');

    });
    if ($("#car1 li").children().size() > 0) {
        jQuery('#car1').jcarousel({
            vertical: true,
            scroll: 3
        });
    }
    if ($("#car2 li").children().size() > 0) {
        jQuery('#car2').jcarousel({
            vertical: true,
            scroll: 3
        });
    }
    $('#panel').width("200%");
    $('#panel-1').width("50%");
    $('#panel-2').width("50%");
    $('a[rel=panel]').click(function () {
        var panelheight = $($(this).attr('href')).height();
        $('a[rel=panel]').removeClass('panelSelected');
        $(this).addClass('panelSelected');
        $('#mask').animate({'height':panelheight}, {queue:false, duration:500});
        $('#mask').scrollTo($(this).attr('href'), 800);
        return false;
    });

    var resizeTimer = null;
    $(window).bind('resize', function() {
        if (resizeTimer) clearTimeout(resizeTimer);
        resizeTimer = setTimeout(repositionneSlide, 100);

    });
    var height = $('#panel-1').height();
    if (height > 0) {
        $('#mask').css({'height': height});
    }
}
function repositionneSlide() {
    $('#mask').scrollTo($(".panelSelected").attr('href'), 300);
}
function selectMenu(sousMenu) {
    var lien = $('#' + sousMenu);
    $('.selectedMenu').removeClass('selectedMenu');
    $(lien).addClass('selectedMenu');
}

function showMenu(menu) {
    $('.selectedMenu').parent().next('.underNavigationStats').slideToggle("slow");
    $('.selectedMenu').removeClass("selectedMenu");

    $(menu).addClass("selectedMenu");
    $(menu).parent().next().slideToggle("slow");
}

function selectSousMenu(sousMenu) {
    var lien = $('#' + sousMenu);
    $('.selectedSousMenu').removeClass('selectedSousMenu');
    $(lien).addClass('selectedSousMenu');
}

function copyToAdresse(dest, src) {
    $("input[id='" + dest + "rue1']").val($(".wicket-modal input[id='" + src + "rue1']").val());
    $("input[id='" + dest + "rue2']").val($(".wicket-modal input[id='" + src + "rue2']").val());
    $("input[id='" + dest + "rue3']").val($(".wicket-modal input[id='" + src + "rue3']").val());
    $("input[id='" + dest + "ville']").val($(".wicket-modal input[id='" + src + "ville']").val());
    $("input[id='" + dest + "cp']").val($(".wicket-modal input[id='" + src + "cp']").val());
    $("select[id='" + dest + "pays']").val($(".wicket-modal select[id='" + src + "pays']").val());
    $("input[id='" + dest + "tel']").val($(".wicket-modal input[id='" + src + "tel']").val());
    return false;
}

function treeInspection(orgaName, featureName, assetName) {
    $("a:contains('" + orgaName + "')").prev().click();
    var wait = setInterval(function() {
        if ($("a:contains('" + featureName + "')").is(":visible")) {
            clearInterval(wait);
            $("a:contains('" + featureName + "')").prev().prev().click();
            var wait2 = setInterval(function() {
                if ($(".row:has('"+assetName+"')").is(":visible")) {
                    clearInterval(wait2);
                    $(".row:has('"+assetName+"')").css('row-selected');
                }
            }, 200);
        }
    }, 200);
}