(function($){$.fn.media=function(options,f1,f2){return this.each(function(){if(typeof options=="function"){f2=f1;f1=options;options={};}var o=getSettings(this,options);if(typeof f1=="function"){f1(this,o);}var r=getTypesRegExp();var m=r.exec(o.src)||[""];o.type?m[0]=o.type:m.shift();for(var i=0;i<m.length;i++){fn=m[i].toLowerCase();if(isDigit(fn[0])){fn="fn"+fn;}if(!$.fn.media[fn]){continue;}var player=$.fn.media[fn+"_player"];if(!o.params){o.params={};}if(player){var num=player.autoplayAttr=="autostart";o.params[player.autoplayAttr||"autoplay"]=num?(o.autoplay?1:0):o.autoplay?true:false;}var $div=$.fn.media[fn](this,o);$div.css("backgroundColor",o.bgColor).width(o.width);if(typeof f2=="function"){f2(this,$div[0],o,player.name);}break;}});};$.fn.mediabox=function(options,css){return this.click(function(){if(typeof $.blockUI=="undefined"||typeof $.blockUI.version=="undefined"||$.blockUI.version<1.26){if(typeof $.fn.mediabox.warning!="undefined"){return this;}$.fn.mediabox.warning=1;alert("The mediabox method requires blockUI v1.26 or later.");return false;}var o,p,div=0,$e=$(this).clone();$e.appendTo("body").hide().css({margin:0});options=$.extend({},options,{autoplay:1});$e.media(options,function(){},function(origEl,newEl,opts,player){div=newEl;o=opts;p=player;});if(!div){return false;}var $div=$.browser.safari?$(div).hide():$(div).remove();if(o.loadingImage){$div.css({backgroundImage:"url("+o.loadingImage+")",backgroundPosition:"center center",backgroundRepeat:"no-repeat"});}if(o.boxTitle){$div.prepend('<div style="margin:0;padding:0">'+o.boxTitle+"</div>");}if(css){$div.css(css);}$div.displayBox({width:o.width,height:o.height},function(el){$("object,embed",el).each(function(){try{this.Stop();}catch(e){}try{this.DoStop();}catch(e){}try{this.controls.stop();}catch(e){}$(this).remove();});},p=="flash");return false;});};$.fn.media.mapFormat=function(format,player){if(!format||!player||!$.fn.media.defaults.players[player]){return;}format=format.toLowerCase();if(isDigit(format[0])){format="fn"+format;}$.fn.media[format]=$.fn.media[player];$.fn.media[format+"_player"]=$.fn.media.defaults.players[player];};$.fn.media.defaults={width:400,height:400,preferMeta:1,autoplay:0,bgColor:"#ffffff",params:{},attrs:{},flashvars:{},flashVersion:"7",expressInstaller:null,boxTitle:null,loadingImage:null,flvPlayer:"mediaplayer.swf",mp3Player:"mediaplayer.swf",silverlight:{inplaceInstallPrompt:"true",isWindowless:"true",framerate:"24",version:"0.9",onError:null,onLoad:null,initParams:null,userContext:null}};$.fn.media.defaults.players={flash:{name:"flash",types:"flv,mp3,swf,ashx",oAttrs:{classid:"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000",type:"application/x-oleobject",codebase:"http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version="+$.fn.media.defaults.flashVersion},eAttrs:{type:"application/x-shockwave-flash",pluginspage:"http://www.adobe.com/go/getflashplayer"}},quicktime:{name:"quicktime",types:"aif,aiff,aac,au,bmp,gsm,mov,mid,midi,mpg,mpeg,mp4,m4a,psd,qt,qtif,qif,qti,snd,tif,tiff,wav,3g2,3gp",oAttrs:{classid:"clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B",codebase:"http://www.apple.com/qtactivex/qtplugin.cab"},eAttrs:{pluginspage:"http://www.apple.com/quicktime/download/"}},realplayer:{name:"real",types:"ra,ram,rm,rpm,rv,smi,smil",autoplayAttr:"autostart",oAttrs:{classid:"clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA"},eAttrs:{type:"audio/x-pn-realaudio-plugin",pluginspage:"http://www.real.com/player/"}},winmedia:{name:"winmedia",types:"asf,avi,wma,wmv",autoplayAttr:"autostart",oUrl:"url",oAttrs:{classid:"clsid:6BF52A52-394A-11d3-B153-00C04F79FAA6",type:"application/x-oleobject"},eAttrs:{type:$.browser.mozilla&&isFirefoxWMPPluginInstalled()?"application/x-ms-wmp":"application/x-mplayer2",pluginspage:"http://www.microsoft.com/Windows/MediaPlayer/"}},iframe:{name:"iframe",types:"html,pdf"},silverlight:{name:"silverlight",types:"xaml"}};function isFirefoxWMPPluginInstalled(){var plugs=navigator.plugins;for(i=0;i<plugs.length;i++){var plugin=plugs[i];if(plugin.filename=="np-mswmp.dll"){return true;}}return false;}var counter=1;for(var player in $.fn.media.defaults.players){var types=$.fn.media.defaults.players[player].types;$.each(types.split(","),function(i,o){if(isDigit(o[0])){o="fn"+o;}$.fn.media[o]=$.fn.media[player]=getGenerator(player);$.fn.media[o+"_player"]=$.fn.media.defaults.players[player];});}function getTypesRegExp(){var types="";for(var player in $.fn.media.defaults.players){if(types.length){types+=",";}types+=$.fn.media.defaults.players[player].types;}return new RegExp("\\.("+types.replace(/,/g,"|")+")\\b");}function getGenerator(player){return function(el,options){return generate(el,options,player);};}function isDigit(c){return"0123456789".indexOf(c)>-1;}function getSettings(el,options){options=options||{};var $el=$(el);var cls=el.className||"";var meta=$.metadata?$el.metadata():$.meta?$el.data():{};var w=meta.width||parseInt(((cls.match(/w:(\d+)/)||[])[1]||0));var h=meta.height||parseInt(((cls.match(/h:(\d+)/)||[])[1]||0));if(w){meta.width=w;}if(h){meta.height=h;}if(cls){meta.cls=cls;}var a=$.fn.media.defaults;var b=(($.meta||$.metadata)&&$.fn.media.defaults.preferMeta)?options:meta;var c=b==options?meta:options;var p={params:{bgColor:options.bgColor||$.fn.media.defaults.bgColor}};var opts=$.extend({},a,b,c);$.each(["attrs","params","flashvars","silverlight"],function(i,o){opts[o]=$.extend({},p[o]||{},a[o]||{},b[o]||{},c[o]||{});});if(typeof opts.caption=="undefined"){opts.caption=$el.text();}opts.src=opts.src||$el.attr("href")||$el.attr("src")||"unknown";return opts;}$.fn.media.swf=function(el,opts){if(typeof SWFObject=="undefined"){if(opts.flashvars){var a=[];for(var f in opts.flashvars){a.push(f+"="+opts.flashvars[f]);}if(!opts.params){opts.params={};}opts.params.flashvars=a.join("&");}return generate(el,opts,"flash");}var id=el.id?(' id="'+el.id+'"'):"";var cls=opts.cls?(' class="'+opts.cls+'"'):"";var $div=$("<div"+id+cls+">");$(el).after($div).remove();var so=new SWFObject(opts.src,"movie_player_"+counter++,opts.width,opts.height,opts.flashVersion,opts.bgColor);if(opts.expressInstaller){so.useExpressInstall(opts.expressInstaller);}for(var p in opts.params){if(p!="bgColor"){so.addParam(p,opts.params[p]);}}for(var f in opts.flashvars){so.addVariable(f,opts.flashvars[f]);}so.write($div[0]);if(opts.caption){$("<div>").appendTo($div).html(opts.caption);}return $div;};$.fn.media.flv=$.fn.media.mp3=function(el,opts){var src=opts.src;var player=/\.mp3\b/i.test(src)?$.fn.media.defaults.mp3Player:$.fn.media.defaults.flvPlayer;opts.src=player;opts.src=opts.src+"?file="+src;opts.flashvars=$.extend({},{file:src},opts.flashvars);return $.fn.media.swf(el,opts);};$.fn.media.xaml=function(el,opts){if(!window.Sys||!window.Sys.Silverlight){if($.fn.media.xaml.warning){return;}$.fn.media.xaml.warning=1;alert("You must include the Silverlight.js script.");return;}var props={width:opts.width,height:opts.height,background:opts.bgColor,inplaceInstallPrompt:opts.silverlight.inplaceInstallPrompt,isWindowless:opts.silverlight.isWindowless,framerate:opts.silverlight.framerate,version:opts.silverlight.version};var events={onError:opts.silverlight.onError,onLoad:opts.silverlight.onLoad};var id1=el.id?(' id="'+el.id+'"'):"";var id2=opts.id||"AG"+counter++;var cls=opts.cls?(' class="'+opts.cls+'"'):"";var $div=$("<div"+id1+cls+">");$(el).after($div).remove();Sys.Silverlight.createObjectEx({source:opts.src,initParams:opts.silverlight.initParams,userContext:opts.silverlight.userContext,id:id2,parentElement:$div[0],properties:props,events:events});if(opts.caption){$("<div>").appendTo($div).html(opts.caption);}return $div;};function generate(el,opts,player){var $el=$(el);var o=$.fn.media.defaults.players[player];if(player=="iframe"){var o=$('<iframe width="'+opts.width+'" height="'+opts.height+'" >');o.attr("src",opts.src);o.css("backgroundColor",o.bgColor);}else{if($.browser.msie){var a=['<object width="'+opts.width+'" height="'+opts.height+'" '];for(var key in opts.attrs){a.push(key+'="'+opts.attrs[key]+'" ');}for(var key in o.oAttrs||{}){a.push(key+'="'+o.oAttrs[key]+'" ');}a.push("></object>");var p=['<param name="'+(o.oUrl||"src")+'" value="'+opts.src+'">'];for(var key in opts.params){p.push('<param name="'+key+'" value="'+opts.params[key]+'">');}var o=document.createElement(a.join(""));for(var i=0;i<p.length;i++){o.appendChild(document.createElement(p[i]));}}else{var a=['<embed width="'+opts.width+'" height="'+opts.height+'" style="display:block"'];if(opts.src){a.push(' src="'+opts.src+'" ');}for(var key in opts.attrs){a.push(key+'="'+opts.attrs[key]+'" ');}for(var key in o.eAttrs||{}){a.push(key+'="'+o.eAttrs[key]+'" ');}for(var key in opts.params){a.push(key+'="'+opts.params[key]+'" ');}a.push("></embed>");}}var id=el.id?(' id="'+el.id+'"'):"";var cls=opts.cls?(' class="'+opts.cls+'"'):"";var $div=$("<div"+id+cls+">");$el.after($div).remove();($.browser.msie||player=="iframe")?$div.append(o):$div.html(a.join(""));if(opts.caption){$("<div>").appendTo($div).html(opts.caption);}return $div;}})(jQuery);