
	
function PFNRemote (ref, auth, opts) {

	this._pfn_remote_media_path = 'http://video.profoodnetwork.com/flash/pfn_remote_media.swf';
	this._pfn_request_path = 'http://video.profoodnetwork.com/com/request.php';
	this.ref = ref;
	this.auth = auth;
	this.host = location.href;
	this.html = "";
	this.options = opts;
	this.width = 640;
	this.height = 380;
	this.id = "pfn_remote_media";
	this.align = "middle";

	this.params = [	'allowScriptAccess=always',
			'allowFullScreen=false',
			'movie=' + this._pfn_remote_media_path,
			'quality=high',
			'bgcolor=#ffffff',
			'wmode=transparent'];


	this.init = function() {

		this.options = this.options ? this.options.split("&") : [];
		this.options.unshift('_pfn_request_path=' + encodeURIComponent(this._pfn_request_path));
		this.options.unshift('HOST=' + encodeURIComponent(this.host));
		this.options.unshift('AUTH=' + (this.auth ? this.auth : '') );
		this.options.unshift('REF=' + (this.ref ? this.ref : '') );

		this.options = this.options.join("&");

		this.params.push('FlashVars=' + this.options);


		this.build();

	}

	this.build = function() {

		switch(BrowserDetect.browser + "|" + BrowserDetect.OS) {

			case "Safari|iPhone/iPod":
			addQT();
			break;
			default:
			addFlash();
			break;

		}

		this.write();

	}

	this.addFlash = function() {

		var param;
		var val;
		var embed = "";

		this.html += "<object classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" codebase=\"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=10,0,0,0\" width=\"" + this.width + "\" height=\"" + this.height + "\" id=\"" + this.id + "\" align=\"middle\">\r\n";

		for(var i in this.params){

			param = this.params[i].substr(0, this.params[i].indexOf("="));
			val = this.params[i].substr(this.params[i].indexOf("=") + 1);

			this.html += ("\t<param name=\"" + param + "\" value=\"" + val + "\" />\r\n");

			embed += " " + (param == "movie" ? "src" : param) + "=\"" + val + "\"";

		}

		this.html += "\t<embed" + embed + " width=\"" + this.width + "\" height=\"" + this.height + "\" name=\"" + this.id + "\" type=\"application/x-shockwave-flash\" pluginspage=\"http://www.adobe.com/go/getflashplayer\" align=\"" + this.align + "\" />";


		this.html += "</object>";

	}

	this.addQT = function() {

		this.html += "<div style=\"text-align: center;\">iPhone/iPod support is coming soon...</div>";

	}

	this.write = function() {

		document.write(this.html);

	}

	this.init();

}


var BrowserDetect = {

	init: function () {
		this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
		this.version = this.searchVersion(navigator.userAgent)
			|| this.searchVersion(navigator.appVersion)
			|| "an unknown version";
		this.OS = this.searchString(this.dataOS) || "an unknown OS";
	},

	searchString: function (data) {
		for (var i=0;i<data.length;i++)	{
			var dataString = data[i].string;
			var dataProp = data[i].prop;
			this.versionSearchString = data[i].versionSearch || data[i].identity;
			if (dataString) {
				if (dataString.indexOf(data[i].subString) != -1)
					return data[i].identity;
			}
			else if (dataProp)
				return data[i].identity;
		}
	},

	searchVersion: function (dataString) {
		var index = dataString.indexOf(this.versionSearchString);
		if (index == -1) return;
		return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
	},

	dataBrowser: [
		{
			string: navigator.userAgent,
			subString: "Chrome",
			identity: "Chrome"
		},
		{ 	string: navigator.userAgent,
			subString: "OmniWeb",
			versionSearch: "OmniWeb/",
			identity: "OmniWeb"
		},
		{
			string: navigator.vendor,
			subString: "Apple",
			identity: "Safari",
			versionSearch: "Version"
		},
		{
			prop: window.opera,
			identity: "Opera"
		},
		{
			string: navigator.vendor,
			subString: "iCab",
			identity: "iCab"
		},
		{
			string: navigator.vendor,
			subString: "KDE",
			identity: "Konqueror"
		},
		{
			string: navigator.userAgent,
			subString: "Firefox",
			identity: "Firefox"
		},
		{
			string: navigator.vendor,
			subString: "Camino",
			identity: "Camino"
		},
		{		// for newer Netscapes (6+)
			string: navigator.userAgent,
			subString: "Netscape",
			identity: "Netscape"
		},
		{
			string: navigator.userAgent,
			subString: "MSIE",
			identity: "Explorer",
			versionSearch: "MSIE"
		},
		{
			string: navigator.userAgent,
			subString: "Gecko",
			identity: "Mozilla",
			versionSearch: "rv"
		},
		{ 		// for older Netscapes (4-)
			string: navigator.userAgent,
			subString: "Mozilla",
			identity: "Netscape",
			versionSearch: "Mozilla"
		}
	],

	dataOS : [
		{
			string: navigator.platform,
			subString: "Win",
			identity: "Windows"
		},
		{
			string: navigator.platform,
			subString: "Mac",
			identity: "Mac"
		},
		{
			string: navigator.userAgent,
			subString: "iPhone",
			identity: "iPhone/iPod"
	    	},
		{
			string: navigator.platform,
			subString: "Linux",
			identity: "Linux"
		}
	]

};

BrowserDetect.init();

