var b,b2, br, version, browserName, browserVer;
browserName = navigator.appName;
browserVer = parseInt(navigator.appVersion);
if (browserName == "Netscape" && browserVer ==3) {
	version = "yes";
	br = "no";
	if(navigator.userAgent.indexOf("Firefox",0) >= 0) {
		b = "ns";
		b2 = "ff";
	}
}
else if (browserName == "Netscape" && browserVer >=4) {
	version = "yes";
	br = "NS4";
	b = "ns";
	if(navigator.userAgent.indexOf("Firefox",0) >= 0) {
		b2 = "ff";
	}
}
else if (browserName == "Microsoft Internet Explorer" && browserVer >=4){
	version = "yes"
	br = "IE4";
	b = "ie";
}
else {
	version ="no";
	br = "no";
}

function ShowHideClass(sName) {
	var arr = getElementsByClassName(sName);
		
	for (i = 0; i < arr.length; i++) {
		if (arr[i].style.display == 'none') {
			arr[i].style.display = 'block';
		} else {
			arr[i].style.display = 'none';
		}
	}
}

function OpenFEditor(obj) {
	sContent = obj.value;
	document.htmleditor.Content.value = sContent;
	document.htmleditor.FormField.value = obj.name;
	DisplayWindow = window.open('','DisplayWindow','toolbar=no,scrollbars=yes,width=700,height=500,resizable=yes');
	document.htmleditor.target = "DisplayWindow";
	document.htmleditor.submit();
}

function CheckNumber() {
	iCode = window.event.keyCode;
	if (isNaN(String.fromCharCode(iCode)) && String.fromCharCode(iCode) != ".") {
		event.keyCode = 0;
	}
}
function CheckPhoneNumber() {
	iCode = window.event.keyCode;
	if (isNaN(String.fromCharCode(iCode)) && String.fromCharCode(iCode) != " " && String.fromCharCode(iCode) != "+") {
		event.keyCode = 0;
	}
}

function CheckNumberEv(e) {
	var key;
	var keychar;
	var reg;
	
	if(window.event) {
		key = window.event.keyCode; 
	}
	else if(e.which) {
		key = e.which; 
	}
	else {
		return true;
	}
	iCode = String.fromCharCode(key);
	if (isNaN(iCode) && iCode != "." && iCode != String.charCodeAt(8) && iCode != String.charCodeAt(127)) {
		return false;
	}
	else {
		return true;
	}
}

function CheckPhoneNumberEv(e) {
	var key;
	var keychar;
	var reg;
	var ctrl;
	
	if(window.event) {
		key = window.event.keyCode; 
		ctrl = window.event.ctrlKey;
	}
	else if(e.which) {
		key = e.which; 
		ctrl = e.ctrlKey;
	}
	else {
		return true;
	}
	iCode = String.fromCharCode(key);
	if (isNaN(iCode) && iCode != "+" && iCode !=" "  && key != 8 && iCode != "N" && !(iCode == "v" && ctrl)) {
		return false;
	}
	else {
		return true;
	}
}

function isEmail(str) {
	// are regular expressions supported?
	var supported = 0;
	if (window.RegExp) {
		var tempStr = "a";
		var tempReg = new RegExp(tempStr);
		if (tempReg.test(tempStr)) supported = 1;
	}
	if (!supported) return (str.indexOf(".") > 2) && (str.indexOf("@") > 0);
	var r1 = new RegExp("(@.*@)|(\\.\\.)|(@\\.)|(^\\.)");
	var r2 = new RegExp("^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,4}|[0-9]{1,4})(\\]?)$");
	return (!r1.test(str) && r2.test(str));
}
function stripSpaces(obj) {
	var str = obj;
	var newstr = "";
	
    for (var i = 0; i < str.length; i++) {
		if (str.charAt(i) == " ") {}
		else {
	   		newstr = newstr + str.charAt(i);
		}
    }
	return newstr;
}
function strip(strIn, sType) {
	var newstr = "";
	if (sType == "sp") {
		var Chars = " ";
	}
	else {
		var Chars = "0123456789";
	}
	
    for (var i = 0; i < strIn.length; i++) {
		if (sType == "int") {
	    	if (Chars.indexOf(strIn.charAt(i)) == -1) {}
			else {
		   		newstr = newstr + strIn.charAt(i);
			}
		}
		else {
			if (Chars.indexOf(strIn.charAt(i)) == -1) {
		   		newstr = newstr + strIn.charAt(i);
			}
		}
    }
	return newstr;
}
function SubRollOverRow(oTd) {
	if (b == "ie") {
		if (!oTd.contains(window.event.fromElement)) {oTd.bgColor="#FFFF99";}
	}
	else {
		if (!oTd.style) {
          oTd.style={};
        }
		oTd.style["backgroundColor"]="#FFFF99";
	}
}
function SubRollOutRow(oTr, c) {
	if (b == "ie") {
		if (!oTr.contains(window.event.toElement)) {oTr.bgColor=c;}
	}
	else {
		if (!oTr.style) {
          oTr.style={};
        }
		oTr.style["backgroundColor"]=c;
	}
}
function PopWindow(strPage, iwidth, iheight) {
	if(!iheight) iheight = 500;
	if(!iwidth) iwidth = 700;
	
	NewWindow = window.open(strPage,'DisplayWindow','toolbar=no,scrollbars=yes,width=' + iwidth + ',height=' + iheight + ',resizable=yes');
	if (window.focus) {NewWindow.focus()}
	return false;
}

