/* Kurlar için sıfır ayırma */


var generalPos=0 ;
var generalValue='';
var generalChar='';
function isMacintosh(){
	return (navigator.appVersion.indexOf("Macintosh")>-1);
}

function currencyFormatKeyUp(fld, e) {
if(isMacintosh())
	return true;
	
var milSep=',';
var decSep='.';
var precision = 3;//noktadan sonraki izin verilen hane sayısı
var sep = 0;
var i = j = k = l = 0;
var len = len2 = 0;
var strCheck = '0123456789';
var aux = aux2 = auxdec='';
var decimal =0;
var commaCounter=0;
var originalCommaCounter=0;
var whichCode = (window.Event) ? e.which : e.keyCode;
//if (whichCode == 13) return false;  // Enter
var newfld ='';
var kontrol=0;
len = fld.value.length;
//get cursor position 
//////////////////////
	var saveText = fld.value;  // save for restoring later
	fld.focus();
	var range = document.selection.createRange();
	var weirdStr = String.fromCharCode(1);   // a weird string to recognize the place
	range.text = weirdStr;
	var pos = fld.value.indexOf(weirdStr);  // get the position
	var originalPos = pos;
	fld.value = saveText;                   // restore the previous text
/////////////////////
if(whichCode==39||whichCode==37){ 
		range = fld.createTextRange();
		range.move('character', pos);            // restore the cursor (also shows how to set the cursor)
		range.select();
		return false;
	}
//decimal part is gotten
if(whichCode != 8 && (strCheck.indexOf(generalChar)!=-1 || whichCode == 46)){//backspace & del degilse
if(whichCode != 46){
	pos = generalPos+1;
	originalPos = generalPos+1;
	var temp=''
	for(i=0;i<generalValue.length;i++){
		if(generalPos==0 && i==0)
			temp += generalChar;
		temp += generalValue.charAt(i);
		if(i==generalPos-1)
			temp += generalChar;
	}
	if(generalValue.length==0)
			temp += generalChar;
	
	//alert(temp);
	fld.value =temp;
}

	if(fld.value.indexOf(decSep)!=-1){//ondalıklı değer içeriyorsa
		decimal=1;//ondalıklı değer içeriyor demektir
		for(i = len-1; i >= fld.value.indexOf(decSep); i--){
			if (strCheck.indexOf(fld.value.charAt(i))!=-1) {
				auxdec += fld.value.charAt(i);//ondalıklı kısım auxdec de saklanır
				decimal=1;
			}
		}
	}
	for(i = 0; i < len; i++) {//anlamsız kısımların atılması solda sıfır gibi
		if ((fld.value.charAt(i) != '0') && (fld.value.charAt(i) != decSep) ) 
			break;
	}

	aux = '';//virgulsuz datanın saklanması gerekendegisken
	for(i=0; i < len; i++){//butun text alandaki deger uzunlugu kadar doner
		if ((fld.value.charAt(i) == decSep)) {
			break;
		}
		if (strCheck.indexOf(fld.value.charAt(i))!=-1) {//rakam olan kısımlar aux'a alınır
			aux += fld.value.charAt(i);	
		}
		///virguller çıkarılırken position da azaltılır
		if (strCheck.indexOf(fld.value.charAt(i))==-1 ) {//eger rakam degilse virgul demektir
			if(i<originalPos && fld.value.charAt(i)==milSep &&whichCode!=8){
				pos = pos-1;//virgulsuz position her virgul çıkarılınca bir eksilir
				}
			if(fld.value.charAt(i) == milSep)
				originalCommaCounter++;
		}
	}//aux değeri virgulsuz tutar olusturuldu
	auxbirim = aux
	len = aux.length;
	if (len >= 0) {//virgulsuz len 0 dan buuyukse
		aux2 = '';
			for (j = 0, i = len - 1; i >= 0; i--) {
				if (j == 3) {//virgul if'i
					aux2 += milSep;
					j = 0;
					commaCounter +=1;
					///virguller eklenirken pos da arttırılır
					if(i<pos && whichCode!=8 )
						pos = pos+1;
				}//if close
				aux2 += aux.charAt(i);
				j++;
			}//for close
		fld.value = '';
		len2 = aux2.length;
		// part texte yazılır
		for (i = len2 - 1; i >= 0; i--) {
			fld.value += aux2.charAt(i);//aux2 texte ters çevrilerek yazılır
		}
		//gelen key decSep ise yazılır
		lendec = auxdec.length;
		if(decimal==1 && len2 ==0){//ondalıklı sayı ise ve tam kısmı yoksa
			fld.value = "0";
		}
		if(decimal==1 && len2 !=0){//ondalıklı sayı ise ve tam kısmı varsa
			fld.value += decSep;//decimal noktası ekleme
			for (i = lendec-1; i >=0 && (lendec-1-i<precision); i--){
				fld.value += auxdec.charAt(i);//decimal kısmı eklenir
			}
		}	
		range = fld.createTextRange();
		range.move('character', pos);            // restore the cursor (also shows how to set the cursor)
		range.select();
		}//if(len>0) closed
	}//if(whichCode != 8) closed
	if(whichCode ==8 ){
	if(fld.value.indexOf(decSep)!=-1){//ondalıklı değer içeriyorsa
		decimal=1;//ondalıklı değer içeriyor demektir
		for(i = len-1; i >= fld.value.indexOf(decSep); i--){
			if (strCheck.indexOf(fld.value.charAt(i))!=-1) {
				auxdec += fld.value.charAt(i);//ondalıklı kısım auxdec de saklanır
				decimal=1;
			}
		}
	}
	for(i = 0; i < len; i++) {//anlamsız kısımların atılması solda sıfır gibi
		if ((fld.value.charAt(i) != '0') && (fld.value.charAt(i) != decSep) ) 
			break;
	}
	aux = '';//virgulsuz datanın saklanması gerekendegisken
	for(i=0; i < len; i++){//butun text alandaki deger uzunlugu kadar doner
		if ((fld.value.charAt(i) == decSep)) {
			break;
		}
		if (strCheck.indexOf(fld.value.charAt(i))!=-1) {//rakam olan kısımlar aux'a alınır
			aux += fld.value.charAt(i);	
		}
		///virguller çıkarılırken position da azaltılır
		if (strCheck.indexOf(fld.value.charAt(i))==-1 ) {//eger rakam degilse virgul demektir
			if(i<originalPos && fld.value.charAt(i)==milSep &&whichCode==8){
				pos = pos-1;
				}//
			if(fld.value.charAt(i) == milSep)
				originalCommaCounter++;
				
		}
	}//aux değeri virgulsuz tutar olusturuldu
	len = aux.length;
	if (len >= 0) {//virgulsuz len 0 dan buuyukse
		aux2 = '';
			for (j = 0, i = len - 1; i >= 0; i--) {
				if (j == 3) {//virgul if'i
					aux2 += milSep;
					j = 0;
					commaCounter +=1;
					///virguller eklenirken pos da arttırılır
					if(i<pos && whichCode==8 ){
						pos = pos+1;
					}
				}//if close
				aux2 += aux.charAt(i);
				j++;
			}//for close
		////////////////////////
		if(whichCode == 8 && commaCounter > originalCommaCounter){//silme yapıldı ama orijinal virgul sayısı arttırılıyorsa
			kontrol=1;
			newfld ='';
			//len original textlen
			aux2len = aux2.length;
			for(k=0,l=aux2len-1; k<saveText.length && l>=0;k++,l--  )
			{
				if(aux2.charAt(l)!= saveText.charAt(k)){
					break;
				}
			}
			for(l=0;l<saveText.length;l++)
			{
				if(l!=k-1)
				{
					newfld += saveText.charAt(l);
					pos=k-1;
				}
				else
				{
				newfld += milSep;	
				}	
			}
			aux = '';
			for(i=0; i < newfld.length; i++){
				if ((newfld.charAt(i) == decSep)) {
					break;
				}
				if (strCheck.indexOf(newfld.charAt(i))!=-1) {
					aux += newfld.charAt(i);	
				}
				///virguller çıkarılırken position da azaltılır
				if (strCheck.indexOf(newfld.charAt(i))==-1 ) {
					if(i<=originalPos )
						pos = pos-1;
					if(newfld.charAt(i) == milSep)
						originalCommaCounter++;
				}
			}
			len = aux.length;
			///comma sayısı sayılıyor
			//milpart uzunlugu
			aux2 = '';
			for (j = 0, i = len - 1; i >= 0; i--) {
				if (j == 3) {
					aux2 += milSep;
					j = 0;
					commaCounter +=1;
					///virguller eklenirken pos da arttırılır
					if(i<=pos)
						pos = pos+1;
					///	
				}
				aux2 += aux.charAt(i);
				j++;
			}
		}
		////////////////////////
		fld.value = '';
		len2 = aux2.length;
		// part texte yazılır
		for (i = len2 - 1; i >= 0; i--) {
			fld.value += aux2.charAt(i);//aux2 texte ters çevrilerek yazılır
		}
		//gelen key decSep ise yazılır
		lendec = auxdec.length;
		if(decimal==1 && len2 ==0){//ondalıklı sayı ise ve tam kısmı yoksa
			fld.value = "0";
		}
		if(decimal==1 && len2 !=0){//ondalıklı sayı ise ve tam kısmı varsa
			fld.value += decSep;//decimal noktası ekleme
			for (i = lendec-1; i >=0 && (lendec-1-i<precision); i--){
				fld.value += auxdec.charAt(i);//decimal kısmı eklenir
			}	
		}	
	}//if(len>0) closed   
	range = fld.createTextRange();
	range.move('character', pos);            // restore the cursor (also shows how to set the cursor)
	range.select();
	}
return false;
}
function currencyFormatKeyPress(fld, e){
if(isMacintosh())
	return true;

	var whichCode = (window.Event) ? e.which : e.keyCode;
	//if (whichCode == 13) return false;  // Enter
	//get cursor position 
	key = String.fromCharCode(whichCode);  // Get key value from key code
	var saveText = fld.value;  // save for restoring later
	fld.focus();
	var range = document.selection.createRange();
	var weirdStr = String.fromCharCode(1);   // a weird string to recognize the place
	range.text = weirdStr;
	var pos = fld.value.indexOf(weirdStr);  // get the position
	var originalPos = pos;
	fld.value = saveText;           // restore the previous text
	generalPos=pos;
	generalValue=saveText;
	generalChar=key;
}




