function removeItem(form, id) {
  form.action.value = 'remove';
  form.id.value = id;
  form.submit();
}

function updateItems(form) {
  var inputs = document.getElementsByName('qty[]');
  var len = inputs.length;

  for (var i = 0; i < len; i++) {
    var qty = parseInt(inputs[i].value.trim());
    if (!qty || qty == 0) qty = 1;
    inputs[i].value = qty;
  }

  form.action.value = 'update';
  form.submit();
}

function empty(form) {
  form.action.value = 'emptyCart';
  form.submit();
}

function buy(form) {
  form.action.value = 'buyNow';
  form.submit();
}

function sendData() {
  document.forms[0].submit();
}

function changeImage(ele) {
  var url = ele.src;
  var big = document.getElementById('preview');
  big.src = url.replace('thumbs', 'photos');
}

function validatePassword(form) {
  if (!form.username.value.trim()) {
    alert('Please enter your username.');
    form.username.focus();
    return false;
  }
  if (!form.password.value.trim()) {
    alert('Please enter your password.');
    form.password.focus();
    return false;
  }
  return true;
}

function validateRequest(form) {
  if (!form.username.value.trim()) {
    alert('Please enter your username.');
    form.username.focus();
    return false;
  }
  
  if (!form.user_password.value.trim()) {
    alert('Please enter your password.');
    form.user_password.focus();
    return false;
  }
	
  if (!form.fullname.value.trim()) {
    alert('Please enter your full name.');
    form.fullname.focus();
    return false;
  }

  if (!form.address.value.trim()) {
    alert('Please enter your address.');
    form.address.focus();
    return false;
  }

  if (!form.phone.value.trim()) {
    alert('Please enter your phone number.');
    form.phone.focus();
    return false;
  }
  
  if (form.phone.value.length != 10) {
    alert('Please enter 10 digit phone number.');
    form.phone.focus();
    return false;
  }

  if (!validateMail(form.email)) return false;

  if (!form.city.value.trim()) {
    alert('Please enter your city.');
    form.city.focus();
    return false;
  }

  if (!form.zipcode.value.trim()) {
    alert('Please enter your zip code.');
    form.zipcode.focus();
    return false;
  }

  return true;
}

function validateUpload(form) {
  if (!form.fullname.value.trim()) {
    alert('Please enter your full name.');
    form.fullname.focus();
    return false;
  }

  if (!form.phone.value.trim()) {
    alert('Please enter your phone number.');
    form.phone.focus();
    return false;
  }

  if (!validateMail(form.email)) return false;

  if (!form.photo.value.trim()) {
    alert('Please select a photo to upload.');
    form.photo.focus();
    return false;
  }

  return true;
}

function validateQuantity(form) {
  var qty = parseInt(form.qty.value.trim());
  if (!qty || qty == 0) qty = 1;
  form.qty.value = qty;
  return true;
}

function validateMail(ele) {
  if (!ele.value.trim()) {
    alert('Please enter your e-mail address.');
    ele.focus();
    return false;
  }

 var filter = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
 if (filter.test(ele.value)) return true;

 ele.select();
 alert('This is not a valid e-mail address.');
 return false;
}

function setMask(event) {
  var key = (event.charCode) ? event.charCode : event.keyCode;
  if (key < 34 || key > 126) return;

  if (String.fromCharCode(key).search(/[0-9]/))
    if (event.preventDefault) event.preventDefault();
      else event.keyCode = 0;
}

String.prototype.trim = function() { return this.replace(/^\s+/,"").replace(/\s+$/,"").replace(/  +/g,"") }
