// jvscript.js 

// --------------------------------------------
// HATA MESAJLARI
var EMAIL_HATA = "Yanlış Email Girdiniz!"; 
var EKSIK_ALAN = "Eksik Alanları Doldurunuz!"; 
var KURUS_HANE_HATA="Kurus en fazla 2 haneli olabilir!";   
var TC_KIMLIK_HATA="TC Kimlik Numarası Hatalıdır!";

var SAG_CLICK_HATA = "Lütfen Menüyü Kulanınız...";
var LOGOUT_CONFIRM = "Çıkmak İstediğinize Eminmisiniz. ?";

var SIL_CONFIRM_USER = "Kullanıcı Silinecek!\nDevam Etmek İstiyormusunuz?";
var SIL_CONFIRM_FILE = "Dosya Silinecek!\nDevam Etmek İstiyormusunuz?";

var MEBLAG_YOK_HATA = "Bedel Giriniz!";
var ACIKLAMA_YOK_HATA = "Açıklama Giriniz!";
var BASLANGIC_TARIH_YOK_HATA = "Başlangıç Tarihini Giriniz!";

var USER_YOK_HATA = "Kullanıcı Adınızı Giriniz!";
var PAROLA_YOK_HATA = "Şifrenizi Giriniz!";


var ROL_AD_YOK_HATA = "Rol Adı Giriniz!";
var TUTAR_HATA = "Tutar Aralığı Giriniz!";
var SESSION_TIMEOUT = "Çalışma Süreniz Dolmuştur";

// --------------------------------------------
// girilen e-mail adresinde '@' varmı diye kontrol ediyor
// varsa true yoksa false donduruyor
function isEmail(tText) { 
var s;
var i;
var j;
var returnCond=true;

	s=0;
	if(tText.value.length>0){
	for(i=0;i<tText.value.length;i++)
		if(tText.value.charAt(i)=='@')
			s=1;
	if(s==0) {
		alert(EMAIL_HATA); 
		returnCond=false;
		}
		}

return returnCond; //email dogru girilmisse true, degilse false donduruyor
}





//-----------------------------------------
// --------------------------------------

function formatDigits(tText,kurusLen) { 
 
unFormatHesapNo(tText);

var old;
var kurus="";
old = tText.value;

	if(old.indexOf(",")==-1)
		old=old.substr(0,old.length);
	else {
		kurus = old.substr(old.indexOf(","),old.length);
		old=old.substr(0,old.indexOf(","));		
		}
		
var sonuc1 = isCharacter2(old); 
 
if(sonuc1==true) //tam kisim sayimi diye bakiyor.
	return false; // eger tam kisim sayi degilse false donuyor.

var ne= "";
var i=0;

for(i=old.length;i>=0;i--)
   ne+=old.charAt(i);

old="";
for(i=0;i<ne.length;i+=3) {
	old+=ne.substr(i,3);
	old+=".";
	}

ne="";
for(i=old.length-2;i>=0;i--)
   ne+=old.charAt(i);

// kurus ,XX formatında
if(kurus.length > parseInt(kurusLen)+1)
	kurus = kurus.substr(0,parseInt(kurusLen)+1);
	
tText.value=ne+kurus;
return true;
}

function formatDigits2(tText) { 
	return formatDigits(tText,'2');
}

// --------------------------------------------
// 123,456 --> 123456 yapiyor
function unformatDigits(tText) { 
var old= tText.value;
var kurus="";

var sonuc = isCharacter2(old);
if(sonuc==false) //sayimi diye kontrol ediyor
	return false; // sayiysa false donduruyor.

	if(old.indexOf(",")!=-1) {
		kurus = old.substr(old.indexOf(",")+1,old.length);
		old=old.substr(0,old.indexOf(","));		
		}

var ne="";
var i=0;
for(i=old.length;i>=0;i--)
   ne+=old.charAt(i);

old="";
for(i=0;i<ne.length;i+=3) {
	old+=ne.substr(i,3);
	i++
	}

ne="";
for(i=old.length;i>=0;i--)
   ne+=old.charAt(i);

tText.value=ne+"."+kurus;
return true;
}

