/*
 * This script contains embed functions for common plugins. This scripts are complety free to use for any purpose.
 */

/*function writeFlash(p) {
	writeEmbed(
		'clsid:d27cdb6e-ae6d-11cf-96b8-444553540000',
		'http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0',
		'application/x-shockwave-flash',
		p
	);
}
*/

// re-written to use jw media player
// see http://www.jeroenwijering.com/?item=Embedding_Flash
// also fixes url's to our media url
function writeFlash(p) {
    // would be better to get MEDIA_URL dynamically
    // but this will do for now.
    var path = '/' + p.src;
    output = '<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" ' +
        'codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" ' +
        'id="sayitloud-video"><PARAM NAME=movie ' +
        'VALUE="/media/jw_media_player/mediaplayer.swf"><PARAM NAME=quality VALUE=high> ' +
        '<PARAM NAME=bgcolor VALUE=#FFFFFF> ';
    if (p.width) {
        output += '<PARAM NAME=width VALUE=' + p.width + '>';
    }
    if (p.height) {
        output += '<PARAM NAME=height VALUE=' + p.height + '>';
    }
    output += 
        '<PARAM NAME=flashvars VALUE="file=' + path + '" ' +
        '<EMBED src="/media/jw_media_player//mediaplayer.swf" ' +
        'quality=high bgcolor=#FFFFFF ' +
        'flashvars="file=' + path + '" ';
    if (p.width) {
        output += 'width=' + p.width + ' ';
    }
    if (p.height) {
        output += 'height=' + p.height + ' ';
    }
    output += 
        'NAME="Say it Loud" TYPE="application/x-shockwave-flash" ' +
        'PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer"> ' +
        '</EMBED></OBJECT>';
    document.write(output);
}

function writeShockWave(p) {
	writeEmbed(
	'166B1BCA-3F9C-11CF-8075-444553540000',
	'http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0',
	'application/x-director',
		p
	);
}

function writeQuickTime(p) {
	writeEmbed(
		'02BF25D5-8C17-4B23-BC80-D3488ABDDC6B',
		'http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0',
		'video/quicktime',
		p
	);
}

function writeRealMedia(p) {
	writeEmbed(
		'CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA',
		'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0',
		'audio/x-pn-realaudio-plugin',
		p
	);
}

function writeWindowsMedia(p) {
	p.url = p.src;
	writeEmbed(
		'6BF52A52-394A-11D3-B153-00C04F79FAA6',
		'http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701',
		'application/x-mplayer2',
		p
	);
}

function writeEmbed(cls, cb, mt, p) {
	var h = '', n;

	h += '<object classid="clsid:' + cls + '" codebase="' + cb + '"';
	h += typeof(p.id) != "undefined" ? 'id="' + p.id + '"' : '';
	h += typeof(p.name) != "undefined" ? 'name="' + p.name + '"' : '';
	h += typeof(p.width) != "undefined" ? 'width="' + p.width + '"' : '';
	h += typeof(p.height) != "undefined" ? 'height="' + p.height + '"' : '';
	h += typeof(p.align) != "undefined" ? 'align="' + p.align + '"' : '';
	h += '>';

	for (n in p)
		h += '<param name="' + n + '" value="' + p[n] + '">';

	h += '<embed type="' + mt + '"';

	for (n in p)
		h += n + '="' + p[n] + '" ';

	h += '></embed></object>';

	document.write(h);
}