/* 1ncü tablo - Anında Kur Çevirme  */

function calc3(kur1,kur2,birim)
	{
		var sonuc3;
		var hodo;
		//birim = auxbirim
		hodo = (birim * kur1 / kur2);

		if (isNaN(hodo)) hodo = 0;
		
		document.getElementById("result3").value=Math.round(hodo*1000)/1000 ;
	}

	/*function formatCurrency(num)
	 formats a number with thousands' seperators 
	{
		num = num.toString().replace(/\$|\,/g,'');
		if(isNaN(num)) num = "0";
		num = Math.floor(num).toString();
		for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
		num = num.substring(0,num.length-(4*i+3))+','+num.substring(num.length-(4*i+3));
		return num;
	}
*/













/* 2ncü tablo - Anında TL  Döviz Hesaplama  */

function calc(item,qty,ytl)
	{
		var sonuc
		
		hidde = item*qty
		document.getElementById("ytl").value = Math.round(hidde*10000)/10000 ;


	}
	function formatCurrency(num)
	/* formats a number with thousands' seperators */
	{
		num = num.toString().replace(/\$|\,/g,'');
		if(isNaN(num)) num = "0";
		num = Math.floor(num).toString();
		for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
		num = num.substring(0,num.length-(4*i+3))+','+num.substring(num.length-(4*i+3));
		return num;
	}










