/* javascript function to update form field
 *  field		form field that is being counted
 *  count		form field that will show characters left
 *  maxchars 	maximum number of characters
*/

function characterCount(field, count, maxchars,numrow,numcol,e) {
	
	
	var realchars1 = field.value.replace(/\t|\n|\r|\r/g,'');
  
	  if(realchars1.match("/"))
	  {
	   var realchars2 = realchars1.replace(/\//g,' / ');
	
	  } else if(realchars1.match("-"))
	  {
	  var realchars2 = realchars1.replace(/-/g,' - ');
	 
	  }else
	  {
		  realchars2 = realchars1;
	  }
       
	   
	   realchars = realchars2;
	     
	 if(window.event) {
        keynum = e.keyCode;
		
	 }else if(e.which) {
           keynum = e.which;
		
        }
	
		if(keynum == 13) { 
		
		 var total_char = realchars.length
		}else
		{
		 var total_char = realchars.length
		}

         
		
	   
	  
  var excesschars = total_char - maxchars;
	
	  if (excesschars > 0) {
	
			field.value = field.value.slice(0, maxchars);
	
      alert("Error:\n\n- You are only allowed to enter up to"+maxchars+" characters.");
	
		} else {
	
			count.value = maxchars - total_char;
	
		}
		
		  el = field;
		  maxLines= numrow;
		  maxChar = numcol;
		
		if(!el.x){
						el.x=uniqueInt();
						el.onblur=function(){clearInterval(window['int'+el.x])}
					}
					window['int'+el.x]=setInterval(function(){
						lineorg = el.value;									
					//	if(lineorg.match("/")){var lineorg = lineorg.replace(/\//g,' / ');}
						//if(lineorg.match("-")){var lineorg = lineorg.replace(/-/g,' - ');}
					var lines=lineorg.replace(/\r/g,'').split('\n'),
						i=lines.length,
						lines_removed,
						char_removed;
						if(maxLines&&i>maxLines){
							alert('You can not enter\nmore than '+maxLines+' lines');
							lines=lines.slice(0,maxLines);
							lines_removed=1
						}
						if(maxChar){
							i=lines.length;
							while(i-->0)if(lines[i].length>maxChar){
								
								lines[i]=lines[i].slice(0,maxChar);
								char_removed=1
							}
							if(char_removed)alert('You can not enter more\nthan '+maxChar+' characters per line')
						}
						if(char_removed||lines_removed)el.value=lines.join('\n')},50);
			
		
		
}
	  
// var realchars1 = field.value.replace(/\t|\r|\r/g,'');
//  
//  if(realchars1.match("/"))
//  {
//   var realchars2 = realchars1.replace(/\//g,' / ');
//
//  }
//   else if(realchars1.match("-"))
//  {
//  var realchars2 = realchars1.replace(/-/g,' - ');
// 
//  }
//  else
//  {
//	  realchars2 = realchars1;
//  }
//  var realchars = realchars2;
//  
//    if(window.event) {
//          keynum = e.keyCode;
//        // Netscape/Firefox/Opera
//        } else if(e.which) {
//          keynum = e.which;
//        }
//        
//        if(keynum == 13) {
//		 var total_char = realchars.length -1
//		}else
//		{
//		 var total_char = realchars.length
//		}
//
//  
//
//  //var total_char = realchars.length
//  var excesschars = total_char - maxchars;
//
//  if (excesschars > 0) {
//		field.value = field.value..slice(0,maxchars);
//		alert("Error:\n\n- You are only allowed to enter up to"+maxchars+" characters.");
//	} else {
//	   		
//		count.value = maxchars - total_char;
//	}
//  el = field;
//  maxLines= numrow;
//  maxChar = numcol;
//	
//	if(!el.x){
//				el.x=uniqueInt();
//				el.onblur=function(){clearInterval(window['int'+el.x])}
//				}
//				window['int'+el.x]=setInterval(function(){
//					lineorg = el.value;									
//					//if(lineorg.match("/")){var lineorg = lineorg.replace(/\//g,' / ');}
//					//if(lineorg.match("-")){var lineorg = lineorg.replace(/-/g,' - ');}
//                var lines=lineorg.replace(/\r/g,'').split('\n'),
//				    i=lines.length,
//					lines_removed,
//					char_removed;
//                 
//					if(maxLines&&i>maxLines){
//						alert('You can not enter\nmore than '+maxLines+' lines');
//						lines=lines.slice(0,maxLines);
//						
//						lines_removed=1
//					}
//					if(maxChar){
//						i=lines.length;
//						   
//						while(i-->0)if(lines[i].length>maxChar){
//							
//				
//							if(lines[i].match("/"))
//							{
//							  maxChar1 = maxChar-3;
//							}
//							else if(lines[i].match("-"))
//							{
//								maxChar1 = maxChar-3;
//							}
//							else
//							{
//							maxChar1 = maxChar;
//							}
//							//alert(lines[0].length);
//							lines[i]=lines[i].slice(0,maxChar1);
//							char_removed=1
//						}
//						if(char_removed)alert('You can not enter more\nthan '+maxChar+' characters per line')
//					}
//				
//					if(char_removed||lines_removed)el.value=lines.join('\n')},50);
//
//}
//	
			function uniqueInt(){
				var num,maxNum=100000;
				if(!uniqueInt.a||maxNum<=uniqueInt.a.length)uniqueInt.a=[];
				do num=Math.ceil(Math.random()*maxNum);
				while(uniqueInt.a.hasMember(num))
			    uniqueInt.a[uniqueInt.a.length]=num;
				
				return num
			}
 
			Array.prototype.hasMember=function(testItem){
			var i=this.length;
			while(i-->0)if(testItem==this[i])return 1;
				return 0
			};
 
			function set_ie_alert(){
				window.alert=function(msg_str){
					vb_alert(msg_str)
				}
			}


