﻿var GB_ANIMATION = false;

function setCookie(n,v,d) {
  try {
    var d=new Date();
    d.setDate(d.getDate()+d);
    document.cookie=n+"="+escape(v)+";expires="+d.toGMTString();
  }
  catch(err) {
    // Ignore
  }
}

function getCookie(n) {
  try {
    if (document.cookie.length>0) {
      var i=document.cookie.indexOf(n+"=");
      if (i!=-1) {
        i+=n.length+1; 
        j=document.cookie.indexOf(";",i);
        if (j==-1) j=document.cookie.length;
        return unescape(document.cookie.substring(i,j));
      } 
    }
    return "";
  }
  catch(err) {
    // Ignore
  }
}

function doSearch(sId,sURL) {
  var txt=document.getElementById(sId);
  if (txt.value.lastIndexOf('*')!=txt.value.length-1) {
    txt.value+='*';
  }
  if (txt.value.length>0) {
    sURL=setURLParam(sURL,"search",txt.value);
    doSubmit("ewaysearch",sURL);
  } else {
    alert('Du må angi en tekst å søke etter');
    txt.focus();
  }
}

function validateSporOssForm(form) {
  if (form.efmtxtlffeedback.value=="") {
    alert("Du må skrive inn spørsmålet ditt");
    form.efmtxtlffeedback.focus();
  } else if (form.efmtxtlffirstname.value=="") {
    alert("Du må angi fornavnet ditt");
    form.efmtxtlffirstname.focus();
  } else if (form.efmtxtlflastname.value=="") {
    alert("Du må angi etternavnet ditt");
    form.efmtxtlflastname.focus();
  } else {
    var addr=form.efmtxtlfemail.value;
    var i=addr.indexOf('@');
    if (i>-1) {
      var tmp=addr.substring(i);
      var j=tmp.indexOf('.');
      if (j>-1 && tmp.length-j>2) {
        return true;
      }
    }
    alert('Du må angi en gyldig e-post-adresse');
    form.efmtxtlfemail.focus();
  }
  return false;
}

var fileNo=1;
function addFileField() {
  if (fileNo<5) {
    fileNo++;
    document.getElementById("uploadfile"+fileNo).style.display="inline";
  }
  return false;
}

function formatPhone(el) {
  var s1=el.value;
  var s2="";
  var n,ch;
  for (n=0; n<s1.length && s2.length<10; n++) {
    ch=s1.charAt(n);
    if (ch!=" "&&!isNaN(ch)) s2+=ch;
  }
  var li=s2.length-1;
  s1=(li==7 ? "" : "+");
  for (n=0; n<=li; n++) {
    s1+=s2.charAt(n);
    if (n%2==1 && n!=li) s1+=" ";
  }
  if (s1.length==11 || s1.length==15) {
    el.value=s1;
    el.style.color="black";
  } else {
    el.style.color="red";
  }
}

function validateMail(mail) {
  var regexp = /^[^@ ]+@[^@ ]+\.[^@ ]+$/;
  return regexp.test(mail);
}

function isValidDate(d) {
	var i=d.indexOf('.');
	var j=d.lastIndexOf('.');
	var dd=d.substring(0,2);
	var mm=d.substring(3,5);
	var yyyy=d.substring(6,10);
	if (i!=2 || j!=5 || isNaN(dd) || isNaN(mm) || isNaN(yyyy)) return false;
	var dt=new Date(yyyy,mm-1,dd);
	return (dt.getMonth()==(mm-1));
}

function lzero(n) {
	return (n>9)?n:'0'+n;
}

function invalidDate(el) {
	el.style.color='red';
	return true;
}