/* 3ncü tablo - Anında Döviz Hesaplama  */

function calc2(item2,qty2,result2)
	{
		var sonuc2
		var hede
		hede = (qty2/item2);
		document.getElementById("result2").value=Math.round(hede*1000)/1000 ;
		

	}
	/* function formatCurrency(num)
	formats a number with thousands' seperators 
	{
		num = num.toString().replace(/\$|\,/g,'');
		if(isNaN(num)) num = "0";
		num = Math.floor(num).toString();
		for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
		num = num.substring(0,num.length-(4*i+3))+','+num.substring(num.length-(4*i+3));
		return num;
	}
*/

function MM_findObj(n, d) { //v4.01
  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 && d.getElementById) x=d.getElementById(n); return x;
}

function YY_checkform() { //v4.71
//copyright (c)1998,2002 Yaromat.com
  var a=YY_checkform.arguments,oo=true,v='',s='',err=false,r,o,at,o1,t,i,j,ma,rx,cd,cm,cy,dte,at;
  for (i=1; i<a.length;i=i+4){
    if (a[i+1].charAt(0)=='#'){r=true; a[i+1]=a[i+1].substring(1);}else{r=false}
    o=MM_findObj(a[i].replace(/\[\d+\]/ig,""));
    o1=MM_findObj(a[i+1].replace(/\[\d+\]/ig,""));
    v=o.value;t=a[i+2];
    if (o.type=='text'||o.type=='password'||o.type=='hidden'){
      if (r&&v.length==0){err=true}
      if (v.length>0)
      if (t==1){ //fromto
        ma=a[i+1].split('_');if(isNaN(v)||v<ma[0]/1||v > ma[1]/1){err=true}
      } else if (t==2){
        rx=new RegExp("^[\\w\.=-]+@[\\w\\.-]+\\.[a-zA-Z]{2,4}$");if(!rx.test(v))err=true;
      } else if (t==3){ // date
        ma=a[i+1].split("#");at=v.match(ma[0]);
        if(at){
          cd=(at[ma[1]])?at[ma[1]]:1;cm=at[ma[2]]-1;cy=at[ma[3]];
          dte=new Date(cy,cm,cd);
          if(dte.getFullYear()!=cy||dte.getDate()!=cd||dte.getMonth()!=cm){err=true};
        }else{err=true}
      } else if (t==4){ // time
        ma=a[i+1].split("#");at=v.match(ma[0]);if(!at){err=true}
      } else if (t==5){ // check this 2
            if(o1.length)o1=o1[a[i+1].replace(/(.*\[)|(\].*)/ig,"")];
            if(!o1.checked){err=true}
      } else if (t==6){ // the same
            if(v!=MM_findObj(a[i+1]).value){err=true}
      }
    } else
    if (!o.type&&o.length>0&&o[0].type=='radio'){
          at = a[i].match(/(.*)\[(\d+)\].*/i);
          o2=(o.length>1)?o[at[2]]:o;
      if (t==1&&o2&&o2.checked&&o1&&o1.value.length/1==0){err=true}
      if (t==2){
        oo=false;
        for(j=0;j<o.length;j++){oo=oo||o[j].checked}
        if(!oo){s+='* '+a[i+3]+'\n'}
      }
    } else if (o.type=='checkbox'){
      if((t==1&&o.checked==false)||(t==2&&o.checked&&o1&&o1.value.length/1==0)){err=true}
    } else if (o.type=='select-one'||o.type=='select-multiple'){
      if(t==1&&o.selectedIndex/1==0){err=true}
    }else if (o.type=='textarea'){
      if(v.length<a[i+1]){err=true}
    }
    if (err){s+='* '+a[i+3]+'\n'; err=false}
  }
  if (s!=''){alert('H A T A :\t\t\t\t\t\n\n'+s)}
  document.MM_returnValue = (s=='');
}

function MM_openBrWindow(theURL,winName,features, myWidth, myHeight, isCenter) { //v3.0
  if(window.screen)if(isCenter)if(isCenter=="true"){
    var myLeft = (screen.width-myWidth)/2;
    var myTop = (screen.height-myHeight)/2;
    features+=(features!='')?',':'';
    features+=',left='+myLeft+',top='+myTop;
  }
  window.open(theURL,winName,features+((features!='')?',':'')+'width='+myWidth+',height='+myHeight);
}

