//
// MEDIA EMBEDDING FUNCTION(s)
// by Kimara Sajn
//
// (c) 2000 General Rubric, Inc
//

	function mediaFile(mediatype,src,idx,autoflag,loopflag,hiddenflag,widthx,heighty,ctlflag) {
		var mediaspec = "";
		var crlf = "";

		if (arguments.length < 3) {
			var index = "";
			var autostart = true;
			var loop = false;
			var hidden = true;
			var width = 2;
			var height = 2;
			var controlflag = false;
		}
		else if (arguments.length == 3) {
			var index = idx;
			var autostart = true;
			var loop = false;
			var hidden = true;
			var width = 2;
			var height = 2;
			var controlflag = false;
		}
		else if (arguments.length < 5) {
			var index = idx;
			var autostart = autoflag;
			var loop = false;
			var hidden = true;
			var width = 2;
			var height = 2;
			var controlflag = false;
		}
		else if (arguments.length < 6) {
			var index = idx;
			var autostart = autoflag;
			var loop = loopflag;
			var hidden = true;
			var width = 2;
			var height = 2;
			var controlflag = false;
		}
		else if (arguments.length < 9) {
			var index = idx;
			var autostart = autoflag;
			var loop = loopflag;
			var hidden = hiddenflag;
			var width = widthx;
			var height = heighty;
			var controlflag = false;
		}
		else {
			var index = idx;
			var autostart = autoflag;
			var loop = loopflag;
			var hidden = hiddenflag;
			var width = widthx;
			var height = heighty;
			var controlflag = ctlflag;
		}

		if (mediatype.toLowerCase() == "aiff") {

			// AIFF type
			mediaspec = "<embed name=\"aiffmedia"+index+"\" mastersound src=\""+src+"\" type=\"audio/x-aiff\" autostart=\""+autostart+"\" loop=\""+loop+"\" controller=\""+controlflag+"\" hidden=\""+hidden+"\" width=\""+width+"\" height=\""+height+"\">"+crlf;
		}
		else if (mediatype.toLowerCase() == "qtime") {

			// QT types: mov, aif, qtvr ...
			mediaspec = "<embed name=\"qtmedia"+index+"\" src=\""+src+"\" autostart=\""+autostart+"\" loop=\""+loop+"\" controller=\""+controlflag+"\" " + ((hidden) ? "hidden" : "") + " width=\""+width+"\" height=\""+height+"\">"+crlf;
		}
		else if (mediatype.toLowerCase() == "real") {

			// RealMedia type
			mediaspec = "<OBJECT ID=\"realmedia"+index+"\" CLASSID=\"clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA\" WIDTH=\""+width+"\" HEIGHT=\""+height+"\">"+crlf;
			mediaspec = mediaspec + "<PARAM NAME=\"console\" VALUE=\"console"+index+"\">"+crlf;
			mediaspec = mediaspec + "<PARAM NAME=\"autostart\" VALUE=\""+autostart+"\">"+crlf;
			mediaspec = mediaspec + "<PARAM NAME=\"src\" VALUE=\""+src+"\">"+crlf;
			if (controlflag != false) {
				mediaspec = mediaspec + "<PARAM NAME=\"controls\" VALUE=\""+controlflag+"\">"+crlf;
			}
			mediaspec = mediaspec + "<embed src=\""+src+"\" name=\"realmedia"+index+"\" type=\"audio/x-pn-realaudio-plugin\" width=\""+width+"\" height=\""+height+"\" hidden=\""+hidden+"\" autostart=\""+autostart+"\" console=\"console"+index+"\"";
			if (controlflag != false) {
				mediaspec = mediaspec + " controls=\""+controlflag+"\">"+crlf;
			}
			else {
				mediaspec = mediaspec + " controls=\""+controlflag+"\">"+crlf;
			}
			mediaspec = mediaspec + "</OBJECT>"+crlf;
		}
		else if (mediatype.toLowerCase() == "flash") {
		
			// ShockwaveFlash type
			if (ctlflag != true) {
				mediaspec = "<OBJECT classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" codebase=\"http://active.macromedia.com/flash2/cabs/swflash.cab#version=3,0,0,0\" ID=\"flashmedia"+index+"\" WIDTH=\""+width+"\" HEIGHT=\""+height+"\">"+crlf;
				mediaspec = mediaspec + "<PARAM NAME=\"movie\" VALUE=\""+src+"\">"+crlf;
				mediaspec = mediaspec + "<PARAM NAME=\"loop\" VALUE=\""+loop+"\">"+crlf;
				mediaspec = mediaspec + "<PARAM NAME=\"quality\" VALUE=\"high\">"+crlf; 
				mediaspec = mediaspec + "<PARAM NAME=\"devicefont\" VALUE=\"true\">"+crlf;
				mediaspec = mediaspec + "<PARAM NAME=\"wmode\" VALUE=\"transparent\">"+crlf;
				// mediaspec = mediaspec + "<PARAM NAME=\"bgcolor\" VALUE=\"#FFFFFF\">"+crlf;
				mediaspec = mediaspec + "<EMBED SRC=\""+src+"\" NAME=\"flashmedia"+index+"\" TYPE=\"application/x-shockwave-flash\" swLiveConnect=\"TRUE\" WIDTH=\""+width+"\" HEIGHT=\""+height+"\" LOOP=\""+loop+"\" QUALITY=\"high\" DEVICEFONT=\"true\" BGCOLOR=\"#FFFFFF\" PLUGINSPAGE=\"http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash\">"+crlf;
				mediaspec = mediaspec + "</OBJECT>"+crlf;
			}
			else {
				mediaspec = "<OBJECT classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" codebase=\"http://active.macromedia.com/flash2/cabs/swflash.cab#version=3,0,0,0\" ID=\"flashmedia"+index+"\" width=\""+width+"\" height=\""+height+"\">"+crlf;
				mediaspec = mediaspec + "<PARAM NAME=\"movie\" VALUE=\""+src+"\">"+crlf;
				mediaspec = mediaspec + "<PARAM NAME=\"loop\" VALUE=\""+loop+"\">"+crlf;
				mediaspec = mediaspec + "<PARAM NAME=\"quality\" VALUE=\"high\">"+crlf; 
				mediaspec = mediaspec + "<PARAM NAME=\"devicefont\" VALUE=\"true\">"+crlf;
				mediaspec = mediaspec + "<PARAM NAME=\"showall\" VALUE=\"true\">"+crlf;
				mediaspec = mediaspec + "<PARAM NAME=\"wmode\" VALUE=\"transparent\">"+crlf;
				// mediaspec = mediaspec + "<PARAM NAME=\"bgcolor\" VALUE=\"#FFFFFF\">"+crlf;
				mediaspec = mediaspec + "<EMBED SRC=\""+src+"\" NAME=\"flashmedia"+index+"\" TYPE=\"application/x-shockwave-flash\" swLiveConnect=\"TRUE\" width=\""+width+"\" height=\""+height+"\" ShowAll=\"true\" LOOP=\""+loop+"\" QUALITY=\"high\" DEVICEFONT=\"true\" BGCOLOR=\"#FFFFFF\" PLUGINSPAGE=\"http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash\">"+crlf;
				mediaspec = mediaspec + "</OBJECT>"+crlf;
			}
		}
		else if (mediatype.toLowerCase() == "shockwave") {
			// Shockwave type
			mediaspec = mediaspec + "<OBJECT ID=\"shockwavemedia"+index+"\" NAME=\"shockwavemedia"+index+"\" WIDTH=\""+width+"\" HEIGHT=\""+height+"\" CLASSID=\"CLSID:166B1BCA-3F9C-11CF-8075-444553540000\" CODEBASE=\"http://active.macromedia.com/director/cabs/sw.cab#version=6,0,0,0\">"+crlf;
			mediaspec = mediaspec + "<PARAM NAME=\"_Version\" VALUE=\"65536\">"+crlf;
			mediaspec = mediaspec + "<PARAM NAME=\"_ExtentX\" VALUE=\"16933\">"+crlf;
			mediaspec = mediaspec + "<PARAM NAME=\"_ExtentY\" VALUE=\"741\">"+crlf;
			mediaspec = mediaspec + "<PARAM NAME=\"_StockProps\" VALUE=\"0\">"+crlf;
			mediaspec = mediaspec + "<PARAM NAME=\"SRC\" VALUE=\""+src+"\">"+crlf;
			mediaspec = mediaspec + "<PARAM NAME=\"AutoStart\" VALUE=\""+autostart+"\">"+crlf;
			mediaspec = mediaspec + "<embed name=\"shockwavemedia"+index+"\" src=\""+src+"\" type=\"application/x-director\" autostart=\""+autostart+"\" loop=\""+loop+"\" controller=\""+controlflag+"\" hidden=\""+hidden+"\" width=\""+width+"\" height=\""+height+"\">"+crlf;
			mediaspec = mediaspec + "</OBJECT>"+crlf;
		}
		else if (mediatype.toLowerCase() == "wmp") {

			autostart = (autostart) ? 1 : 0;
			hidden = (hidden) ? 0 : 1;
			controlflag = (controlflag) ? 1 : 0;

			// Windows Media Player type
			mediaspec = "<OBJECT ID=\"wmpmedia"+index+"\" CLASSID=\"CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95\" TYPE=\"application/x-oleobject\" WIDTH=\""+width+"\" HEIGHT=\""+height+"\">"+crlf;
			mediaspec = mediaspec + "<PARAM NAME=\"autostart\" VALUE=\""+autostart+"\">"+crlf;
			mediaspec = mediaspec + "<PARAM NAME=\"FILENAME\" VALUE=\""+src+"\">"+crlf;
			mediaspec = mediaspec + "<PARAM NAME=\"AnimationAtStart\" VALUE=\"0\">"+crlf;
			mediaspec = mediaspec + "<PARAM NAME=\"ShowDisplay\" VALUE=\"false\">"+crlf;
			mediaspec = mediaspec + "<embed src=\""+src+"\" name=\"wmpmedia"+index+"\" type=\"application/x-mplayer2\" width=\""+width+"\" height=\""+height+"\" ShowDisplay=\"false\" AnimationAtStart=\"0\" autostart=\""+autostart+"\" console=\"console"+index+"\"";
			if (controlflag != false) {
				mediaspec = mediaspec + " ShowControls=\""+controlflag+"\" ShowStatusBar=\"1\">"+crlf;
			}
			else {
				mediaspec = mediaspec + " ShowControls=\""+controlflag+"\" ShowStatusBar=\"0\">"+crlf;
			}
			mediaspec = mediaspec + "</OBJECT>"+crlf;
		}
		else {
			// Generic/custom plugin types: mid, avi, etc (specify as type arg)
			mediaspec = "<embed name=\"pluginmedia"+index+"\" mastersound src=\""+src+"\" type=\"" + mediatype.toLowerCase() + "\" autostart=\""+autostart+"\" loop=\""+loop+"\" controller=\""+controlflag+"\" hidden=\""+hidden+"\" width=\""+width+"\" height=\""+height+"\">"+crlf;
		}

		return mediaspec;
	}

	function mediaScript(mediatype,index) {
		var script_text = "";

		if (arguments.length < 2) {
			index = "";
		}

		if (mediatype == "real") {
			var medianame = "realmedia"+index;
		}
		else if (mediatype == "flash") {
			var medianame = "flashmedia"+index;
		}
		else if (mediatype == "shockwave") {
			var medianame = "shockwavemedia"+index;
		}
		else if (mediatype == "wmp") {
			var medianame = "wmpmedia"+index;
		}

		if (mediatype == "real") {
			script_text = script_text + "<script>\n";
			script_text = script_text + "// REALPLAYER CONTROL FUNCTIONS and onClipClosed() Callback (to user-defined media object's closed action)\n\n";
			script_text = script_text + "function "+medianame+"_action(command,args) {\n";
			script_text = script_text + "	if (command == \"play\") {\n";
			script_text = script_text + "		if (navigator.userAgent.indexOf(\"MSIE\")  == -1) {\n";
			script_text = script_text + "			document."+medianame+".DoPlayPause();\n";
			script_text = script_text + "		}\n";
			script_text = script_text + "		else {\n";
			script_text = script_text + "			"+medianame+".DoPlayPause();\n";
			script_text = script_text + "		}\n";
			script_text = script_text + "	}\n";
			script_text = script_text + "	else if (command == \"pause\") {\n";
			script_text = script_text + "		if (navigator.userAgent.indexOf(\"MSIE\")  == -1) {\n";
			script_text = script_text + "			document."+medianame+".DoPlayPause();\n";
			script_text = script_text + "		}\n";
			script_text = script_text + "		else {\n";
			script_text = script_text + "			"+medianame+".DoPlayPause();\n";
			script_text = script_text + "		}\n";
			script_text = script_text + "	}\n";
			script_text = script_text + "	else if (command == \"stop\") {\n";
			script_text = script_text + "		if (navigator.userAgent.indexOf(\"MSIE\")  == -1)	{\n";
			script_text = script_text + "			document."+medianame+".DoStop();\n";
			script_text = script_text + "		}\n";
			script_text = script_text + "		else {\n";
			script_text = script_text + "			"+medianame+".DoStop();\n";
			script_text = script_text + "		}\n";
			script_text = script_text + "	}\n";
			script_text = script_text + "	else if (command == \"reset\") {\n";
			script_text = script_text + "		if (navigator.userAgent.indexOf(\"MSIE\")  == -1)	{\n";
			script_text = script_text + "			document."+medianame+".SetSource(args);\n";
			script_text = script_text + "		}\n";
			script_text = script_text + "		else {\n";
			script_text = script_text + "			"+medianame+".source=args;\n";
			script_text = script_text + "		}\n";
			script_text = script_text + "	}\n";
			script_text = script_text + "}\n\n";
			// script_text = script_text + "function onClipClosed() {\n";
			// script_text = script_text + "	  eval('"+medianame+"_closed()');\n";
			// script_text = script_text + "}\n\n";
			// script_text = script_text + "</script>\n";
			// script_text = script_text + "<script language='vbscript'>\n";
			// script_text = script_text + "sub realvideo_onClipClosed\n";
			// script_text = script_text + "    call "+medianame+"_closed()\n";
			// script_text = script_text + " sub\n";
			script_text = script_text + "</script>\n\n";
		}
		else if (mediatype == "flash") {
			script_text = script_text + "<script>\n";
			script_text = script_text + "// FLASH remote call to browser -- FLASH_ACTION (user defined handler in page)\n";
			script_text = script_text + "function "+medianame+"_DoFSCommand(command,args) {\n";
			script_text = script_text + "		flash_action("+index+",command,args);\n";
			script_text = script_text + "}\n\n";
			script_text = script_text + "</script>\n";
			script_text = script_text + "<script language='vbscript'>\n";
			script_text = script_text + "sub "+medianame+"_FSCommand(ByVal command, ByVal args)\n";
			script_text = script_text + "          call "+medianame+"_DoFSCommand(command,args)\n";
			script_text = script_text + "end sub\n";
			script_text = script_text + "</script>\n\n";
		}
		else if (mediatype == "shockwave") {
			script_text = script_text + "<script>\n";
			script_text = script_text + "// SHOCKWAVE remote call from browser -- will pass command TO Shockwave app\n";
			script_text = script_text + "function "+medianame+"_action(command_string) {\n";
			script_text = script_text + "if (navigator.appName.indexOf('Microsoft') != -1) {\n";
			script_text = script_text + "      movieID = "+medianame+";\n";
			script_text = script_text + "}\n";
			script_text = script_text + "else {\n";
			script_text = script_text + "      movieID = document."+medianame+";\n";
			script_text = script_text + "}\n\n";
			script_text = script_text + "setTimeout('movieID.EvalScript(\"'+command_string+'\")',10);\n";
			script_text = script_text + "}\n\n";
			script_text = script_text + "//code for external calls FROM Shockwave app\n\n";
			script_text = script_text + "// User defined Javascript functions are called from the app\n";
			script_text = script_text + "// VBScript/ActiveX requires the callback function below to process as an event\n\n";
			script_text = script_text + "function vb_callback(command) {\n";
			script_text = script_text + "      eval(command);\n";
			script_text = script_text + "}\n\n";
			script_text = script_text + "</script>\n";
			script_text = script_text + "<script language='vbscript'>\n";
			script_text = script_text + "sub "+medianame+"_ExternalEvent(command)\n";
			script_text = script_text + "          call vb_callback(command)\n";
			script_text = script_text + "end sub\n";
			script_text = script_text + "</script>\n\n";
		}
		else if (mediatype == "wmp") {
			script_text = script_text + "<script>\n";
			script_text = script_text + "// WINDOWS MEDIA PLAYER CONTROL FUNCTIONS\n\n";
			script_text = script_text + "function "+medianame+"_action(command,args) {\n";
			script_text = script_text + "	if (command == \"play\") {\n";
			script_text = script_text + "		if (navigator.userAgent.indexOf(\"MSIE\")  == -1) {\n";
			script_text = script_text + "			document."+medianame+".Play();\n";
			script_text = script_text + "		}\n";
			script_text = script_text + "		else {\n";
			script_text = script_text + "			"+medianame+".play();\n";
			script_text = script_text + "		}\n";
			script_text = script_text + "	}\n";
			script_text = script_text + "	else if (command == \"pause\") {\n";
			script_text = script_text + "		if (navigator.userAgent.indexOf(\"MSIE\")  == -1)	{\n";
			script_text = script_text + "			document."+medianame+".Stop();\n";
			script_text = script_text + "		}\n";
			script_text = script_text + "		else {\n";
			script_text = script_text + "			"+medianame+".stop();\n";
			script_text = script_text + "		}\n";
			script_text = script_text + "	}\n";
			script_text = script_text + "	else if (command == \"stop\") {\n";
			script_text = script_text + "		if (navigator.userAgent.indexOf(\"MSIE\")  == -1)	{\n";
			script_text = script_text + "			document."+medianame+".Stop();\n";
			script_text = script_text + "			document."+medianame+".SetCurrentPosition(0);\n";
			script_text = script_text + "		}\n";
			script_text = script_text + "		else {\n";
			script_text = script_text + "			"+medianame+".stop();\n";
			script_text = script_text + "			"+medianame+".SetCurrentPosition(0);\n";
			script_text = script_text + "		}\n";
			script_text = script_text + "	}\n";
			script_text = script_text + "}\n\n";
			script_text = script_text + "</script>\n\n";
		}

		return script_text;
	}

// END OF MEDIA EMBEDDING FUNCTIONS