/*==============================================================================
 * Copyright(c) 2009 NARUWARE
 *
 * @File        : sso-plugin.js
 *
 * @Description : ActiveX/Applet¸¦ »ý¼º
 *
 * Change history 
 * @LastModifyDate : 20090522
 * @LastModifier      :  ÁÖÁ¤¹Î
 * @LastVersion       :  1.0
 *    2009-05-22  ÁÖÁ¤¹Î
 *        1.0         ÃÖÃÊ »ý¼º
==============================================================================*/

///////////////////////////////////////////////////////////////////////////////////////////////////////////////
// 												Àü¿ª º¯¼ö ¼±¾ð ºÎºÐ											 //
///////////////////////////////////////////////////////////////////////////////////////////////////////////////

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//													ÇÔ¼ö Á¤ÀÇ ºÎºÐ											   //
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////

function createObjectTag(useX, serverUrl)
{
	log("createObjectTag function started.");
	
	var result = "";
	var plugIn = WINDOWS_JRE;
	
	if (osType != OS_WIN)
	{
		plugIn = LINUX_JRE;
	}

	if(browserType == BROWSER_IE)
	{
		if (useX)
		{
			// MagicLoaderX, MagicPassX, NMPCertX ¸ðµÎ ´Ù¿î·ÎµåÇÑ´Ù.
			result = "<object id='MagicLoaderX' classid='clsid:3D64E58D-CB55-4344-B809-CFE38F900838' width='0' height='0'"
				+ " codebase='" + serverUrl + "/plugins/MagicLoaderX.cab#version=1,0,0,6'></object>\n"
				+ "<object id='" + objectId + "' classid='clsid:AD6870C0-44B7-42FB-A119-C2C6BD9CD005' width='0' height='0'"
				+ " codebase='" + serverUrl + "/plugins/MagicPassX.cab#version=1,0,3,1'></object>\n";
			
//			if (pkiType == NPKI)
//			{
//				result += "<object id='NMPCertX' classid='clsid:1CCA7AD8-4FF3-4449-B994-FD5CD326444C' width='0' height='0'"
//						+ " codebase='" + serverUrl + "/plugins/NMPCertX.cab#version=1,0,1,6'></object>";
//			}
//			else
//			{
				result += "<object id='NMPCertX' classid='clsid:000FDEEC-E017-46A9-AEA9-5520CCA8E7D5' width='0' height='0'"
						+ " codebase='" + serverUrl + "/plugins/MPCertX.cab#version=1,0,1,6'></object>";
//			}
		}
		else
		{
//				result = '<object classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93" codebase="http://java.sun.com/update/1.6.0/jinstall-6u10-windows-i586.cab#Version=6,0,0,32">'
//				 		+ '<param name="type" value="application/x-java-applet;version=1.6">'
//				 		+ '<param name="code" value="com.dreamsecurity.app.MagicPassApplet.class">'
//				 		+ '<param name="codebase" value="' + serverUrl + '/setup/MagicPassJ/">'
//				 		+ '<param name="archive" value="MagicPassJ.jar">'
//				 		+ '<param name="debug" value="false">'
//				 		+ '</object>';
			//dynamic : 8AD9C840-044E-11D1-B3E9-00805F499D93, static : CAFEEFAC-0016-0000-0010-ABCDEFFEDCBA
			// codebase="http://java.sun.com/update/1.6.0/jinstall-6u10-windows-i586.cab#Version=6,0,0,32"
			// http://java.sun.com/update/1.5.0/jinstall-1_5-windows-i586.cab#Version=1,5,0,0
			// codebase="' + serverUrl + '/setup/MagicPassJ/' + plugIn + '"
			result += '<object id="' + objectId + '" classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93" codebase="http://java.sun.com/update/1.6.0/jinstall-6u10-windows-i586.cab#Version=6,0,0,32" width="0" height="0">'
			
					 + '<param name="type" value="application/x-java-applet;version=1.6"/>'
			 		 + '<param name="code" value="com.dreamsecurity.app.MagicPassApplet.class"/>'
			 		 + '<param name="codebase" value="' + serverUrl + '/plugins/applet/"/>'
					 + '<param name="archive" value="MagicPassJ.jar, MagicXSignLauncher.jar, jcaos.jar, MagicPassS.jar"/>'
					 + '<param name="MagicXSignPath" value="' + XSIGN_PATH + '"/>'
					 + '<param name="MagicXSignTrustedRootCertFile" value="MagicXSignTrustedRootCert.jar"/>'
					 + '<param name="MagicXSignTrustedRootCertVersion" value="1.0.0.0"/>'
					 + '<param name="MagicXSignCacheFile" value="MagicXSign.jar"/>'
					 + '<param name="MagicXSignCacheFileVersion" value="1.0.0.0"/>'
					 + '<param name="MagicXSignStorageType" value="ALL"/>'
					 + '<param name="MagicXSignDomain" value="ALL"/>'
					 + '<param name="MagicXSignCAName" value="ALL"/>'
					 + '<param name="MagicXSignCertPolicy" value="ALL"/>'
					 + '<param name="MagicXSignKeyUsage" value="ALL">'
					 + '<param name="MagicXSignLauncherVersion" value="1.0.0.0"/>'
					 + '<param name="MagicXSignRealAppletName" value="com.dreamsecurity.ui.MagicXSignRealAppletProcImpl"/>'
					 + '<param name="MagicXSignResourceFile" value="MagicXSignRes.jar;MagicPassJRes.jar"/>'
					 + '<param name="MagicXSignResoureVersion" value="1.0.0.0;1.0.0.0"/>'
					 + '<param name="MagicXSignTab" value="ALL"/>'
					 + '<param name="browserInfo" value="' + browserType + '"/>'
					 + '<param name="osInfo" value="' + osType + '"/>'
					 + '<param name="scriptable" value="true"/>'
					 + '<param name="MagicXSignDebugMode" value="false"/>'
					 + '<param name="useJava" value="' + useJava + '"/>'
					 + '<param name="debug" value="' + APPLET_DEBUG_MODE + '"/>'
					 + '<param name="isMonitoring" value="' + siteMonitoring + '"/>'
					 + '<param name="monitoringInterval" value="' + monitoringInterval + '"/>'
					 + '</object>';
		}
	}
	else
	{
//			result = '<embed code="com.dreamsecurity.app.MagicPolicyCopyApplet.class" width="1" height="1" '
//			         + 'codebase="' + serverUrl + '/setup/MagicPassJ/" '
//			         + 'type="application/x-java-applet;version=1.6" '
//			         + 'pluginspage="' + serverUrl + '/setup/MagicPassJ/' + plugIn + '" '
//			         + 'archive="MagicPassJ.jar" '
//			         + 'debug="true"'
//			         + '/>';
		// pluginspage="http://java.sun.com/products/plugin/index.html#download"
		// 'pluginspage="' + serverUrl + '/setup/MagicPassJ/' + plugIn + '" '
		result += '<embed id="' + objectId + '" code="com.dreamsecurity.app.MagicPassApplet.class" width="0" height="0" '
		      	  + 'codebase="' + serverUrl + '/plugins/applet/" '
		          + 'type="application/x-java-applet;version=1.5" '
		          + 'pluginspage="' + serverUrl + '/plugins/applet/' + plugIn + '" '
		          + 'archive="MagicPassJ.jar, jcaos.jar, MagicXSignLauncher.jar, MagicPassS.jar" '
		          + 'MagicXSignPath="' + XSIGN_PATH + '" '
		          + 'MagicXSignTrustedRootCertFile="MagicXSignTrustedRootCert.jar" '
		          + 'MagicXSignTrustedRootCertVersion="1.0.0.0" '
		          + 'MagicXSignCacheFile="MagicXSign.jar" '
		          + 'MagicXSignCacheFileVersion="1.0.0.0" '
		          + 'MagicXSignStorageType="ALL" '
		          + 'MagicXSignDomain="ALL" '
		          + 'MagicXSignCAName="ALL" '
		          + 'MagicXSignCertPolicy="ALL" '
		          + 'MagicXSignKeyUsage="ALL" '
		          + 'MagicXSignLauncherVersion="1.0.0.0" '
		          + 'MagicXSignRealAppletName="com.dreamsecurity.ui.MagicXSignRealAppletProcImpl" '
		          + 'MagicXSignResourceFile="MagicXSignRes.jar;MagicPassJRes.jar" '
		          + 'MagicXSignResoureVersion="1.0.0.0;1.0.0.0" '
		          + 'MagicXSignTab="ALL" '
		          + 'browserInfo="' + browserType + '" '
		          + 'osInfo="' + osType + '" '
		          + 'scriptable="true" '
		          + 'MagicXSignDebugMode="false" '
		          + 'useJava="' + useJava + '" '
		          + 'debug="' + APPLET_DEBUG_MODE + '" '
		          + 'isMonitoring="' + siteMonitoring + '" '
		          + 'monitoringInterval="' + monitoringInterval + '" '
		          + '/>';
	}

	log("createObjectTag function end.");
	
	return result;
}

