//--- ****************************************************************************************************************** --->
//--- ****************************************************************************************************************** --->
//--- ****************************************************************************************************************** --->
/*
common.js
	- Contains frequently used functions for HTML forms
*/

//--- ****************************************************************************************************************** --->
//--- ****************************************************************************************************************** --->
//--- ****************************************************************************************************************** --->

/*
	Use for convert French character from HTML format to Javascript format
	Characters list:
	Display 	Friendly Code 	Numerical Code 	Hex Code 	Description
	À  	        &Agrave; 	    &#192; 	        &#xC0; 	    Capital A-grave
	à  	        &agrave; 	    &#224; 	        &#xE0; 	    Lowercase a-grave
	Â  	        &Acirc; 	    &#194; 	        &#xC2; 	    Capital A-circumflex
	â  	        &acirc; 	    &#226; 	        &#xE2; 	    Lowercase a-circumflex
	Æ 	        &AElig; 	    &#198; 	        &#xC6; 	    Capital AE Ligature
	æ 	        &aelig; 	    &#230; 	        &#xE6; 	    Lowercase AE Ligature
	Ç 	        &Ccedil; 	    &#199; 	        &#xC7; 	    Capital C-cedilla
	ç 	        &ccedil; 	    &#231; 	        &#xE7; 	    Lowercase c-cedilla
	È  	        &Egrave; 	    &#200; 	        &#xC8; 	    Capital E-grave
	è 	        &egrave; 	    &#232; 	        &#xE8; 	    Lowercase e-grave
	É  	        &Eacute; 	    &#201; 	        &#xC9;  	Capital E-acute
	é 	        &eacute; 	    &#233; 	        &#xE9; 	    Lowercase e-acute
	Ê  	        &Ecirc; 	    &#202; 	        &#xCA; 	    Capital E-circumflex
	ê  	        &ecirc; 	    &#234; 	        &#xEA; 	    Lowercase e-circumflex
	Ë  	        &Euml; 	        &#203; 	        &#xCB; 	    Capital E-umlaut
	ë  	        &euml; 	        &#235; 	        &#xEB; 	    Lowercase e-umlaut
	Î  	        &Icirc; 	    &#206; 	        &#xCE; 	    Capital I-circumflex
	î  	        &icirc; 	    &#238; 	        &#xEE; 	    Lowercase i-circumflex
	Ï  	        &Iuml; 	        &#207; 	        &#xCF; 	    Capital I-umlaut
	ï  	        &iuml; 	        &#239; 	        &#xEF; 	    Lowercase i-umlaut
	Ô 	        &Ocirc; 	    &#212; 	        &#xD4; 	    Capital O-circumflex
	ô 	        &ocirc; 	    &#244; 	        &#xF4; 	    Lowercase o-circumflex
	Œ 	        &OElig; 	    &#140; 	        &#x152; 	Capital OE ligature
	œ 	        &oelig; 	    &#156; 	        &#x153; 	Lowercase oe ligature
	Ù 	        &Ugrave; 	    &#217; 	        &#xD9; 	    Capital U-grave
	ù 	        &ugrave; 	    &#249;      	&#xF9; 	    Lowercase u-grave
	Û 	        &Ucirc; 	    &#219; 	        &#xDB; 	    Capital U-circumflex
	û 	        &ucirc; 	    &#251; 	        &#xFB; 	    Lowercase U-circumflex
	Ü 	        &Uuml; 	        &#220; 	        &#xDC; 	    Capital U-umlaut
	ü 	        &uuml; 	        &#252; 	        &#xFC;  	Lowercase U-umlaut
	« 	        &laquo;     	&#171;       	&#xAB;   	Left angle quotes
	» 	        &raquo; 	    &#187; 	        &#xBB;  	Right angle quotes
	€ 	        &euro; 	        &#128; 	        &#x80;  	Euro
	₣ 	                      	&#8355; 	    &#x20A3; 	Franc
*/

