$(function() {
    $('.Menu li').hover(
        function() {
            $(this).addClass('over');
        },
        function() {
            $(this).removeClass('over');
        }
    );

    $('.Our_Products div').hover(
        function() {
            $(this).addClass('over');
        },
        function() {
            $(this).removeClass('over');
        }
    ).click(function() {        
        window.location.href = $(this).find('a:first').attr('href');
    });

    $('.Login_Btn').click(function() {
        $('.Login_Box_Eshop').fadeIn();
        return false;
    });

    $('.Login_Exit').click(function() {
        $('.Login_Box_Eshop').fadeOut();
        return false;
    });

    $('.Login_Box_Eshop input[name="login"], .Login_Box_Eshop input[name="pass"], .Search_Txt').dsDefaultValue();

    $('#index_banner .banners').cycle({
        fx: 'fade',
        timeout: '7000',
        pause: true,
        pager: '#index_banner .navigation'
    });

    $.repairLink2Anchor();
});

// product parameters
ProductParameters = function(variants, showColors, showDimensions, curColor, curSize) {
    var clrSelect = $('#product_color');
    var dimSelect = $('#product_size');

    var optionExist = function(s, v) {
        var exist = false;
        s.find('option').each(function(index, opt) {
            if ($(opt).val() == v) {
                exist = true;
                return false;
            }
        });
        return exist;
    }

    var redirectToVariant = function(color, size) {
        for (var i = 0; i < variants.length; i++) {
            if (variants[i].color == color && variants[i].size == size) {
                window.location.href = variants[i].url;
            }
        }
    }

    var changeColor = function() {
        var selectedColor = clrSelect.val();

        dimSelect.find('option[value!=""]').remove();
        for (var i = 0; i < variants.length; i++) {
            if (variants[i].color == selectedColor) {
                var size = variants[i].size;
                if (size != '' && !optionExist(dimSelect, size)) {
                    dimSelect.append(
                        $('<option></option>')
                            .val(size)
                            .html(size)
                    );
                }
            }
        }
    }

    var changeSize = function() {
        var selectedColor = clrSelect.val();
        var selectedSize = dimSelect.val();

        if (selectedColor != '' && selectedSize != '') {
            redirectToVariant(selectedColor, selectedSize);
        }
    }

    if (showColors == true && showDimensions == true) {
        //dimensions
        clrSelect.append(
            $('<option></option>')
                .val('')
                .html('vyberte si...')
        );

        dimSelect.append(
            $('<option></option>')
                .val('')
                .html('vyberte si...')
        );
        
        for (var i = 0; i < variants.length; i++) {
            var color = variants[i].color;
            if (color != '' && !optionExist(clrSelect, color)) {
                clrSelect.append(
                    $('<option></option>')
                        .val(color)
                        .html(color)
                        .attr('selected', (curColor == color))
                );

                if (curColor == color) {
                    for (var j = 0; j < variants.length; j++) {
                        if (variants[j].color == color) {
                            var size = variants[j].size;
                            if (size != '' && !optionExist(dimSelect, size)) {
                                dimSelect.append(
                                    $('<option></option>')
                                        .val(size)
                                        .html(size)
                                        .attr('selected', (curSize == size))
                                );
                            }
                        }
                    }
                }
            }
        }

        clrSelect.change(changeColor);
        dimSelect.change(changeSize);
    } else if (showColors == true || showDimensions == true) {
        if (showColors == true) {
            clrSelect.append(
                $('<option></option>')
                    .val('')
                    .html('vyberte si...')
            );

            for (var i = 0; i < variants.length; i++) {
                clrSelect.append(
                    $('<option></option>')
                        .val(variants[i].url)
                        .html(variants[i].color)
                        .attr('selected', (curColor == variants[i].color))
                );
            }

            clrSelect.change(function() {
                var url = clrSelect.val();
                if (url != '') {
                    $('.Detail_Over .Det_Sub').hide();
                    $('.Detail_Over .Det_Loader').show();
                    window.location.href = url;
                }
            });
        } else {
            dimSelect.append(
                $('<option></option>')
                    .val('')
                    .html('vyberte si...')
            );

            for (var i = 0; i < variants.length; i++) {
                dimSelect.append(
                    $('<option></option>')
                        .val(variants[i].url)
                        .html(variants[i].size)
                        .attr('selected', (curSize == variants[i].size))
                );
            }

            dimSelect.change(function() {
                var url = dimSelect.val();
                if (url != '') {
                    $('.Detail_Over .Det_Sub').hide();
                    $('.Detail_Over .Det_Loader').show();
                    window.location.href = url;
                }
            });
        }
    }
}
