function checkValue(characterType){
	var chars	 = new Array();
	/*sayı*/			chars[0]	 = "0:1:2:3:4:5:6:7:8:9:0";
	/*HARF*/			chars[1]	 = "a:b:c:ç:d:e:f:g:ğ:h:ı:i:j:k:l:m:n:o:ö:p:r:s:ş:t:u:ü:v:y:z:q:w:x:A:B:C:Ç:D:E:F:G:Ğ:H:I:İ:J:K:L:M:N:O:Ö:P:R:S:Ş:T:U:Ü:V:Y:Z:Q:W:X: :";
	/*SAYI & HARF*/		chars[2]	 = "0:1:2:3:4:5:6:7:8:9:a:b:c:d:e:f:g:h:i:j:k:l:m:n:o:p:r:s:t:u:v:y:z:q:w:x:A:B:C:D:E:F:G:H:I:J:K:L:M:N:O:P:R:S:T:U:V:Y:Z:Q:W:X";
	/*FİYAT & TARİH*/	chars[3]	 = "0:1:2:3:4:5:6:7:8:9:0:,";
	/*email*/			chars[4]	 = "0:1:2:3:4:5:6:7:8:9:a:b:c:d:e:f:g:h:i:j:k:l:m:n:o:p:r:s:t:u:v:y:z:q:w:x:A:B:C:D:E:F:G:H:I:J:K:L:M:N:O:P:R:S:T:U:V:Y:Z:Q:W:X:@:_:.:";
	var charArray = chars[characterType].split(":");
	var code = String.fromCharCode(window.event.keyCode);	
	var i;
	var boolCount=0;
	for( i=0; i<charArray.length;i++ ){
		if( code == charArray[i] ){
			boolCount += 1; 
		}
	}
	if (boolCount == 0 ){
		if ((window.event.keyCode != 13)&&(window.event.keyCode != 27)){window.event.keyCode = null;}
	}
	return(window.event.keyCode);
}
/*
This function  checks ubound and lbound value of sepecific form object.
*/
function checkValueByBound(obj,minValue,maxValue){
	//alert(isNaN(obj.value) +"="+ obj.value);
	if (!isNaN(obj.value.replace(',','.'))){
		if(parseInt(obj.value)< parseInt(minValue) ){
			obj.value = minValue;
			alert("Minimum "+minValue+" değerini girebilirsiniz.");}
		else
			if (parseInt(obj.value) > parseInt(maxValue)){
				obj.value = maxValue
				alert("Maksimum "+maxValue+" değerini girebilirsiniz.");}				
	}
}

function deleteRecord(formName,Id,message)
{
	if (confirm(message))
	{	
	eval('document.'+formName+'.process.value="delete"');
	eval('document.'+formName+'.Id.value="'+Id+'"');
	eval('document.'+formName+'.submit()');
	}
}

function FormatNumber(Number,Decimals,Separator)
{

 Number += ""          // Force argument to string.
 Decimals += ""        // Force argument to string.
 Separator += ""       // Force argument to string.
 if((Separator == "") || (Separator.length> 1))
  Separator = "."
 if(Number.length == 0)
  Number = "0"
 var OriginalNumber = Number  // Save for number too large.
 var Sign = 1
 var Pad = ""
 var Count = 0
 // If no number passed, force number to 0.
 if(parseFloat(Number)){
  Number = parseFloat(Number)} else {
  Number = 0}
 // If no decimals passed, default decimals to 2.
 if((parseInt(Decimals,10)) || (parseInt(Decimals,10) == 0)){
  Decimals = parseInt(Decimals,10)} else {
  Decimals = 2}
 if(Number < 0)
 {
  Sign = -1         // Remember sign of Number.
  Number *= Sign    // Force absolute value of Number.
 }
 if(Decimals < 0)
  Decimals *= -1    // Force absolute value of Decimals.
 // Next, convert number to rounded integer and force to string value.
 // (Number contains 1 extra digit used to force rounding)
 Number = "" + Math.floor(Number * Math.pow(10,Decimals + 1) + 5)
 if((Number.substring(1,2) == '.')||((Number + '')=='NaN'))
  return(OriginalNumber) // Number too large to format as specified.
 // If length of Number is less than number of decimals requested +1,
 // pad with zeros to requested length.
 if(Number.length < Decimals +1) // Construct pad string.
 {
  for(Count = Number.length; Count <= Decimals; Count++)
   Pad += "0"
 }
 Number = Pad + Number // Pad number as needed.
 if(Decimals == 0){
  // Drop extra digit -- Decimal portion is formatted.
  Number = Number.substring(0, Number.length -1)} else {
  // Or, format number with decimal point and drop extra decimal digit.
 Number = Number.substring(0,Number.length - Decimals -1) +
          Separator +
          Number.substring(Number.length - Decimals -1,
          Number.length -1)}
 if((Number == "") || (parseFloat(Number) < 1))
  Number="0"+Number // Force leading 0 for |Number| less than 1.
 if(Sign == -1)
  Number = "-" + Number  // Set sign of number.
 return(Number)
}
	
function moneyToInteger(moneyValue)
{ 
  var result="";
	var moneyValue=moneyValue.toString().split(",");
	for(var i=0; i<moneyValue.length; i++)
	{
		result = result + moneyValue[i];
	}
	return(parseInt(result))
}	
	
