$(document).ready(function() {

    //Login
    var defaultValue = $('#webgate_user').val();
    $('#webgate_password').addClass('webgate_password_image');
    $('#webgate_user').focus( function() {
        if ($(this).val() == defaultValue) {
            $(this).val('');
            $('#webgate_password').removeClass('webgate_password_image');
        }
    }).blur( function() {
        if ($(this).val() == '') {
            $(this).val(defaultValue);
            $('#webgate_password').removeClass('webgate_password_image');
        }
    });

    $('#webgate_password').focus( function() {
        $(this).removeClass('webgate_password_image');
    }).blur( function() {
        if ($(this).val() == '') {
            $(this).addClass('webgate_password_image');
        }
    });

    // Datepicker
    $('.datepicker').datepicker({
        firstDay: 1,
        dateFormat: 'yy-mm-dd'
    });

    $('.vdlinkselector').hide();
    $('.vdlink').click(function(event) {
        $('.vdlinkselector').slideToggle('fast');
        //$(this).html('hide');
    });

    $('.cartfeld').change(function() {
        $(this).addClass('unsaved');
    });


    // Autocomplete article
    $(".autocomplete_article").autocomplete({
        minLength: 4,
        delay:     0,
        source: function(request, response) {
            $.ajax({
                url:      "index.php?autocomplete=1&mod=AR",
                dataType: "jsonp",
                jsonp:    "jsonp_callback",
                data: {
                    name: request.term
                },
                success: function(data) {
                    response($.map(data, function(item) {
                        return {
                            label: item.artnr + ": " + item.herstellerartnr + " from " + item.hersteller,
                            value: item.artnr,
                            id: item.id
                        }
                    }))
                }
            })
        },
        select: function(event, ui) {
            var name = $(this).attr('id');
            var id = ui.item.id;
            $('#id' + name).val(id);
            $(this).val(ui.item.value);
            return false;
        }
    });


    $("#accordion").accordion({
        clearStyle: true,
        animated: false,
        collapsible: false
    });

    $(".assistent_menupunkt").click(function(){
        var step = $(this).attr('step');
        $("#accordion").accordion( "option", "active", parseInt(step) );
    })


    $("#bar").progressbar({ value: 0 });

    $('#btnprogress').click(function(){
        $('#analyze_result').hide();
        $('#btnprogress').hide();
        $.ajax({
            type: 'post',
            url: 'index.php?cmd=analyze',
            success: function() {
                getAnalyzeResponse();
            }
        });
        window.setTimeout("get_progress()", 500);
    });

    $('#insertall').click(function(){
        $('#result').hide();
        $.ajax({
            type: 'post',
            url: 'index.php?cmd=cartall',
            success: function(response) {
                $('#result_cartall').hide();
                $('#result_message').hide();
                $('#result_message').html("<div class='info'>" + response + " articles added to your cart.</div>");
                $('#result_message').show("slow");
            }
        });
    });

    $('#land').change(function() {
        var selected = $('#land').val();
        //$('#currency')[0].options.length = 0;
        $('#currency').find('option').remove().end().append('<option value="EUR">EUR</option>');
        if (selected=='CZ') $("#currency").find('option').end().append('<option value="CZK">CZK</option>').val('CZK')
        else if (selected=='CH') $("#currency").find('option').end().append('<option value="CHF">CHF</option>').val('CHF')
        else if (selected=='GB') $("#currency").find('option').end().append('<option value="GBP">GBP</option>').val('GBP')
        else if (selected=='NO') $("#currency").find('option').end().append('<option value="NOK">NOK</option>').val('NOK')
        else if (selected=='DK') $("#currency").find('option').end().append('<option value="DKK">DKK</option>').val('DKK')
        else if (selected=='SE') $("#currency").find('option').end().append('<option value="SEK">SEK</option>').val('SEK')
        else $('#currency').val('EUR');
    });

    var bindBehaviors = function() {

        $('.result_unclearselect').dialog({
            title: 'Possible Selections',
            width: 400,
            autoOpen: false
        });

        $('.navigation .btn').click(function(){
            $.ajax({
                type: 'post',
                url: 'index.php?cmd=navigate',
                data: ({move : this.getAttribute('move')}),
                dataType: "html",
                async: false,
                success: function(response) {
                    $('#result_table').html(response);
                    $('#result_message').hide();
                    bindBehaviors();
                }
            });
        })

        $('.result_cart a.cart3').click(function(){
            $.ajax({
                type: 'post',
                url: 'index.php?cmd=cart',
                data: ({
                    idarticle : this.getAttribute('idarticle'),
                    menge : this.getAttribute('menge')
                }),
                dataType: "html",
                async: false,
                success: function(response) {
                    $('#result_cartall').hide();
                    $('#result_message').hide();
                    $('#result_message').html("<div class='info'>" + response + " articles added to your cart.</div>");
                    $('#result_message').show("slow");
                    bindBehaviors();
                }
            });
        });

        $('#comparebox').dialog({
            title: 'Compare',
            width: 600,
            autoOpen: false
        });

    }

    bindBehaviors();

});

function get_progress() {
    $.ajax({
        type: 'get',
        url: 'index.php?cmd=progress',
        success: function(response) {
            if (response < 100) {
                $("#bar").progressbar('option', 'value', parseInt(response) );
                $('#bartext').html(response + '%');
                window.setTimeout("get_progress()", 500);
            }
        }
    });
}