function ConvertFrenchCharacter(str) {
	str = str.replace('&Agrave;', '\u00C0');
	str = str.replace(new RegExp('&#x0*C0;','gi'), '\u00C0');
	
	str = str.replace('&agrave;', '\u00E0');
	str = str.replace(new RegExp('&#x0*E0;', 'gi'), '\u00E0');
	
	str = str.replace('&Acirc;', '\u00C2');
	str = str.replace(new RegExp('&#x0*C2;', 'gi'), '\u00C2');
	
	str = str.replace('&acirc;', '\u00E2');
	str = str.replace(new RegExp('&#x0*E2;', 'gi'), '\u00E2');
	
	str = str.replace('&AElig;', '\u00C6');
	str = str.replace(new RegExp('&#x0*C6;', 'gi'), '\u00C6');
	
	str = str.replace('&aelig;', '\u00E6');
	str = str.replace(new RegExp('&#x0*E6;', 'gi'), '\u00E6');
	
	str = str.replace('&Ccedil;', '\u00C7');
	str = str.replace(new RegExp('&#x0*C7;', 'gi'), '\u00C7');
	
	str = str.replace('&ccedil;', '\u00E7');
	str = str.replace(new RegExp('&#x0*E7;', 'gi'), '\u00E7');
	
	str = str.replace('&Egrave;', '\u00C8');
	str = str.replace(new RegExp('&#x0*C8;', 'gi'), '\u00C8');
	
	str = str.replace('&egrave;', '\u00E8');
	str = str.replace(new RegExp('&#x0*E8;', 'gi'), '\u00E8');
	
	str = str.replace('&Eacute;', '\u00C9');
	str = str.replace(new RegExp('&#x0*C9;', 'gi'), '\u00C9');
	
	str = str.replace('&eacute;', '\u00E9');
	str = str.replace(new RegExp('&#x0*E9;', 'gi'), '\u00E9');
	
	str = str.replace('&Ecirc;', '\u00CA');
	str = str.replace(new RegExp('&#x0*CA;', 'gi'), '\u00CA');
	
	str = str.replace('&ecirc;', '\u00EA');
	str = str.replace(new RegExp('&#x0*EA;', 'gi'), '\u00EA');
	
	str = str.replace('&Euml;', '\u00CB');
	str = str.replace(new RegExp('&#x0*CB;', 'gi'), '\u00CB');
	
	str = str.replace('&euml;', '\u00EB');
	str = str.replace(new RegExp('&#x0*EB;', 'gi'), '\u00EB');
	
	str = str.replace('&Icirc;', '\u00CE');
	str = str.replace(new RegExp('&#x0*CE;', 'gi'), '\u00CE');
	
	str = str.replace('&icirc;', '\u00EE');
	str = str.replace(new RegExp('&#x0*EE;', 'gi'), '\u00EE');
	
	str = str.replace('&Iuml;', '\u00CF');
	str = str.replace(new RegExp('&#x0*CF;', 'gi'), '\u00CF');
	
	str = str.replace('&iuml;', '\u00EF');
	str = str.replace(new RegExp('&#x0*EF;', 'gi'), '\u00EF');
	
	str = str.replace('&Ocirc;', '\u00D4');
	str = str.replace(new RegExp('&#x0*D4;', 'gi'), '\u00D4');
	
	str = str.replace('&ocirc;', '\u00F4');
	str = str.replace(new RegExp('&#x0*F4;', 'gi'), '\u00F4');
	
	str = str.replace('&OElig;', '\u0152');
	str = str.replace(new RegExp('&#x0*152;', 'gi'), '\u0152');
	
	str = str.replace('&oelig;', '\u0153');
	str = str.replace(new RegExp('&#x0*153;', 'gi'), '\u0153');
	
	str = str.replace('&Ugrave;', '\u00D9');
	str = str.replace(new RegExp('&#x0*D9;', 'gi'), '\u00D9');
	
	str = str.replace('&ugrave;', '\u00F9');
	str = str.replace(new RegExp('&#x0*F9;', 'gi'), '\u00F9');
	
	str = str.replace('&Ucirc;', '\u00DB');
	str = str.replace(new RegExp('&#x0*DB;', 'gi'), '\u00DB');
	
	str = str.replace('&ucirc;', '\u00FB');
	str = str.replace(new RegExp('&#x0*FB;', 'gi'), '\u00FB');
	
	str = str.replace('&Uuml;', '\u00DC');
	str = str.replace(new RegExp('&#x0*DC;', 'gi'), '\u00DC');
	
	str = str.replace('&uuml;', '\u00FC');
	str = str.replace(new RegExp('&#x0*FC;', 'gi'), '\u00FC');
	
	str = str.replace('&laquo;', '\u00AB');
	str = str.replace(new RegExp('&#x0*AB;', 'gi'), '\u00AB');
	
	str = str.replace('&raquo;', '\u00BB');
	str = str.replace(new RegExp('&#x0*BB;', 'gi'), '\u00BB');
	
	str = str.replace('&euro;', '\u0080');
	str = str.replace(new RegExp('&#x0*80;', 'gi'), '\u0080');
	
	str = str.replace(new RegExp('&#x20A3;', 'gi'), '\u20A3');
	
	return str;
}


