function fadeincontent() {

    $(".fadein").fadeIn(150, "swing", function() {

    });

}

function movesubmenu() {

    try {
        $(".submenu").appendTo("#submenu");

        var bodyoffset = $("#body").offset();

        var offset = $("#nav .main .selected").offset();

        if (offset) {
            $("#submenu").css("left", (offset.left - bodyoffset.left) + "px");
        }

        $(".submenu").show();

    } catch (e) {
        alert(e);
    }

}

function formval(key, f$) {
    return $("[name='"+key+"']", f$).val();
}

function notnulls(list, f$) {

    var res = false;

    $(".error", f$).removeClass("error");

    for (var k in list) {

        var label = list[k];

        var val = formval(k, f$);

        if (!val) {
            if (!res) {
                res = {};
            }
            res[k] = label;

            setfielderror(k, f$);

        }

    }

    return res;

}

function setfielderror(k, f$) {
    $("[name='"+k+"']", f$).addClass("error");
}

$(function($) {



    $("#cart-form").submit(function() {

        var t$ = $(this);

        var notnull = {
        "name":"Name",
        "email1":"Email Adresse",
        "email2":"Email Adresse",
        "strasse":"Straße",
        "plz":"Postleitzahl",
        "city":"Stadt",
        "country":"Land"
        };

        var res = notnulls(notnull, t$);

        if (res) {
            alert("Bitte korrigieren Sie Ihre Eingaben.");
            return false;
        }

        var name = formval("name", t$);
        var email1 = formval("email1", t$);
        var email2 = formval("email2", t$);
        var strasse = formval("strasse", t$);
        var plz = formval("plz", t$);
        var stadt = formval("city", t$);
        var land = formval("country", t$);

        if (email1!=email2) {
            setfielderror("email1", t$);
            setfielderror("email2", t$);
            alert("Ihre überprüfen Sie Ihre Email Adresse.");
            return false;
        }


        var ser = t$.serialize();

        ser += "&a:order=1";

        $.post("warenkorb.php", ser, function(o) {

            if (o.error) {
                alert("Ihre Bestellung konnte nicht abgeschickt werden.\n\nFehler: "+o.exception);
            } else {
                alert("Vielen Dank. Wir haben Ihre Bestellung entgegengenommen und werden Sie kontaktieren.");
                location.href = "konsum-takeaways.html";
            }

        }, "json");

        return false;

    })

    $(".cart-refresh-action").click(function() {

        var cart$ = $("#cart-form");

        var ser = cart$.serialize();

        ser += "&a:refresh=1";

        $.post("warenkorb.php", ser, function(html) {

            $("#warenkorb-").html(html);

        });

        return false;

    })

    $("[href='#edition-definition']").click(function() {
        $("#definition .long").show();
    })

    $("[href='#newsletter-anmelden']").click(function() {
        location.href = "newsletter-anmelden.html";
        return false;
    })

    $(".buy-action").click(function() {

        var t$ = $(this);

        var sku = t$.attr("sku");
        var price = t$.attr("price");
        var qty = t$.attr("qty");
        var text = t$.attr("text");
        var width = t$.attr("width");
        var height = t$.attr("height");
        var edition = t$.attr("edition");

        var o = {
            sku:sku,
            price:price,
            width:width,
            height:height,
            qty:qty,
            text:text,
            edition:edition
        }

        $.post("add-to-cart.php", o, function(items) {

            alert(text + " wurde ihrem Warenkorb hinzugefügt.");

            var total = 0;

            for (var k in items) {
                var item = items[k];
                total += item.qty;
            }

            $("#shopmenu .cart").addClass("active");

            $("#cart-num-items").html(total);

        }, "json");

        return false;

    })

    $("#form-subscribe").submit(function() {

        $("#error-info").hide();
        $("#success-info").hide();

        var t$ = $(this);

        var email = $("[name='email']", t$);

        if (!email) {
            alert("Bitte zuerst Ihre Email Adresse eintragen.")
            return;
        }

        var ser = $(this).serialize();

        $.post("newsletter-action.php", ser, function(o) {


            if (o.error) {
                $("#error-info").show(200);
                return;
            }

            alert("Ihre Anmeldung war erfolgreich.");

//                $("#success-info").show(200);

        }, "json");

        return false;

    })

    $("a.previous-next").click(function() {
        var t$ = $(this);
        var oid = t$.attr("oid");
        var base = t$.attr("base");
        var status = $("#info").attr("status");
        var url = base.replace("{id}", oid);
        url = url.replace("{status}", status);
        location.href = url;
        return false;
    })

    $(".image-info").click(function() {

        var t$ = $("#info");

        var href = t$.attr("status");

        if (href == "closed") {
            href = "open";
            t$.animate({left: 640});
        } else {
            href = "closed";
            t$.animate({left: 480});
        }

        t$.attr("status", href);

        return false;

    })

    $("#fullscreen").live("click", function() {

        if (!window.gallery) {
            return false;
        }

        var g = window.gallery;

        var url = g.url;

        url = url.replace(/{id}/, g.next);

        location.href = url + "#full";

        return false;

    })

    if (location.hash == "#full") {
        loadfullscreen($(".fullscreen").attr("href"), false);
    }

    $("#fullscreen .close").live("click", function() {
        revertfullscreen();
        return false;
    })

    $("#gallery .fullscreen").click(function() {

        var t$ = $(this);

        var href = t$.attr("href");

        loadfullscreen(href, true);

        return false;

    })


})

function revertfullscreen() {
    $("#fullscreen").fadeOut(200, function() {
        $("body").removeClass("full");
        $("#main").fadeIn(50);
    })
}

function loadfullscreen(url, mainfadein) {

    $("body").addClass("full");

    var image = new Image();

    var imageload = function() {

        var im$ = $(image);

        showfullscreen(im$, image.width, image.height, mainfadein);

    }

    image.onload = imageload;

    image.src = url;

}

function showfullscreen(im$, imw, imh, mainfadein) {

    $("#fullscreen span span span").empty();

    $("#fullscreen span span span").append(im$);

    var winh = $(window).height();
    var winw = $(window).width();

    if (imw && imh) {

        var wr = winw / winh;
        var ir = imw / imh;

        if (imw > imh && ir > wr) {
            var w = winw - 200;
            im$.css("width", w + "px");
        } else {
            var h = winh - 100;
            im$.css("height", h + "px");
        }

    }

    if (mainfadein) {

        $("#main").fadeOut(200, function() {
            $("#fullscreen").fadeIn(400);
        })

    } else {
        $("#fullscreen").fadeIn(400);
    }

}