/**
 * Policy File¸¦ »ý¼ºÇÏ±â À§ÇÑ Applet 
 * @param serverUrl
 * @return
 */
function getPolicyAppletTag(serverUrl)
{
	var result = "";
	var plugIn = WINDOWS_JRE;
	
	if (osType != OS_WIN)
	{
		plugIn = LINUX_JRE;
	}

	if(browserType == BROWSER_IE)
	{
		// http://java.sun.com/update/1.5.0/jinstall-1_5-windows-i586.cab#Version=1,5,0,0
		// http://java.sun.com/update/1.6.0/jinstall-6u10-windows-i586.cab#Version=6,0,0,32
		result += '<object classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93" codebase="http://java.sun.com/update/1.6.0/jinstall-6u10-windows-i586.cab#Version=6,0,0,32" width="0" height="0">'
				 + '<param name="type" value="application/x-java-applet;version=1.6"/>'
				 + '<param name="code" value="com.dreamsecurity.app.MagicPolicyCopyApplet.class"/>'
				 + '<param name="codebase" value="' + serverUrl + '/plugins/applet/"/>'
				 + '<param name="archive" value="MagicPassJ.jar, MagicXSignLauncher.jar, jcaos.jar, MagicPassS.jar"/>'
				 + '<param name="MagicXSignPath" value="' + XSIGN_PATH + '"/>'
				 + '<param name="MagicXSignTrustedRootCertFile" value="MagicXSignTrustedRootCert.jar"/>'
				 + '<param name="MagicXSignTrustedRootCertVersion" value="1.0.0.0"/>'
				 + '<param name="MagicXSignCacheFile" value="MagicXSign.jar"/>'
				 + '<param name="MagicXSignCacheFileVersion" value="1.0.0.0"/>'
				 + '<param name="MagicXSignStorageType" value="ALL"/>'
				 + '<param name="MagicXSignDomain" value="ALL"/>'
				 + '<param name="MagicXSignCAName" value="ALL"/>'
				 + '<param name="MagicXSignCertPolicy" value="ALL"/>'
				 + '<param name="MagicXSignKeyUsage" value="ALL"/>'
				 + '<param name="MagicXSignLauncherVersion" value="1.0.0.0"/>'
				 + '<param name="MagicXSignRealAppletName" value="com.dreamsecurity.ui.MagicXSignRealAppletProcImpl"/>'
				 + '<param name="MagicXSignResourceFile" value="MagicXSignRes.jar;MagicPassJRes.jar"/>'
				 + '<param name="MagicXSignResoureVersion" value="1.0.0.0;1.0.0.0"/>'
				 + '<param name="MagicXSignTab" value="ALL"/>'
				 + '<param name="browserInfo" value="' + browserType + '">'
				 + '<param name="osInfo" value="' + osType + '"/>'
				 + '<param name="scriptable" value="true"/>'
				 + '<param name="useJava" value="' + useJava + '"/>'
				 + '<param name="MagicXSignDebugMode" value="false"/>'
				 + '<param name="debug" value="' + APPLET_DEBUG_MODE + '"/>'
				 + '<param name="isMonitoring" value="' + siteMonitoring + '"/>'
				 + '<param name="monitoringInterval" value="' + monitoringInterval + '"/>'
				 + '</object>';
	}
	else
	{
		result += '<embed code="com.dreamsecurity.app.MagicPolicyCopyApplet.class" width="0" height="0" '
    	  		+ 'codebase="' + serverUrl + '/plugins/applet/" '
		        + 'type="application/x-java-applet;version=1.5" '
		        + 'pluginspage="' + serverUrl + '/plugins/applet/' + plugIn + '" '
		        + 'archive="MagicPassJ.jar, jcaos.jar, MagicXSignLauncher.jar, MagicPassS.jar" '
		        + 'MagicXSignPath="' + XSIGN_PATH + '" '
		        + 'MagicXSignTrustedRootCertFile="MagicXSignTrustedRootCert.jar" '
		        + 'MagicXSignTrustedRootCertVersion="1.0.0.0" '
		        + 'MagicXSignCacheFile="MagicXSign.jar" '
		        + 'MagicXSignCacheFileVersion="1.0.0.0" '
		        + 'MagicXSignStorageType="ALL" '
		        + 'MagicXSignDomain="ALL" '
		        + 'MagicXSignCAName="ALL" '
		        + 'MagicXSignCertPolicy="ALL" '
		        + 'MagicXSignKeyUsage="ALL" '
		        + 'MagicXSignLauncherVersion="1.0.0.0" '
		        + 'MagicXSignRealAppletName="com.dreamsecurity.ui.MagicXSignRealAppletProcImpl" '
		        + 'MagicXSignResourceFile="MagicXSignRes.jar;MagicPassJRes.jar" '
		        + 'MagicXSignResoureVersion="1.0.0.0;1.0.0.0" '
		        + 'MagicXSignTab="ALL" '
		        + 'browserInfo="' + browserType + '" '
		        + 'osInfo="' + osType + '" '
		        + 'scriptable="true" '
		        + 'MagicXSignDebugMode="false" '
		        + 'useJava="' + useJava + '" '
		        + 'debug="' + APPLET_DEBUG_MODE + '" '
		        + 'isMonitoring="' + siteMonitoring + '" '
		        + 'monitoringInterval="' + monitoringInterval + '"'
		        + '/>';
	}

	return result;
}

