// JavaScript Document
var useRedirect = true; 

var flash2Installed = false;
var flash3Installed = false;
var flash4Installed = false;
var flash5Installed = false;
var flash6Installed = false;
var flash7Installed = false;
var maxVersion = 7;
var actualVersion = 0;
var hasRightVersion = false;
var jsVersion = 1.0;

var isIE = ((navigator.appVersion.indexOf("MSIE") != -1) && (navigator.appVersion.indexOf("MSIE") == navigator.appVersion.lastIndexOf("MSIE"))) ? true : false; // true if we're on ie
var isWin = (navigator.appVersion.indexOf("Windows") != -1) ? true : false; // true if we're on windows

function detectSpecialFlash(requiredVersion,flashcode,noflash) {

if (isIE && (navigator.appVersion.indexOf("MSIE 5.") != -1 || navigator.appVersion.indexOf("MSIE 6.") != -1) && !window.opera){
	//alert(navigator.appVersion);
	detectFlash(requiredVersion,flashcode,noflash);
} else document.write(noflash);	

}

function detectFlash(requiredVersion,flashcode,noflash) { 
	
	
	
	
if(isIE && isWin){
	document.write('<SCR' + 'IPT LANGUAGE=VBScript\> \n');
	document.write('on error resume next \n');
	document.write('jsVersion = 1.0 \n');
	document.write('flash2Installed = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.2"))) \n');
	document.write('flash3Installed = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.3"))) \n');
	document.write('flash4Installed = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.4"))) \n');
	document.write('flash5Installed = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.5"))) \n'); 
	document.write('flash6Installed = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.6"))) \n'); 
	document.write('flash7Installed = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.7"))) \n'); 
	document.write('</SCR' + 'IPT\> \n'); 
}

if (navigator.plugins) {
	// ...then check for flash 2 or flash 3+.
	if (navigator.plugins["Shockwave Flash 2.0"]
	|| navigator.plugins["Shockwave Flash"]) {

		var isVersion2 = navigator.plugins["Shockwave Flash 2.0"] ? " 2.0" : "";
		var flashDescription = navigator.plugins["Shockwave Flash" + isVersion2].description;
		var flashVersion = parseInt(flashDescription.charAt(flashDescription.indexOf(".") - 1));
		flash2Installed = flashVersion == 2; 
		flash3Installed = flashVersion == 3;
		flash4Installed = flashVersion == 4;
		flash5Installed = flashVersion == 5;
		flash6Installed = flashVersion >= 6;
		flash7Installed = flashVersion >= 7;
	}
}

for (var i = 2; i <= maxVersion; i++) { 
	if (eval("flash" + i + "Installed") == true) actualVersion = i;
}

	//alert("version detected: " + actualVersion);
	if (actualVersion < requiredVersion) {
		document.write(noflash);
		return 0;
	}
	else {
		document.write(flashcode);
		return 1;
	}

}


function OpenScheme(){
	var win = window.open('/about/files/map.jpg', 'Map', "width=785,height=570,resizable=1,toolbar=0,location=0,status=0,menubar=0,directories=0,scrollbars=yes,top=50,left=50");
} // OpenScheme();


function cm_bwcheck(){
	this.ver = navigator.appVersion;
	this.agent = navigator.userAgent.toLowerCase();
	
	this.dom = !is_undefined(document.getElementById);
	
	this.op5 = this.agent.indexOf("opera 5") > -1 && window.opera;
	this.op6 = this.agent.indexOf("opera 6") > -1 && window.opera;
	this.ie5 = (this.agent.indexOf("msie 5") > -1 && !this.op5 && !this.op6);
	this.ie55 = (this.ie5 && this.agent.indexOf("msie 5.5")>-1);
	this.ie6 = (this.agent.indexOf("msie 6") > -1 && !this.op5 && !this.op6);
	this.ie4 = (this.agent.indexOf("msie") > -1 && !is_undefined(document.all) && !this.op5 && !this.op6 && !this.ie5&& !this.ie6);
	this.ie = (this.ie4 || this.ie5 || this.ie6);
	this.mac = (this.agent.indexOf("mac") > -1);
	this.ns6 = (this.agent.indexOf("gecko") > -1 || !is_undefined(window.sidebar));
	this.ns4 = (!this.dom && !is_undefined(document.layers))? 1 : 0;
	this.bw = (this.ie6 || this.ie5 || this.ie4 || this.ns4 || this.ns6 || this.op5 || this.op6);
	this.usedom = this.ns6;
	this.reuse = this.ie || this.usedom;
	this.px = this.dom && !this.op5 ? "px" : "";
	
//	this.screenW = screen.width;
//	this.screenH = screen.height;
	
	this.GetWindowWidth = __BW_GetWindowWidth;
	this.GetWindowHeight = __BW_GetWindowHeight;
	
	return this;
}