/* Use for changing the messages in the header frame
	- Tagnames can be 1. mainTitle 2. navPath 3. subTitle
	- Donny: Need more work on making it compatible with Netscape and Mac
 */
function ChangeHeaderMsg(message,tagName)
{
	ns4=(document.layers)?true:false;
	ns6=(navigator.userAgent.indexOf("Gecko")!=-1)?true:false;
	// Browser Detection
/*	mac=(navigator.appVersion.indexOf("Mac")!=-1)?true:false
	if(ns6||ns4)mac=false
	ns61=(parseInt(navigator.productSub)>=20010726)?true:false
	ie4=(!document.getElementById&&document.all)?true:false;
*/
	if (top.headerFrame){
	//	if(ns4 || ns6)
	//	{
	//		top.headerFrame.document.layers.mainTitle.innerText="hello";
	//	} else {
			top.headerFrame.document.all[tagName].innerText=message;
	//	}
		return true;
	} else
		return false;
}

//--- ****************************************************************************************************************** --->
//--- ****************************************************************************************************************** --->


	// FRAME THIS! (Annotated Version 1.7)
	// script home location http://www.gmdstudios.com/ideas/frames/
	// Authors: GMD Studios (Andrew Cowan & Brian Clark)
	// Contact: inquiries@gmdstudios.com
	//
	// This script is copyright 1997-8 by GMD Studios. Permission to
	// use, modify, and distribute this is granted as long as authors'
	// copyright statements are left intact. All other use prohibited.
	//
	// note: use <body  onLoad="framethis()"> to detect if this is the top frame or not
	// VARIABLE ASSIGNMENT
	// Set real_location to the URL of your website.
	var real_location = "http://www.highfive.org/static/";
	function framethis () {
		// FIRST LOOP - Browsers that support top.location
		if (top.location) {
			if (self != top)
				top.location = self.location;
		} else {
		// SECOND LOOP - Browsers that don't support top.location
			if (parent.location) {
				if (parent.location != real_location)
					parent.location = real_location;
			}
		}
	}
	//-->

function submitReport(){
	//printWindow = window.open('','printWindow', 'directories=no, location=no, menubar=no, status=no, titlebar=no, toolbar=no , scrollbars = yes, resizable=yes, height = 850, width = 750, left = 10, top = 10');
	//document.getElementById('frmMain').target='_parent';
	if (document.getElementById('frmMain').outputFormat != null){
		document.getElementById('frmMain').outputFormat.value='html';
	}
}

function submitExcel(){
	document.frmMain.outputFormat.value='excel';
	document.frmMain.target='_blank';
}
//--- ****************************************************************************************************************** --->


