//===================================================================
//
//	***  browser CSS  ***
//
//===================================================================

//-----------------------------------------------------
//ie b.g. cache fix
//-----------------------------------------------------
try {
	document.execCommand("BackgroundImageCache", false, true);
} catch(err) {}

//-----------------------------------------------------
//magical lines for ie
//-----------------------------------------------------
/*@cc_on _d=document;eval('var document=_d')@*/


//-----------------------------------------------------
//easy getelementbyid
//-----------------------------------------------------
function $(id) {
	e = document.getElementById(id);
	return e;
}

//-----------------------------------------------------
//variable definition
//-----------------------------------------------------

//OS
var mac = (navigator.appVersion.indexOf("Mac") != -1)? true : false;

//browser
var nn = (navigator.appName.indexOf("Netscape",0) != -1)? true : false;
var nn4 = (document.layers)? true : false;
var nn6 = (navigator.userAgent.indexOf("Netscape6") != -1)? true : false;
var opera = (navigator.userAgent.indexOf("Opera") != -1)? true : false;
var opera5 = (navigator.userAgent.indexOf("Opera/5") != -1)? true : false;
var opera6 = (navigator.userAgent.indexOf("Opera/6") != -1)? true : false;
var icab = (navigator.userAgent.indexOf("iCab") != -1)? true : false;
var ie5 = (navigator.userAgent.indexOf("MSIE 5") != -1)? true : false;
var safari = (navigator.userAgent.indexOf("Safari") != -1)? true : false;
var cssFile;

//-----------------------------------------------------
//set CSS
//-----------------------------------------------------

if(opera){
	cssFile = "/common/css/fix_all_opera.css";
}
if(mac){
	if(safari){
		cssFile = "/common/css/fix_mac_safari.css";
	} else if(ie5){
		cssFile = "/common/css/fix_mac_ie.css";
	}
} else {
	if(nn6){
		cssFile = "/common/css/fix_win_nn6.css";
	}
}

if(cssFile){
	document.open();
	document.write('<link rel="stylesheet" href="' + cssFile + '" type="text/css">');
	document.close();
}