function formatDate(el) {
	var v=el.value;
	if (v.length==0) return invalidDate(el);
	var i=v.indexOf('.');
	var j=v.lastIndexOf('.');
	if (i==-1) return invalidDate(el);
	var p=v.split('.');
	var d,dd,mm,yy;
	if (i==j) {
		d=new Date();
		if (isNaN(p[0]) || isNaN(p[1])) return invalidDate(el);
		if(p[0]<1 || p[1]<1) return invalidDate(el);
		dd=parseInt(p[0],10); mm=parseInt(p[1],10); yy=d.getYear();
	} else {
		if (isNaN(p[0]) || isNaN(p[1]) || isNaN(p[2])) return invalidDate(el);
		if(p[0]<1 || p[1]<1 || p[2].length==0) return invalidDate(el);
		var yn=parseInt(p[2],10);
		var y=(yn<100 ? (yn>9 ? '20'+lzero(yn) : '21'+lzero(yn)) : yn);
		dd=parseInt(p[0],10); mm=parseInt(p[1],10); yy=y;
	}
	el.value=lzero(dd)+'.'+lzero(mm)+'.'+yy;
	d=new Date(yy,mm-1,dd);
	el.style.color=(d.getMonth()==(mm-1) ? 'black' : 'red');
	return true;
}

function validateSiDinMeningForm2(form) {
  var errorMsg="";
  if (form.fld_t_firstname.value=="" || form.fld_t_lastname.value=="") {
    errorMsg+="- Du må angi for- og etternavn\n";
  }
  if (!validateMail(form.fld_t_email.value)) {
    errorMsg+="- Du må angi en gyldig e-postadresse\n";
  }
  if (form.fld_a_feedback.value=="") {
    errorMsg+="- Du må angi en tekst for feltet 'Tilbakemelding, ris eller ros'\n";
  } else if (form.fld_a_feedback.value.length > 4000) {
    errorMsg+="- Du kan skrive max 4000 tegn i feltet 'Tilbakemelding, ris eller ros'\n";
  }
  if (form.fld_t_productexpiredate.value!="" && !isValidDate(form.fld_t_productexpiredate.value)) {
    errorMsg+="- Pakkedato må være gyldig og angis på formatet dd.mm.åååå\n";
  }
  if (form.fld_t_productpurchasedate.value!="" && !isValidDate(form.fld_t_productpurchasedate.value)) {
    errorMsg+="- Kjøpsdato må være gyldig og angis på formatet dd.mm.åååå\n";
  }
  if (errorMsg!="") {
    alert("Skjemaet er ikke korrekt utfylt:\n\n"+errorMsg);
    return false;
  }
  form.email.value=form.fld_t_email.value;
  return true;
}

function validateOrderForm(form) {
	var el;
	var mailOk=false;
	for (var i=0; i<form.elements.length; i++){
		el=form.elements[i];
		if (el.type!='hidden' && el.name.indexOf('efmtxtlf')==0) {
			if (el.value=='') {
				alert('Du må fylle ut alle feltene');
				el.focus();
				return(false);
			}
			if ((el.name=='efmtxtlfAdditionalInfo2' || el.name=='efmtxtlfQuantity') && isNaN(el.value)) {
				alert('Du må angi et antall');
				el.focus();
				return(false);
			}
		}
	}
	var addr=form.efmtxtlfEmail.value;
	var i=addr.indexOf('@');
	if (i>-1) {
		var tmp=addr.substring(i);
		var j=tmp.indexOf('.');
		if (j>-1 && tmp.length-j>2) {
			mailOk=true;
		}
	}
	if (!mailOk) {
		alert('Du må angi en gyldig e-postadresse');
		form.efmtxtlfEmail.focus();
		return(false);
	}
	var dday=form.deliverydate.value;
	var dmonth=form.deliverymonth.selectedIndex;
	var dyear=form.deliveryyear.value;
	var ddate=new Date(dyear,dmonth,dday);
	if (ddate.getMonth()!=dmonth) {
		alert('Angitt dato er ugyldig');
		form.deliverydate.focus();
		return(false);
	}
	var ddiff=Math.ceil((ddate.getTime()-(new Date()).getTime())/(1000*60*60*24));
	if (ddiff<7) {
		alert('Bestilling må foretas senest 7 dager før arrangementet starter');
		form.deliverydate.focus();
		return(false);
	}
	form.efmtxtlfDeliveryDate.value=ddate.getDate()+'.'+(ddate.getMonth()+1)+'.'+ddate.getFullYear();
	return(true);
}

$(function() {
  $(".expandable-list").each(function() {
    if (this.children.length > 5) {
      $(this).children("li:gt(4)").hide();
      $(this).next().show();
    }
  });
  $(".expand-list a").click(function(e) {
    e.preventDefault();
    $(this).parent().prev().find("li:gt(4)").show();
    $(this).parent().hide();
  });
});

