// movieswap.js v1.0
//
// Copyright (c) 2009 401creative
// Author: Devon Beck | http://www.401creative.com
// 
// movieswap was created for gopetfriendly.com.
//

/*-----------------------------------------------------------------------------------------------*/
var movieswap = Class.create();
movieswap.prototype = {

	initialize: function(container, options) {
		
		if (!$(container)) {
			alert(container+" doesn't exist!");
			return false;
		}
		
		this.options = Object.extend({
			movieArea : 'movie-container',
			classNames : {
				toggle : 'movie-toggle',
				toggleActive : 'active',
				loading : 'loading'
			},
			movieDimensions : {
				width : 390,
				height : 250
			},
			onEvent : 'click',
			autoPlayOnLoad : false,
			autoPlay : true,
			backgroundColor : '#FFFFFF'
		}, options || {});

		var movieswaps = $$('#'+container+' .'+this.options.classNames.toggle);
		movieswaps.each(function(movieswap) {
			Event.observe(movieswap, this.options.onEvent, this.activate.bind(this, movieswap), false);
			if (this.options.onEvent == 'click') {
			  movieswap.onclick = function() {return false;};
			}			
		}.bind(this));
		
		this.startup = true;
		
	},
	
	activate : function(movieswap) {
		
		var href = $(movieswap).href;
		var begin = href.lastIndexOf('/')+1;
		var end = href.length;
		var vidnum = href.substring(begin, end);
		
		if(this.startup && !this.options.autoPlayOnLoad){
			this.autoplay = 'f';
			this.startup = false;
		} else if(this.startup && this.options.autoPlayOnLoad){
			this.autoplay = 't';
			this.startup = false;
		} else {
			this.autoplay = 't';
		}
		
		var info = '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="'+this.options.movieDimensions.width+'" height="'+this.options.movieDimensions.height+'" id="viddler_'+vidnum+'"><param name="flashvars" value="autoplay='+this.autoplay+'" /><param name="movie" value="http://www.viddler.com/simple/'+vidnum+'/" /><param name="allowScriptAccess" value="always" /><param name="allowFullScreen" value="true" /><param name="bgcolor" value="'+this.options.backgroundColor+'" /><embed src="http://www.viddler.com/simple/'+vidnum+'/" width="'+this.options.movieDimensions.width+'" height="'+this.options.movieDimensions.height+'" type="application/x-shockwave-flash" allowScriptAccess="always" bgcolor="'+this.options.backgroundColor+'" flashvars="autoplay='+this.autoplay+'" allowFullScreen="true" name="viddler_'+vidnum+'" ></embed></object>';
		
		if(!$(this.options.movieArea).hasClassName(this.options.classNames.loading)){
			$(this.options.movieArea).addClassName(this.options.classNames.loading);
		}
		if(!$(movieswap).hasClassName(this.options.classNames.toggleActive)){
			$(movieswap).addClassName(this.options.classNames.toggleActive);
		}
		
		Element.update($(this.options.movieArea), info);
		
		this.deactivate();
		
		this.presentToggle = $(movieswap);
	},
	
	deactivate : function() {
		if(this.presentToggle){
			$(this.presentToggle).removeClassName(this.options.classNames.toggleActive);
		}
	}
}
	