function dvid(){
	var istr;
	var registry = new Array();
	var that = this;
	
	//**********************
	// Preview Functions
	//**********************
	
	//Generate random ID for preview. Permanent ID's are created by server.
	generateID = function(){
		istr = '';
		for(var i=0; i<8; i++){
			istr += String.fromCharCode(97 + Math.floor(Math.random() * 25));
		}
	}
	
	//Wrap object tags for preview.
	replaceObj = function(str){
		generateID();
		registry[istr] = str;
		return '<span class="dvid"><a class="'+istr+'" href="javascript:dv.playVid(\''+istr+'\');" title="play">play video <img src="Styles/layout/images/icons/play.gif" title="play" /></a></span><div style="display:none;" id="'+istr+'">'+str+'</div>';
	}
	
	//Process and return a block of HTML for preview.
	this.processVids = function(html){
		return html.replace(/<(?:object)[^(<\/object>)].*?(<\/object>)/gi, replaceObj);
	}
	
	//**********************
	// Utility Functions
	//**********************
	
	//Initalizes embedded video when page loads
	this.processPage = function(){
		$('a[title=play]').each(function(){
			var elem = $(this).get(0);
			elem.href = 'javascript:dv.playVid(\''+elem.className+'\');';
			registry[elem.className] = document.getElementById(elem.className).innerHTML;
			document.getElementById(elem.className).innerHTML = ''; //so Opera doesn't wig out
		});
	}
	
	//open the one selected video.
	this.playVid = function(vid){
		$.facebox(registry[vid]);
	}
}

var dv = new dvid();
$(window).load(function(){
	dv.processPage(); //initialize embedded vids on page load
});
