﻿function doKeypress(control)
{
	maxLength = control.attributes["maxLength"].value;
	value = control.value;

	// Sonderbehandlung von CR Eingaben
	e=control.e;
	keyCode=0;
	if (e)
	{
		keyCode = e.which;
	}
	else if (event)
	{
		keyCode=window.event.keyCode;
	}

	if((keyCode==13 && maxLength && value.length > maxLength - 2) ||
		(keyCode!=13 && maxLength && value.length > maxLength - 1))
	{
		if (e)
		{
			e.returnValue = false;
		}
		else if (event)
		{
			window.event.returnValue = false;
		}
		maxLength = parseInt(maxLength);
	}
}

function doBeforePaste(control)
{
	maxLength = control.attributes["maxLength"].value;
	if(maxLength)
	{
		e=control.e;
		if (e)
		{
			e.returnValue = false;
		}
		else if (event)
		{
			window.event.returnValue = false;
		}
	}
}

function doPaste(control)
{
	maxLength = control.attributes["maxLength"].value;
	value = control.value;
	if(maxLength)
	{
		e=control.e;
		if (e)
		{
			e.returnValue = false;
		}
		else if (event)
		{
			window.event.returnValue = false;
		}
		
		maxLength = parseInt(maxLength);
		var oTR = control.document.selection.createRange();
		var iInsertLength = maxLength - value.length + oTR.text.length;
		var sData = window.clipboardData.getData("Text").substr(0,iInsertLength);
		oTR.text = sData;
	}
}

if (navigator.appName == 'Netscape')
{
	window.captureEvents(Event.KEYPRESS);
	window.captureEvents(Event.BEFOREPASTE);
	window.captureEvents(Event.PASTE);
}

