
var WebRDC_Version="1,0,0,100";
var WebRDC_Url="WebRDC.dll";
var CustomerName="IBM";

/*
  Licensed Materials - Property of IBM

  6949-15B, 6949-19K

  (C) Copyright IBM Corp. 2007, 2009 All Rights Reserved.
*/
document.oncontextmenu=function(){return false;}
function getMessage(key, dfl){
	var ele = document.getElementsByName(key)[0];
	if(ele && ele.tagName.toLowerCase()=="meta"){
		return ele.content
	}else{
		return dfl;
	}
}

var myLang=getMessage("msg_lang","en");

var agt=navigator.userAgent.toLowerCase();
var cpu;
if(navigator.cpuClass)
	cpu=navigator.cpuClass.toLowerCase();
var is_major = parseInt(navigator.appVersion);
var is_minor = parseFloat(navigator.appVersion);

var is_ie= ((agt.indexOf("msie") != -1) & (is_major == 4) & (agt.indexOf("opera") == -1));
var is_ie5_5= (is_ie & (agt.indexOf("msie 5.5")!=-1) );
var is_ie6= (is_ie & (agt.indexOf("msie 6.0")!=-1) );
var is_ie7    = (is_ie & (agt.indexOf("msie 7.0")!=-1) );
var is_ie8    = (is_ie & (agt.indexOf("msie 8.0")!=-1) );
var is_ie_x64=((cpu != "x86") & (agt.indexOf("wow32") == -1 | agt.indexOf("wow64") == -1));

var is_win98 = ((agt.indexOf("win98")!=-1) | (agt.indexOf("windows 98")!=-1));
var is_winme = ((agt.indexOf("win 9x 4.90")!=-1));
var is_win2k = ((agt.indexOf("windows nt 5.0")!=-1));
var is_winxp = ((agt.indexOf("windows nt 5.1")!=-1));
var is_win03 = ((agt.indexOf("windows nt 5.2")!=-1));//win2003,winxp-x64
var is_winvi = ((agt.indexOf("windows nt 6.0")!=-1));
var is_win7 = ((agt.indexOf("windows nt 6.1")!=-1));

var is_sv1 = ((agt.indexOf("sv1")!=-1));
var bCheckePlatform=false;
var bCheckLicensePage=false;

function checkPlatform(){
	if(bCheckePlatform) return true;
	var errfile=getMessage("html_client_err","error_" + myLang + ".html");
	if(agt.indexOf("win95") != -1 || agt.indexOf("winnt") != -1){
		//unsupported platform
		location.replace(errfile+location.search);
		return false;
	}
	else if((is_win98 || is_winme) && navigator.systemLanguage.indexOf("ja") == -1){
		//Win98/Me is supported only in Japan.
		location.replace(errfile+location.search);
		return false;
	}
	else if(is_win98 || is_winme || is_win2k || is_winxp || is_winvi /*|| is_win7*/){
		if(is_ie_x64){
			//IE 64bit
			//unsupported browser
			location.replace(errfile+location.search);
			return false;
		}
		if(is_ie5_5 || is_ie6 || is_ie7 /*|| is_ie8*/){
			//supported
			return true;
		}
		else{
			//unsupported browser
			location.replace(errfile+location.search);
			return false;
		}
	}
	else{
		//unsupported OS
		location.replace(errfile+location.search);
		return false;
	}
	bCheckePlatform=true;
	return true;
}

function checkLicensePage(){
	if(bCheckLicensePage) return true;
	var bOK = false;
	var introfile=getMessage("html_intro","start_" + myLang + ".html");
	var my_referrer = document.referrer;
	if(document.location.hash.indexOf("#accept_license_agreement", 0) >= 0
		|| document.location.search.indexOf("?accept_license_agreement=agree", 0) >= 0
		|| document.location.search.indexOf("&accept_license_agreement=agree", 0) >= 0
		){
		if(my_referrer.length > 0){
			if(document.domain.length < my_referrer.length){
				if(my_referrer.indexOf(document.location.protocol + "//" + document.location.host+"/", 0) == 0){
					bOK = true;
				}
			}
			if(my_referrer=="Hidden-Referrer" 
			|| my_referrer=="blockedReferrer"
			|| my_referrer=="BlockedByAdSubract"
			|| my_referrer=="Not Your Business!"
			){
				var msg = getMessage("msg_confirmLicense","Have you agreed on the License?");
				if(confirm(msg)){
					bOK = true;
				}
			}
		}else{
			var my_protocol = document.location.protocol;
			if(my_protocol == "https:"){
				bOK = true;
			}
		}
	}else{
		if(checkWebRDC()){
			//WebRDC is already installed.
			bOK = true;
		}else{
			//WebRDC is not installed.
			//bOK = false;
			location.replace(introfile+location.search);
			return false;
		}
	}

	if(!bOK){
		var msg = getMessage("msg_invalidReferrer","Failed to identify whether you have agreed on the license.Check the link to this page or your Firewall settings to set <<referrer>> correctly.");
		alert(msg);
		location.replace(introfile+location.search);
		return false;
	}
	bCheckLicensePage=true;
	return true;
}

