// Text Element Size Forced script by Twayn Williams for Hot Pepper, 02-19-2001
// Please always include the credits when using this script
// twayn@hotpepper.com

var ie4mac = false;
var ie5mac = false;
var iemac = false;
var ns4mac = false;
var ns6mac = false;
var nsmac = false;

var ie4pc = false;
var ie5pc = false;
var ie6pc = false;
var iepc = false;
var ns4pc = false;
var ns6pc = false;
var nspc = false;

var ie4nt = false;
var ie5nt = false;
var ie6nt = false;
var ient = false;
var ns4nt = false;
var ns6nt = false;
var nsnt = false;

var operaTest = false;

var nostyle = false;

var version = navigator.appVersion;
var app = navigator.appName;
var agent = navigator.userAgent;

//alert("app: " + app + " agent: " + agent + " version: " + version)

if (version.substring(0,1) >= "4")// this checks for v4+ browsers, and protects v3 browsers from the RegExp() method
{
	//platform detection
	var mac = new RegExp("Mac");
	var mac = mac.exec(agent);
	var pc = new RegExp("Windows 98|Windows 95|Win98|Win95");
	var pc = pc.exec(agent);
	var nt = new RegExp("Windows NT|WinNT");
	var nt = nt.exec(agent);
	//var 2k = new RegExp("Windows NT 5.0");
	//var 2k = 2k.exec(agent);

	// ie version detection
	var ie = new RegExp("MSIE");
	var ie = ie.exec(agent);
	var ie4 = new RegExp("MSIE 4");
	var ie4 = ie4.exec(agent);
	var ie5 = new RegExp("MSIE 5");
	var ie5 = ie5.exec(agent);
	var ie6 = new RegExp("MSIE 6");
	var ie6 = ie6.exec(agent);
		
	// ns version detection
	if (app == "Netscape" && version.substring(0,1) == "4")
	{
		var ns4 = true;
		var ns = true;
	}
	else
	{
		var ns = new RegExp("Netscape");
		var ns = ns.exec(agent);
	}
	var ns6 = new RegExp("Netscape6");
	var ns6 = ns6.exec(agent);
	//alert("ns6: " + ns6);
	
	// mozilla version detection added by todd 11/6/2002
	var moz = new RegExp("Gecko");
	var moz = moz.exec(agent);
	//alert ("moz:" + moz);

	// opera 5 version detection
	var operaTest = new RegExp("Opera");
	var operaTest = operaTest.exec(agent);
	
	if (mac)
	{
		var style = "Hpx"
		if (ie4) {ie4mac = true; iemac = true;}
		else if (ie5) {ie5mac = true; iemac = true;}
		else if (ns4) {ns4mac = true; nsmac = true;}
		else if (ns6) {ns6mac = true; nsmac = true;}
		else{nostyle = true;}
	}
	else if (pc)
	{
		var style = "Apx"
		// opera needs to be detected first, as it can disguise itself as IE or NS
		if (operaTest) {operaTest = true;}
		else if (ie4) {ie4pc = true; iepc = true;}
		else if (ie5) {ie5pc = true; iepc = true;}
		else if (ie6) {ie6pc = true; iepc = true;}
		else if (ns4) {ns4pc = true; nspc = true;}
		else if (ns6) {ns6pc = true; nspc = true;}
		else{nostyle = true;}
	}
	else if (nt)
	{
		var style = "Apx"
		if (ie4) {ie4nt = true;}
		else if (ie5) {ie5nt = true; ient = true;}
		else if (ie6) {ie6nt = true; ient = true;}
		else if (ns4) {ns4nt = true; nsnt = true;}
		else if (ns6) {ns6nt = true; nsnt = true;}
		else{nostyle = true;}
	}
	else
	{
		var style = "Apx"
		nostyle = true;
	}
}
else // this statement deals with the v3 browsers
{
	var style = "Apx"
	nostyle = true;
}
	

	