function WindowOpen(strPage) {
	NewWindow = window.open(strPage,'DisplayWindow','toolbar=no,scrollbars=yes,width=700,height=500,resizable=yes');
	NewWindow.focus();
}
function NewWindow(strPage, iW, iH, sName) {
	NewWindow = window.open(strPage,sName,'toolbar=no,scrollbars=yes,width=' + iW + ',height=' + iH + ',resizable=yes');
	NewWindow.focus();
}
function img_act(imgName) {
	if (version == "yes") {
		imgOn = eval(imgName + "on.src");
		document [imgName].src = imgOn;
		if (imgName == 'toc5') {
			document ['toc4'].src = toc41on.src;
		}
		if (imgName == 'toc6') {
			document ['toc4'].src = toc42on.src;
		}
		if (imgName == 'toc7') {
			document ['toc4'].src = toc43on.src;
		}
	}
}

function img_inact(imgName) {
	if (version =="yes") {
		imgOff = eval(imgName + "off.src");
		document [imgName].src = imgOff;
		if (imgName == 'toc5' || imgName == 'toc6' || imgName == 'toc7') {
			document ['toc4'].src = toc4off.src;
		}
	}
}

function Jumpform(isWindow) {
	iSel = document.JumpForm.URL.selectedIndex;
	sURL = document.JumpForm.URL[iSel].value;
	if (sURL != '') {
		if (isWindow) {
			WindowOpen(sURL);
		}
		else {
			document.location.href = sURL;
		}
	}
	return false;
}

// code for disabling form elements below...


if (b == 'ns' && b2!= "ff") {
	var netscapeItems;
	var o;
	var arrElementsStatus = new Array();
	var arrElementsNames = new Array();
	var arrListBoxValue = new Array();

	netscapeItems = new details();

	this.document.captureEvents(Event.MOUSEDOWN);
	this.document.captureEvents(Event.FOCUS);
	this.document.onMouseDown=checkEvent;
	this.document.onFocus=checkEvent;
}
function disable(objName) {
	if (b == "ie") {
		objName.disabled = 1;
	}
	else {
		if (b2 == 'ff') {
			objName.disabled = true;
		}
		else {
			disableNS(objName);
		}
	}
}	
function enable(objName) {
	if (b == "ie") {
		objName.disabled = 0;
	}
	else {
		if (b2 == 'ff') {
			objName.disabled = false;
		}
		else {
			enableNS(objName);
		}
	}
}	
function disableNS(objName){
	if (objName[0] != null  && objName[0].type == 'radio') {
			arrElementsStatus[objName[0].name] = 'readonly';
	}
	else {
		if (objName.type == "select-multiple") {
			arrListBoxValue[objName.name] = objName.selectedIndex;
		}
		this.arrElementsStatus[objName.name] = 'readonly';
	}
}
function enableNS(objName){
	if (objName[0] != null && objName[0].type == 'radio') {
			arrElementsStatus[objName[0].name] = 'editable';
	}
	else {
		this.arrElementsStatus[objName.name] = 'editable';
	}
}

function details() {
	//Get Array Size
	for(i = 0; i<document.forms.length; i++) {
		nArraySize += document.forms[i].elements.length;
	}
	this.arrElementsNames = new Array(nArraySize);
	var k=0;
	//Go through each element : assign name &  readonly value to associative array
	for(i = 0; i<document.forms.length; i++) {
		for (j =0; j<document.forms[i].elements.length; j++) {
			if (document.forms[i].elements[j].type == "select-multiple") {
				arrListBoxValue[document.forms[i].elements[j].name] = document.forms[i].elements[j].selectedIndex;
			}
			arrElementsStatus[document.forms[i].elements[j].name] = 'editable';
			arrElementsNames[k++] = document.forms[i].elements[j].name;
		}
	}
}

function checkEvent(e) {
	if (e.target !="") {
		if (b == 'ns') {
			if (e.target.name) {
				if (arrElementsStatus[e.target.name] == 'readonly') {
					if (e.target.type == "select-multiple") {
						if (arrListBoxValue[e.target.name] != -1) {
							e.target[arrListBoxValue[e.target.name]].selected = true;
						}
						else {
							e.target.selectedIndex = -1;
						}
					}
					e.target.blur();
					return false;
				}
				else {
					return true;
				}
			}
		}
		else {
			return true;
		}
	}
}

var DHTML = (document.getElementById || document.all || document.layers);