function checkIEType(){
	//WinXP SP2, Win2k3 or later
	/*
	if(is_ie_x64){
		//IE 64bit
		//ctl_msg1.innerHTML=getMessage("msg_use32IE","Please use Internet Explorer(32bit)");
		//ctl_warning_ie32.innerHTML=getMessage("msg_use32IE","Please use Internet Explorer(32bit)");
		ctl_security_warning1.style.display="none";
		ctl_security_warning2.style.display="none";
		ctl_warning_ie64.style.display="inline";
		return false;
	}
	ctl_warning_ie64.style.display="none";
	*/
	if(is_sv1 || is_ie7){
		ctl_security_warning1.style.display="none";
		ctl_security_warning2.style.display="inline";
	}else{
		ctl_security_warning1.style.display="inline";
		ctl_security_warning2.style.display="none";
	}
	return true;
}
//check whether WebRDC is installed or not.
function checkWebRDC(){
	var rc=false;
	var acx;
	try{
		acx=new ActiveXObject("WebRDC.WebRDCtl.1");
		if(acx != undefined){
			rc= true;
			//acx.Quit();
			delete acx;
		}
	}catch(e){
		//alert(e);
	}
	acx=null;
	return rc;
}
//start launching EWB using WebRDC
function runWebRDC(){
	if(!document.getElementById("WebRDCtl")){
		ewb_launcher.innerHTML=
			"<object id='WebRDCtl' classid='CLSID:39D5B144-D724-40DE-9B94-08FA33EF1945' type='application/x-oleobject'"
			+" codebase='"+ WebRDC_Url + "#Version=" + WebRDC_Version + "'"
			+" alt='" + getMessage("msg_WebRDC_Alt","Stop Loading Easy Web Browsing") +"'"
			+" standby='" + getMessage("msg_WebRDC_Standby", "Loading Easy Web rowsing'") + "'>"
			+ ctl_webrdc_alt.innerHTML
			+"<\/object>";
		}
}
//update progress with ctl_ratio.innerText
function ImageTimer() {
	try{
		var	n1;
		var	i1;
		var	ele1;

		n1	= parseInt(ctl_ratio.innerText);
		if(isNaN(n1)){
			n1	= 0;
		}

		ctl_progress.style.visibility	= "hidden";
		ctl_progress.style.pixelWidth	= 1;
		ctl_progress.style.pixelHeight	= 1;

		ctl_table.border		= 1;
		ctl_table.style.visibility	= "visible";

		// Change background color of cells. The last cell should be always white.
		for(i1 = 0; i1 + 1 < ctl_table.cells.length; i1++){
			ele1	= ctl_table.cells(i1);
			if(100 * i1 / ctl_table.cells.length < n1)
				ele1.style.backgroundColor	= "blue";
			else
				ele1.style.backgroundColor	= "white";
		}
	}catch(e){}
	window.setTimeout("ImageTimer();", 500);//called again in 500ms
}
function ewbStart(){
	if(!checkPlatform()) return false;
	if(!checkIEType()) return false;
	if(!checkLicensePage()) return false;
	//ctl_security_warning.style.display="inline";
	ctl_tbl1.style.display="inline";
	window.setTimeout("ImageTimer();", 50);
	if(true){
		runWebRDC();
	}else{
		window.setTimeout(runWebRDC(),500);
	}
}

//called from License page
function replaceLicenseCustomer(){
	var eulaObj=document.getElementById("eula");
	if(eulaObj) eulaObj.innerText=eulaObj.innerText.replace(/{Customer Name}/g,CustomerName);
	var mainObj=document.getElementById("main");
	if(mainObj) mainObj.style.display="block";
}
