/*------------ Used in templates:  oppdater_firma, bli_kunde ----------*/
function check_company(){
    var contact     = document.company.elements['contact'].value;
    var companyname = document.company.elements['companyname'].value;
    var orgnu       = document.company.elements['orgnu'].value;
    var address     = document.company.elements['address'].value;
    var zipcode     = document.company.elements['zipcode'].value;
    var city        = document.company.elements['city'].value;
    //var telephone   = document.company.elements['telephone'].value;
    var email       = document.company.elements['from'].value;

    //-----Check for content-----
    if (!contact) {
      window.alert("Vennligst oppgi kontaktperson");
      return false;
    }
    else if (!companyname) {
      window.alert("Vennligst oppgi firmanavn");
      return false;
    }
    else if (!orgnu) {
      window.alert("Vennligst oppgi organisasjonsnummer");
      return false;
    }
    else if (!address) {
      window.alert("Vennligst oppgi adresse");
      return false;
    }
    else if (!zipcode) {
      window.alert("Vennligst oppgi postnummer");
      return false;
    }
    else if (!city) {
      window.alert("Vennligst oppgi poststed");
      return false;
    }
    else if (!email) {
      window.alert("Vennligst oppgi epostadresse");
      return false;
    }
    //else if (!telephone) {
    //  window.alert("Vennligst oppgi telefonnummer");
    //  return false;
    //}

    //-----Check for valid content-----
    if(!validate_zipcode_no(zipcode)){
      return false;
    }
    else if(!validate_email(email)){
      return false;
    }
    else if(!validate_telephone(telephone)){
      return false;
    }
    //-----Return true if everything is ok-----
    return true;
}


function check_order(){
/* ----------midlertidig deaktivert-------------
    var d_fname       = document.orders.elements['ORDERS.D_FNAME'].value;
    var d_lname       = document.orders.elements['ORDERS.D_LNAME'].value;
    var d_zipcode     = document.orders.elements['ORDERS.D_ZIPCODE'].value;
    var d_city        = document.orders.elements['ORDERS.D_CITY'].value;
    var d_email       = document.orders.elements['ORDERS.D_EMAIL'].value;
    var d_telephone   = document.orders.elements['ORDERS.D_TELEPHONE'].value;

    //-----Check for content-----
    if (!d_fname) {
      window.alert("Vennligst oppgi fornavn");
      return false;
    }
    else if (!d_lname) {
      window.alert("Vennligst oppgi etternavn");
      return false;
    }
    else if (!d_zipcode) {
      window.alert("Vennligst oppgi postnummer");
      return false;
    }
    else if (!d_city) {
      window.alert("Vennligst oppgi poststed");
      return false;
    }
    else if (!d_email) {
      window.alert("Vennligst oppgi epostadresse");
      return false;
    }
    else if (!d_telephone) {
      window.alert("Vennligst oppgi telefonnummer");
      return false;
    }

    //-----Check for valid content-----
    if(!validate_zipcode_no(d_zipcode)){
      return false;
    }
    else if(!validate_email(d_email)){
      return false;
    }
    else if(!validate_telephone(d_telephone)){
      return false;
    }
*/
    //-----Return true if everything is ok-----
    return true;
}


function validate_email(email_str){
  var email_filter = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;

  if (!email_filter.test(email_str)){
    alert("Epostadressen er ikke gyldig: Eksempel på riktig adresse er: fornavn.etternavn@firma.no");
    return false;
  }
  else {
    return true;
  }
}

function validate_zipcode_no(zipcode_str){
  var zipcode_filter = /^([\d]+)$/i;

  if (!zipcode_filter.test(zipcode_str)){
    alert("Postnummeret kan bare inneholde tall");
    return false;
  }
  else if(zipcode_str < 1 || zipcode_str > 9999){
    alert("Postnummeret må være et tall mellom 0001 og 9999");
    return false;
  }
  else {
    return true;
  }
}

function validate_telephone(telephone_str){
  var telephone_filter = /^([\d]+)$/i;

  if (!telephone_filter.test(telephone_str)){
    alert("Telefonnummeret kan bare inneholde tall");
    return false;
  }
  else if(telephone_str < 10000000 || telephone_str > 99999999){
    alert("Telefonnummeret er ugyldig");
    return false;
  }
  else {
    return true;
  }
}

function check_rest(quantity,stock){
 if(quantity > stock){
  return confirm('Det er kun '+stock+' på lager. Vil du allikevel bestille?');
 }
 return true;
}

function add_basket(f){
  try{
    var url = $( f ).action+"&debug=off&template=inc_basket";
    if ($( f ).unit) { url = url+"&unit="+$( f ).unit.value; }
    if ($( f ).price) { url = url+"&price="+$( f ).price.value; }
    if ($( f ).stock) { url = url+"&stock="+$( f ).stock.value; }
    if ($( f ).quantity) { url = url+"&quantity="+$( f ).quantity.value; }
    new Ajax.Request(url, { 
        method: 'get',
        encoding: 'UTF-8',
        onComplete: function(resp) { Element.replace('basket',resp.responseText); }
    });

    return false;
  }
  catch(e){ alert(e);}
}

function check_and_add(f,quantity,stock) {
  if(check_rest(quantity,stock) == false) {
    return false;
  }else {
    return add_basket(f);
  }
}

function validate_consumer(form){

  var msg   = "Følgende felter må fylles inn: \n";
  var error = 0;

  if (!form.elements['ORDERS.D_FNAME'].value){
    msg   = msg + "  Fornavn\n";
    error = 1;
  }
  if (!form.elements['ORDERS.D_LNAME'].value){
    msg   = msg + "  Etternavn\n";
    error = 1;
  }
  if (!form.elements['ORDERS.D_ADDRESS'].value){
    msg   = msg + "  Adresse\n";
    error = 1;
  }
  if (!form.elements['ORDERS.D_ZIPCODE'].value){
    msg   = msg + "  Postnummer\n";
    error = 1;
  }
  if (!form.elements['ORDERS.D_CITY'].value){
    msg   = msg + "  Poststed\n";
    error = 1;
  }
  if (!form.elements['ORDERS.D_EMAIL'].value){
    msg   = msg + "  Epostadresse\n";
    error = 1;
  }
  if (!form.elements['ORDERS.D_TELEPHONE'].value){
    msg   = msg + "  Telefonnummer\n";
    error = 1;
  }

  if (error){
    alert(msg);
    return false;
  }
  else if (!form.accept.checked){
    alert("Du må akseptere salgsbetingelsene for å kunne handle");
    return false;
  }
  else {
    return true;
  }
}

