var IE = (navigator.appName == "Microsoft Internet Explorer") ? 1 : 0;
var NS = (navigator.appName == "Netscape") ? 1 : 0;
var OP = (navigator.userAgent.indexOf('Opera')>0) ? 1 : 0;

function setGradients(tagname, prefix, fc, lc) {
	var elem = document.getElementsByTagName(tagname);
	for (var e = 0; e < elem.length; e++)
		if (elem[e].id.substring(0, prefix.length) == prefix)
			setGradient(elem[e].id, fc, lc);
	}


function setGradient(elem, fc, lc) {
	var obj = (NS ? document.getElementById(elem) : document.all[elem]);
//	obj.innerHTML = obj.innerHTML.replace(/\<(.*?)\>/g, "");
	var str = obj.innerHTML;
	while (str.match(/\&quot\;/g)) // для гребаной Оперы!!!
		str = str.replace('&quot;','"');

	fc = rgbToInt(fc);
	lc = rgbToInt(lc);

	var html = '';

	for (var c = 0; c < str.length; c++) {
		rl = Math.floor((lc[0]-fc[0])/(str.length-c));
		gl = Math.floor((lc[1]-fc[1])/(str.length-c));
		bl = Math.floor((lc[2]-fc[2])/(str.length-c));

		fc[0] += (c!=0?rl:0);
		fc[1] += (c!=0?gl:0);
		fc[2] += (c!=0?bl:0);


		html += (str.substring(c,c+1) != ' ' ? '<span style="color:#'+intToRgb(fc[0], fc[1], fc[2])+'">'+str.substring(c,c+1)+'</span>' : ' ');
		}

	if (NS) {
		var newNode = document.createElement('span');
		obj.replaceChild(newNode, obj.firstChild);
		newNode.innerHTML = html;
		}
	else {
		obj.innerHTML = html;
		}

	}

var hexChars = "0123456789ABCDEF";

function hex2dec(hex) {
	return hexChars.indexOf(hex.charAt(0)) * 16 + hexChars.indexOf(hex.charAt(1));
	}

function dec2hex (dec) {
	var a = dec % 16;
	var b = (dec - a)/16;
	hex = "" + hexChars.charAt(b) + hexChars.charAt(a);
	return hex;
	}

function rgbToInt(clr) {
	return new Array (
				hex2dec(clr.substring(0,2)),
				hex2dec(clr.substring(2,4)),
				hex2dec(clr.substring(4,6)));
	}

function intToRgb(r, g, b) {
	return dec2hex(r)+dec2hex(g)+dec2hex(b);
	}