//======================================================
// Adobe official flash detection kit
//======================================================

	// Flash Player Version Detection - Rev 1.6
	// Detect Client Browser type
	// Copyright(c) 2005-2006 Adobe Macromedia Software, LLC. All rights reserved.
	var isIE	= (navigator.appVersion.indexOf("MSIE") != -1) ? true : false;
	var isWin = (navigator.appVersion.toLowerCase().indexOf("win") != -1) ? true : false;
	var isOpera = (navigator.userAgent.indexOf("Opera") != -1) ? true : false;

	function ControlVersion()
	{
		var version;
		var axo;
		var e;

		// NOTE : new ActiveXObject(strFoo) throws an exception if strFoo isn't in the registry

		try {
			// version will be set for 7.X or greater players
			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");
			version = axo.GetVariable("$version");
		} catch (e) {
		}

		if (!version)
		{
			try {
				// version will be set for 6.X players only
				axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");

				// installed player is some revision of 6.0
				// GetVariable("$version") crashes for versions 6.0.22 through 6.0.29,
				// so we have to be careful.

				// default to the first public version
				version = "WIN 6,0,21,0";

				// throws if AllowScripAccess does not exist (introduced in 6.0r47)
				axo.AllowScriptAccess = "always";

				// safe to call for 6.0r47 or greater
				version = axo.GetVariable("$version");

			} catch (e) {
			}
		}

		if (!version)
		{
			try {
				// version will be set for 4.X or 5.X player
				axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
				version = axo.GetVariable("$version");
			} catch (e) {
			}
		}

		if (!version)
		{
			try {
				// version will be set for 3.X player
				axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
				version = "WIN 3,0,18,0";
			} catch (e) {
			}
		}

		if (!version)
		{
			try {
				// version will be set for 2.X player
				axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
				version = "WIN 2,0,0,11";
			} catch (e) {
				version = -1;
			}
		}

		return version;
	}

	// JavaScript helper required to detect Flash Player PlugIn version information
	function GetSwfVer(){
		// NS/Opera version >= 3 check for Flash plugin in plugin array
		var flashVer = -1;

		if (navigator.plugins != null && navigator.plugins.length > 0) {
			if (navigator.plugins["Shockwave Flash 2.0"] || navigator.plugins["Shockwave Flash"]) {
				var swVer2 = navigator.plugins["Shockwave Flash 2.0"] ? " 2.0" : "";
				var flashDescription = navigator.plugins["Shockwave Flash" + swVer2].description;
				var descArray = flashDescription.split(" ");
				var tempArrayMajor = descArray[2].split(".");
				var versionMajor = tempArrayMajor[0];
				var versionMinor = tempArrayMajor[1];
				var versionRevision = descArray[3];
				if (versionRevision == "") {
					versionRevision = descArray[4];
				}
				if (versionRevision[0] == "d") {
					versionRevision = versionRevision.substring(1);
				} else if (versionRevision[0] == "r") {
					versionRevision = versionRevision.substring(1);
					if (versionRevision.indexOf("d") > 0) {
						versionRevision = versionRevision.substring(0, versionRevision.indexOf("d"));
					}
				}
				var flashVer = versionMajor + "." + versionMinor + "." + versionRevision;
				//alert("flashVer="+flashVer);
			}
		}
		// MSN/WebTV 2.6 supports Flash 4
		else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.6") != -1) flashVer = 4;
		// WebTV 2.5 supports Flash 3
		else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.5") != -1) flashVer = 3;
		// older WebTV supports Flash 2
		else if (navigator.userAgent.toLowerCase().indexOf("webtv") != -1) flashVer = 2;
		else if ( isIE && isWin && !isOpera ) {
			flashVer = ControlVersion();
		}
		return flashVer;
	}

	// When called with reqMajorVer, reqMinorVer, reqRevision returns true if that version or greater is available
	function DetectFlashVer(reqMajorVer, reqMinorVer, reqRevision)
	{
		versionStr = GetSwfVer();
		if (versionStr == -1 ) {
			return false;
		} else if (versionStr != 0) {
			if(isIE && isWin && !isOpera) {
				// Given "WIN 2,0,0,11"
				tempArray				 = versionStr.split(" "); 	// ["WIN", "2,0,0,11"]
				tempString				= tempArray[1];			// "2,0,0,11"
				versionArray			= tempString.split(",");	// ['2', '0', '0', '11']
			} else {
				versionArray			= versionStr.split(".");
			}
			var versionMajor			= versionArray[0];
			var versionMinor			= versionArray[1];
			var versionRevision	 = versionArray[2];

						// is the major.revision >= requested major.revision AND the minor version >= requested minor
			if (versionMajor > parseFloat(reqMajorVer)) {
				return true;
			} else if (versionMajor == parseFloat(reqMajorVer)) {
				if (versionMinor > parseFloat(reqMinorVer))
					return true;
				else if (versionMinor == parseFloat(reqMinorVer)) {
					if (versionRevision >= parseFloat(reqRevision))
						return true;
				}
			}
			return false;
		}
	}

	function AC_AddExtension(src, ext)
	{
		if (src.indexOf('?') != -1)
			return src.replace(/\?/, ext+'?');
		else
			return src + ext;
	}

	function AC_Generateobj(objAttrs, params, embedAttrs)
	{
			var str = '';
			if (isIE && isWin && !isOpera)
			{
				str += '<object ';
				for (var i in objAttrs)
					str += i + '="' + objAttrs[i] + '" ';
				for (var i in params)
					str += '><param name="' + i + '" value="' + params[i] + '"> ';
				str += '></object>';
			} else {
				str += '<embed ';
				for (var i in embedAttrs)
					str += i + '="' + embedAttrs[i] + '" ';
				str += '> </embed>';
			}

			document.write(str);
	}

	function AC_FL_RunContent(){
		var ret =
			AC_GetArgs
			(	arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
			 , "application/x-shockwave-flash"
			);
		AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
	}

	function AC_GetArgs(args, ext, srcParamName, classid, mimeType){
		var ret = new Object();
		ret.embedAttrs = new Object();
		ret.params = new Object();
		ret.objAttrs = new Object();
		for (var i=0; i < args.length; i=i+2){
			var currArg = args[i].toLowerCase();

			switch (currArg){
				case "classid":
					break;
				case "pluginspage":
					ret.embedAttrs[args[i]] = args[i+1];
					break;
				case "src":
				case "movie":
					args[i+1] = AC_AddExtension(args[i+1], ext);
					ret.embedAttrs["src"] = args[i+1];
					ret.params[srcParamName] = args[i+1];
					break;
				case "onafterupdate":
				case "onbeforeupdate":
				case "onblur":
				case "oncellchange":
				case "onclick":
				case "ondblClick":
				case "ondrag":
				case "ondragend":
				case "ondragenter":
				case "ondragleave":
				case "ondragover":
				case "ondrop":
				case "onfinish":
				case "onfocus":
				case "onhelp":
				case "onmousedown":
				case "onmouseup":
				case "onmouseover":
				case "onmousemove":
				case "onmouseout":
				case "onkeypress":
				case "onkeydown":
				case "onkeyup":
				case "onload":
				case "onlosecapture":
				case "onpropertychange":
				case "onreadystatechange":
				case "onrowsdelete":
				case "onrowenter":
				case "onrowexit":
				case "onrowsinserted":
				case "onstart":
				case "onscroll":
				case "onbeforeeditfocus":
				case "onactivate":
				case "onbeforedeactivate":
				case "ondeactivate":
				case "type":
				case "codebase":
					ret.objAttrs[args[i]] = args[i+1];
					break;
				case "id":
				case "width":
				case "height":
				case "align":
				case "vspace":
				case "hspace":
				case "class":
				case "title":
				case "accesskey":
				case "name":
				case "tabindex":
					ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i+1];
					break;
				default:
					ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i+1];
			}
		}
		ret.objAttrs["classid"] = classid;
		if (mimeType) ret.embedAttrs["type"] = mimeType;
		return ret;
	}

