var indexPhoto = 1;
var indexSales = 1;
var indexSales2 = 1;

// celkovy pocet fotek
var photosCount = 4;

// rychlost animace fotky
var speedAnimate = 4000;

// rychlost animace akci na uvodce
var speedSales    = 5000;

// rychlost animace 2.akci na uvodce
var speedSales2    = 5000;

// animace fotek
var photo_animate;
var photo_hover = false;

// animace akci na uvodce
var sales_animate;
var sales_hover = false;

// animace 2. akci na uvodce
var sales2_animate;
var sales2_hover = false;

$(document).ready(function() {
    photo_animate = setTimeout(function() { runAnimate(); }, speedAnimate);

    // animaci akcniho banneru spustim pouze v pripade, ze je zde vice nez 1 banner
    if (document.getElementById("akce-2")) {
        sales_animate = setTimeout(function() { runSales(); }, speedSales+2500);

        // stop / start animace akci na uvodce
        $("#action-box").hover(
            function() {
                // zastaveni animace, pokud na ni uzivatel najel mysi
                clearTimeout(sales_animate);
                sales_hover = true;
            },
            function() {
                // znovuspusteni animace, pokud na ni uzivatel uz neni mysi
                sales_animate = setTimeout(function() { runSales(); }, speedSales+2500);
                sales_hover = false;
            }
        );
    }

    // animaci 2. akcniho banneru spustim pouze v pripade, ze je zde vice nez 1 banner
    if (document.getElementById("akce-2-2")) {
        sales2_animate = setTimeout(function() { runSales2(); }, speedSales2);

        // stop / start animace akci na uvodce
        $("#action-box-2").hover(
            function() {
                // zastaveni animace, pokud na ni uzivatel najel mysi
                clearTimeout(sales2_animate);
                sales2_hover = true;
            },
            function() {
                // znovuspusteni animace, pokud na ni uzivatel uz neni mysi
                sales2_animate = setTimeout(function() { runSales2(); }, speedSales2);
                sales2_hover = false;
            }
        );
    }

    // stop / start animace fotky
    $("#image-photo").hover(
        function() {
            // zastaveni animace, pokud na ni uzivatel najel mysi
            clearTimeout(photo_animate);
            photo_hover = true;
        },
        function() {
            // znovuspusteni animace, pokud na ni uzivatel uz neni mysi
            photo_animate = setTimeout(function() { runAnimate(); }, speedAnimate);
            photo_hover = false;
        }
    );

    // tooltip
    if (document.getElementById("submenu-vlastnosti")) {
        $("#submenu-vlastnosti ul li a").cluetip({splitTitle: ' | '});
    }
    if (document.getElementById("vyhody")) {
        $("#vyhody ul li").cluetip({splitTitle: ' | '});
    }

    // registrace uzivatele
    if ($("#fakturacni_udaje_0").attr('checked')) {
        $("#fakturacni_udaje_box").hide();
    }

    $("#fakturacni_udaje_0").click(function() { $('#fakturacni_udaje_box').hide(); $(this).blur(); });
    $("#fakturacni_udaje_1").click(function() { $('#fakturacni_udaje_box').show(); $(this).blur(); });
});

function changePhoto()
{
    indexPhoto = indexPhoto + 1;

    if (indexPhoto > photosCount) {
        indexPhoto = 1;
    }

    $("#image-photo-holder").attr({ src: "/media/index/image-photos/image-photo-" + indexPhoto + ".jpg" });
}

function runAnimate()
{
    $("#image-photo-holder").fadeOut("slow", function () {
        changePhoto();
        $("#image-photo-holder").fadeIn("slow");

        if (!photo_hover) {
            photo_animate = setTimeout(function() { runAnimate(); }, speedAnimate);
        }
    });
}

function runSales()
{
    $("#akce-"+indexSales).slideUp("normal", function () {
        $("#action-box div.akce").hide();

        indexSales = indexSales + 1;

        if (!document.getElementById("akce-"+indexSales)) {
            indexSales = 1;
        }

        $("#akce-"+indexSales).removeClass("non-visible");
        $("#akce-"+indexSales).slideDown("normal");

        if (!sales_hover) {
            sales_animate = setTimeout(function() { runSales(); }, speedSales);
        }
    });
}

function runSales2()
{
    $("#akce-2-"+indexSales2).slideUp("normal", function () {
        $("#action-box-2 div.akce").hide();

        indexSales2 = indexSales2 + 1;

        if (!document.getElementById("akce-2-"+indexSales2)) {
            indexSales2 = 1;
        }

        $("#akce-2-"+indexSales2).removeClass("non-visible");
        $("#akce-2-"+indexSales2).slideDown("normal");

        if (!sales2_hover) {
            sales2_animate = setTimeout(function() { runSales2(); }, speedSales2);
        }
    });
}

// kontrola registracniho formu
function getLabel(elemId)
{
    if (elemId) {
        var label = $('label.required[for="' + elemId + '"]');

        if (label && label.length) {
            if (label.attr('title')) {
                return label.attr('title');
            }

            label = label.text();
            label = label.replace(/[\s\*]*$/, '');

            return label;
        }
    }

    return '';
}

function getRadioLabel(name)
{
    if (name) {
        var label = $('label.radio-main-label.' + name);

        if (label && label.length) {
            if (label.attr('title')) {
                return label.attr('title');
            }

            label = label.text();
            label = label.replace(/[\s\*]*$/, '');

            return label;
        }
    }

    return '';
}

function emailCheck(email)
{
    var ret = true;

    if (window.RegExp) {
        re = new RegExp("^[_a-zA-Z0-9\.\-]+@[_a-zA-Z0-9\.\-]+[\.][a-zA-Z]{2,4}$");
        ret = re.test(email);
    }

    return ret;
}

function checkForm(form)
{
    var inputs = $('#' + form.id + ' .required');

    if (!inputs.length) {
        return true;
    }

    var error = '';
    var radio = new Array();
    var radio_labels = new Array();

    for (i = 0; i < inputs.length; i++) {
        el = inputs[i];

        if (!el.id) {
            continue;
        }

        label = getLabel(el.id).replace(/\*+$/g, '');

        if (!label) {
            continue;
        }

        if (
            !(el.value)
            || (('null' == el.value) && ('SELECT' == el.tagName) && (-1 == el.className.indexOf('nullable')))
            || (('checkbox' == el.type) && !el.checked)
        ) {
            switch (el.type) {
                case 'checkbox':
                    error += "Zaškrtněte prosím pole '" + label + "'.<br />";
                    break;

                case 'select-one':
                    error += "Vyberte prosím jednu z možností v poli '" + label + "'.<br />";
                    break;

                default:
                    error += "Vyplňte prosím pole '" + label + "'.<br />";
                    break;
            }

            continue;
        }

        if (('INPUT' == el.tagName) && ('radio' == el.type)) {
            if (!radio[el.name]) {
                radio[el.name] = false;
            }

            if (el.checked) {
                radio[el.name] = true;
            }

            radio_labels[el.name] = getRadioLabel(el.name);
        }

        if (-1 != el.id.indexOf('email')) {
            if (!emailCheck(el.value)) {
                error += "Emailová adresa v poli '" + label + "' je neplatná, zadejte ji prosím znovu.<br />";
            }
        }
    }

    for (var rad in radio) {
        if (!radio[rad] && radio_labels[rad]) {
            error += getTrans('choose').replace('%s', radio_labels[rad]) + '<br />';
        }
    }

    if (error) {
        $.prompt(error, { opacity: 0.1 });
        return false;
    }

    return true;
}

