﻿$(document).ready(function() {
  // $('#directshop').fadeIn(2000);
  //  $('#verticalMenu > ul > li').hover(
  //        function() {
  //          $('#sub' + this.id).show();
  //        },
  //        function() {
  //          $('#sub' + this.id).hide();
  //        }
  //  );

  $('.showstaffel').click(function() {
    if ($('.staffel').is(':hidden')) {
      $('.staffel').slideDown();
      $('#staffeltoggler').html('-');
      $('#staffeltoggler').css("padding", "0px 4px");
    } else {
      $('.staffel').slideUp();
      $('#staffeltoggler').html('+');
      $('#staffeltoggler').css("padding", "0px 2px");
    }
  });

  disableId("conf_aantalkleuren");
  disableId("conf_pms1");
  disableId("conf_pms2");
  disableId("conf_pms3");
  disableId("conf_pms4");
  disableId("conf_pms5");

  $('#verderWinkelen').click(function() {
    HidePopUpMsg();
  });

  function PopUpMsg(sXML) {
    if (sXML == null) { return null; }
    var sImage = "";

    oMsg = document.getElementById('msgdiv');
    oFocus = document.getElementById('focusdiv');
    oMsg.style.display = 'inline';
    oFocus.style.display = 'block';
    oFocus.style.height = document.getElementById('page').offsetHeight + 'px';

    /*Popup text:*/
    $('#popup-title').html(sXML.getElementsByTagName("title")[0].firstChild.data);
    $('#popup-image').html('<img src="/pictures/1/' + sXML.getElementsByTagName("image")[0].firstChild.data + '" />');
    $('#popup-text').html('<b>Omschrijving:</b><br/>' + sXML.getElementsByTagName("korteomschrijving")[0].firstChild.data + '<br/><br/>Aantal: ' + sXML.getElementsByTagName("aantal")[0].firstChild.data);

    /*Determine image:*/

    /*Popup links:*/
    //  document.getElementById('popupshopcart').innerHTML = '<a href="javascript:ShowShopCart(\'' + sXML.getElementsByTagName("target")[0].firstChild.data + '\')">' + '<img src="' + document.getElementById('urlroot').value + '/Images/ontwerp/' + sImgName + '.gif" border="0" />' + '</a>';
    //  document.getElementById('popupcontinue').innerHTML = '<a href="javascript:HidePopUpMsg()">' + '<img src="' + document.getElementById('urlroot').value + '/Images/ontwerp/verderwinkelen.gif" border="0" />' + '</a>';
  }

  function HidePopUpMsg() {
    oMsg = document.getElementById('msgdiv');
    document.getElementById('focusdiv').style.display = 'none';
    oMsg.style.display = 'none';
  }



  function AjaxAddKoopProduct() {
    var productnummer = $('#product-nummer').html();
    var aantal = $('#conf_aantal').val();
    var drukcode = $('#conf_drukcode').val();
    var aantalkleuren = $('#conf_aantalkleuren').val();
    var logokeuze = $('#conf_logo').val();
    var logo = '0';
    var pms1 = '0';
    var pms2 = '0';
    var pms3 = '0';
    var pms4 = '0';
    var pms5 = '0';

    if (aantal == '')
      aantal = 0;
    if ((drukcode == '') || (drukcode == 'none')) {
      drukcode = 0;
      aantalkleuren = 0;
    }
    if (aantalkleuren == '')
      aantalkleuren = 0;
    if ((logokeuze == '') || (logokeuze == undefined))
      logokeuze = 2;

    if (logokeuze == '1') {
      // Logo has to be uploaded, create ajax function for this?
      var logo = $('#conf_logofile').val();
    }

    // Get PMS colors    
    if (1 <= aantalkleuren)
      pms1 = $('#conf_pms1').val();
    if (2 <= aantalkleuren)
      pms2 = $('#conf_pms2').val();
    if (3 <= aantalkleuren)
      pms3 = $('#conf_pms3').val();
    if (4 <= aantalkleuren)
      pms4 = $('#conf_pms4').val();
    if (5 <= aantalkleuren)
      pms5 = $('#conf_pms5').val();



    // Add to shopcart true ajax
    $.ajax({
      type: "GET",
      url: "/winkelwagen/addkoopproduct.aspx",
      data: "product=" + productnummer + "&aantal=" + aantal + "&drukcode=" + drukcode + "&aantalkleuren=" + aantalkleuren + "&logokeuze=" + logokeuze + "&logo=" + logo + "&pms1=" + pms1 + "&pms2=" + pms2 + "&pms3=" + pms3 + "&pms4=" + pms4 + "&pms5=" + pms5 + "&forajax=true&forxml=true",
      success: function(xml) {
        //alert(xml);
        PopUpMsg(xml);
      }
    });
  }

  function disableId(id) {
    $('#' + id).attr("disabled", true);
    $('#' + id).css("border", "1px solid #BCBCBC");
    $('#' + id).css("background-color", "#e5e5e5");
    $('#' + id).css("background-image", "none");
  }

  function enableId(id) {
    $('#' + id).removeAttr("disabled");
    $('#' + id).css("border", "1px solid #53A51D");
    $('#' + id).css("background-color", "#FFFFFF");
    $('#' + id).css({ backgroundImage: "url(/images/design/form-input.gif)" });
  }

  $('#conf_aantal').keyup(function() {
    WaitToAjaxChangeAmount(this);
  });
  var timeoutID;
  function WaitToAjaxChangeAmount(obj) {
    window.clearTimeout(timeoutID);
    timeoutID = setTimeout(function() { AjaxChangeAmount(obj); }, 1000);
  }
  function AjaxChangeAmount(obj) {
    makeNumeric(obj);
    var nr = $(obj).val();
    if ((parseInt(nr) == nr - 0) && (nr.length > 0) && (nr.length < 8)) {
      if (nr == 0) {
        disableId('conf_drukcode');
        disableId('conf_aantalkleuren');
        disableId('conf_pms1');
        disableId('conf_pms2');
        disableId('conf_pms3');
        disableId('conf_pms4');
        disableId('conf_pms5');

        $('#shopcartbutton').removeClass('dis');
        $('#shopcartbutton').addClass('act');
        $('#prijs').html('&#8364;&#160;0,00');
        $('#conf_aantal').val("1");
        enableId('conf_drukcode');
        AjaxCalcPrice();
      }
      else {
        var aantal = parseInt(nr);
        $('#conf_aantal').val(aantal);
        AjaxCalcPrice();
        enableId('conf_drukcode');
        $('#shopcartbutton').removeClass('dis');
        $('#shopcartbutton').addClass('act');
      }
    }
    else {
      if (nr.length == 0) {
        $('#prijs').html('&#8364;&#160;0,00');
        $('#shopcartbutton').removeClass('act');
        $('#shopcartbutton').addClass('dis');
        disableId('conf_drukcode');
        disableId('conf_aantalkleuren');
        disableId('conf_pms1');
        disableId('conf_pms2');
        disableId('conf_pms3');
        disableId('conf_pms4');
        disableId('conf_pms5');
      }
      else {
        $('#shopcartbutton').removeClass('dis');
        $('#shopcartbutton').addClass('act');

        enableId('conf_drukcode');
        enableId('conf_aantalkleuren');
        enableId('conf_pms1');
        enableId('conf_pms2');
        enableId('conf_pms3');
        enableId('conf_pms4');
        enableId('conf_pms5');

        if (nr.length > 7) {
          $('#prijs').html('Voor deze aantallen dient u contact met ons op te nemen');
          $('#shopcartbutton').removeClass('act');
          $('#shopcartbutton').addClass('dis');
        }
      }
    }
  }
  // onmouseout="kill()" onmouseover="popup('Telefoon algemeen','Geef hier een algemeen telefoonnummer in waarop uw bedrijf/organisatie te bereiken is.')"

  $('.help').mouseover(function(e) {
    $('#dek').css("top", e.pageY + 10);
    $('#dek').css("left", e.pageX + 10);

    popup($(this).attr("helpTitle"), $(this).attr("helpContext"));
  });
  $('.help').mouseout(function() {
    kill();
  });

  function popup(kop, msg) {
    var content = "<table width=250 cellpadding=2 cellspacing=0><tr><td class=infoheader>" + kop + "</td></tr><tr class=infofield><td>" + msg + "</td></tr></table>";
    $('#dek').html(content);
    $('#dek').css("display", "block");
  }

  function kill() {
    $('#dek').css("display", "none");
  }

  $('#aantalHelp').mouseover(function() {
    $('#divHelp').html("<b>Help:</b><br /><br />Het aantal..");
  });

  $('#aantalHelp').mouseout(function() {
    $('#divHelp').html("");
  });

  $('#conf_drukcode').change(function() {
    var counter = 0;
    if ($(this).val() != '') {
      if ($(this).val() == 'none') {
        $('#shopcartbutton').addClass('act');
        $('#shopcartbutton').removeClass('dis');

        disableId('conf_aantalkleuren');
        disableId('conf_pms1');
        disableId('conf_pms2');
        disableId('conf_pms3');
        disableId('conf_pms4');
        disableId('conf_pms5');
        AjaxCalcPrice();
      } else {
        enableId('conf_aantalkleuren');
        var aantalkleuren = $('#conf_aantalkleuren').val();
        for (var i = 1; i <= 5; i++) {
          if (i <= aantalkleuren) {
            enableId('conf_pms' + i);
            if ($("#conf_pms" + i).val().length > 0) {
              counter++;
            }
          }
        }
        //        if (counter == aantalkleuren) {
        //          $('#shopcartbutton').removeClass('dis');
        //          $('#shopcartbutton').addClass('act');
        //        } else {
        //          $('#shopcartbutton').removeClass('act');
        //          $('#shopcartbutton').addClass('dis');
        //        }
        $('#shopcartbutton').removeClass('dis');
        $('#shopcartbutton').addClass('act');
        AjaxCalcPrice();
      }
    } else {
      $('#shopcartbutton').removeClass('act');
      $('#shopcartbutton').addClass('dis');

      disableId('conf_aantalkleuren');
      disableId('conf_pms1');
      disableId('conf_pms2');
      disableId('conf_pms3');
      disableId('conf_pms4');
      disableId('conf_pms5');
    }
  });

  $('#conf_aantalkleuren').change(function() {
    if ($(this).val() != '') {
      for (var i = 1; i <= 5; i++) {
        if (i <= $(this).val())
          enableId('conf_pms' + i);
        else
          disableId('conf_pms' + i);
      }
      AjaxCalcPrice();
    } else {
      //$('#shopcartbutton').removeClass('act');
      //$('#shopcartbutton').addClass('dis');
      $('#shopcartbutton').removeClass('dis');
      $('#shopcartbutton').addClass('act');
    }
  });

  $('#conf_logo').change(function() {
    if ($(this).val() != '') {
      if ($(this).val() == '1') {
        $('#logoupload').fadeIn('slow');
        $('#shopcartbutton').removeClass('act');
        $('#shopcartbutton').addClass('dis');

      } else {
        $('#shopcartbutton').removeClass('dis');
        $('#shopcartbutton').addClass('act');
        $('#logoupload').fadeOut('slow');
      }
    } else {
      $('#logoupload').fadeOut('slow');
      $('#shopcartbutton').removeClass('act');
      $('#shopcartbutton').addClass('dis');
    }
  });
  function checkStatus() {
    var aantalkleuren = $('#conf_aantalkleuren').val();
    var show = true;

    for (var i = 1; i <= aantalkleuren; i++) {
      if ($('#conf_pms' + i).val() == '') {
        show = false;
      }
    }

    //if (show == true) {
    $('#shopcartbutton').removeClass('dis');
    $('#shopcartbutton').addClass('act');
    //} else {
    //  $('#shopcartbutton').removeClass('act');
    //  $('#shopcartbutton').addClass('dis');
    //}
  }

  $('#conf_logofile').change(function() {
    checkStatus();
  });
  $('#conf_pms1').keyup(function() {
    checkStatus();
  });
  $('#conf_pms2').keyup(function() {
    checkStatus();
  });
  $('#conf_pms3').keyup(function() {
    checkStatus();
  });
  $('#conf_pms4').keyup(function() {
    checkStatus();
  });
  $('#conf_pms5').keyup(function() {
    checkStatus();
  });


  $('#shopcartbutton').click(function() {
    if ($(this).hasClass('dis')) {
      // nothing
    } else {
      AjaxAddKoopProduct();
    }
  });
});

  var ajaxreq = null;

  /* CONFIGURATOR PART */
  function AjaxCalcPrice() {
    var productnummer = $('#product-nummer').html();
    var aantal = $('#conf_aantal').val();
    var drukcode = $('#conf_drukcode').val();
    var aantalkleuren = $('#conf_aantalkleuren').val();
    if (aantal == '')
        aantal = 0;
    if ((drukcode == '') || (drukcode == 'none'))
        drukcode = 0;
    if (aantalkleuren == '')
        aantalkleuren = 0;
        
    if ($('#conf_aantalkleuren').attr("disabled") == true) {
      aantalkleuren = 0;
    }
    if ($('#conf_drukcode').attr("disabled") == true) {
      drukcode = 0;
    }
    if ($('#conf_aantal').attr("disabled") == true) {
      aantal = 0;
    }

    $('#prijs').html('Updating..');
    if (ajaxreq) {
      ajaxreq.abort();
      ajaxreq = null;
    }
    
    ajaxreq = $.ajax({
      type: "GET",
      url: "/premiums-gifts/getCost.aspx",
      data: "product="+productnummer+"&aantal="+aantal+"&drukcode="+drukcode+"&aantalkleuren="+aantalkleuren+"&forajax=true&forxml=true",
      success: function(returnValue) {
        
        var docRoot = returnValue.getElementsByTagName("prijzen")[0];   
        var totalPrice = docRoot.childNodes[0].firstChild.data;
        var PricePs = docRoot.childNodes[1].firstChild.data;
        var NextStaffel = docRoot.childNodes[2].firstChild.data;
        var NextStaffelPricePs = docRoot.childNodes[3].firstChild.data;
        var NextStaffelPrice = docRoot.childNodes[4].firstChild.data;
        var fixedPrice = docRoot.childNodes[5].firstChild.data;       
        $('#prijs').html('&#8364;&#160;' + fixedPrice);
        $('#prijsps').html('&#8364;&#160;' + PricePs);
        if (NextStaffel > 0) {
            $('#nextStaffelAantal').html(NextStaffel);
            $('#nextStaffelPrijs').html('&#8364;&#160;' + NextStaffelPrice);
            $('#nextStaffelPrijsPs').html('&#8364;&#160;' + NextStaffelPricePs);
            $('#nextStaffel').fadeIn('slow');
        } else {
            $('#nextStaffel').hide();
        }
      }
    });
  }
