// U-Download HTTP script file.  Simply include this file as a script in your own personal page.
// <script language="javascript" src="udhttpscript.js"></script> is the only code you will need
// to add to your page.  Just make sure that udhttpscript.js is in the same directory as you page.

// Use these Javascript variables to control the applet parameters


var numkeys 			= 2; // The number of keys you have
var keys= new Array(numkeys);

// Enter you keys here in the following form, starting with key[0], key[1], key[2], etc...
 
keys[0]				= "4B8643AD4E004E345FBB5728C38B48CB94F6A3"; //
keys[0]				= "3BA173E5CDFF92DC6FD37263FC862B8C62793B"; //

// Un-comment the folowing lines to add additional keys

//keys[1]				= ""; 
//keys[2]				= "";
		
var urls			= "";
var localfilenames		= "";
var buttoncaption		= "";
var localdir 			= "";
var createlocaldir 		= "";
var callurlaftertransfer 	= "";
var callurlaftertransfertarget 	= "";
var errorurl			= "";
var errorurltarget 		= "";
var cancelurl			= "";
var cancelurltarget 		= "";
var progBarGraphic		= "udownloadlogo.jpg";  // should be width of 350 height 200
var background			= "";
var buttontextcolor		= "";
var buttonbackground		= "";
var totalProgress		= "true";  // set to false if it takes a long time to start the downloads
var maxretries			= "5";
var waitretry			= "2000";
var delimiter			= ",";
var autodownload		= "";

var confirmOverwrite		= "true";
var bypassBrowseDialog		= "";

var width			= "250";
var height			= "50";

var urls			= "http://www.unlimitedftp.ca/downloads/files/udownload.zip,http://www.unlimitedftp.ca/downloads/files/uftpc.zip,http://www.unlimitedftp.ca/downloads/files/unlimitedftp.zip";
var buttoncaption		= "Begin Download";
var createlocaldir 		= "udownload-demo";
var callurlaftertransfer 	= "http://www.utechsoft.com/products/udownload/webdemo/complete.html";


