var baseURL = "http://image.cjmall.com/initech/plugin/";
var InstallModuleURL =  baseURL + "dll_2010/INIS60.vcs";
var nsPackageURL = baseURL + "download_2010/INIS60.jar";
var iePackageURL = baseURL + "download_2010/INIS60.cab";
//var iePackageURL = baseURL + "download_2010/INIS60.exe";
var nsManualPackageURL  = baseURL + "download_2010/INIS60.exe";
var ieManualPackageURL  = baseURL + "download_2010/INIS60.exe";
//var manualInstallURL	= baseURL + "download.html";
var manualInstallURL	= "http://www.cjmall.com/customer_center/encpage1.jsp";
//var nsVersion = "4,1,0,0";
//var ieVersion = "4,1,0,0";
//var nsVersion = "6,1,0,6";
//var ieVersion = "6,1,0,6";
var nsVersion = "6,3,0,7";
var ieVersion = "6,3,0,7";


var componentName = "plugins/initech/INISAFE60/npINISAFEWeb60.dll";
var mimeType = "application/x-INISAFEWebv60"; 
var CLSID = "286A75C3-11FB-4FB4-AC4A-4DD1B0750050";

function getIntVersion(versionStr)
{
	var version = new Array(4);
	versionArray = versionStr.split(",");	
	for(i=0;i<4;i++)
		version[i] = parseInt(versionArray[i], 10);

	return version;
}

function myVersionCompare()
{
	var myMimetype = navigator.mimeTypes[mimeType];
	var desc = myMimetype.enabledPlugin.description;
    var index = desc.indexOf('v.', 0);
    if (index < 0)
        return -5;
    desc += ' ';

    versionString = desc.substring(index+2, desc.length);
    arrayOfStrings = versionString.split('.');

	var existing = new Array(4);
	for(i=0; i<4; i++)
    	existing[i] = parseInt(arrayOfStrings[i], 10);

	var version = getIntVersion(nsVersion);

	for(i=0; i<4; i++)
	{
		if(existing[i]>version[i])
			return (4-i);
		else if(existing[i]<version[i])
			return -(4-i);
	}

    return 0;
}

//add  brson 2002/4/16
function getUserAgentVersion()
{	
	var s = navigator.userAgent.indexOf("/");
	var	e = navigator.userAgent.indexOf(" ");
	var	ver = navigator.userAgent.substring(s+1, s+4);
	return ver;
}

//change brson 2002/4/16
function startDownload() 
{
	var trigger;
	var version;
	var newVI;
	var existingVI;
	var myMimetype = navigator.mimeTypes[mimeType];
	// If some version is already installed on this machine...
	if ( myMimetype ) {
		if(getUserAgentVersion()>=5.0){
			if(myVersionCompare()<0){
				top.location = manualInstallURL;
				return true;
			} else{
				return true;
			}
		}
		trigger = netscape.softupdate.Trigger;
		version = getIntVersion(nsVersion);
		newVI = new netscape.softupdate.VersionInfo(version[0], version[1], version[2], version[3]);
		existingVI = netscape.softupdate.Trigger.GetVersionInfo(componentName);
		if ( existingVI==null)
		{
			if(myVersionCompare()<0)
			{
				alert("INIpluginÀ» ¼³Ä¡ÇÕ´Ï´Ù.");
				//return trigger.StartSoftwareUpdate(nsPackageURL, trigger.DEFAULT_MODE|trigger.SILENT_MODE);
				return trigger.StartSoftwareUpdate(nsPackageURL, trigger.DEFAULT_MODE);
			}
			else
			{
				return true;
			}
		}
		else if ( existingVI.compareTo(newVI)<0)
		{
			alert("INIpluginÀ» ¼³Ä¡ÇÕ´Ï´Ù.");
			//return trigger.ConditionalSoftwareUpdate(nsPackageURL, componentName, newVI, trigger.DEFAULT_MODE|trigger.SILENT_MODE);
			return trigger.ConditionalSoftwareUpdate(nsPackageURL, componentName, newVI, trigger.DEFAULT_MODE);
		}
		else
		{
			return true;
		}
	}
	else
	{
		if(getUserAgentVersion()>=5.0){
			top.location = manualInstallURL;
			return true;
		}
		else{
			trigger = netscape.softupdate.Trigger;
			alert("INIpluginÀ» ¼³Ä¡ÇÕ´Ï´Ù.");
			//return trigger.StartSoftwareUpdate(nsPackageURL, trigger.DEFAULT_MODE|trigger.SILENT_MODE);
			return trigger.StartSoftwareUpdate(nsPackageURL, trigger.DEFAULT_MODE);
		}
	}

	return false;
}



