;(function($) {
	function initMedia(media, params) {

		media.container.html('');
		poster = contentServer + (params.poster ? 'assets/images/' + params.poster : 'assets/images/black.gif');
		
		files = [poster];

		if (params.files) {
			for (x in params.files) {
				files[files.length] = {
					'url': params.files[x].file,
					'autoPlay': true,
					'autoBuffering': true,
					'scaling': 'fit'
				}

			}
		} else {
			files[files.length] = {
				'url': params.file,
				'autoPlay': params.autoplay,
				'autoBuffering': true,
				'scaling': 'fit'
			}
		}

    	if ($.app.ipad || $.app.iphone) {
			media.player = $('<video autoplay="'+ (params.autoplay ? '1' : '0') +'" src="' + params.file.replace('_1024','_650') + '" poster="' + poster + '" controls="0" style="width:100%; height:100%;"></video>');
			media.container.append(media.player);

		} else {

			flashVars = {
				'playlist':
					files,
				'plugins': {
					'controls': {
						'autoHide' : 'always',
						'fullscreen': true,
						'mute': false,
						'height' : 30,
						'backgroundColor': 'transparent',
						'backgroundGradient': 'none',
						'sliderColor': '#666666',
						'sliderBorderColor': '#333333',
						'bufferColor': '#333333',
						'progressColor': '#c2444a',
						'progressGradient': 'none',
						'buttonColor': '#999999',
						'buttonOverColor': '#ffffff',
						'timeColor': '#cccccc',
						'durationColor': '#cccccc',
						'timeBgColor': 'transparent',
						'volumeColor': '#1c1c26',
						'volumeSliderColor': '#1c1c26',
						'volumeBorderColor': '#333333',
						'tooltipColor': '#1c1c26',
						'tooltips': {'buttons': false, 'volume': false}
					},
					'sharing': {
						'url': '/assets/swf/flowplayer.sharing.swf',
						//'url': '/assets/swf/twitterfacebook-1bit.swf',
						'email': false
					}
				}
			};
			
			if (params.onstart) {
				flashVars.onStart = params.onstart;
			}

			$f(params.container, {src: '/assets/swf/flowplayer-3.2.7.swf', 'wmode': 'opaque'}, flashVars);

		}
		media.container.css({
			height: params.height + 'px',
			width: params.width + 'px'
		});

		return media;
	}
	
	$.media = function(params) {

		var media = {};
		params.autoplay = typeof(params.autoplay) === 'undefined' ? true : params.autoplay;

		media.params = params;
		media.container = $('#'+params.container);
		media = initMedia(media, params);

		media.load = function(args) {
			media = initMedia(media, args);
		};
		
		if (media.player) {
			/*
			if (params.onended) {
				media.player.onended(params.onended);
			}
			*/
		}

		return media;

	};
})(jQuery);