function textElement(type,font,length,name,value,maxlength,onFocus,onBlur)
{
	var size = 1;
	if (ie4pc || ie5pc || ie6pc || iepc)
	{
		if (font == "10"){var n = 32;var x = 4;}
		else if (font == "12"){var n = 37;var x = 5;}
		else if (font == "14"){var n = 43;var x = 6;}
		else if (font == "16"){var n = 48;var x = 7;}
	}
	if (ie4nt || ie5nt || ie6nt || ient)
	{
		if (font == "10")	{var n = 18;var x = 4;}
		else if (font == "12"){var n = 21;var x = 5;}
		else if (font == "14"){var n = 23;var x = 6;}
		else if (font == "16"){var n = 26;var x = 7;}
	}
	else if (ie4mac)
	{
		if (font == "10")	{var n = 10;var x = 7;}
		else if (font == "12"){var n = 12;var x = 9;}
		else if (font == "14"){var n = 14;var x = 11;}
		else if (font == "16"){var n = 14;var x = 11;}
	}
	else if (ie5mac || iemac)
	{
		if (font == "10")	{var n = 14;var x = 5;}
		else if (font == "12"){var n = 17;var x = 7;}
		else if (font == "14"){var n = 19;var x = 8;}
		else if (font == "16"){var n = 21;var x = 9;}
	}
	else if (ns4pc || ns4nt)
	{
		if (font == "10")	{var n = 31;var x = 7;}
		else if (font == "12"){var n = 42;var x = 10;}
		else if (font == "14"){var n = 46;var x = 11;}
		else if (font == "16"){var n = 56;var x = 13;}
	}
	else if (ns6pc || ns6nt || nspc || nsnt)
	{
		if (font == "10")	{var n = 35;var x = 8;}
		else if (font == "12"){var n = 42;var x = 10;}
		else if (font == "14"){var n = 49;var x = 11;}
		else if (font == "16"){var n = 56;var x = 13;}
	}
	else if(ns4mac)
	{
		if (font == "10")	{var n = 13;var x = 6;}
		else if (font == "12"){var n = 13;var x = 6;}
		else if (font == "14"){var n = 13;var x = 6;}
		else if (font == "16"){var n = 13;var x = 6;}
	}
	else if (ns6mac || nsmac)
	{
		if (font == "10")	{var n = 16;var x = 8;}
		else if (font == "12"){var n = 22;var x = 11;}
		else if (font == "14"){var n = 23;var x = 12;}
		else if (font == "16"){var n = 25;var x = 13;}
	}
	else if (operaTest)
	{
		if (font == "10")	{var n = 7;var x = 4;}
		else if (font == "12"){var n = 9;var x = 5;}
		else if (font == "14"){var n = 11;var x = 6;}
		else if (font == "16"){var n = 13;var x = 7;}
	}
	else if(moz)
	{
		if (font == "10")	{var n = 18;var x = 4;}
		else if (font == "12"){var n = 21;var x = 5;}
		else if (font == "14"){var n = 23;var x = 6;}
		else if (font == "16"){var n = 26;var x = 7;}
	}
	else if (nostyle)
	{// NS3.x PC
		if (font == "10")	{var n = 20;var x = 7;}
		else if (font == "12"){var n = 20;var x = 7;}
		else if (font == "14"){var n = 20;var x = 7;}
		else if (font == "16"){var n = 20;var x = 7;}
	}

	while (size <= 100)
		{
		if (n >= length)
			{
			length = n
			break
			}
		n = n+x;
		size++
		}
		
	document.write('<INPUT type="'+type+'" name="'+name+'" value="'+value+'" size="'+size+'" maxlength="'+maxlength+'" onFocus="'+onFocus+'" onBlur="'+onBlur+'" class="'+style+font+'">');
	//document.write('<br>Type: '+type+'<br>Name: '+name+'<br>Value: '+value+'<br>Size: '+size+'<br>Maxlength: '+maxlength+'<BR>onFocus: '+onFocus+'<br>onBlur: '+onBlur+'<br>class: '+style+font+'');
	//document.writeln('<INPUT type="hidden" name="lengthHid" value="'+n+'px">');
}