function getObj(name)
{
	if (document.getElementById) {
  	this.obj = document.getElementById(name);
  }
	else if (document.all) {
	this.obj = document.all[name];
  }
	else if (document.layers) {
   	this.obj = document.layers[name];
	}

	if(this.obj) {
		this.style = this.obj.style;
  }
}
function getObjOpener(name)
{
  if (document.getElementById)
  {
  	this.obj = window.opener.document.getElementById(name);
	this.style = window.opener.document.getElementById(name).style;
  }
  else if (document.all)
  {
	this.obj = window.opener.document.all[name];
	this.style = window.opener.document.all[name].style;
  }
  else if (document.layers)
  {
   	this.obj = window.opener.document.layers[name];
   	this.style = window.opener.document.layers[name];
  }
}

function changeCol(col, obj)
{
	if (!DHTML) return;
	var x = new getObj(obj);
	x.style.color = col;
}

function ShowHideOnCheckbox(CheckBoxIDName, DivToShow) {
	cb=document.getElementById(CheckBoxIDName);
	if(cb){
		if (cb.checked) {
			e=document.getElementById(DivToShow);
			e.style.display = 'block';
		}
		else {
			e=document.getElementById(DivToShow);
			e.style.display = 'none';
		}
	}
}


/*
function getElementsByClassName(className) {
	var children = document.getElementsByTagName('*') || document.all;
	var elements = new Array();
	
	for (var i = 0; i < children.length; i++) {
		var child = children[i];
		var classNames = child.className.split(' ');
		for (var j = 0; j < classNames.length; j++) {
			if (classNames[j] == className) {
				elements.push(child);
				break;
			}
		}
	}
	return elements;
}
		
*/


//  *** getElementsByClassName ***
/*
	Developed by Robert Nyman, http://www.robertnyman.com
	Code/licensing: http://code.google.com/p/getelementsbyclassname/
*/	
var getElementsByClassName = function (className, tag, elm){
	if (document.getElementsByClassName) {
		getElementsByClassName = function (className, tag, elm) {
			elm = elm || document;
			var elements = elm.getElementsByClassName(className),
				nodeName = (tag)? new RegExp("\\b" + tag + "\\b", "i") : null,
				returnElements = [],
				current;
			for(var i=0, il=elements.length; i<il; i+=1){
				current = elements[i];
				if(!nodeName || nodeName.test(current.nodeName)) {
					returnElements.push(current);
				}
			}
			return returnElements;
		};
	}
	else if (document.evaluate) {
		getElementsByClassName = function (className, tag, elm) {
			tag = tag || "*";
			elm = elm || document;
			var classes = className.split(" "),
				classesToCheck = "",
				xhtmlNamespace = "http://www.w3.org/1999/xhtml",
				namespaceResolver = (document.documentElement.namespaceURI === xhtmlNamespace)? xhtmlNamespace : null,
				returnElements = [],
				elements,
				node;
			for(var j=0, jl=classes.length; j<jl; j+=1){
				classesToCheck += "[contains(concat(' ', @class, ' '), ' " + classes[j] + " ')]";
			}
			try	{
				elements = document.evaluate(".//" + tag + classesToCheck, elm, namespaceResolver, 0, null);
			}
			catch (e) {
				elements = document.evaluate(".//" + tag + classesToCheck, elm, null, 0, null);
			}
			while ((node = elements.iterateNext())) {
				returnElements.push(node);
			}
			return returnElements;
		};
	}
	else {
		getElementsByClassName = function (className, tag, elm) {
			tag = tag || "*";
			elm = elm || document;
			var classes = className.split(" "),
				classesToCheck = [],
				elements = (tag === "*" && elm.all)? elm.all : elm.getElementsByTagName(tag),
				current,
				returnElements = [],
				match;
			for(var k=0, kl=classes.length; k<kl; k+=1){
				classesToCheck.push(new RegExp("(^|\\s)" + classes[k] + "(\\s|$)"));
			}
			for(var l=0, ll=elements.length; l<ll; l+=1){
				current = elements[l];
				match = false;
				for(var m=0, ml=classesToCheck.length; m<ml; m+=1){
					match = classesToCheck[m].test(current.className);
					if (!match) {
						break;
					}
				}
				if (match) {
					returnElements.push(current);
				}
			}
			return returnElements;
		};
	}
	return getElementsByClassName(className, tag, elm);
};


function IsNumeric(sText)
{
   var ValidChars = "0123456789.";
   var IsNumber=true;
   var Char;
 
   for (i = 0; i < sText.length && IsNumber == true; i++) 
      { 
      Char = sText.charAt(i); 
      if (ValidChars.indexOf(Char) == -1) 
         {
         IsNumber = false;
         }
      }
   return IsNumber;
  }

function IsValidDocType(sExt) {
	sExt = sExt.toLowerCase();
	return (sExt == "pdf" || sExt == "doc" || sExt == "tif" || sExt == "txt" || sExt == "xls" || sExt == "ppt" || sExt == "pptx" || sExt == "jpg" || sExt == "docx" || sExt == "xlsx");
}

function ListDocTypes(slang) {
	if(slang == "br") {
		return "PDF, DOC, DOCX, XLS, XLSX, PPT, PPTX, TXT, JPG e TIF";
	} else {
		return "PDF, DOC, DOCX, XLS, XLSX, PPT, PPTX, TXT, JPG and TIF";
	}
}
