white = /^\s*$/;
phonetemp1 = /^[0-9]{7}$/;
phonetemp2 = /^[0-9]{3}$/;

DEF_ERRSTR = "-----  Lütfen aşağıdaki zorunlu alanları doldurunuz :  -----\n\n";
DEF_CORSTR = "-----  Lüften aşağıdaki alanları düzeltiniz :  -----\n\n";

var errorstr = DEF_ERRSTR;
var correctstr = DEF_CORSTR;
var result = true;
var corrected = false;
var generror = false;


function restore() {
  errorstr = DEF_ERRSTR;
  correctstr = DEF_CORSTR;
  result = true;
  corrected = false;
  generror = false;
}

function counter(field, countfield, maxlimit) {
	if (field.value.length > maxlimit) 
		field.value = field.value.substring(0, maxlimit);
	else 
	countfield.value = maxlimit - field.value.length;
}

function testempty(field, name){
  var res, i
  res = false;
  if ((field.type == "text") || (field.type == "textarea") || (field.type == "password") || (field.type == "hidden"))
  {
    res = white.test(field.value)
  }
  else if (field.type == "select-multiple")
  {
    res = (field.selectedIndex == -1)
  }
  else if (field.type == "select-one")
  {
    res = (field.value == 0)
  }
  else
  {
	for (i=0; i < field.length; i++)
    {
      res = res || field[i].checked
    }
    res = !res;
  }
  if (res)
  {
  	errorstr += "\t" + name + "\n";
  	result = result && false;
  	generror = true;
  }
}

function mailtest(field, name){
	var p, q
	 p=field.value.indexOf('@');
	 q=field.value.indexOf('.');
    if (p<1 || p==(field.value.length-1) || q<1 || q==(field.value.length-1) || field.value.lenght<9)
	{
  	correctstr += "\t" + name + " (Girdiğiniz email adresi hatalı)\n";
  	result = result && false;
  	corrected = true;
	}
}

function phonetest(field, name) {
  //if (!white.test(field.value) && !phonetemp1.test(field.value))
  //{
  //	correctstr += "\t" + name + "\n";
  //	result = result && false;
  //	corrected = true;
  //}
  if(isNaN(field.value))
  	{
  	correctstr += "\t" + name + " (sadece nümerik karakter kabul edilir)\n";
  	result = result && false;
  	corrected = true;
	}
}

// Maillist
function Maillist(form){
	restore();
	var fields	= new Array("Email", "Name", "Tel1", "Tel2", "Tel3");
    var names	= new Array("E-mail", "Ad Soyad", "Telefon -> Ülke Kodu", "Telefon -> Alan Kodu", "Telefon -> Tel No");
	mailtest(form.Email, "E-mail");

	for (var i = 0; i < fields.length; i++)
    testempty(eval("form." + fields[i]), names[i])

	phonetest(form.Tel1, "Ev Tel > Ülke Kodu");
	phonetest(form.Tel2, "Ev Tel > Alan Kodu");
	phonetest(form.Tel3, "Ev Tel > Tel No");

	if (!result){
		alert((generror ? errorstr : "") +"\n"+(corrected ? correctstr : ""));
	}
	else {
		form.submit();
	};
	return false;
}

function Contact(form){
	restore();
   	var fields	= new Array("isim", "email","adres", "sehir","Tel1", "Tel2", "Tel3", "mesaj");
    var names	= new Array("Ad Soyad", "E-mail", "Adres", "Şehir", "Tel -> Ülke Kodu", "Tel -> Alan Kodu", "Tel -> Tel No", "Mesajınız");

	for (var i = 0; i < fields.length; i++)
    testempty(eval("form." + fields[i]), names[i])

	mailtest(form.email, "E-mail");
	phonetest(form.Tel1, "Tel  > Ülke Kodu");
	phonetest(form.Tel2, "Tel  > Alan Kodu");
	phonetest(form.Tel3, "Tel  > Telefon No");

	if (!result){
		alert((generror ? errorstr : "") +"\n"+(corrected ? correctstr : ""));
	}
	else {
		form.submit();
	};
	return false;
}

function Contact2(form){
	restore();
   	var fields	= new Array("ASehir", "AIlce", "minAlan", "maxAlan", "type", "minFiyat", "maxFiyat", "isim", "email","adres", "sehir","Tel1", "Tel2", "Tel3");
    var names	= new Array("Arsa > Şehir", "Arsa > İlce", "Arsa Alanı (min)", "Arsa Alanı (max)", "Arsa Tipi", "Arsa Fiyat (min)","Arsa Fiyat (max)", "Ad Soyad", "E-mail", "Adres", "Şehir", "Tel -> Ülke Kodu", "Tel -> Alan Kodu", "Tel -> Tel No");

	for (var i = 0; i < fields.length; i++)
    testempty(eval("form." + fields[i]), names[i])

	mailtest(form.email, "E-mail");
	phonetest(form.Tel1, "Tel  > Ülke Kodu");
	phonetest(form.Tel2, "Tel  > Alan Kodu");
	phonetest(form.Tel3, "Tel  > Telefon No");

	if (!result){
		alert((generror ? errorstr : "") +"\n"+(corrected ? correctstr : ""));
	}
	else {
		form.submit();
	};
	return false;
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && document.getElementById) x=document.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}