//change brson 2002/4/16
function isInstalled()
{
	var myMimetype = navigator.mimeTypes[mimeType];
	if ( myMimetype ){
		if(getUserAgentVersion()>=5.0){
			if(myVersionCompare()>=0){
				return true;
			}else{
				return false;
			}
		} else{
			var version = getIntVersion(nsVersion);
			var newVI = new netscape.softupdate.VersionInfo(version[0], version[1], version[2], version[3]);
			var existingVI = netscape.softupdate.Trigger.GetVersionInfo(componentName);
			if(existingVI==null) {
				if(myVersionCompare()>=0){
					return true;
				}else{
					return false;
				}
			}
			else if ( existingVI.compareTo(newVI)>=0){
				return true;
			}
		}
	}
	return false;
}

var loadOK;
function LoadPlugin()
{
	loadOK=true;	
	if (navigator.appName == 'Netscape') 
	{
		if(isInstalled())
		{
			document.writeln('<EMBED type=' + mimeType + ' name="INIplugin" width=2 height=2>plugin load fail</EMBED>');
		}
		else
		{
			loadOK = startDownload();
			NS_Init();
		}
	}
	else
	{
		document.writeln('<div style="width:0px; height:0px;display:none"><OBJECT ID="INIplugin" CLASSID="CLSID:' + CLSID + '" width=0 height=0 ');
		document.writeln('CODEBASE='+ iePackageURL + '#Version=' + ieVersion +'>');
		document.writeln('</OBJECT></div>');	
	}
}


var loopCount=0;
function NS_Init()
{
	
	if(!loadOK)
	{
		alert("¼³Ä¡ ½ÇÆÐ");
	}
	else if(isLoaded())
	{
		return;
	}
	else if(isInstalled())
	{
		location.reload();
		//location.replace("./INIplugin.html");	
	}
	else
	{
		loopCount++;
		if(loopCount>60*10)
		{
			alert("¼³Ä¡ ½ÇÆÐ");
		}
		else
		{
			setTimeout("NS_Init()", 1000);
		}
	}
}

function isLoaded()
{
	if(navigator.appName == "Netscape")
	{
		if(document.INIplugin==null)
			return false;
		else
			return true;
	}
	else
	{
		if(frame.INIplugin==null || typeof(frame.INIplugin) == "undefined" || frame.INIplugin.object==null) return false;
		else 
			return true;
	}
}
/*function checkVista(){	
	var total = navigator.appVersion.toLowerCase();	
	var idx = total.indexOf("windows nt 6");		
	if(idx == -1)	{		
		return false;	
	} else {
		return true;	
	}
}

if(checkVista()){   
	// Vista »ç¿ëÀÚÀÇ °æ¿ì
	ieVersion		= "6,2,0,2";     
	nsVersion		= ieVersion;    
	CheckVersion	= ieVersion;  
	// ¾÷±×·¹ÀÌµå È®ÀÎ¹öÀü ieVersion°ú µ¿ÀÏÇÏ°Ô »ç¿ëÀ» ±ÇÀå
}else{   
	// Vista »ç¿ëÀÚ°¡ ¾Æ´Ñ °æ¿ì
	ieVersion		= "6,2,0,2";     
	nsVersion		= ieVersion;    
	CheckVersion	= ieVersion;
}*/