function getAnalyzeResponse() {
    $.ajax({
        url: 'index.php?cmd=getAnalyzeResponse',
        dataType: "jsonp",
        jsonp:    "jsonp_callback",
        async: false,
        success: function(response) {
            //$('#analyze_result').css('visibility', 'visible');
            $('#analyze_total').html(response.analyzed);
            $('#analyze_found').html(response.found);
            $('#analyze_unclear').html(response.unclear);
            $('#analyze_deprecated').html(response.deprecated);
            $('#analyze_unknown').html(response.unknown);
            //$("#bar").progressbar('option', 'value', 100 );
            //$('#btnprogress').show();
            $('#analyze_result').show();
            $('#bartext').html(response.status);
            if (response.status == 'Aborted!') {
                $('#bartext').css("color","red");
            }
            //$("#bar").progressbar('option', 'value', 100 );
        }
    });
}


function compare(divbox) {
    var selectedItems = new Array();
    var z = 0;
    var id = 0;
    var myselector = "#" + divbox + " input[@name='compare[]']:checked";
    $(myselector).each(function() {
        id = $(this).val();
        selectedItems.push(id);
        z = z + 1;
    });
    if (z>0) {
        $.ajax({
            url: 'index.php?cmd=compare',
            type: 'post',
            data: "items=" + selectedItems.join('|'),
            dataType: "text",
            success: function(response) {
                $('#comparebox').html(response);
            }
        });
        $('#comparebox').dialog('open');
    }
    else {
        alert ('Please select some parts.');
    }
}



function MM_swapImgRestore() { //v2.0
  if (document.MM_swapImgData != null)
    for (var i=0; i<(document.MM_swapImgData.length-1); i+=2)
      document.MM_swapImgData[i].src = document.MM_swapImgData[i+1];
}

function MM_preloadImages() { //v2.0
  if (document.images) {
    var imgFiles = MM_preloadImages.arguments;
    if (document.preloadArray==null) document.preloadArray = new Array();
    var i = document.preloadArray.length;
    with (document) for (var j=0; j<imgFiles.length; j++) if (imgFiles[j].charAt(0)!="#"){
      preloadArray[i] = new Image;
      preloadArray[i++].src = imgFiles[j];
  } }
}

function MM_swapImage() { //v2.0
  var i,j=0,objStr,obj,swapArray=new Array,oldArray=document.MM_swapImgData;
  for (i=0; i < (MM_swapImage.arguments.length-2); i+=3) {
    objStr = MM_swapImage.arguments[(navigator.appName == 'Netscape')?i:i+1];
    if ((objStr.indexOf('document.layers[')==0 && document.layers==null) ||
        (objStr.indexOf('document.all[')   ==0 && document.all   ==null))
      objStr = 'document'+objStr.substring(objStr.lastIndexOf('.'),objStr.length);
    obj = eval(objStr);
    if (obj != null) {
      swapArray[j++] = obj;
      swapArray[j++] = (oldArray==null || oldArray[j-1]!=obj)?obj.src:oldArray[j];
      obj.src = MM_swapImage.arguments[i+2];
  } }
  document.MM_swapImgData = swapArray; //used for restore
}
function oc_verify() {
  var themessage = "";
  if (document.oc_search.nqs.value.length < 3) {
    themessage = "Please enter a search term.\nThe search term must contain at least three characters.";
    document.oc_search.nqs.focus();
  }
  if (themessage == "") {
    document.oc_search.submit();
  }
  else {
    alert(themessage);
    return false;
  }
}

function verify_remove_article_from_cart(idartikel, anzahl) {
    var myform = 'remove' + idartikel;
    if (confirm("Do you really want to remove the article ?"))
        //document.forms[myform].submit();
        document.location.href='index.php?nsm=remove&id=' + idartikel + '&Quantity=' + anzahl;
}

function verify_send_request() {
  var themessage = "";
  if (document.form.kdanfragenr.value=="") {
    themessage = "Please enter your internal Order No. or Name.";
    document.form.send_request.focus();
  }
  if (themessage == "") {
    document.form.submit();
  }
  else {
    alert(themessage);
    return false;
  }
}

function blurLink(what) {}

function CheckAll(){
    for (var i=0;i<document.form.elements.length;i++){
        var e = document.form.elements[i];
        if((!e.checked)&&(e.type=="checkbox")){
             e.click();
        }
    }
}
function UncheckAll(){
    for (var i=0;i<document.form.elements.length;i++){
        var e = document.form.elements[i];
        if((e.checked)&&(e.type=="checkbox")){
             e.click();
        }
    }
}

function check_unsaved(formname) {
    if($('input').hasClass('unsaved')) {
        if (confirm("Unsaved changes in your cart. Do you really want to proceed ?"))
            $('#' + formname).submit();
    }
    else {
        $('#' + formname).submit();
    }
}

function save_cart_article(id) {
    var anzahl = $('#' + id + '_ItemQuantity').val();
    var wunschtermin = $('#' + id + '_wunschtermin').val();
    $.ajax({
        type: 'get',
        url: 'index.php?cmd=save_cart_article&id=' + id + '&ItemQuantity=' + anzahl + '&wunschtermin=' + wunschtermin,
        dataType: "jsonp",
        jsonp:    "jsonp_callback",
        async: false,
        success: function(response) {
            $('#' + id + '_ItemQuantity').val(response.anzahl);
            $('#show_cart_message').html(response.message);
            $('#' + id + '_ItemQuantity').removeClass('unsaved');
            $('#' + id + '_wunschtermin').removeClass('unsaved');
        }
    });
}