function textarea(font,length,row,name,value,onFocus,onBlur)
{
	var col = 1;
	if (ie4pc || ie5pc || ie6pc || ie4nt || ie5nt || ie6nt || iepc || ient)
	{
		if (font == "10")	{var n = 25;var x = 4;}
		else if (font == "12"){var n = 26;var x = 5;}
		else if (font == "14"){var n = 27;var x = 6;}
		else if (font == "16"){var n = 28;var x = 7;}
	}
	else if (ie4mac)
	{
		if (font == "10")	{var n = 26;var x = 7;}
		else if (font == "12"){var n = 28;var x = 9;}
		else if (font == "14"){var n = 30;var x = 11;}
		else if (font == "16"){var n = 30;var x = 11;}
	}
	else if (ie5mac || iemac)
	{
		if (font == "10")	{var n = 27;var x = 5;}
		else if (font == "12"){var n = 30;var x = 7;}
		else if (font == "14"){var n = 31;var x = 8;}
		else if (font == "16"){var n = 31;var x = 9;}
	}
	else if (ns4pc || ns4nt)
	{		
		if (font == "10")	{var n = 30;var x = 7;}
		else if (font == "12"){var n = 36;var x = 10;}
		else if (font == "14"){var n = 38;var x = 11;}
		else if (font == "16"){var n = 42;var x = 13;}
	}
	else if (ns6pc || ns6nt || nspc || nsnt)
	{		
		if (font == "10")	{var n = 32;var x = 8;}
		else if (font == "12"){var n = 36;var x = 10;}
		else if (font == "14"){var n = 38;var x = 11;}
		else if (font == "16"){var n = 42;var x = 13;}
	}
	else if(ns4mac)
	{
		if (font == "10")	{var n = 37;var x = 6;}
		else if (font == "12"){var n = 37;var x = 6;}
		else if (font == "14"){var n = 37;var x = 6;}
		else if (font == "16"){var n = 37;var x = 6;}
	}
	else if (ns6mac || nsmac)
	{
		if (font == "10")	{var n = 32;var x = 8;}
		else if (font == "12"){var n = 38;var x = 11;}
		else if (font == "14"){var n = 40;var x = 12;}
		else if (font == "16"){var n = 42;var x = 13;}
	}
	else if (operaTest)
	{
		if (font == "10")	{var n = 27;var x = 4;}
		else if (font == "12"){var n = 28;var x = 5;}
		else if (font == "14"){var n = 29;var x = 6;}
		else if (font == "16"){var n = 30;var x = 7;}
	}
	else if(moz)
	{
		if (font == "10")	{var n = 25;var x = 4;}
		else if (font == "12"){var n = 26;var x = 5;}
		else if (font == "14"){var n = 27;var x = 6;}
		else if (font == "16"){var n = 28;var x = 7;}
	}
	else if (nostyle)
	{// NS3.x PC
		if (font == "10")	{var n = 32;var x = 8;}
		else if (font == "12"){var n = 32;var x = 8;}
		else if (font == "14"){var n = 32;var x = 8;}
		else if (font == "16"){var n = 32;var x = 8;}
	}

	while (col <= 100)
		{
		if (n >= length)
			{
			length = n
			break
			}
		n = n+x;
		col++
		}		

	// the first class is for NS, the second for IE
	document.write('<SPAN class="'+style+font+'"><TEXTAREA name="'+name+'" cols="'+col+'" rows="'+row+'" onFocus="'+onFocus+'" onBlur="'+onBlur+'" class="'+style+font+'" wrap>'+value+'</TEXTAREA></SPAN>');
	//document.writeln('<INPUT type="hidden" name="colsHid" value="'+n+'px">');
}