// ------------------------------------------
// verilen sayi ile kiyasliyor gelen sayi x' ten buyukse hata veriyor
function isGreater(tText,x) {  
if(tText.value>x) {
	alert(""+tText.value+" "+x+" ten buyuk");
	return false;
	}
return true;
}

// ------------------------------------------
// bosmu diye kontol ediyor
// bossa true doluysa false donduruyor
function isEmpty(tText) { 
var i;
//for(i=0;i<document.forms.length;i++)
    if(notNull(tText)) {
    	if(tText.value=="") {
			return true;
		}
    }

return false;
}

// ------------------------------------------
// gelen bilginin sayi olup olmadigini kontrol ediyor
// sayi ise true degilse false donduruyor.
function isNumber(tText) {
	if(isNull(tText)){
		return false;
	} 
	if(isNaN(tText.value)) {
		alert("Sayı Giriniz. Sayı Değil: "+tText.value );
		return false;
		}
return true;
}

// ------------------------------------------
// gelen bilginin character olup olmadigini kontrol ediyor
// character ise true degilse false donduruyor.
function isCharacter(tText) { 

if(!isNaN(tText.value)) {
	alert("Karakter Giriniz. Karakter Değil: "+tText.value );
	return false;
	}
return true;
}

// ------------------------------------------
// gelen parametrenin character olup olmadigini kontrol ediyor
function isCharacter2(ch) { 

if(!isNaN(ch)) {
	return false;
	}
return true;
}

// ------------------------------------------
// sag click yapmayi engelliyor

function clickIE4(){
if (event.button==2){
alert(SAG_CLICK_HATA);
return false;
}
}

function clickNS4(e){
if (document.layers||document.getElementById&&!document.all){
if (e.which==2||e.which==3){
alert(SAG_CLICK_HATA);
return false;
}
}
}

if (document.layers){
document.captureEvents(Event.MOUSEDOWN);
document.onmousedown=clickNS4;
}
else if (document.all&&!document.getElementById){
document.onmousedown=clickIE4;
}

document.oncontextmenu=new Function("alert(SAG_CLICK_HATA);return false")

// ------------------------------------------
// gelen bilginin uzunlugunu x ile kiyasliyor
// kucukse true degilse false donduruyor.
function isLonger(tText,x) 
{
	if (tText.value.length > x) {
	alert("Maximum uzunluk "+x+" olmalı!");
	return false;
	}
return true;
}

// gelen bilginin uzunlugu belirtilen sayıdan kucukse false döner
function isShorter(tText,x) 
{
	if (tText.value.length < parseInt(x) ) {
		alert( x + " RAKAM GIRMELISINIZ!..");
		return false;
	}

	return true;
}

// ------------------------------------------
// gelen bilginin icinde ozel karakterler ariyor.
// varsa true yoksa false donduruyor.
function hasSpecialChars(tText,x) 
{
var i;
	for(i=0;i<tText.value.length;i++) 
		if(tText.value.charAt(i)=='%' || 
		   tText.value.charAt(i)=='?' || 
		   tText.value.charAt(i)=='\'' || 
		   tText.value.charAt(i)=='\"' ) {
	return true;
	} // end if
return false;
}


// ------------------------------------------
// tText1 'in uzunlugu length 'e esit olunca 
// tText2 'ye focus ediyor!
function focusNext(tText1,tText2,length) {
	if(tText1.value.length==length) {
		tText2.disabled=false;
		tText2.focus();		
	}
}

function JWindowOpen (URL,Name,Parameters,width,height) {

	var i_width = width;	
	var i_height = height;
	var left = Math.floor( (screen.width - i_width) / 2);
   	var top = Math.floor( (screen.height - i_height) / 2);
	
	var localPar = ",left="+left+",top="+top+",width="+width+",height="+height;
	window.open(URL,Name,Parameters+localPar);
}