function __BW_GetWindowWidth(){
	return document.body.offsetWidth;
} // __BW_GetWindowWidth();


function __BW_GetWindowHeight(){
	return document.body.offsetHeight;
} // __BW_GetWindowHeight();



var bw = new cm_bwcheck()


function getByID(ID){
	var obj;
	
	if( isObj(ID) ) return ID;
	
	if( bw.dom ) obj = document.getElementById(ID);
	else if( bw.ie ) obj = document.all[ID];
	else return false;
	
	return obj;
} // GetByID();

this.$ = getByID;



function is_undefined(xvar){
	return typeof xvar == 'undefined' ? true : false;
} // is_undefined();


function isObj(obj){
	return (typeof obj == 'object') && obj;
} // isFunc();


function ParentNodeByTagName(node, TagName){
	if( isObj(node.parentNode) ){
		if( node.parentNode.nodeName == TagName.toUpperCase() )
			return node.parentNode;
		else
			return ParentNodeByTagName(node.parentNode, TagName);
	}
	
	return false;
} // ParentNodeByTagName();


function DuplicateTR(node){
	var tr = ParentNodeByTagName(node, 'tr');
	
	if( isObj(tr) ){
		table = ParentNodeByTagName(tr, 'table');
		if( isObj(table) ){
			N = GetProp(tr, '__N', 1);
			if( N == 1 ){
				table.insertRow(tr.rowIndex+1);
				newTR = table.rows[tr.rowIndex+1];
				
				for(var i = 0; i < tr.cells.length; i++){
					newTR.insertCell(i);
					newTR.cells[i].innerHTML = tr.cells[i].innerHTML;
				}
				
				SetProp(tr, '__N', 2);
			}
			
			node.focus();
		}
	}
	
} // DuplicateTR();

function DuplicateInput(node){
	var td = ParentNodeByTagName(node, 'td');
	
	if( isObj(td) ){
		N = GetProp(node, '__N', 1);
		if( N == 1 ){
			inp = document.createElement('input');
			inp.type = node.type;
			inp.name = node.name;
			inp.className = node.className;
			inp.style.width = node.style.width;
			inp.style.marginTop = '2px';
			inp.onclick = function(){DuplicateInput(this);}

			td.appendChild(inp);
			
			SetProp(node, '__N', 2);
		}
		
		node.focus();
	}
	
} // DuplicateInput();
 



function addListener(obj, Event, func){
	var x = arguments.length == 4 ? arguments[4] : false;
	Event = Event.toLowerCase();
	
	if( !isObj(obj) ) return false;
	
	if( bw.ie )
		obj.attachEvent(Event, func);
	else
		obj.addEventListener(Event.substr(2), func, x);
		
} // addListener();



function removeListener(obj, Event, func){
	var x = arguments.length == 4 ? arguments[3] : false;
	Event = Event.toLowerCase();
	
	if( !isObj(obj) ) return false;
	
	if( bw.ie )
		obj.detachEvent(Event, func);
	else
		obj.removeEventListener(Event.substr(2), func, x);
		
} // removeListener();



function SetProp(id, prop, value){
	var obj = $(id);
	if( !isObj(obj) ) return false;
	
	obj[prop] = value;
} // SetProp();


function GetProp(id, prop, def){
	var obj = $(id);
	if( !isObj(obj) ) return false;
	
	return is_undefined(obj[prop]) ? def : obj[prop];
}
