
function displayFont(url) {
    window.open(url, '', 'width=500,height=500');
    return false;
}

//Refreshes small basket visible on page
function refreshSmallBasket() {
    callServer(updateMiniCart, '/ajaxhandler.ashx?requestType=refreshSmallCart');
    initShoppingCart()
}

//Refreshes content in main basket on page
function refreshBasket() {
    if ($get('cartContent')) {
        $get('cartContent').innerHTML = "<div class=\"basketWaiting\"></div>";
        window.setTimeout(enforceWait, 200);
    }
}
function enforceWait() {
    callServer(updateCart, '/ajaxhandler.ashx?requestType=refreshCart');
    initShoppingCart()
}

//Displayed onload
function initProductList() {

    //Put in waiting state
    var elements = document.getElementsByTagName("ul");
    for (var i = 0; i < elements.length; i++)
        if (elements[i].className == "paging")
        elements[i].innerHTML = "henter...";

    $get('productList').innerHTML = "<div class=\"basketWaiting\"></div>";
    var pagingOffset = 1;
    var styleQuerystring = 'styles=';
    var tagQueryString = 'tags=';
    var vendorQueryString = 'vendors=';

    if ($get('styleContainer')) {
        var styles = $get('styleContainer').getElementsByTagName('input');
        for (var i = 0; i < styles.length; i++)
            if (styles[i].checked)
            styleQuerystring += styles[i].value + (i == styles.length - 1 ? '' : '|');
    }

    if ($get('tagContainer')) {
        var tags = $get('tagContainer').getElementsByTagName('input');
        for (var i = 0; i < tags.length; i++)
            if (tags[i].checked)
            tagQueryString += tags[i].value + (i == tags.length - 1 ? '' : '|');
    }

    if ($get('vendorContainer')) {
        var vendors = $get('vendorContainer').getElementsByTagName('input');
        for (var i = 0; i < vendors.length; i++)
            if (vendors[i].checked)
            vendorQueryString += vendors[i].value + (i == vendors.length - 1 ? '' : '|');
    }

    if ($get('manufactorerList')) {
        var list = $get('manufactorerList');
        if (list.selectedIndex > 0) {
            vendorQueryString += list.value + "|";
        }
    }

    var pagingLimit = 24;
    if ($get('pagingController')) {
        pagingLimit = $get('pagingController').value;        
    }
     

    var url = '/ajaxhandler.ashx?requestType=refreshProducts';
    url += '&productGroup=' + $get('currentProductGroup').value;
    url += '&' + styleQuerystring;
    url += '&' + tagQueryString;
    url += '&' + vendorQueryString;
    url += '&pageOffset=' + pagingOffset;
    url += '&pagingLimit=' + pagingLimit;
   callServer(updateProductList, url);
    refreshPaging(pagingOffset);
}

//Called by filterbutton
function refreshProductList() {
    var pagingOffset = 1;
    ChangePaging(1);
    refreshPaging(pagingOffset);
}

function refreshPaging(pageOffset) {
    var styleQuerystring = 'styles=';
    var tagQueryString = 'tags=';
    var vendorQueryString = 'vendors=';

    if ($get('styleContainer')) {
        var styles = $get('styleContainer').getElementsByTagName('input');
        for (var i = 0; i < styles.length; i++)
            if (styles[i].checked)
            styleQuerystring += styles[i].value + (i == styles.length - 1 ? '' : '|');
    }

    if ($get('tagContainer')) {
        var tags = $get('tagContainer').getElementsByTagName('input');
        for (var i = 0; i < tags.length; i++)
            if (tags[i].checked)
            tagQueryString += tags[i].value + (i == tags.length - 1 ? '' : '|');
    }

    if ($get('vendorContainer')) {
        var vendors = $get('vendorContainer').getElementsByTagName('input');
        for (var i = 0; i < vendors.length; i++)
            if (vendors[i].checked)
            vendorQueryString += vendors[i].value + (i == vendors.length - 1 ? '' : '|');
    }

    if ($get('manufactorerList')) {
        var list = $get('manufactorerList');
        if (list.selectedIndex > 0) {
            vendorQueryString += list.value + "|";
        }
    }

    var pagingLimit = 24;
    if ($get('pagingController'))
        pagingLimit = $get('pagingController').value;

    var url = '/ajaxhandler.ashx?requestType=refreshPaging';
    url += '&productGroup=' + $get('currentProductGroup').value;
    url += '&' + styleQuerystring;
    url += '&' + tagQueryString;
    url += '&' + vendorQueryString;
    url += '&pageOffset=' + pageOffset;
    url += '&pagingLimit=' + pagingLimit;    
    callServer(updatePaging, url);
    //callServer(   
}

function ChangePaging(pageNumber) {

    var elements = document.getElementsByTagName("ul");
    for (var i = 0; i < elements.length; i++)
        if (elements[i].className == "paging")
        elements[i].innerHTML = "henter...";
    $get('productList').innerHTML = "<div class=\"productWaiting\"></div>";

    refreshPaging(pageNumber);
    var url = '/ajaxhandler.ashx?requestType=pageProducts';
    url += '&pageOffset=' + pageNumber;
    callServer(updateProductList, url);
}

function updatePaging(content) {

    var elements = document.getElementsByTagName("ul");
    for (var i = 0; i < elements.length; i++)
        if (elements[i].className == "paging")
        elements[i].innerHTML = content;
}

function updateProductList(content) {
    $get('productList').innerHTML = content;
}

addLoadEvent(function() { refreshSmallBasket(); });
addLoadEvent(function() { refreshBasket(); });