// ------------------------------------------
// verilen parametreye focus ediyor
function focusOn(tText) {
	tText.focus();
}
//klavyeden sadece numara girilmesini sağlıyor.
function isNumeric(the) {
	key=event.keyCode;
	if (key < 46 || key > 57 || key==47){key=0;}
		event.keyCode=key;
}
// Form adı class adı ve nes ne veriliyor 
//Örn. <INPUT type="checkbox" onclick="checkBoxAll(document.getElementById('formadi'), 'chk',this);">

function checkBoxAll(theForm, cName, allNo_stat) {
	var n=theForm.elements.length;
	for (var i=0;i<n;i++){
		if (theForm.elements[i].className.indexOf(cName) !=-1){
			if (allNo_stat.checked) {
				theForm.elements[i].checked = true;
			} else {
				theForm.elements[i].checked = false;
			}
		}
	}
}

function waitLayer(divName) {
	var strHref=window.location.href
	divName.innerHTML = "<B><FONT size=\"4\"> İŞLEMİNİZ GERÇEKLEŞTİRİLİYOR LÜTFEN BEKLEYİNİZ <FONT> </B><BR>";	
	divName.style.background="url('"+strHref.substr(0,strHref.indexOf('TARSIM')+6)+"/images/wait.gif') repeat-x background-position: center"; 
		
	divName.style.width="550";
	divName.style.height="50";
	divName.style.textAlign="center";
	
	divName.style.marginTop="5";	
	return true;	
}

function waitLayer(divName, msg) {
	var strHref=window.location.href
	divName.innerHTML = "<B><FONT size=\"4\">" + msg+  "<FONT> </B><BR>";	
	divName.style.background="url('"+strHref.substr(0,strHref.indexOf('TARSIM')+6)+"/images/wait.gif') repeat-x background-position: left"; 
		
	divName.style.width="550";
	divName.style.height="90";
	divName.style.textAlign="center";
	
	divName.style.marginTop="5";		
}


//document.onclick = function() { timeoutControl();}

function timeoutControl() {

// geçici olarak sildim .. emre
	return true;
}

function trimAll(sString){
	//left trim 
	while (sString.substring(0,1) == ' '){
		sString = sString.substring(1, sString.length);
	}
	//right trim
	while (sString.substring(sString.length-1, sString.length) == ' '){
		sString = sString.substring(0,sString.length-1);
	}
	return sString;
}

function sayiDegilseSifirla(tText){

		if(isNaN(tText.value)) {
			alert("Girdiğiniz Sayı Formatı Geçerli Değil");
			tText.value="0";
		}
	tText.value=trimAll(tText.value);
}
function temizle(tText){

			tText.value="";
			tText.value=trimAll(tText.value);
}
	

function lockForm(){
		var form=document.forms[0];
		
		len=form.length;
		for(x=0;x<len;x++) {		
			
			if(form.elements[x].name!=null){
				form.elements[x].disabled=true;	
			}	
		}	
}
 
function unLockForm(){
		var form=document.forms[0];
		
		len=form.length;
		for(x=0;x<len;x++) {		
			
			if(form.elements[x].name!=null){
				form.elements[x].disabled=false;	
			}	
		}	
}

//top frame icindeki txtIndex nesnesini 1 folder geri yazıyor

function geriYaz(tText2) { 

var ind=0;

            for(i=tText2.length;i>0;i--){
                        if(tText2.charAt(i)=='>' && tText2.charAt(i+1)=='>'){
                        ind=i;
                        break;
                        }
            }

parent.top.topF.document.frmTop.txtIndex.value=tText2.substring(0,ind);

}

////top frame icindeki txtIndex nesnesini 1 folder ileri yazıyor