function integerToMoney(integerValue){
 if(integerValue.value == ''){
 return 0;
 }else{
	  var money = moneyToInteger(integerValue.value)
	  money = parseInt(money);
	  var decimal=parseInt((integerValue-money)*100);
	  var _negative=money<0;
	  if(_negative){money=-money;decimal=-decimal;}
	  while(decimal.toString().length<2)decimal="0"+decimal;
	  var _dA=money.toString().split("");
	  var _d="";
	  for(var i=_dA.length-1;i>=0;i--)
	  {
		var comma="";
		if((_dA.length-i)%3==0 && i!=0)comma=",";
		_d=comma+_dA[i]+_d;
	  }
	  var _neg_sign=_negative?"-":"";
	  //var result=_neg_sign+_d+"."+decimal;
	  var result=_neg_sign+_d;
	  integerValue.value = result;
	  return result;
  }
}	





function isCharSetOK(s)
{
	var charset =  " @abcçdefgğhıijklmnoöpqrsştuüvwxyzABCÇDEFGĞHIİJKLMNOÖPQRSŞTUÜVWXYZ1234567890-_?=:/." 
    var i;
    for( i=0; i<s.value.length; i++ )
    {
        if( charset.indexOf(s.value.charAt(i))==-1 )
        {
            return false;
        }
    }
    return true;
}

function isNumeric(s)
{
	var charset = "1234567890"
    var i;
    for( i=0; i<s.value.length; i++ )
    {
        if( charset.indexOf(s.value.charAt(i))==-1 )
        {
            return false;
        }
    }
    return true;
}

function isMoney(s)
{
	var charset = ",1234567890"
    var i;
    for( i=0; i<s.value.length; i++ )
    {
        if( charset.indexOf(s.value.charAt(i))==-1 )
        {
            return false;
        }
    }
    return true;
}

function isSelected(s)
{
if (s.value == -1)
{
	return false;
}
return true;
}

function isMail(s) {

var strError = '';
var exclude=/[^@\-\.\w]|^[_@\.\-]|[\._\-]{2}|[@\.]{2}|(@)[^@]*\1/;
var check=/@[\w\-]+\./;
var checkend=/\.[a-zA-Z]{2,3}$/;

	if( (((s.value.search(exclude) != -1) || (s.value.search(check)) == -1) || (s.value.search(checkend) == -1)))
	{
		return false;
	}else{
		return true;
	}		
		
}

function haveEnoughChars(s,w)
{
	if (s.value.length>=w)
	{
		return true;
	}
	else
	{
		return false;
	}
}

function Constraint(s,fieldcaption,checkcharset,charlength)
{
var Cmsg = "";
var fname = fieldcaption;
var message ;

if (aHelpData)
	{
	for ( var i = 0; i < aHelpData.length; i += 3 )
	if ( s.name == aHelpData[i] )
		{
		fname = aHelpData[i+1];
		message = aHelpData[i+2];
		break;
		}
	}
	
if (checkcharset==1 && !(isCharSetOK(s)) && s.value.length>0 && s.disabled==false)
        {
        Cmsg += "- \"" + fname + "\" alanında aşağıda yer alan karakterleri kullanmalısınız. \n  abcçdefgğhıijklmnoöpqrsştuüvwxyzABCÇDEFGĞHIİJKLMNOÖPQRSŞTUÜVWXYZ1234567890-?=:/.\n";
        Cmsg += "---------------------------------------------------------------------------------\n";
        }
if (checkcharset==2 && !(isNumeric(s)) && s.value.length>0 && s.disabled==false)
        {
        Cmsg += "- \"" + fname + "\" alanında aşağıda yer alan karakterleri kullanmalısınız. \n  1234567890\n";
        Cmsg += "---------------------------------------------------------------------------------\n";
        }
if (checkcharset==5 && !(isSelected(s)) && s.value.length>0 && s.disabled==false)
        {
        Cmsg += "- \"" + fname + "\" alanında bir seçeneği seçmelisiniz.  \n";
        Cmsg += "---------------------------------------------------------------------------------\n";
        }
if (checkcharset==6 && !(isDate(s.value,'dd.MM.yyyy'))  && s.disabled==false)
        {
        Cmsg += "- \"" + fname + "\" alanına aşağıdaki tarih formatında bir değer girmelisiniz. \n  gg.aa.yyyy\n";
        Cmsg += "---------------------------------------------------------------------------------\n";
        }
if (checkcharset==7 && !(isMoney(s)) && s.value.length>0 && s.disabled==false)
        {
        Cmsg += "- \"" + fname + "\" alanında aşağıda yer alan karakterleri kullanmalısınız. \n  , 1234567890\n";
        Cmsg += "---------------------------------------------------------------------------------\n";
        }
if (checkcharset==8 && (parseInt(s.value) == -1 || s.value == '') && s.disabled==false)
        {
        Cmsg += "- \"" + fname + "\" "+message+" \n";
        Cmsg += "---------------------------------------------------------------------------------\n";
        }
if (checkcharset==9 && !(isMail(s)))
        {
        Cmsg += "- \"" + fname + "\"  Lütfen geçerli bir e-posta adresi giriniz. \n";
        Cmsg += "---------------------------------------------------------------------------------\n";
        }
if (checkcharset==10 && !(isDate(s.value,'dd.MM.yyyy')) &&  s.value.length>0 && s.disabled==false)
        {
        Cmsg += "- \"" + fname + "\" alanına aşağıdaki tarih formatında bir değer girmelisiniz. \n  gg.aa.yyyy\n";
        Cmsg += "---------------------------------------------------------------------------------\n";
        }		
if (!(haveEnoughChars(s,charlength)) && s.disabled==false)
        {
        Cmsg += "- \"" + fname + "\" alanına en az " + charlength + " karakter girmelisiniz.\n";
        Cmsg += "---------------------------------------------------------------------------------\n";
        }
return Cmsg;
}