//-----------------------------------------------------
// set window name
//-----------------------------------------------------
function setWinName() {
	var obj = document.getElementsByTagName('body');
	for ( var i = 0, objLength = obj.length ; i < objLength ; i ++ ) {
		var cn = obj[i].className.toLowerCase().split(' ');
		for ( var j = 0, varCnt = cn.length ; j < varCnt ; j ++ ) {
			if ( cn[j] == 'bell24-base' ) {
				window.name="bell24";
			}
			if ( cn[j] == 'bell24-inquery' ) {
				window.name="inquiry";
			}
			if ( cn[j] == 'bell24-popup' ) {
				window.name="popup";
			}
		}
	}
}

//-----------------------------------------------------
// open popup
//-----------------------------------------------------
function popup(its,x,y) {

	if ( navigator.userAgent.indexOf('MSIE') != -1 ) {
		sizeW = x - 12;
		sizeH = y - 160;
	} else {
		sizeW = x - 8;
		sizeH = y - 109;
	}

	//open and focus
	newWin = window.open(its.href , its.target , "width="+sizeW+",height="+sizeH+",scrollbars=yes,toolbar=yes,resizable=yes,status=yes,menubar=yes,location=yes");
	newWin.focus();

}

//-----------------------------------------------------
//attach events when loaded
//-----------------------------------------------------
if (window.addEventListener) {
	window.addEventListener("load", setWinName, false);
} else if (window.attachEvent) {
	window.attachEvent("onload", setWinName);
} else {
	window.onload = setWinName();
}