//*************************************************************************************** //
// ********** DO NOT EDIT BELOW THIS POINT UNLESS YOU KNOW WHAT YOU ARE DOING!  ********* //
//*************************************************************************************** //
        var agt=navigator.userAgent.toLowerCase();

        // detect browser version
        // Note: On IE5, these return 4, so use is_ie5up to detect IE5.
        var is_major = parseInt(navigator.appVersion);
        var is_minor = parseFloat(navigator.appVersion);

        // *** BROWSER TYPE ***
        var is_nav  = ((agt.indexOf('mozilla')!=-1) && (agt.indexOf('spoofer')==-1)
                    && (agt.indexOf('compatible') == -1) && (agt.indexOf('opera')==-1)
                    && (agt.indexOf('webtv')==-1));

	var is_safari = (agt.indexOf('safari')!=-1);
	var is_opera = (agt.indexOf('opera')!=-1);
	var is_opera6up = (is_opera && (is_major >= 6));
        var is_nav4up = (is_nav && (is_major >= 4));
	var is_nav6up = (is_nav && (is_major >= 5));
	var is_konqueror = (agt.indexOf('konqueror')!=-1);
        var is_ie   = (agt.indexOf("msie") != -1);


	// *** PLATFORM ***
        var is_win   = ( (agt.indexOf("win")!=-1) || (agt.indexOf("16bit")!=-1) );
	var is_mac   = (agt.indexOf("mac")!=-1);


	function isMacClassic() {
		return (is_mac && !isMacX());
	}

	function isMacX() {
		if (isMacJaguar()) return true;	
		if (agt.indexOf("omniweb") != -1) return true;			
 		for (var i = 0; i < navigator.plugins.length; i++) {
  			if (navigator.plugins[i].name.indexOf("OJI") > -1) return true;	
			if (navigator.plugins[i].name.indexOf("Default Plugin Carbon.cfm") > -1) return true;			
 		}  	
		return false;		
	}

	function isMacJaguar() {
		return (is_mac && javaPlugin()); // we know java plugin means 10.2 or higher
	}

	function microsoftVM() {
		if (!(is_ie && is_win)) return false;
		document.body.addBehavior("#default#clientCaps");
		return (document.body.isComponentInstalled("{08B0E5C0-4FCB-11CF-AAA5-00401C608500}", "componentid")) ;
	}
	

	function javaPlugin() {	
		
		if (is_safari || is_opera6up || is_konqueror || is_firefox) return true;   // we know safari and opera use java plugin

 		for (var i = 0; i < navigator.plugins.length; i++) {

  			if (navigator.plugins[i].name.indexOf("Java Plug-in") > -1) return true;
			if (navigator.plugins[i].name.indexOf("Java Embedding Plug") > -1) return true;

 		} 
		return false;		
	}


	function mrj()  {
		if (isMacX()) return true;	
 		for (var i = 0; i < navigator.plugins.length; i++) {
  			if (navigator.plugins[i].name.indexOf("MRJ") > -1) return true;			
 		} 
		return false;
	}


	function useObjectTag() {				
		return is_win && is_ie;
	}

	function useEmbedTag() { // only use embed tag for netscape 4 
		return (is_nav && is_minor < 5 && !isMacJaguar()) && (javaPlugin() || mrj());
	}



	// The following script will detect weather MAC or PC version of the applet should be started 
	// and set up the apropriate jar file

	var jar = "udownloadhttp.jar";
	var classname = "unlimited.http.UDownloadHTTPPlugin";

	if (!useEmbedTag()) {

		if (useObjectTag()) {	  					
			document.write("<OBJECT id='udownload' name='udownload' classid='clsid:8AD9C840-044E-11D1-B3E9-00805F499D93' codebase='http://java.sun.com/products/plugin/autodl/jinstall-1_4-windows-i586.cab' height="+height+" width="+width+"'>");	
	
		} else {
  			document.write("<APPLET name='udownload' code="+classname+".class height="+height+" width="+width+" archive='"+jar+"' MAYSCRIPT VIEWASTEXT>");

		}	   
  		
		document.write("<param name='archive' value='"+jar+"'>");  		
		document.write("<param name='code' value='"+classname+".class'>");

  		document.write("<PARAM NAME='urls' VALUE='"+urls+"'>");
  		document.write("<PARAM NAME='localfilenames' VALUE='"+localfilenames+"'>");
		document.write("<PARAM NAME='background' VALUE='"+background+"'>");
		document.write("<PARAM NAME='createlocaldir' VALUE='"+createlocaldir+"'>");
		document.write("<PARAM NAME='callurlaftertransfer' VALUE='"+callurlaftertransfer+"'>");
		document.write("<PARAM NAME='errorurl' VALUE='"+errorurl+"'>");
		document.write("<PARAM NAME='errorurltarget' VALUE='"+errorurltarget+"'>");
		document.write("<PARAM NAME='cancelurl' VALUE='"+cancelurl+"'>");
		document.write("<PARAM NAME='cancelurltarget' VALUE='"+cancelurltarget+"'>");
		document.write("<PARAM NAME='callurlaftertransfertarget' VALUE='"+callurlaftertransfertarget+"'>");
  		document.write("<PARAM NAME='buttontextcolor' VALUE='"+buttontextcolor+"'>");
  		document.write("<PARAM NAME='buttonbackground' VALUE='"+buttonbackground+"'>");  
		document.write("<PARAM NAME='buttoncaption' VALUE='"+buttoncaption+"'>"); 	
		document.write("<PARAM NAME='localdir' VALUE='"+localdir+"'>");	
		document.write("<PARAM NAME='maxretries' VALUE='"+maxretries+"'>");
		document.write("<PARAM NAME='waitretry' VALUE='"+waitretry+"'>");
		document.write("<PARAM NAME='totalProgress' VALUE='"+totalProgress+"'>");
		document.write("<PARAM NAME='progBarGraphic' VALUE='"+progBarGraphic+"'>");
		document.write("<PARAM NAME='delimiter' VALUE='"+delimiter+"'>");
		document.write("<PARAM NAME='autodownload' VALUE='"+autodownload+"'>");

		document.write("<PARAM NAME='confirmOverwrite' VALUE='"+confirmOverwrite+"'>");
		document.write("<PARAM NAME='bypassBrowseDialog' VALUE='"+bypassBrowseDialog+"'>");


		for (n=0; n < numkeys; n++)
			document.write("<PARAM NAME='key"+(n+1)+"' VALUE='"+keys[n]+"'>");
					
  		document.write("<h1>");
  		document.write("Error!!! Java is disabled.</h1>");
  		document.write("Please enable Java and reload this page.");
  		
	   	if (useObjectTag())
			document.write("</OBJECT>");
		else
  			document.write("</APPLET>");

	}  // end non-Mac code
	else if (useEmbedTag()){ 
	    document.writeln("<EMBED  TYPE = 'application/x-java-applet' name='U-Download' PLUGINSPAGE = 'hhttp://java.sun.com/webapps/getjava/BrowserRedirect' BORDER='0'");
		document.writeln("code='"+classname+".class' height="+height+" width="+width+" archive='"+jar+"' "); 
  		document.writeln("urls='"+urls+"'"); 
		document.writeln("localfilenames='"+localfilenames+"'");
		document.writeln("background='"+background+"'");
		document.writeln("createlocaldir='"+createlocaldir+"'");
		document.writeln("callurlaftertransfer='"+callurlaftertransfer+"'");
		document.writeln("errorurl='"+errorurl+"'");
		document.writeln("errorurltarget='"+errorurltarget+"'");
		document.writeln("cancelurl='"+cancelurl+"'");
		document.writeln("cancelurltarget='"+cancelurltarget+"'");
		document.writeln("callurlaftertransfertarget='"+callurlaftertransfertarget+"'");
		document.writeln("buttontextcolor='"+buttontextcolor+"'"); 
		document.writeln("buttonbackground='"+buttonbackground+"'"); 	
		document.writeln("buttoncaption='"+buttoncaption+"'"); 	
		document.writeln("localdir='"+localdir+"'");
		document.writeln("maxretries='"+maxretries+"'");
		document.writeln("waitretry='"+waitretry+"'");
		document.writeln("totalProgress='"+totalProgress+"'");
		document.writeln("progBarGraphic='"+progBarGraphic+"'");
		document.writeln("delimiter='"+delimiter+"'");
		document.writeln("autodownload='"+autodownload+"'");
		document.writeln("confirmOverwrite='"+confirmOverwrite+"'");
		document.writeln("bypassBrowseDialog='"+bypassBrowseDialog+"'");
		for (n=0; n < numkeys; n++)
			document.write("key"+(n+1)+"='"+keys[n]+"'");								
		document.writeln(">"); 
	}
	


