﻿function ajax_request_script(html){
	var hd = document.getElementsByTagName("head")[0];
	var re = /(?:<script([^>]*)?>)((\n|\r|.)*?)(?:<\/script>)/ig;
	var srcRe = /\ssrc=([\'\"])(.*?)\1/i;
	var typeRe = /\stype=([\'\"])(.*?)\1/i;
	var match;
	while(match = re.exec(html)){
		var attrs = match[1];
		var srcMatch = attrs ? attrs.match(srcRe) : false;
		var textToEval = "";
		if(srcMatch && srcMatch[2]){
			//<SCRIPT SRC="..."> şeklinde ayarlanan external Javascript'leri sayfaya ekle
			var s = document.createElement("script");
			s.src = srcMatch[2];
			var typeMatch = attrs.match(typeRe);
			if(typeMatch && typeMatch[2]){
			s.type = typeMatch[2];
			}
			hd.appendChild(s);
		}else if(match[2] && match[2].length > 0){
			/*<SCRIPT>...</SCRIPT> şeklinde yazılmış Javascript kodlarını sayfaya ekle (eval et)*/
			
			/*
			ColdFusion <CFFORM> etiketleri, karmaşık Javascript kodları oluşturur.
			Bu kodlardaki HTML comment expression'ları IE'de eval error'una neden olur.
			Bu sorunu aşmak için work around.
			*/
			textToEval = match[2].replace("<!--", "").replace("-->", "").replace("//-->", "");
			if(window.execScript) {
				window.execScript(textToEval);
			} else {
				window.eval(textToEval);
			}
		}
	}
	//<SCRIPT> etiketlerini HTML'den kaldır. Yeni HTML'i geri döndür
	return html.replace(/(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)/ig, "");
}

/*
AJAX XHR nesnesi döndürür. Tarayıcı AJAX desteklemiyorsa,
kullanıcıya hata mesajı gösterir. Geriye olumsuz bir değer döndürür.
*/
function GetAjaxConnector() {
	// Kullanım: myAjaxConnector = GetAjaxConnector();
    var xmlHttp=null;
    try{
        // Firefox, Opera 8.0+, Safari
        xmlHttp=new XMLHttpRequest();
    }catch (e){
        // Internet Explorer
        try{
            xmlHttp=new ActiveXObject('Msxml2.XMLHTTP');
        }catch (e){
            xmlHttp=new ActiveXObject('Microsoft.XMLHTTP');
        }
    }
	if (xmlHttp==null) {
		alert ('Tarayıcınız Ajax Desteklemiyor!');
		return;
    }
    return xmlHttp;
}

function GetFormData(form) {
	var args = [];
	for (var i=0; i<form.elements.length; i++) {
		if (!form.elements[i].name) continue;
		if (form.elements[i].tagname = 'input' && (form.elements[i].type == 'checkbox' || form.elements[i].type == 'radio') && !form.elements[i].checked) continue;
		
		if (form.elements[i].tagname = 'select' && form.elements[i].multiple) {
			for (j=0; j<form.elements[i].options.length; j++) {
				if (form.elements[i].options[j].selected) args.push(form.elements[i].name + "=" + encodeURIComponent(form.elements[i].options[j].value));
			}
		} else {
			args.push(form.elements[i].name + "=" + encodeURIComponent(form.elements[i].value));
		}
	}
	return args.join("&");
}

function AjaxRequest(ajaxConnector, url, method, data, callback) {
	if (ajaxConnector!=null) {
		ajaxConnector.open(method, url+'&ajax=1', true);
		ajaxConnector.setRequestHeader('If-Modified-Since', 'Sat, 1 Jan 2000 00:00:00 GMT');
		ajaxConnector.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8');
		if (data != null) {
			ajaxConnector.setRequestHeader('Content-length', data.length);//alert(data)//form ile gelen değerleri görmek için alert'i açın eksik değer varmı kontrol edebilirsiniz.;
		}
		ajaxConnector.setRequestHeader('Connection', 'close');
		/*
		Bu satır önemlidir. Zira, ColdFusion is_ajax_requesy() fonksiyonu, gelen bu request'i inceler.
		Aşağıdaki header sayesinde, request'in bir ajax request olduğuna karar verir
		*/
		ajaxConnector.setRequestHeader('X-Requested-With', 'XMLHttpRequest');
		ajaxConnector.onreadystatechange=callback;
		ajaxConnector.send(data);
		return true;
	}
	return false;
}
function AjaxFormSubmit(formName,messageBoxId,showError,watingMessage,successMessage,load_url,load_div) 
{
	var form;
	if (formName.split) {
		form=document.forms[formName];
	} else {
		form=formName;
	}
	 //form.submit(); // Eğer ajax işlemi düzgün çalışmıyorsa action sayfasındaki hatayı görebilmek için form'u normal şekilde submit edin (yani bu kısmı açın)
	var ajaxConn=GetAjaxConnector();
	var messageBox=document.getElementById(messageBoxId);
	var request=AjaxRequest(ajaxConn, form.action, form.method, GetFormData(form), function() {
	if (ajaxConn.readyState==4 && ajaxConn.status == 200) {
		if (!successMessage) {successMessage="<strong style='color:black'>Kaydedildi!</strong>";}
		messageBox.innerHTML ="<strong style='color:black'>"+ successMessage + "</strong>";
		if(load_url && load_div)//eğer 2.ci div çalıştırılmak isteniyorsa
			AjaxPageLoad(load_url,load_div);
	} else if (ajaxConn.readyState==4) {
		if (showError && showError==true) {
			messageBox.innerHTML=ajaxConn.responseText;
		} else {
			messageBox.innerHTML = "<strong style='color:red'>WorkCube Hata! Sistem yöneticisine başvurun.</strong>";
		}
	}
});
	if(request) {
		if (!watingMessage) {watingMessage="<strong style='color:black'>Kaydediliyor...</strong>";}
		messageBox.innerHTML ="<strong style='color:black'>"+ watingMessage + "</strong>";
		return true;
	} else {
		return false;
	}
}

/*
Adresi belirtilen sayfayı request eder. İçeriğini sayfada istenilen yerde gösterir.
Parametreler:
url: request edilecek sayfanın adresi
target: yüklenen sayfanın içeriğinin gösterileceği yer. Bir element'in (örn: div) ID'si veya AJAX window object.
error_detail: yüklenen sayfada sorun varsa, CF error ekranda gösterilsin mi. Varsayılan: false
loader_message: sayfa yüklenirken, ekranda gösterilecek yazı. Varsayılan: 'Yükleniyor...'
*/
function AjaxPageLoad(url,target, error_detail, loader_message,li_id){
	if(document.getElementById(target).parentNode.parentNode.style.display != 'none')//Ajax'ın açılacağı div'in  üzerinde bulun <tr>'ye ait style görünmez olduğunda yükleme yapmasın
	{
		function ajax_tab(li_id)
			{
				var ullist=li_id.parentNode.getElementsByTagName("li");//gelen li'nin üstü olan ul'nin içinde olan li'lerin listesi
				for (var i=0; i<ullist.length; i++)//ul içindeki li'leri döndürüyoruz
				{
					if(li_id.id == ullist[i].id)//eğer tıklanan  li_id ise class'ını değiştiriyoruz.
					ullist[i].className="selected";
					else//değilse class'ını boşaltıyoruz.
					ullist[i].className=""
				}
			}
		function set_html(target,html){
			//object gönderilmişse, AJAX window'a content yüklenecek demektir.
			if (typeof target == 'object'){
				target.setBody(html);
				target.render();
				target.center();
			//ID'si gönderilen element'e yüklenecek demektir
			} else {
				try{
				document.getElementById(target).innerHTML = html;}
				catch(err){return false;}
			}
		}
		var ajaxConn=GetAjaxConnector();
		var request=AjaxRequest(ajaxConn, url, "get", null, function() {
			
			if ((ajaxConn.readyState==4 && ajaxConn.status == 200)) {
				if(li_id)//li id gönderilmiş ise
					ajax_tab(li_id);
				set_html(target, ajax_request_script(ajaxConn.responseText));
			} else if (ajaxConn.readyState==4) {
				if (error_detail == true) {
					set_html(target, ajaxConn.responseText);
				} else {
					set_html(target, "<strong style='color:red'>WorkCube Hata! Sistem yöneticisine başvurun.</strong>");
				}
			}
		});
		if(request) {
			set_html(target,((typeof loader_message == 'undefined') ? "<div style='background:url(/images/ajax_load.gif) no-repeat; padding:3px; text-align:center; font-weight:bold; width:190px;'>Yükleniyor...</div>": "<div style='background:url(/images/ajax_load.gif) no-repeat; padding:3px; text-align:center; font-weight:bold; width:190px;'>"+loader_message+"</div>"));
			return true;
		} else {
			return false;
		}
	}
}

//20070628 sorun olmazsa 120 güne silinsin kullanılmıyor olabilir var previous_process = new Array(2);
/*ajax sayfa cagirma islemi*/
function ajaxsayfa(url,divid)
{
/*AjaxPageLoad(url, divid);*/
	//alert(document.getElementById(divid).innerHTML="Sayfa Yükleniyor...");
	var page_request = false
	if (window.XMLHttpRequest) // if Mozilla, Safari etc
		page_request = new XMLHttpRequest()
	else if (window.ActiveXObject)
	{ // if IE
		try 
		{
		page_request = new ActiveXObject("Msxml2.XMLHTTP")
		} 
		catch (e)
		{
			try
			{
			page_request = new ActiveXObject("Microsoft.XMLHTTP")
			}
			catch (e)
			{}
		}
	}
	else
	return false
	
	page_request.onreadystatechange=function()
	{
		loadpage(page_request, divid);
	}
	
	page_request.open('GET', url, true);
	page_request.send(null);
}

function loadpage(page_request,divid)
{
	//alert(window.location.href.indexOf("http"));
	if (page_request.readyState == 4 && (page_request.status==200 || window.location.href.indexOf("http")==-1))
		document.getElementById(divid).innerHTML = page_request.responseText;
	else if(page_request.readyState == 4 && (page_request.status==500 || window.location.href.indexOf("http")==-1))
		document.getElementById(divid).innerHTML = "<strong style='color:red'>WorkCube Hata! Sistem yöneticisine başvurun.</strong>";
	
}

/* pop upları sayfanın tam ortasında açar... pencere boyutları önceden belirleniyor..*/
function windowopen(theURL,winSize) { /*v3.0*/
//fonsiyon 3 parametrede alabiliyor 3. parametre de isim yollana bilir ozaman aynı pencere tekrar acilmaz
  if (winSize == 'page') 		{ myWidth=750 ; myHeight=500 ; features = 'scrollbars=1, resizable=1, menubar=1' ; }
  else if (winSize == 'list') 		{ myWidth=700 ; myHeight=555 ; features = 'scrollbars=1, resizable=1, menubar=1' ; }
  else if (winSize == 'medium') 	{ myWidth=600 ; myHeight=470 ; features = 'scrollbars=1, resizable=1, menubar=1' ; }
  else if (winSize == 'small') 		{ myWidth=400 ; myHeight=300 ; features = 'scrollbars=1, resizable=1, menubar=1' ; }
  else if (winSize == 'date') 		{ myWidth=275 ; myHeight=190 ; features = 'scrollbars=1, resizable=1, menubar=1' ; }
  else if (winSize == 'project') 	{ myWidth=800 ; myHeight=620 ; features = 'scrollbars=1, resizable=1, menubar=1' ; }
  else if (winSize == 'large') 		{ myWidth=615 ; myHeight=550 ; features = 'scrollbars=1, resizable=1, menubar=1' ; }
  else if (winSize == 'horizantal') 	{ myWidth=950 ; myHeight=300 ; features = 'scrollbars=1, resizable=1, menubar=1' ; }
  else if (winSize == 'wide') 		{ myWidth=980 ; myHeight=600 ; features = 'scrollbars=1, resizable=1, menubar=1' ; }
  else if (winSize == 'longpage') 	{ myWidth=1100 ; myHeight=500 ; features = 'scrollbars=1, resizable=1, menubar=1' ; }
  else if (winSize == 'page_horizantal') { myWidth=800 ; myHeight=500 ; features = 'scrollbars=1, resizable=1, menubar=1' ; }
  else if (winSize == 'video') 		{ myWidth=480 ; myHeight=400 ; features = 'scrollbars=0, resizable=0, menubar=0' ; }
  else if (winSize == 'wwide') 		{ myWidth=1600 ; myHeight=800 ; features = 'scrollbars=1, resizable=1, menubar=1' ; }  
  else if (winSize == 'long_menu') 	{ myWidth=200 ; myHeight=500 ; features = 'scrollbars=0, resizable=0' ; }
  else { myWidth=400 ; myHeight=500 ; features = 'scrollbars=0, resizable=0' ; }

  if(window.screen)
  {
    var myLeft = (screen.width-myWidth)/2;
    var myTop =  (screen.height-myHeight)/2;
  
  features+=(features!='')?',':''; 
  features+=',left='+myLeft+',top='+myTop; 
  }
  		if (arguments[2]==null)
		window.open(theURL,'',features+((features!='')?',':'')+'width='+myWidth+',height='+myHeight); 
		else		
		window.open(theURL,arguments[2],features+((features!='')?',':'')+'width='+myWidth+',height='+myHeight); 
}

function ajaxwindow(theURL,winSize) {
	if (winSize == 'page') 		{ myWidth=750 ; myHeight=500 ; features = 'scrollbars=1, resizable=1, menubar=1' ; }
	else if (winSize == 'list') 		{ myWidth=700 ; myHeight=555 ; features = 'scrollbars=1, resizable=1, menubar=1' ; }
	else if (winSize == 'medium') 		{ myWidth=600 ; myHeight=470 ; features = 'scrollbars=1, resizable=1, menubar=1' ; }
	else if (winSize == 'small') 		{ myWidth=400 ; myHeight=300 ; features = 'scrollbars=1, resizable=1, menubar=1' ; }
	else if (winSize == 'date') 		{ myWidth=275 ; myHeight=190 ; features = 'scrollbars=1, resizable=1, menubar=1' ; }
	else if (winSize == 'project') 		{ myWidth=800 ; myHeight=620 ; features = 'scrollbars=1, resizable=1, menubar=1' ; }
	else if (winSize == 'large') 		{ myWidth=615 ; myHeight=550 ; features = 'scrollbars=1, resizable=1, menubar=1' ; }
	else if (winSize == 'horizantal') 	{ myWidth=950 ; myHeight=300 ; features = 'scrollbars=1, resizable=1, menubar=1' ; }
	else if (winSize == 'wide') 		{ myWidth=980 ; myHeight=600 ; features = 'scrollbars=1, resizable=1, menubar=1' ; }
	else if (winSize == 'longpage') 	{ myWidth=950 ; myHeight=500 ; features = 'scrollbars=1, resizable=1, menubar=1' ; }
	else if (winSize == 'page_horizantal') { myWidth=800 ; myHeight=500 ; features = 'scrollbars=1, resizable=1, menubar=1' ; }
	else if (winSize == 'video') 		{ myWidth=480 ; myHeight=400 ; features = 'scrollbars=0, resizable=0, menubar=0' ; }
	else if (winSize == 'wwide') 		{ myWidth=1600 ; myHeight=800 ; features = 'scrollbars=1, resizable=1, menubar=1' ; }  
	else if (winSize == 'long_menu') 	{ myWidth=200 ; myHeight=500 ; features = 'scrollbars=0, resizable=0' ; }
	else { myWidth=400 ; myHeight=500 ; features = 'scrollbars=0, resizable=0';}
	
	if(window.screen){
		var myLeft = (screen.width-myWidth)/2;
		var myTop =  (screen.height-myHeight)/2;
	}
	if (arguments[2]==null)
		useframewindow(myWidth,myHeight,theURL,'1','',0,1);
	else
		useframewindow(myWidth,myHeight,theURL,'1','',0,1,arguments[2]);
}

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 hide(id){
	document.getElementById(id).style.display='none';
}
function show(id){
	document.getElementById(id).style.display = '';
}
function show_hide(id){
	if (document.getElementById(id).style.display == '' || document.getElementById(id).style.display == 'block'){
		hide(id);
	} else {
		show(id);
	}
}
function gizle(id){
	id.style.display='none';
}
function goster(id){
	id.style.display='';
}
function gizle_goster(id){
	if (id.style.display=='')
	{
		id.style.display='none';
	} else {
		id.style.display='';
	}
}
/*table gizleme - gösterme  / imaj değişikliği yapıyor*/
function gizle_goster_img(id,id2,txt){
	if (id.style.display==''){
		id.style.display='none';
		id2.style.display='';
		txt.style.display='none';
	} else {
		id.style.display='';
		id2.style.display='none';
		txt.style.display='';
	}
}



/* 
 parametre 1 : field_name.value
 parametre 2 : alan adı
 Verilen degiskenin boş değil ise en az 8 karakter içermesini kontrol eder
 alan eğer 1/1/2002 ise bunu 01/01/2002 yapar 
 alan eğer 1.1.2002 ise bunu 01.01.2002 yapar 
 arzu bt 06 2004
*/
function fix_date_value(field)
{
	field_tarih = field;
	if ( (field_tarih.length > 0) && (field_tarih.length < 8) )
		{
			alert(' Tarih alanını kontrol ediniz !');
			return false;
		}		
	if (field_tarih.length >= 8)
		{
		if (field_tarih.indexOf('.') != -1)
			{
				if (field_tarih.indexOf('.') == 1)
					field_tarih = '0' + field_tarih;
				if (field_tarih.lastIndexOf('.') == 3)
					field_tarih = field_tarih.substr(0,3) + '01' + field_tarih.substr(3,5);
				if (field_tarih.lastIndexOf('.') == 4)
					field_tarih = field_tarih.substr(0,3) + '0' + field_tarih.substr(3,6);
			}
		else if (field_tarih.indexOf('/') != -1)
			{
			if (field_tarih.indexOf('/') == 1)
				field_tarih = '0' + field_tarih;
			if (field_tarih.lastIndexOf('/') == 3)
				field_tarih = field_tarih.substr(0,3) + '01' + field_tarih.substr(3,5);
			if (field_tarih.lastIndexOf('/') == 4)
				field_tarih = field_tarih.substr(0,3) + '0' + field_tarih.substr(3,6);
			}
		else
			{
				alert(' alanını kontrol ediniz ! ' + field_tarih.length + '');
				return false;
			}
		}
	if ((field_tarih.length > 0) && (field_tarih.length < 10))
		{
			alert(' alanını kontrol ediniz ! ' + field_tarih.length + '');
			return false;
		}
	return(field_tarih);
}

/* 
 parametre 1 : form_name.field_name
 parametre 2 : alan adı
 Verilen alanın boş değil ise en az 8 karakter içermesini kontrol eder
 alan eğer 1/1/2002 ise bunu 01/01/2002 yapar 
 alan eğer 1.1.2002 ise bunu 01.01.2002 yapar 
*/
/*Ergün KOÇAK*/
function fix_date(field,name)
{
	if ( (field.value.length > 0) && (field.value.length < 8) )
		{
		alert(name + ' alanını kontrol ediniz !');
		return false;
		}		
	if (field.value.length >= 8)
		{
		if (field.value.indexOf('.') != -1)
			{
			/*liste '.' ile oluşturulmuş*/
			if (field.value.indexOf('.') == 1)
				field.value = '0' + field.value;
			if (field.value.lastIndexOf('.') == 3)
				field.value = field.value.substr(0,3) + '01' + field.value.substr(3,5);
			if (field.value.lastIndexOf('.') == 4)
				field.value = field.value.substr(0,3) + '0' + field.value.substr(3,6);
			}
		else if (field.value.indexOf('/') != -1)
			{
			/*liste '/' ile oluşturulmuş*/
			if (field.value.indexOf('/') == 1)
				field.value = '0' + field.value;
			if (field.value.lastIndexOf('/') == 3)
				field.value = field.value.substr(0,3) + '01' + field.value.substr(3,5);
			if (field.value.lastIndexOf('/') == 4)
				field.value = field.value.substr(0,3) + '0' + field.value.substr(3,6);
			}
		else
			{
			alert(name + ' alanını kontrol ediniz ! ' + field.value.length + '');
			return false;
			}
		}
	if ((field.value.length > 0) && (field.value.length < 10))
		{
		alert(name + ' alanını kontrol ediniz ! ' + field.value.length + '');
		return false;
		}
	return true;	
}

/* 
	tarih1 ===> document.assetp_reserve.startdate gibi bir form alanı olmalı
	tarih2 ===> document.assetp_reserve.finishdate gibi bir form alanı olmalı
	saat1 ===> document.assetp_reserve.starttime gibi bir form alanı olmalı
	saat2 ===> document.assetp_reserve.finishtime gibi bir form alanı olmalı
	tarih1 > tarih2 kontrol edilir
	msg hata durumunda alert edilecek mesaj
	ergün koçak
*/
function time_check(tarih1, saat1, dakika1, tarih2, saat2, dakika2, msg)
{
	f = true;	
	f = ( fix_date(tarih1,tarih1.name) && fix_date(tarih2,tarih2.name) );	
		
	tarih1_ = tarih1.value.substr(6,4) + tarih1.value.substr(3,2) + tarih1.value.substr(0,2);
	tarih2_ = tarih2.value.substr(6,4) + tarih2.value.substr(3,2) + tarih2.value.substr(0,2);

	if (saat1.value.length < 2) saat1_ = '0' + saat1.value; else saat1_ = saat1.value;
	if (dakika1.value.length < 2) dakika1_ = '0' + dakika1.value; else dakika1_ = dakika1.value;
	if (saat2.value.length < 2) saat2_ = '0' + saat2.value; else saat2_ = saat2.value;
	if (dakika2.value.length < 2) dakika2_ = '0' + dakika2.value; else dakika2_ = dakika2.value;

	tarih1_ = tarih1_ + saat1_ + dakika1_;
	tarih2_ = tarih2_ + saat2_ + dakika2_;	
	
	if (tarih1_ >= tarih2_) 
		{
		alert(msg);
		tarih1.focus();
		return false;
		}
	else
		{				
		return f;
		}
}

/* 
tarih1 ===> document.assetp_reserve.startdate gibi bir form alanı olmalı
tarih2 ===> document.assetp_reserve.finishdate gibi bir form alanı olmalı
msg ===> hata durumunda alert edilecek mesaj
is_equal ===> 1 olursa esitlik kontrolu de yapilir.
tarih1 > tarih2  veya tarih1 = tarih2 kontrol edilir
ergün koçak
*/
function date_check(tarih1, tarih2, msg, is_equal)
{
	
	fix_date(tarih1,tarih1.name);
	fix_date(tarih2,tarih2.name);
	if(is_equal == undefined)
		is_equal = 0;
	tarih1_ = tarih1.value.substr(6,4) + tarih1.value.substr(3,2) + tarih1.value.substr(0,2);
	tarih2_ = tarih2.value.substr(6,4) + tarih2.value.substr(3,2) + tarih2.value.substr(0,2);
	
	if (tarih1_ > tarih2_ || (is_equal == 1 && tarih1_ == tarih2_)) 
	{
		if (msg != '')
		{
			alert(msg);
			tarih1.focus();
		}
		else
		{
			alert('Hata Mesajı Ayarlanmamış !');
			tarih1.focus();
		}
		return false;
	}
	else
		return true;
}

/*
11/06/2004 Arzu BT
Burada field degil value degerleri ile  
tarih1 tarih2 den kucuk olmamasi kontrolu yapilir.	
*/
function global_date_check_value(tarih1, tarih2, msg)
{
	tarih1 = fix_date_value(tarih1);
	tarih2 = fix_date_value(tarih2);
	if(tarih1.length==10 && tarih2.length==10)
	{
		tarih1_ = tarih1.substr(6,4) + tarih1.substr(3,2) + tarih1.substr(0,2);
		tarih2_ = tarih2.substr(6,4) + tarih2.substr(3,2) + tarih2.substr(0,2);
		if ( tarih2_ < tarih1_ || tarih2.substr(6,4) > tarih1.substr(6,4)) 
		{
			if (msg != '')
				alert(msg);
			else
				alert('Hata Mesajı Ayarlanmamış !');
			return false;
		}
		else
			return true;
	}
	else {
		alert("Lütfen Tarih Formatını Düzeltiniz!");
		return false;
	}
}
/* Hidden alanlarda focus problemi olmasın diye yazıldı. Onur P. 03012005 */
function date_check_hiddens(tarih1, tarih2, msg)
{
	tarih1_ = tarih1.value.substr(6,4) + tarih1.value.substr(3,2) + tarih1.value.substr(0,2);
	tarih2_ = tarih2.value.substr(6,4) + tarih2.value.substr(3,2) + tarih2.value.substr(0,2);
	
	if (tarih1_ > tarih2_) 
		{
		if (msg != '')
			{
			alert(msg);
			}
		else
			{
			alert('Hata Mesajı Ayarlanmamış !');
			}
		return false;
		}
	else
		return true;
}
function filterNum(str,no_of_decimal) 
{
	/*form submit edilmeden önce float veya integer alanların temizliği için*/
	if (str.length == 0) return '';
	if(!no_of_decimal && no_of_decimal!=0) no_of_decimal=2;
	strCheck = '-0123456789,';
	newStr = '';
	for(var i=0; i < str.length; i++) if (strCheck.indexOf(str.charAt(i)) != -1) newStr += str.charAt(i);/*i=0 ifadesi var i=0 oldu.*/
	newStr = newStr.replace(',', '.');
	while(newStr.indexOf(',') > 0) newStr = newStr.replace(',','');
	return wrk_round(newStr,no_of_decimal);
}

function commaSplit(str,no_of_decimal,is_round)
{
	/* float degerler icin zaten uygun calisir, no_of_decimal kadar hane default yuvarlar,
	yuvarlamamak icin mutlaka no_of_decimal girmeli ve is_round argument da false olmalidir*/
	if(str.length==0) return '';
	if(!is_round && is_round != false) is_round=true;/*yuvarlama girilmemis veya girilmis ama false degilse ellemeyin*/
	if(!no_of_decimal && no_of_decimal!=0) no_of_decimal=2; /* if dogru ellemeyin */
	if(is_round) str = wrk_round(str,no_of_decimal);
	negatif_flag = 0;
	str = str.toString();
	if(parseFloat(str) < 0) {negatif_flag = 1;str = str.replace('-','');}
	if (str.indexOf(',')>0)/*sadece YTL gecisi icin gecici olarak calisiyor, silinmeli*/
		{
		alert('commaSplit e verilen '+str+' degeri'+' float a cevrilerek verilmelidir.\r -filterNum() ve f2() konbinasyonları kullanılabilir-\rYine de değeriniz düzeltildi (HS)');
		str = filterNum(f2(filterNum(str)));
		}
	textFormat_1='';
	textFormat_2='';
	temp_virgul = str.indexOf('.');
	virgul = '';
	if(temp_virgul >= 0 && no_of_decimal > 0)
		{
		virgul = ',';
		textFormat_2 = str.substr(temp_virgul+1,str.length);
		if(textFormat_2.length > no_of_decimal)
			textFormat_2 = textFormat_2.substr(0,no_of_decimal);
		else
			for (var txtf1 = textFormat_2.length+1;txtf1<=no_of_decimal;txtf1++)
				textFormat_2 = textFormat_2+'0';
		}
	else if(temp_virgul < 0 && no_of_decimal > 0)/* if dogru ellemeyin */
		{
		virgul = ',';
		for (var txtf1=1;txtf1<=no_of_decimal;txtf1++)
			textFormat_2 = textFormat_2+'0';
		}
	nokta_koy = 0;
	if(temp_virgul==0)
		textFormat_1 = 0;
	else if(temp_virgul>3)
		for (var k = temp_virgul-1; k>=0 ; k--){
		textFormat_1 = str.substr(k,1) + textFormat_1;
		nokta_koy++;
		if (nokta_koy%3==0 && k!=0) textFormat_1 = '.'+textFormat_1;
		}
	else if(temp_virgul>0)
		textFormat_1 = str.substr(0,temp_virgul);
	else if(temp_virgul<0)
		for (var k=str.length-1; k>=0 ; k--){
		textFormat_1 = str.substr(k,1) + textFormat_1;
		nokta_koy++;
		if (nokta_koy%3==0 && k!=0) textFormat_1 = '.'+textFormat_1;
		}
	textFormat = textFormat_1+virgul+textFormat_2;
	if(negatif_flag) return '-'+textFormat;
	return textFormat;
}

function formatcurrency(fld,e) 
{
	return FormatCurrency(fld,e);
}
function FormatCurrency(fld,e,no_of_decimal) 
{
	/*modified 20051225*/
	if(!e) return false;/*if(!e) var e = window.event;*/
	if(!no_of_decimal && no_of_decimal!=0) no_of_decimal=2;
	var whichCode = (window.Event) ? e.which : e.keyCode;/*klavyede basilan tusun nosu , e.keyCode:IE, e.which:NN*/
	/*klavyede basilan tusu gormek istersek alert(String.fromCharCode(whichCode));*/
	key_spec_codes = "'13','16','17','35','36','37','39','109','189'";/*sirasiyla enter,shift,ctrl,end,home,left,right tuslari (belki 189 yani tire veya negatif kontrol edilmeli)*/
	if(key_spec_codes.search("'" + whichCode + "'")>=0) return true; 
	if(whichCode==32)
		{/*space (bosluk) basilirsa hepsi temizlensin*/
		while(fld.value.indexOf(' ') > 0)
			fld.value = fld.value.replace(' ','');
		return false;
		}
	if(fld.value==',' || fld.value=='-') {fld.value = '';return false;}
	if(fld.value.indexOf(',')>0)
		{
		/*diger key kodlar = 188 ve 110:virgul,8:back space,46:del, tus takiminin iki virgulune de izin var*/
		var temp = fld.value.length-fld.value.indexOf(',')-1;
		if(temp == 0)/*son eleman virgulse ve back space veya del tuslanmissa veya decimal yoksa virgulu de silsin*/
			fld.value = (whichCode==8 || whichCode==46 || no_of_decimal==0) ? commaSplit(filterNum(fld.value,temp),temp) : commaSplit(filterNum(fld.value,temp),temp)+',';
		else if(temp < no_of_decimal)
			fld.value = commaSplit(filterNum(fld.value,temp),temp);
		else if(temp > no_of_decimal)
			/* bu durumda girilen degerin istenen decimale kadar olan kismini fonksiyonlardan gecirecegiz*/
			fld.value = commaSplit(filterNum(fld.value.substr(0,fld.value.indexOf(',')+1+no_of_decimal),no_of_decimal),no_of_decimal);
		else
			fld.value = commaSplit(filterNum(fld.value,no_of_decimal),no_of_decimal);
		}
	else
		fld.value = commaSplit(filterNum(fld.value),0);
	return false;
}


function trim(inputString) {
   /*Removes leading and trailing spaces from the passed string. Also removes
     consecutive spaces and replaces it with one space. If something besides
     a string is passed in (null, custom object, etc.) then return the input.*/
   if (typeof inputString != "string") { return inputString; }
   var retValue = inputString;
   var ch = retValue.substring(0, 1);
   while (ch == " ") { /*Check for spaces at the beginning of the string*/
      retValue = retValue.substring(1, retValue.length);
      ch = retValue.substring(0, 1);
   }
   ch = retValue.substring(retValue.length-1, retValue.length);
   while (ch == " ") { /*Check for spaces at the end of the string*/
      retValue = retValue.substring(0, retValue.length-1);
      ch = retValue.substring(retValue.length-1, retValue.length);
   }
   while (retValue.indexOf("  ") != -1) { /*Note that there are two spaces in the string - look for multiple spaces within the string*/
      retValue = retValue.substring(0, retValue.indexOf("  ")) + retValue.substring(retValue.indexOf("  ")+1, retValue.length); /*Again, there are two spaces in each of the strings*/
   }
   return retValue; /*Return the trimmed string back to the user*/
} /*Ends the "trim" function*/

/*Ekleyen Ömür*/
/*
 *Kullanım : CheckEurodate(değer,alan);
 *
 *return değeri : true veya false
 *değer : text alanına girilen değer
 *alan : text formatında alan adı
 *
 *örnek : 
 *1.return CheckEurodate(search.invoice_date.value,'Fatura Tarihi');
 *2.if(!CheckEurodate(search.invoice_date.value,'Fatura Tarihi')) return false;
 *
*/ 
function CheckEurodate(object_value,field)
{
	if (object_value.length == 0)
		return true;
	isplit = object_value.indexOf('/');
	if (isplit == -1)
		isplit = object_value.indexOf('.');
	if (isplit == -1 || isplit == object_value.length){
		alert(field + ' Hatalı!');
		return false;
		}
	sDay = object_value.substring(0, isplit);
	monthSplit = isplit + 1;
	isplit = object_value.indexOf('/', monthSplit);
	if (isplit == -1)
		isplit = object_value.indexOf('.', monthSplit);
	if (isplit == -1 ||  (isplit + 1 )  == object_value.length){
		alert(field + ' Hatalı!');
		return false;
		}
	sMonth = object_value.substring((sDay.length + 1), isplit);
	sYear = object_value.substring(isplit + 1);
	result = true;
	if (!(sMonth))
		result = false;
	else
	if (!_CF_checkrange(sMonth, 1, 12))
		result = false;
	else
	if (!(sYear))
		result = false;
	else
	if (!_CF_checkrange(sYear, 1900, 2099))
		result = false;
	else
	if (!(sDay))
		result = false;
	else
	if (!_CF_checkday(sYear, sMonth, sDay))
		result = false;
	else
		result = true;	
	if(!result)
		alert(field + ' Hatalı!');
	return result;		
}

function _CF_numberrange(object_value, min_value, max_value)
{
	if (min_value != null)
	{
		if (object_value < min_value) return false;
	}
	if (max_value != null)
	{
		if (object_value > max_value) return false;
	}
	return true;
}

function _CF_checknumber(object_value)
{
	if (object_value.length == 0)
		return true;
	var start_format = " .+-0123456789";
	var number_format = " .0123456789";
	var check_char;
	var decimal = false;
	var trailing_blank = false;
	var digits = false;
	check_char = start_format.indexOf(object_value.charAt(0));
	if (check_char == 1)
		decimal = true;
	else if (check_char < 1)
		return false;

	for (var i = 1; i < object_value.length; i++)
	{
		check_char = number_format.indexOf(object_value.charAt(i));
		if (check_char < 0)
			return false;
		else if (check_char == 1)
		{
			if (decimal)
				return false;
			else
				decimal = true;
		}
		else if (check_char == 0)
		{
			if (decimal || digits)	
				trailing_blank = true;
		}
		else if (trailing_blank)
			return false;
		else
			digits = true;
	}
	return true
}

function _CF_checkrange(object_value, min_value, max_value)
{
	if (object_value.length == 0) return true;
	if (!_CF_checknumber(object_value)) return false;
	else return (_CF_numberrange((eval(object_value)), min_value, max_value));
	return true;
}

function _CF_checkday(checkYear, checkMonth, checkDay)
{
	maxDay = 31;
	if (checkMonth == 4 || checkMonth == 6 ||
		checkMonth == 9 || checkMonth == 11)
		maxDay = 30;
	else if (checkMonth == 2)
	{
		if (checkYear % 4 > 0)
			maxDay =28;
		else if (checkYear % 100 == 0 && checkYear % 400 > 0)
			maxDay = 28;
		else
			maxDay = 29;
	}
	return _CF_checkrange(checkDay, 1, maxDay);
}

function list_len(gelen,delim)
/* cf deki listlen in javascript hali*/
{
	if(!delim) delim = ',';
	if(gelen.length == 0)
		return 0;
	else
		return gelen.split(delim).length;
}

function list_find(listem,degerim,delim)
/* cf deki listfind in javascript hali*/
/*Düzenleme 20060405 */
{ 
	var kontrol=0;
	if(!delim) delim = ',';
	var listem_1=listem.split(delim);
	for (var m=0; m<listem_1.length; m++)
		if(listem_1[m]==degerim)
		{
			kontrol=1;
			break;
		}
	if(kontrol) return m+1; else return 0;
}

function list_getat(gelen,number,delim)
/* cf deki listgetat in javascript hali*/
/*Düzenleme 20060405 */
{
	if(!delim) delim = ',';
	gelen_1=gelen.split(delim);
	if((gelen.length == 0) || (number > gelen_1.length) || (number < 1))
		return '';
	else
		return gelen_1[number-1];
}

function list_setat(listem,position,degerim,delim)
/* cf deki list_Setat in javascript hali*/
/*oluşturma 20060808 */
{ 
	var listem_2='';
	if(!delim) delim = ',';
	var listem_1=listem.split(delim);
	for (var m=0; m<listem_1.length; m++)
		if(position-1==m)
		{
				if(m==0)
					listem_2=degerim;
				else
					listem_2=listem_2+','+degerim;
		}
		else
		{
			if(m==0)listem_2=listem_1[m];
			else listem_2=listem_2+','+listem_1[m]
		}
	return listem_2;
}

function workcube_showHideLayers() { /*v3.0*/
	var i,p,v,obj,args=workcube_showHideLayers.arguments;
	
	for (i=0; i<(args.length-2); i+=3)
		if ((obj=findObj(args[i]))!=null) {
			v=args[i+2];
			if (obj.style) {
			obj=obj.style;
			v=(v=='show')?'visible':(v='hide')?'hidden':v;
		}
		obj.visibility=v;
	}
}

function wrk_round(ValToRnd, no_of_decimal){
	/*Aldigi degerler matematik deger olmalidir.
	Bunun sonucunu ekranda gormek icin cogu zaman commaSplit e vermek yeterlidir*/
	if(!no_of_decimal && no_of_decimal!=0) no_of_decimal=2;
	/* ValToRnd= filterNum(ValToRnd); */
	decimal_carpan = Math.pow(10,no_of_decimal);
	if(ValToRnd!=0) return (Math.round(ValToRnd*decimal_carpan)/decimal_carpan);
	else return 0;
	/*return f2(ValToRnd);*/
}

function f1(temp_str)<!--- // javascript diline çevir 123.123.123.123,12 -> 123123123123.12 --->
{
	return filterNum(temp_str);
	/* 20041213 bu niye yazilmiski !!!! "f1(" ifadeleri duzelince bu da silinsin...
	if (temp_str == undefined) return '';
	temp_str = temp_str.toString();	
	while (temp_str.indexOf('.') >= 0)
		{
		yer = temp_str.indexOf('.');
		temp_str = temp_str.substr(0,yer) + '' + temp_str.substr(yer+1, temp_str.length-yer-1);
		}
	if (temp_str.indexOf(',') >= 0)
		{
		yer = temp_str.indexOf(',');
		temp_str = temp_str.substr(0,yer) + '.' + temp_str.substr(yer+1, temp_str.length-yer-1);
		}
	return temp_str;
	*/
}

function f2(temp_str)<!--- //bizim dilimize çevirir 123123123123.12 -> 123123123123,12 --->
{
	if (temp_str.length == 0) return '';
	temp_str = temp_str.toString();
	if (temp_str.indexOf('.') >= 0)
		{
		yer = temp_str.indexOf('.');
		temp_str = temp_str.substr(0,yer) + ',' + temp_str.substr(yer+1, temp_str.length-yer-1);
		}
	return temp_str;
}

function date_add(dpart,number,d)
{
	/* 20051203 usage : date_add('m',3,'30/11/2005'),date_add('d',-2,'30/11/2005')
	cf teki gibi calisiyor ve ayni argumanlari aliyor : dpart 'd' = gun, dpart 'm' = ay
	d tarih gg/aa/yyyy veya gg.aa.yyyy olabilir, yil 2 hane girilebilir*/
	if(number == 0) return d;
	if(!d || !dpart || !number) return false;
	if(d.split('/').length==3) d = d.split('/');
	else if(d.split('.').length==3) d = d.split('.');
	else return false;
	if(d[2].length == 2){
		var y = new Date();
		d[2] = y.getFullYear().toString().substr(0,2) + d[2];//yil 2 hane girilirse basina bu yilin ilk iki karakterini aliyoruz
		}
	var d = new Date(d[2],d[1]-1,d[0]);//javascript aylari 0-11 araliginda tutuyor
	if(dpart == 'd')
		d.setDate(d.getDate()+number);//gun eklenmek istenmis
	else if(dpart == 'm')
		d.setMonth(d.getMonth()+number);//ay eklenmek istenmis
	d = d.getDate()+'/'+(d.getMonth()+1)+'/'+d.getFullYear();
	return d;
}
function datediff(date1,date2,a)
{
	/*
	20071220 SM
	İki tarih arasındaki farku bulur. Son değişkene göre 30 a göre modunu alır.
	usage:
	datediff(date1,date2,1)------İki tarihin farkını alıp 30 a göre modunu sonuç olarak döndürür(standart vade hesapları için)
	datediff(date1,date2,0)------ İki tarih arasındaki net farkı bulur.
	*/
	if(!date1 || !date2) return false;
	var one_day=1000*60*60*24; 
	var x=date1.split("/"); 
	var y=date2.split("/");
	var date1=new Date(x[2],(x[1]-1),x[0]);
	var date2=new Date(y[2],(y[1]-1),y[0])
	var month1=x[1]-1;
	var month2=y[1]-1;
	var diff=Math.ceil((date2.getTime()-date1.getTime())/(one_day)); 
	if(a == 1 && diff > 30)
		var diff = diff - (diff % 30);
	return(diff);
}
function wrk_query(str_query,data_source,maxrows)
{
	/*
	by  Workcube
	Created 20060315
	Modified 20060324
	Usage:
		my_query = query('SELECT COL1,COL2 FROM TABLE1 WHERE COL2=1');
		veya
		my_query = query('SELECT COL1,COL2 FROM TABLE1 WHERE COL2=1','dsn2');
		veya
		my_query = query('SELECT COL1,COL2 FROM TABLE1 WHERE COL2=1 ORDER BY COL2 DESC','dsn2',1);
		ifadesi ile my_query degiskeni cfquery ile donen sonucun tamamen aynisi bir javascript query degeri alir
		data_source : optional , default olarak 'dsn' kullaniliyor
		maxrows : optional , default olarak 0 ataniyor, 0 olunca query sonucundaki tum kayitlar gelir
	*/
	var new_query=new Object();
	var req;
	if(!data_source) data_source='dsn';
	if(!maxrows) maxrows=0;
	function callpage(url) {
		req = false;
		if(window.XMLHttpRequest)
			try
				{req = new XMLHttpRequest();}
			catch(e)
				{req = false;}
		else if(window.ActiveXObject)
			try {req = new ActiveXObject("Msxml2.XMLHTTP");}/*burasi*/
			catch(e)
				{
				try {req = new ActiveXObject("Microsoft.XMLHTTP");}
				catch(e)
					{req = false;}
				}
		if(req)
			{
			req.onreadystatechange = function ()
				{
				if (req.readyState == 4 && req.status == 200)
					try
						{
							eval(req.responseText);
							new_query = get_js_query;/*alert('Cevap:\n\n'+req.responseText);*/}
					catch(e)
						{new_query = false;/*20060619 alert('DB Sorgunuz ile ilgili problem olustu!\n\nDsn: '+data_source+'\n\nmaxrows: '+maxrows+'\n\nSorgu: '+str_query);new_query = false;*/}
				}
			req.open("post", url+'&xmlhttp=1', false);
			req.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
			req.setRequestHeader('pragma','nocache');
			req.send('str_sql='+encodeURI(str_query)+'&data_source='+data_source+'&maxrows='+maxrows);
			}
		
	}
	//TolgaS 20070124 objects yetkisi olmayan partnerlar var diye fuseaction objects2 yapildi
	callpage('/index.cfm?fuseaction=objects2.emptypopup_get_js_query');
	return new_query;
}

function workdata(qry,prmt,maxrows,extra,extra2,extra3,extra4,extra5,extra6,extra7,extra8)
{
	var new_query=new Object();
	var req;
	if(!qry) return false;
	if(prmt == undefined) prmt='';
	if(extra == undefined) extra='';
	if(extra2 == undefined) extra2='';
	if(maxrows == undefined) maxrows='';
	function callpage(url)
	{
		req = false;
		if(window.XMLHttpRequest)
			try
			{
				req = new XMLHttpRequest();
			}
			catch(e)
			{
				req = false;
			}
		else if(window.ActiveXObject)
			try {req = new ActiveXObject("Msxml2.XMLHTTP");}
			catch(e)
			{
				try{
					req = new ActiveXObject("Microsoft.XMLHTTP");
				}
				catch(e)
				{
					req = false;
				}
		}
		if(req)
		{
			req.onreadystatechange = function ()
			{
			if (req.readyState == 4 && req.status == 200)
				try
				{	//alert(req.responseText);
					eval(req.responseText);
					new_query = get_js_query;
				}
				catch(e)
				{
					new_query = false;
				}
			}
			req.open("post", url, false);//+'&xmlhttp=1'
			req.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
			req.setRequestHeader('pragma','nocache');
			req.send('qry='+qry+'&prmt='+encodeURI(prmt)+'&maxrows='+maxrows+'&extra='+encodeURI(extra)+'&extra2='+encodeURI(extra2)+'&extra3='+encodeURI(extra3)+'&extra4='+encodeURI(extra4)+'&extra5='+encodeURI(extra5)+'&extra6='+encodeURI(extra6)+'&extra7='+encodeURI(extra7)+'&extra8='+encodeURI(extra8));
		}
	}
	callpage('index.cfm?fuseaction=objects2.emptypopup_get_workdata');//index.cfm?fuseaction=objects2.emptypopup_get_js_query2   http://ep.workcube/objects/query/get_js_query2.cfm
	return new_query;
}

function js_date(tarih,saat){
/*20060316 TolgaS
cf_date gibi çalışıyor aynı şekilde 2. arguman yollanırsa createodbcdate gibi saatide ekler ancak 19:42 şeklinde gelmeli saat*/
	if(tarih.indexOf('ts'))
	{
		tarih=tarih.replace(/\./g,'/');
		tarih=tarih.replace(/-/g,'/');
		tarih=tarih.replace(/\\/g,'/');
		if(list_len(tarih,'/')==3)
		{
			var js_gun=list_getat(tarih,1,'/');
			var js_ay=list_getat(tarih,2,'/');
			var js_yil=list_getat(tarih,3,'/');
			if(js_gun.length==0) js_gun = "01";
			else if (js_gun.length==1) js_gun = "0"+js_gun;
			if(js_ay.length==0) js_ay = "01";
			else if(js_ay.length==1) js_ay = "0"+js_ay;
			if(js_yil.length!=4 || js_yil<1900)
			{
				var todayDate=new Date();
				var js_yil=todayDate.getYear();
			}
			if(CheckEurodate(js_gun+"/"+js_ay+"/"+js_yil,'Tarih Kullanımı'))
			{
				if(saat == undefined)
					tarih="{ts '"+js_yil+"-"+js_ay+"-"+js_gun+" 00:00:00'}";
				else
					tarih="{ts '"+js_yil+"-"+js_ay+"-"+js_gun+" "+saat+":00'}";
				return tarih;
			}else return '';
		}
	}
	return tarih;
}

function date_format(gelen_tarih)
{
/*20070705 YunusOzay
dateformat gibi çalışıyor aynı şekilde tek arguman alıyor*/
	date_alan = '' + gelen_tarih; 

	js_yil = date_alan.substr(0,4);
	js_ay = date_alan.substr(5,2);
	js_gun = date_alan.substr(8,2);
	
	tarih = js_gun + "/" + js_ay + "/" + js_yil;
	return tarih;
}

function date_diff(tarih1,tarih2,fark,msg)
{
	/* 
	tarih1 ===> document.assetp_reserve.startdate gibi bir form alanı olmalı
	tarih2 ===> document.assetp_reserve.finishdate gibi bir form alanı olmalı
	fark ===> sayısal bir deger verilir. yil araligini belirler (ornegin : tarih1 ve tarih2 araligi en fazla 2 yil olmali gibi)
	msg hata durumunda alert edilecek mesaj
	Senay Gargaci 20060815
	*/
	fix_date(tarih1,tarih1.name);
	fix_date(tarih2,tarih2.name);
	tarih1_ = tarih1.value.substr(6,4);
	tarih2_ = tarih2.value.substr(6,4);
	deger_ = tarih2_ - tarih1_;
	if (deger_ > fark) 
		{
		if (msg != '')
			{
			alert(msg);
			tarih1.focus();
			}
		else
			{
			alert('Hata Mesajı Ayarlanmamış !');
			tarih1.focus();
			}
		return false;
		}
	else
		return true;
}

function colorPicker_callBack(strColor) 
{
	//document.bgColor = strColor;
	eval("document." + my_form_ + "." + my_son_isim).value = strColor;
}
function openColorPickerAdv(gelen,my_form) 
{
	document.getElementById('colorPickerAdvDiv').style.visibility = 'visible';
	my_son_isim = gelen;
	my_form_ = my_form;
}
function closeColorPickerAdv() 
{
	document.getElementById('colorPickerAdvDiv').style.visibility = 'hidden';
}
function isNumber(nesne) 
{
	/* 
	Input alaninin onblur ve onkeyup fonsksiyonlarında kullanilir. Kullanımında ise sadece sayı ifadeleri ile giris yapilabilir.
	onkeyup="isNumber(this);" onblur='isNumber(this);'
	Tolga Sutlu & Barbaros Kuz 20061124
	*/
	var inputStr=nesne.value;
	if(inputStr.length>0)
	{
		for(var i=0;i<inputStr.length;i++)
		{
			var oneChar = inputStr.substring(i,i+1);
			if (oneChar < "0" || oneChar > "9") 
			{
				nesne.value=inputStr.substring(0,i);
				return false;
			}
		}
	}
}

function wrk_date_image(gelen_alan,gelen_function)
{
	if(arguments[2]==null)
		{
		gelen_image_ = gelen_alan + "_image";
		gelen_ = eval(gelen_alan + "_td");
		gelen_.innerHTML = gelen_.innerHTML + '<img src="/images/calender.gif" align="absbottom" id="' + gelen_image_ +'" border="0" style="cursor:hand;">';
		
			if(arguments[1]==null)
				{
				Calendar.setup
					({
					inputField:gelen_alan,
					ifFormat:"%d/%m/%Y",
					button:gelen_image_,
					align:"Bl",
					singleClick:true
					});
				}
			else
				{			
					a=function this_get_function_1(cal,date)
						{
						 if (!cal.dateClicked) 
							 { 
							  return; //date was not clicked do nothing 
							 } 
						eval("document.all." + gelen_alan).value = date;
						eval("window."+gelen_function);
						cal.callCloseHandler();
						}
					
					Calendar.setup
						({
						inputField:gelen_alan,
						ifFormat:"%d/%m/%Y",
						button:gelen_image_,
						align:"Bl",
						onSelect:this_get_function_1,
						singleClick:true
						});
				}
		}
	else
		{
			gelen_image_ = String(gelen_alan + "_image");
			gelen_alan = String(gelen_alan);
			sira_ = arguments[2];
			Calendar.setup
					({
					inputField:gelen_alan,
					ifFormat:"%d/%m/%Y",
					button:gelen_image_,
					input_sira:sira_,
					align:"Bl",
					singleClick:true
					});
		}
}

function wrk_date_image_2(gelen_alan,gelen_satir,gelen_image_satir)
{
	gelen_satir_ = gelen_satir - 1;
	geldi_ = eval(gelen_alan + "_td");
	geldi_alan_ = eval("document.all." + gelen_alan + "[" + gelen_satir_ + "]");
	geldi_image_ = gelen_alan + "_image" + "_" + gelen_image_satir;
	if(gelen_satir_==0)
		{
		gelen_ = geldi_;
		}
	else
		{
		gelen_ = geldi_[gelen_satir_];
		}
	
	gelen_.innerHTML = gelen_.innerHTML + 'aaa: ' +  gelen_satir_ + '<img src="/images/calender.gif" align="absbottom" id="' + geldi_image_ +'" border="0" style="cursor:hand;">';
	
	a=function this_get_function_2(cal,date)
		{
		 if (!cal.dateClicked) 
			 { 
			  return; //date was not clicked do nothing 
			 } 
		geldi_alan_.value = 'bbbb';
		cal.callCloseHandler();
		}
	
	Calendar.setup
		({
		inputField:gelen_alan[1],
		ifFormat:"%d/%m/%Y",
		button:geldi_image_,
		align:"Bl",
		singleClick:true
		});
}

/*
function control_captcha(control_url,name)
{
	div_name_ = name+'_Hashdiv';
	text_name_ = eval("document.all."+name+"_HashText").value;
	reference_name_ = eval("document.all."+name+"_HashReference").value;
	AjaxPageLoad(control_url+'&name='+name+'&reference_name='+reference_name_+'&text_name='+text_name_,div_name_,1);
	alert('111');
	if(eval("document.all."+name+"_HashError").value=='1')
		{
		alert('Güvenlik Kodunu Hatalı Girdiniz!');
		return false;
		}
}
*/

function chk_process_cat(form_name,is_main)
{
	if(is_main==undefined || is_main==0)
		var deger = eval(form_name+'.process_cat');
	else
		var deger = eval(form_name+'.main_process_cat');
	if( deger[deger.selectedIndex].value.length == 0 )
	{
		alert("İşlem Tipi Seçiniz!");
		return false;
	}
	return true;
}

function wrk_form_set_js(form_name,form_object,form_object_value,form_object_type)
{//TS2008 fonksiyon sayesinde form adı,nesne,nesneye atılacak deger vede nesne tipi yollanırsa formadaki alanlara degerler doldurulur
	if(form_object_type!=undefined && list_len(form_object_type,',')) var type_control=1; else var type_control=0;
	for(var frm_ind=1;frm_ind <= list_len(form_object,',');frm_ind++)
	{
		obj_name=list_getat(form_object,frm_ind,',');
		obj_value=list_getat(form_object_value,frm_ind,',');
		if(type_control && list_getat(form_object_type,frm_ind,',')=='checkbox')
			eval(form_name+'.'+obj_name).checked = true;
		if(type_control && list_getat(form_object_type,frm_ind,',')=='radiobox')
			eval(form_name+'.'+obj_name).checked = true;
		else
			eval(form_name+'.'+obj_name).value = obj_value;
	}
}
function wrk_call_function_js(call_function_name,call_function_parameters)
{//TS2008 istenilen fonksiyon ismi parametreleri yollanır parametrele bir array şeklinde sırası ile degerler gelir ve fonksiyon çalıştırılır
	var call_function = call_function_name+"(";
	for(i = 0; i < call_function_parameters.length-1; i++) 
		call_function += "'"+call_function_parameters[i]+"',";
	call_function += "'"+call_function_parameters[i]+"');";
	return eval(call_function);
}
function js_mid(str,start,len)
{
	//20080425 AE cf deki Mid in javascript hali. Kullanımı : js_mid(tam_kisim,2,1);
	if (start < 0 || len < 0) return "";
	var mid_str = str.substr(parseFloat(start)-1,len);
	return mid_str;
}

function paper_control(obj_name,paper_type,purchase_sales,upd_id,paper_number,company_id,consumer_id,employee_id,dsn_type)
{//TolgaS 20080515 belge no kontrol paper_type dan sonrasi gelmez ise default degerleri alır **paper_number gelir ise yeni numara üretilmez yollanan deger yazılır
	var get_paper_control = workdata('get_paper_control',eval(obj_name).value,'',paper_type,purchase_sales,upd_id,company_id,consumer_id,employee_id,dsn_type);
	if(get_paper_control.recordcount)
	{
		if(purchase_sales==true || purchase_sales == undefined) var msg_auto_change='Değer Otomatik Değişecektir '; else var msg_auto_change ='';
		alert('Bu Belge Numarası Kullanılmıştır. '+msg_auto_change+'!');
		if((purchase_sales == true || purchase_sales == undefined) && (upd_id == 0 || upd_id==undefined))//eklerken satıslarda düzenlenecek
		{
			var get_paper = workdata('get_paper',paper_type);
			if(get_paper.recordcount)
				eval(obj_name).value = String(eval('get_paper.'+paper_type+'_NO')) +'-'+ String(parseFloat(eval('get_paper.'+paper_type+'_NUMBER'))+1);
			else
				eval(obj_name).value = '';
			return false;
		}else{
			eval(obj_name).value = paper_number;
			return false;
		}
	}
	else
		return true;
}
		
function LoadCity(id_residence,field_select_city,field_select_county)
{
	
	var city_len = eval("document.all." + field_select_city + ".options.length");  //var city_len = document.getElementById(field_select_city).options.length;  
	for(j=city_len;j>=0;j--)
		eval("document.all." + field_select_city).options[j] = null;
	
	var county_len = eval("document.all." + field_select_county + ".options.length");
	for(j=county_len;j>=0;j--)
		eval("document.all." + field_select_county).options[j] = null;
	
	var deger=workdata('get_residence',1,id_residence);
	eval("document.all." + field_select_city).options[0] = new Option('Şehir','');
	eval("document.all." + field_select_county).options[0] = new Option('İlçe','');
	if(deger.recordcount)
	{
		for(var jj=0;jj<deger.recordcount;jj++)
			eval("document.all." + field_select_city).options[jj+1]=new Option(deger.CITY_NAME[jj],deger.CITY_ID[jj]);
	}
}
function LoadCounty(id_residence,field_select_county,field_telcode,is_name)
{
	var county_len = eval("document.all." + field_select_county + ".options.length");
	for(j=county_len;j>=0;j--)
		eval("document.all." + field_select_county).options[j] = null;
		
	var deger=workdata('get_residence',2,id_residence);
	eval("document.all." + field_select_county).options[0]=new Option('İlçe','');
	for(var jj=0;jj<deger.recordcount;jj++)
	{
		if(is_name != undefined)
			eval("document.all." + field_select_county).options[jj+1]=new Option(deger.COUNTY_NAME[jj],deger.COUNTY_NAME[jj]);
		else
			eval("document.all." + field_select_county).options[jj+1]=new Option(deger.COUNTY_NAME[jj],deger.COUNTY_ID[jj]);
	}
	if(field_telcode != undefined && field_telcode != '' && deger.recordcount > 0)
	{
		eval("document.all." + field_telcode).value = '';
		eval("document.all." + field_telcode).value = deger.PHONE_CODE[0];
	}
}
function WrkAccountControl(control_value,mesaj)
{
	var deger = workdata('get_account_code',control_value,1,0,1);
	if(!deger.recordcount)
		alert(mesaj);
}
function ismaxlength(obj){
var mlength=obj.getAttribute? parseInt(obj.getAttribute("maxlength")) : "";
if (obj.getAttribute && obj.value.length>mlength)
	{
	if(obj.getAttribute("message"))
		{
		obj.value=obj.value.substring(0,mlength);
		alert(obj.getAttribute("message"));
		}
	else
		{
		obj.value=obj.value.substring(0,mlength);
		}
	}
}

function isDefined(variable)
{
return (!(!(eval("document.all."+variable))));
}

function findObj(theObj, theDoc)
/*herhangi bir document icinde eleman arar 20041104*/
{
	var p, i, foundObj;
	if(!theDoc) theDoc = document;
	if( (p = theObj.indexOf("?")) > 0 && parent.frames.length)
	{
		theDoc = parent.frames[theObj.substring(p+1)].document;
		theObj = theObj.substring(0,p);
	}
	if(!(foundObj = theDoc[theObj]) && theDoc.all) foundObj = theDoc.all[theObj];
	for (i=0; !foundObj && i < theDoc.forms.length; i++) 
		foundObj = theDoc.forms[i][theObj];
	for(i=0; !foundObj && theDoc.layers && i < theDoc.layers.length; i++) 
		foundObj = findObj(theObj,theDoc.layers[i].document);
	if(!foundObj && document.getElementById) foundObj = document.getElementById(theObj);
	return foundObj;
}

function unhideSelect()
{
if (menu.style.display=='none')
{
	setTimeout("unhideselectaction()",100)
}
}
function unhideselectaction()
{
if (menu.style.display=='none')
{
	for (formIdx=0; formIdx<document.forms.length; formIdx++) 
	{
	var theForm = document.forms[formIdx];
		for(elementIdx=0; elementIdx<theForm.elements.length; elementIdx++) 
		{
		if(theForm[elementIdx].type=='select-one') 
			{
			theForm[elementIdx].style.visibility = 'visible';
			}
		}
	}
	window.status = '';
}
}

function hideSelect()
{
if (menu.style.display=='none')
	{
		for (formIdx=0; formIdx<document.forms.length; formIdx++)
		{
			var theForm = document.forms[formIdx];
			for(elementIdx=0; elementIdx<theForm.elements.length; elementIdx++)
			{
				window.status += theForm[elementIdx].type;
				if(theForm[elementIdx].type == 'select-one') 
				{
					theForm[elementIdx].style.visibility = 'hidden';
				}
			}
		}
	window.status = '';
	}
}

function TusOku(event)
{	
	if(typeof(event)=='string'){
		if(event != -1){
			if (list_getat(event,3,',') == "1" )
				window.open('?fuseaction='+list_getat(event,1,',')+'','mywin','left=20,top=20,status=1,location=1,toolbar=1,resizable=1');
			else				
				window.location='?fuseaction='+list_getat(event,1,',')+'';
		}
	}
	else if(window.event.ctrlKey==true && window.event.shiftKey==true)
	{
		
		var List_Favorites = document.getElementById('URL');
		var Favorites_i;
		if (List_Favorites!=null)
		{
			for (Favorites_i = List_Favorites.length - 1; Favorites_i>=1; Favorites_i--) 
			{
				if (list_getat(List_Favorites[Favorites_i].value,2,',') == String.fromCharCode(window.event.keyCode))
				{
					if (list_getat(List_Favorites[Favorites_i].value,3,',')=="1")
						FavoritesmyRef = window.open('?fuseaction='+list_getat(document.getElementById(Favorites_i).value,1,',')+'','','left=20,top=20,status=1,location=1,toolbar=1,resizable=1');
					else				
					window.location='?fuseaction='+list_getat(document.getElementById(Favorites_i).value,1,',')+'';
	
				}
			}
		}
	}
} 