    var domain = '.dlairgun.com'; 
    var path   = '/';
    clicked = 0;

    function addToCart(num) {
      if(!clicked) {
        clicked = 1;
        var cart_contents = loadCart();
        var result = addItemToCart(cart_contents, num);
        if(result == 1) {
          window.location = 'ShoppingCart.pl';
        } else if(result == -1) {
          window.location = 'ShoppingCart.html';
        } else {
          window.location = 'Contact.html';
        }
      }
    }
    
    function addItemToCart(cart_contents, num) {
        for (i = 0; i < 15; i++) {
          var slcontents = cart_contents['sl' + i];
          if(slcontents == num) {
            incSlot(i);
            return 1;
          }
          if(slcontents == '' || slcontents == null) {            
            var result  = Cookie.write('sl' + i, num, {duration: 1, path: path, domain: domain});
            var result2 = Cookie.write('sl' + i + 'c', 1, {duration: 1, path: path, domain: domain});
            if(Cookie.read('sl' + i) != num) {
              return -1;
            }            
            return 1;
          }
        }
        alert("Sorry, but your shopping cart is full. Please contact us directly for orders of 15 items or more.\n\nThank you,\nD&L Airgun");
        return 0;
      }
       
      function incSlot(i) {
          var slcontents  = Cookie.read('sl' + i + "c");
          slcontents++;
          Cookie.write('sl' + i + "c", slcontents, {duration: 1, path: path, domain: domain});
      }
       
      function setSlotCount(i, n) {
          Cookie.write('sl' + i + "c", n, {duration: 1, path: path, domain: domain});
      }
      
      function loadCart() {
        var contents = {};
        for (i = 0; i < 15; i++) {
          var slname   = 'sl' + i;
          var slc_name = 'sl' + i + 'c';
          contents[slname]   = Cookie.read(slname);
          contents[slc_name] = Cookie.read(slc_name);          
        }
        return contents;
      }
      
      function emptyCart() {
        for (i = 0; i < 15; i++) {
          var sl_name  = 'sl' + i;
          var slc_name = 'sl' + i + 'c';
          var old_cooky  = Cookie.dispose(sl_name, {path: path, domain: domain});
          var old_cooky2 = Cookie.dispose(slc_name, {path: path, domain: domain});
        }
        window.location = 'ShoppingCart.pl';
      }

      function clearCart() {
        for (i = 0; i < 15; i++) {
          var sl_name  = 'sl' + i;
          var slc_name = 'sl' + i + 'c';
          var old_cooky  = Cookie.dispose(sl_name, {path: path, domain: domain});
          var old_cooky2 = Cookie.dispose(slc_name, {path: path, domain: domain});
        }
      }

      function updateQuantities(reload) {
        for (i = 0; i < 15; i++) {
          var sl_name   = 'sl' + i;
          var slc_name = 'sl' + i + 'c';
          var qnty = $(slc_name);
          if(qnty != null && qnty.value != null) {
            var new_count = qnty.value;
            if(new_count == 0) {
              Cookie.dispose(sl_name,  {path: path, domain: domain});
              Cookie.dispose(slc_name, {path: path, domain: domain});
            } else {
              if(new_count.match(/[^0-9]/)) {
                new_count = 1;
              } 
              setSlotCount(i, new_count);
            }
          }
        }
        if(reload == true) {
          window.location = 'ShoppingCart.pl';
        }
      }

      function gotoCustomerInformation() {
        window.location = 'CustomerInformation.html';
      }

      function validateForm() {
          if($('firstNameTxtBox').value == '' || $('lastNameTxtBox').value == '') {
            alert("Please include your full name");
            return false;
          }
          if($('dobDay').value == '' || $('dobMonth').value == '' || $('dobYear').value == '') {
            alert("Please include your full date of birth");
            return false;
          }
          var email = $('emailTxtBox').value;
          if(email == '') {
            alert("Please include an email address");
            return false;
          }
          var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
          var result = emailPattern.test(email); 
          if(!result) {
            alert("The email address '" + email + "' is invalid");
            return false;
          }
          var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
          var result = emailPattern.test(email); 
          if(!result) {
            alert("The email address '" + email + "' is invalid");
            return false;
          }
          var postalPattern = /.*\w\d\w\s*\d\w\d.*/;
          result = postalPattern.test($('postalCodeTxtBox').value);
          if(!result) {
            alert("Please include a valid postal code");
            return false;
          }
          return true;
      }

