var scroll_offset = 0;
var scroll_type = "dvd";
var step = 4;

function scroll_forward() {

    scroll_offset = scroll_offset + step;
    scroll_get_data(scroll_offset);

}

function scroll_backward() {

    if (scroll_offset > 0) {

        scroll_offset = scroll_offset - step;

        if (scroll_offset < 0) {
            scroll_offset = 0;
        }

        scroll_get_data(scroll_offset);

    }

}


function scroll_get_data(offset) {
    httpGetAsync('/ajax_shopitems.php?offset=' + offset + '&type=' + scroll_type + '&reloadhack=' + Math.random(), scroll_get_data_complete);

}

function scroll_get_data_complete(xmlhttp) {

    var result = xmlhttp.responseXML;

    if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {

        try {

            if (result.getElementsByTagName('status').length > 0 && result.getElementsByTagName('status').item(0).firstChild.data == 'error') {
                throw result.getElementsByTagName('message').item(0).firstChild.data;
            }

            if (result.getElementsByTagName('offset').length > 0) {
                scroll_offset = parseInt(result.getElementsByTagName('offset').item(0).firstChild.data);
            }

            var max_items = result.getElementsByTagName('item').length > 4 ? 4 : result.getElementsByTagName('item').length;

            for (var i = 0; i < max_items; ++i) {

                var item = result.getElementsByTagName('item').item(i);

                document.getElementById('scroll_content_' + (i+1)).innerHTML = item.getElementsByTagName('content').item(0).firstChild.data;
                document.getElementById('scroll_title_' + (i+1)).innerHTML = item.getElementsByTagName('title').item(0).firstChild.data;
                document.getElementById('scroll_teaser_' + (i+1)).innerHTML = item.getElementsByTagName('teaser').item(0).firstChild.data;
                document.getElementById('scroll_price_' + (i+1)).innerHTML = item.getElementsByTagName('price').item(0).firstChild.data;

            }

        } catch (Exception) {
            alert('Unerwarteter Fehler aufgetreten: ' + Exception);
        }

    }

}


function httpGetAsync(uri, callback) {

    var xmlhttp = null;

    try {
        xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
        try {
            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        } catch (e) {
            xmlhttp = null;
        }
    }


    if (xmlhttp == null && typeof XMLHttpRequest != 'undefined') {
        xmlhttp = new XMLHttpRequest();
    }

    if (xmlhttp != null) {

        xmlhttp.open('GET', uri, true);
        xmlhttp.onreadystatechange = function() { if (xmlhttp != null) callback(xmlhttp); }
        xmlhttp.send(null);

    }

    return xmlhttp;

}

function switch_tab(type) {

    var types = new Array("dvd", "book", "cd", "author", "best", "new");

    for (var i = 0; i < types.length; ++i) {

        if (types[i] == type) {

            document.getElementById("img_left_" + types[i]).src = "/images/header/navigation/left_on";
            document.getElementById("td_" + types[i]).className = "header_navigation_on";
            document.getElementById("img_right_" + types[i]).src = "/images/header/navigation/right_on";

        } else {

            document.getElementById("img_left_" + types[i]).src = "/images/blind.gif";
            document.getElementById("td_" + types[i]).className = "header_navigation_off";
            document.getElementById("img_right_" + types[i]).src = "/images/blind.gif";

        }

    }

    scroll_offset = 0;
    scroll_type = type;

    scroll_get_data(0);

}