function ustYaz(tText1) { 

var ind=0;

if(parent.top.topF.document.frmTop.txtIndex.value.length!=0){

            tText1=parent.top.topF.document.frmTop.txtIndex.value+'>>'+tText1;}



for(i=tText1.length;i>0;i--){

    if(tText1.charAt(i)=='>'){

               ind=i;

               break;}

    else{

               ind=tText1.length;}

    parent.top.topF.document.frmTop.txtIndex.value=tText1.substring(0,ind);

    }

}

	//text area için uzunluk kontrolu yapar onkeyup da çalıştırmak gerekir gerekir
	function checkMax(element,maxlimit){
		if(element.value.length>maxlimit){
			element.value=element.value.substring(0, maxlimit);
		}
	}
	
/** 
 * JSP'deki bir field'a ait tüm değerlerin (document.getElementsByName ile ulaşılan)
 * belirtilen aralıkta (örneğin [0.0 - 1.0]) olup olmadığını döner...
 * @author Niyazi
 */	
function isFieldValueInRange(field, minValue, maxValue) {
	var elems = document.getElementsByName(field);
	for(var i=0; i< elems.length; i++){
		var komOran = parseFloat(elems[i].value.replace(",", "."));
		if(isNaN(komOran)) {
			alert("Sayı Giriniz. Sayı Değil: " + komOran);
			return false;
		}
		if ( komOran < minValue || komOran > maxValue ) {
			alert("Komisyon oranları " +  minValue + 
				  " ile " + maxValue + " arasında olmalı!");
			return false;
		}
	}
	
	return true;
}

var formSubmit='onLoad';

function beforeSubmit(){
	return true;
}


function DisableAndSubmit(newMethod, el, check) {
     
    if(notNull(formSubmit) &&  formSubmit=="onSubmit"){
    	return false;
    }
    if (el.tagName == "FORM") {
        if (check == "true") {
            if (!verify(el)) {
                alert("Zorunlu alanlar? giriniz.");
                return false;
            }
        }
        if(notNull(el.target) && el.target=='_blank'){
			el.target='_self';
		}
        el._method_.value = newMethod;
        formSubmit="onSubmit";
        if (document.all) {
	        for (var t = 0; t < document.forms.length; t++) {
	            for (var e = 0; e < document.forms[t].elements.length; e++) {
	                if (document.forms[t].elements[e].name == name) {
	                    if (document.forms[t].elements[e].type == 'button' || document.forms[t].elements[e].type == 'BUTTON' ) {
	                    	el.disabled = true;
	                    }
	                }
	            }
	        }
	    }
        el.submit();
        return;
    }

    if (el.tagName == "BUTTON" || el.tagName == "button") {
        el.disabled = true;
        el.value = "Bekleyiniz...";
    }
    if (el.type == "TEXT" || el.type == "text") {
        if(isNull(el.value)){
        	return false;
        }
    }
    if(el.tagName=='a'){
    	el.href='';
    }
    if(notNull(el.form.target) && el.form.target=='_blank'){
		el.form.target='_self';
	}
    el.form._method_.value = newMethod;
    formSubmit="onSubmit";
    el.form.submit();
}
	/*
	*	parasal alanlari bignumber donusturen fonksiyonlar
	*/
    function moneyToBigNumber(money){
    	 return moneyToBigNumber(money,2); 	
    }
    function moneyToBigNumber(money,hassasiyet){
    	 var a = replaceAll(money,".","");
		 var b = replaceAll(a,",",".");
		 return new BigNumber(b,hassasiyet,1); 	
    }	

	/*
		Sultandan.. System.jsp de olan fonksiyonlar.
	*/
	function notNull(el) {
	    if (el == null || el == '' || el == 'undefined'  || typeof(el)=='undefined') {
	        return false;
	    }
	    return true;
	}
	function isNull(el) {
	    if (el == null || el == '' || el == 'undefined'  || typeof(el)=='undefined') {
	        return true;
	    }
	    return false;
	}
	function $Id(id) {
	    return document.getElementById(id);
	}
	function $Name(id) {
	    return document.getElementsByName(id);
	}


