var IE6 = false;
var IE7 = false;

$(function() {
    IE6 = (navigator.appVersion.indexOf("MSIE 6.") == -1) ? false : true;
    IE7 = (navigator.appVersion.indexOf("MSIE 7.") == -1) ? false : true;

    init_mainmenu();
    init_sidemenu();
    init_search(".component_searchBar input:eq(0)");
    init_newsletter();
    init_rotator();
    //init_languages();
    init_product_slider();
    init_folder_galerie();
    init_text_length();
    init_extended_filter();
});

function equalHeight(group) {
    var tallest = 0;
    group.each(function() {
        var thisHeight = $(this).height();
        if(thisHeight > tallest) {
            tallest = thisHeight;
        }
    });
    group.height(tallest);
}

function init_mainmenu() {
    var allItems = $("#mainmenu ul > li");
    var firstItem = allItems.first();
    var lastItem = allItems.last();
    firstItem.addClass("first");
    lastItem.addClass("last");
    allItems.mouseenter(function() {
        if ($(this).hasClass('active') == false) {
            $(this).addClass('hover');
        }
    }).mouseleave(function() {
        $(this).removeClass('hover');
    });
}

function init_sidemenu() {
    var allItems = $(".sidemenu li");
    var firstItem = allItems.first();
    var lastItem = allItems.last();

    firstItem.addClass("first");
    lastItem.addClass("last");

    allItems.mouseenter(function() {
        if ($(this).hasClass('active') == false) {
            $(this).addClass('hover');
        }
    }).mouseleave(function() {
        $(this).removeClass('hover');
    });
}

function init_search(input_identifikator) {
    var input = $(input_identifikator);
    var defaultText = input.val();
    if (defaultText!=undefined && defaultText.length > 0) {
        input.click(function() {
            if (input.val() == defaultText) {
                input.val("");
            }
        }).blur(function() {
            if (input.val() == "") {
                input.val(defaultText);
            }
        });
    }
}

function init_rotator() {
    if ($("#layout_rotator").length > 0) {        
        var count_hot_real_estates = $("#rotator>ul>li").size();
        if(count_hot_real_estates <= 4) {
            $("#rotator_next").css("display","none");
            $("#rotator_prev").css("display","none");
        } 
        else {
            $("#rotator").jCarouselLite({
                btnNext: "#rotator_next",
                btnPrev: "#rotator_prev",
                visible: 4,
                speed: 1200,
                left: 0
            });
        }        
    }
}

function init_languages() {
    var activeImage = $("#languages li.active a img");
    var src = activeImage.attr("src");
    src = src.substr(0, src.length - 6) + "active_" + src.substr(src.length - 6, src.length - 4);
    activeImage.attr("src", src);

    $("#languages li:not(.active) a").hover(function() {
        var image = $(this).children("img");
        var src = image.attr("src");
        src = src.substr(0, src.length - 6) + "active_" + src.substr(src.length - 6, src.length - 4);
        image.attr("src", src);
    }, function() {
        var image = $(this).children("img");
        var src = image.attr("src");
        src = src.substr(0, src.length - 13) + src.substr(src.length - 6, src.length - 4);
        image.attr("src", src);
    });
}

function init_product_slider() {
    if ($("#product_rande_slider").length == 1) {
        var product_rande_min_input = $("#product_rande_min");
        var product_rande_min_label = $("#product_rande_min_value");
        var product_rande_max_input = $("#product_rande_max");
        var product_rande_max_label = $("#product_rande_max_value");
        $("#product_rande_slider").slider({
            range: true,
            min: product_rande_min_label.text(),
            max: product_rande_max_label.text(),
            values: [ product_rande_min_label.text(), product_rande_max_label.text() ],
            slide: function(event, ui) {
                product_rande_min_label.text(ui.values[0]);
                product_rande_min_input.text(ui.values[0]);
                product_rande_max_label.text(ui.values[1]);
                product_rande_max_input.text(ui.values[1]);
            }
        });
    }
}

function init_folder_galerie(){
    if ($("#real_estate_rotator").length > 0) {        
        var count_hot_real_estates = $("#real_estate_rotator ul>li").size();
        if(count_hot_real_estates <= 5) {
            $("#real_estate_rotator_next").css("display","none");
            $("#real_estate_rotator_prev").css("display","none");
        } 
        $("#real_estate_rotator").jCarouselLite({
            btnNext: "#real_estate_rotator_next",
            btnPrev: "#real_estate_rotator_prev",
            visible: 5,
            scroll: 1,
            speed: 500,
            left: 0
        });      
    }
}

function init_newsletter() {
    $("#newsletter input.text").focusin(function(){
        $(this).css('color', '#000000');
    });
    $("#newsletter input.text").focusout(function(){
        $(this).css('color', '#C3C5C8');
    });
}

function init_text_length() {
    if( $("#layout_column").height() > $("#layout_content").height()){
        var new_height = $("#layout_column").height() - 40;
        var modules = new Array();
        modules[0] = '.module_bsPage';
        modules[1] = '.module_bsSearch';
        modules[2] = '.module_bsNewsletterUser';
        var i = 0;
        for(i = 0; i < modules.length; i++){
            var modules_count = $("#layout_content "+modules[i]).length;
            if(modules_count > 0) {
                var height = 0;
                if(modules_count > 1){
                    $("#layout_content "+modules[i]).each(function(index){
                        if(index+1 < modules_count){
                            if($(this).height() > 0){
                                height = height + $(this).height() - 6;
                            }
                        }
                    });
                    new_height = new_height - height;
                }
                if($("#wishlist").length > 0 ) {
                    new_height = new_height - $("#wishlist").height();
                }
                var count = $("#layout_content "+modules[i]).length;
                var module = $("#layout_content "+modules[i]);
                $(module[count-1]).css("height",""+new_height+"px");
            }
        }
    }
}

function init_extended_filter(){
    $('#real_estate_filter').parent('form').each(function() {
        $('input').keypress(function(e) {
            if(e.which == 10 || e.which == 13) {
                this.form.submit();
            }
        });
    });
}

