Commit 19c2aa6e authored by lechuck's avatar lechuck Committed by lucha
Browse files

Moved ai-embed to upstream

parent 60f34eb3
<?php
/*
* Plugin Name: Ai - Add oembed provider and embed short
* Plugin URI:
* Description: AI -Add Embed
* Version: 1.2
* Author: lechuck, lucha
* Author URI: http://noblogs.org
**/
function wp_embed_handler_youtube( $matches, $attr, $url, $rawattr ) {
$width = ($rawattr['width']) ? $rawattr['width'] : 340 ;
$height = ($rawattr['height']) ? $rawattr['height'] : 560 ;
if (is_ssl()) {
$ret_url = str_replace('http://', 'https://', $matches[0]);
} else {
$ret_url = $matches[0];
}
$embed = sprintf(
'<object height="%2$s" width="%3$s"><param name="movie" value="%1$s?fs=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="%1$s?fs=1" type="application/x-shockwave-flash" width="%2$s" height="%3$s" allowscriptaccess="always" allowfullscreen="true"></embed></object>',esc_attr($ret_url),esc_attr($height),esc_attro($width));
return apply_filters( 'embed_youtube', $embed, $matches, $attr, $url, $rawattr );
}
function wp_embed_handler_google_maps( $matches, $attr, $url, $rawattr ) {
$width = ($rawattr['width']) ? $rawattr['width'] : 425 ;
$height = ($rawattr['height']) ? $rawattr['height'] : 350 ;
$query = add_query_arg(array('output' => 'embed'), $matches[0]);
$embed = '<iframe width="'.esc_attr($width).'" height="'.esc_attr($height).'" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="'.esc_attr($query).'"></iframe>';
return apply_filters( 'embed_googlemaps', $embed, $matches, $attr, $url, $rawattr );
}
function wp_embed_handler_openstreetmap( $matches, $attr, $url, $rawattr ) {
$width = ($rawattr['width']) ? $rawattr['width'] : 425 ;
$height = ($rawattr['height']) ? $rawattr['height'] : 350 ;
$embed = '<iframe width="'.esc_attr($width).'" height="'.esc_attr($height).'" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="'.esc_attr($matches[0]).'"></iframe>';
return apply_filters( 'embed_openstreetmap', $embed, $matches, $attr, $url, $rawattr );
}
function wp_embed_handler_jamendo( $matches, $attr, $url, $rawattr )
{
$autoplay = '';
if( $rawattr['autoplay'] == 'true' )
{
$autoplay = '&playerautoplay=1';
}
if( $matches[1] == 'album' )
{
$embed = sprintf( '<div style="text-align:center;"><object width="200" height="300" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" align="middle"><param name="allowScriptAccess" value="always" /><param name="wmode" value="transparent" /><param name="movie" value="http://widgets.jamendo.com/it/album/?album_id=%2$s%1$s&playertype=2008" /><param name="quality" value="high" /><param name="bgcolor" value="#FFFFFF" /><embed src="http://widgets.jamendo.com/it/album/?album_id=%2$s%1$s&playertype=2008" quality="high" wmode="transparent" bgcolor="#FFFFFF" width="200" height="300" align="middle" allowScriptAccess="always" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer">&nbsp;</embed>&nbsp;</object></div>', esc_attr( $autoplay ), esc_attr( $matches[2] ));
}
elseif( $matches[1] == 'track' )
{
$embed = sprintf(
'<div style="text-align:center;"><object width="200" height="300" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" align="middle"><param name="allowScriptAccess" value="always" /><param name="wmode" value="transparent" /><param name="movie" value="http://widgets.jamendo.com/it/track/?playertype=2008%1$s&track_id=%2$s" /><param name="quality" value="high" /><param name="bgcolor" value="#FFFFFF" /><embed src="http://widgets.jamendo.com/it/track/?playertype=2008%1$s&track_id=%2$s" quality="high" wmode="transparent" bgcolor="#FFFFFF" width="200" height="300" align="middle" allowScriptAccess="always" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer">&nbsp;</embed>&nbsp;</object></div>', esc_attr( $autoplay ), esc_attr( $matches[2] ) );
}
return apply_filters( 'embed_jamendo', $embed, $matches, $attr, $url, $rawattr );
}
function wp_embed_handler_archive( $matches, $attr, $url, $rawattr ) {
global $flowneed;
$width = ($rawattr['width']) ? $rawattr['width'] : 340 ;
$height = ($rawattr['height']) ? $rawattr['height'] : 288;
$embed = sprintf(
'<div id="flowplayer%5$s" class="flowplayer" style="display:block;width:%3$spx;height:%2$spx;">
<video width="%3$s" height="%2$s" src="%1$s" controls></video>
</div>
',esc_attr($matches[0]),esc_attr($height),esc_attr($width),WP_PLUGIN_URL,md5(rand()));
wp_enqueue_script("flowplayer", WP_PLUGIN_URL."/ai-embed/flowplayer/js/flowplayer.min.js", false, null );
$flowneed=true;
return apply_filters( 'embed_archive', $embed, $matches, $attr, $url, $rawattr );
}
function wp_embed_handler_stream( $matches, $attr, $url, $rawattr ) {
global $flowneed;
$urlstream=preg_replace('/stream:/','',$matches[0]);
$width = ($rawattr['width']) ? $rawattr['width'] : 425 ;
$height = ($rawattr['height']) ? $rawattr['height'] : 30;
$embed = sprintf(
'<div id="flowplayer%5$s" style="display:block;width:%3$spx;height:%2$spx;"></div>
<script>
flowplayer("flowplayer%5$s",{ src:" %4$s/ai-embed/flowplayer/flowplayer-3.2.5.swf"},{
plugins: {
audio: {
url: "%4$s/ai-embed/flowplayer/flowplayer.audio-3.2.1.swf"
},
controls: {
fullscreen: false,
height: 30,
autoHide: false
}
},
clip: { url: "%1$s",
autoPlay: false,
autoBuffering: true
}
});
</script>',esc_attr($urlstream),esc_attr($height),esc_attr($width),WP_PLUGIN_URL,md5(rand()));
wp_enqueue_script("flowplayer", WP_PLUGIN_URL."/ai-embed/flowplayer/js/flowplayer-3.2.4.min.js", false, null );
$flowneed=true;
return apply_filters( 'embed_stream', $embed, $matches, $attr, $url, $rawattr );
}
function wp_embed_handler_mp3( $matches, $attr, $url, $rawattr ) {
$width = ($rawattr['width']) ? $rawattr['width'] : 320 ;
$height = ($rawattr['height']) ? $rawattr['height'] : 20 ;
$embed= sprintf(
'<object data="http://noblogs.org/flash/mp3player/mp3player.swf" type="application/x-shockwave-flash" width="%3$s" height="%2$s">
<param name="quality" value="best" />
<param name="bgcolor" value="#FFFFFF" />
<param name="movie" value="http://noblogs.org/flash/mp3player/mp3player.swf" />
<param name="FlashVars" value="file=%1$s&amp;height=%2$s&amp;width=%3$s" />
</object>',esc_attr($matches[0]),esc_attr($height),esc_attr($width));
return apply_filters( 'embed_archive', $embed, $matches, $attr, $url, $rawattr );
}
/*function wp_embed_handler_googlevideo( $matches, $attr, $url, $rawattr ) {
$width = ($rawattr['width']) ? $rawattr['width'] : 340 ;
$height = ($rawattr['height']) ? $rawattr['height'] : 288 ;
$embed= sprintf(
'<object data="%1$s" type="application/x-shockwave-flash" width="%3$s" height="%2$s">
<param name="quality" value="best" />
<param name="bgcolor" value="#FFFFFF" />
<param name="movie" value="%1$s" />
<param name="allowFullScreen" value="true" />
<param name="FlashVars" value="playerMode=embedded" />
</object>',esc_attr($matches[0]),esc_attr($height),esc_attr($width));
return apply_filters( 'embed_googlevideo', $embed, $matches, $attr, $url, $rawattr );
}*/
function wp_embed_handler_umapper( $matches, $attr, $url, $rawattr ) {
$width = ($rawattr['width']) ? $rawattr['width'] : 900 ;
$height = ($rawattr['height']) ? $rawattr['height'] : 390 ;
/*classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0"*/
$embed= sprintf(
'<object data="http://umapper.s3.amazonaws.com/templates/swf/embed.swf" type="application/x-shockwave-flash" width="%3$s" height="%2$s" >
<param name="FlashVars" value="kmlPath=%1$s"/>
<param name="allowScriptAccess" value="always"/>
<param name="allowFullScreen" value="true"/>
<param name="movie" value="http://umapper.s3.amazonaws.com/templates/swf/embed.swf"/>
<param name="quality" value="high"/>
</object>',esc_attr($matches[0]),esc_attr($height),esc_attr($width));
/* <embed src="http://umapper.s3.amazonaws.com/templates/swf/embed.swf" FlashVars="kmlPath=%1$s" allowScriptAccess="always" allowFullScreen="true" quality="high" width="%3$s" height="%2$s" name="umapper_embed" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed>*/
return apply_filters( 'embed_umapper', $embed, $matches, $attr, $url, $rawattr );
}
function wp_embed_handler_dctptv( $matches, $attr, $url, $rawattr ) {
$width = ($rawattr['width']) ? $rawattr['width'] : 480 ;
$height = ($rawattr['height']) ? $rawattr['height'] : 396 ;
$embed= sprintf(
'<iframe width="%3$s" scrolling="no" height="%2$s" frameborder="0" src="%1$s" name="dctp-teaser" marginwidth="0" marginheight="0"><br>
</iframe>',esc_attr($matches[0]),esc_attr($height),esc_attr($width));
return apply_filters( 'embed_dctptv', $embed, $matches, $attr, $url, $rawattr );
}
/*function wp_embed_handler_arav( $matches, $attr, $url, $rawattr ) {
$urlazzo=base64_decode(substr($url,34));
$type = ($rawattr['type']) ? $rawattr['type'] : audio ;
$width = ($rawattr['width']) ? $rawattr['width'] : 480 ;
$height = ($rawattr['height']) ? $rawattr['height'] : 396 ;
if ($type=="video") {
$embed= sprintf(
'<video width="%3$s" height="%2$s" controls="true"><source src="http://storage.arav.ventuordici.org/%1$s" type=\'video/ogg; codecs="vorbis, theora"\'></source>
<applet code="com.fluendo.player.Cortado.class" archive="http://theora.org/cortado.jar" width="%3$s" height="%2$s"><param name="url" value="http://storage.arav.ventuordici.org/%1$s">
<param name="duration" value="1000"></applet></video>',esc_attr($urlazzo),esc_attr($height),esc_attr($width));
}
if ($type=="audio") {
$embed= sprintf(
'<audio src="http://storage.arav.ventuordici.org/%1$s" controls="true">
<applet code="com.fluendo.player.Cortado.class" archive="http://theora.org/cortado.jar" width="580" height="40">
<param name="url" value="http://storage.arav.ventuordici.org/%1$s">
<param name="duration" value="1129"></applet></audio>',esc_attr($urlazzo),esc_attr($height),esc_attr($width));
}
return apply_filters( 'embed_arav', $embed, $matches, $attr, $url, $rawattr );
}*/
function wp_embed_handler_ogm( $matches, $attr, $url, $rawattr ) {
$width = ($rawattr['width']) ? $rawattr['width'] : 480 ;
$height = ($rawattr['height']) ? $rawattr['height'] : 396 ;
$embed= sprintf(
'<video width="%3$s" height="%2$s" controls><source src="%1$s" type="video/ogg; codecs=theora,vorbis"></source><applet code="com.fluendo.player.Cortado.class" archive="http://theora.org/cortado.jar" width="%3$s" height="%2$s"><param name="url" value="%1$s" /></applet></video>',esc_attr($url),esc_attr($height),esc_attr($width));
return apply_filters( 'embed_ogm', $embed, $matches, $attr, $url, $rawattr );
}
function register_embed_handlers() {
wp_embed_register_handler( 'stream', '#stream:.*#i', 'wp_embed_handler_stream' );
wp_embed_register_handler( 'mp3', '#http://.*?/.*?mp3#i', 'wp_embed_handler_mp3' );
wp_embed_register_handler( 'ogm', '#http://.*?/.*?ogm#i', 'wp_embed_handler_ogm' );
wp_embed_register_handler( 'archive', '#http://(.+\.)?archive.org/.*/.*\.(mp4|wmv|mov|mp3|ogv)#i', 'wp_embed_handler_archive' );
wp_embed_register_handler( 'umapper', '#http://umapper.s3.amazonaws.com/.*?\.kml#i', 'wp_embed_handler_umapper' );
wp_embed_register_handler( 'youtube', '#http://(www\.)?youtube\.com/v/.*?#i', 'wp_embed_handler_youtube' );
wp_embed_register_handler( 'jamendo', '#http://www\.jamendo\.com/.*/(album|track)/(.*)#i', 'wp_embed_handler_jamendo' );
wp_embed_register_handler( 'dctptv', '#http://www.dctp.tv/embed/.*?/#i', 'wp_embed_handler_dctptv' );
wp_embed_register_handler( 'googlemaps', '#http(s)?://maps\.google\.[^\.]+/(.*)#i', 'wp_embed_handler_google_maps');
wp_embed_register_handler( 'openstreetmap', '#http://www\.openstreetmap\.org/export/embed.html\?(.*)#i', 'wp_embed_handler_openstreetmap');
}
add_action('wp', 'register_embed_handlers');
function enqueue_flowplayer() {
wp_enqueue_script("flowplayer", WP_PLUGIN_URL."/ai-embed/flowplayer/js/flowplayer-3.2.4.min.js", false, null );
}
add_action('wp_enqueue_scripts', 'enqueue_flowplayer');
/* embed.ly providers */
$embedly = 'http://api.embed.ly/1/oembed';
wp_oembed_add_provider('http://*.slideshare.net/*',$embedly, false );
wp_oembed_add_provider('http://*.metacafe.com/watch/*',$embedly, false );
wp_oembed_add_provider('http://*.5min.com/Video/*',$embedly, false );
wp_oembed_add_provider('#http://(.+\.)xkcd\.com/.*#i',$embedly, true );
wp_oembed_add_provider('#http://(www\.)?asofterworld\.com/.*#i',$embedly, true );
wp_oembed_add_provider('http://*.wikipedia.org/wiki/*',$embedly, false );
wp_oembed_add_provider('http://www.wikimedia.org/wiki/File*',$embedly, false );
wp_oembed_add_provider('http://storify.com/*', $embedly, false );
/* Ted Talks */
wp_oembed_add_provider('http://www.ted.com/talks/*', 'http://www.ted.com/talks/oembed.json', false);
/* arkiwi */
wp_oembed_add_provider('http://www.arkiwi.org/*','http://www.arkiwi.org/oembed/', false );
wp_oembed_add_provider('http://arav.ventuordici.org/*','http://www.arkiwi.org/oembed/', false );
wp_oembed_add_provider('http://mp38.contaminati.net/*','http://www.arkiwi.org/oembed/', false );
wp_oembed_add_provider('http://media.fest-antifa.net/*','http://www.arkiwi.org/oembed/', false );
/* bambuser */
wp_oembed_add_provider('http://*.bambuser.com/*','http://api.bambuser.com/oembed', false);
/* mixcloud */
wp_oembed_add_provider('#https?://(www\.)?mixcloud\.com/.*#i', 'http://mixcloud.com/oembed', true);
/*add_action('wp_footer', 'injectJS');
function injectJS() {
global $flowneed;
if ( ! $flowneed )
return;
wp_register_script("flowplayer", WP_PLUGIN_URL."/ai-embed/flowplayer/js/flowplayer.min.js", false, null );
wp_print_scripts('flowplayer');
}*/
?>
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
<!doctype html>
<head>
<!-- player skin -->
<link rel="stylesheet" type="text/css" href="skin/minimalist.css" />
<!-- site specific styling -->
<style>
body { font: 12px "Myriad Pro", "Lucida Grande", sans-serif; text-align: center; padding-top: 5%; }
.flowplayer { width: 80%; }
</style>
<!-- flowplayer depends on jQuery 1.7.1+ (for now) -->
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<!-- include flowplayer -->
<script src="flowplayer.min.js"></script>
</head>
<body>
<!-- the player -->
<div class="flowplayer" data-swf="flowplayer.swf" data-ratio="0.417">
<video>
<source type="video/webm" src="http://stream.flowplayer.org/bauhaus/624x260.webm"/>
<source type="video/mp4" src="http://stream.flowplayer.org/bauhaus/624x260.mp4"/>
<source type="video/ogv" src="http://stream.flowplayer.org/bauhaus/624x260.ogv"/>
</video>
</div>
</body>
/*
* flowplayer.js 3.2.4. The Flowplayer API
*
* Copyright 2009 Flowplayer Oy
*
* This file is part of Flowplayer.
*
* Flowplayer is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Flowplayer is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Flowplayer. If not, see <http://www.gnu.org/licenses/>.
*
* Date: 2010-08-25 12:48:46 +0000 (Wed, 25 Aug 2010)
* Revision: 551
*/
(function(){function g(o){console.log("$f.fireEvent",[].slice.call(o))}function k(q){if(!q||typeof q!="object"){return q}var o=new q.constructor();for(var p in q){if(q.hasOwnProperty(p)){o[p]=k(q[p])}}return o}function m(t,q){if(!t){return}var o,p=0,r=t.length;if(r===undefined){for(o in t){if(q.call(t[o],o,t[o])===false){break}}}else{for(var s=t[0];p<r&&q.call(s,p,s)!==false;s=t[++p]){}}return t}function c(o){return document.getElementById(o)}function i(q,p,o){if(typeof p!="object"){return q}if(q&&p){m(p,function(r,s){if(!o||typeof s!="function"){q[r]=s}})}return q}function n(s){var q=s.indexOf(".");if(q!=-1){var p=s.slice(0,q)||"*";var o=s.slice(q+1,s.length);var r=[];m(document.getElementsByTagName(p),function(){if(this.className&&this.className.indexOf(o)!=-1){r.push(this)}});return r}}function f(o){o=o||window.event;if(o.preventDefault){o.stopPropagation();o.preventDefault()}else{o.returnValue=false;o.cancelBubble=true}return false}function j(q,o,p){q[o]=q[o]||[];q[o].push(p)}function e(){return"_"+(""+Math.random()).slice(2,10)}var h=function(t,r,s){var q=this,p={},u={};q.index=r;if(typeof t=="string"){t={url:t}}i(this,t,true);m(("Begin*,Start,Pause*,Resume*,Seek*,Stop*,Finish*,LastSecond,Update,BufferFull,BufferEmpty,BufferStop").split(","),function(){var v="on"+this;if(v.indexOf("*")!=-1){v=v.slice(0,v.length-1);var w="onBefore"+v.slice(2);q[w]=function(x){j(u,w,x);return q}}q[v]=function(x){j(u,v,x);return q};if(r==-1){if(q[w]){s[w]=q[w]}if(q[v]){s[v]=q[v]}}});i(this,{onCuepoint:function(x,w){if(arguments.length==1){p.embedded=[null,x];return q}if(typeof x=="number"){x=[x]}var v=e();p[v]=[x,w];if(s.isLoaded()){s._api().fp_addCuepoints(x,r,v)}return q},update:function(w){i(q,w);if(s.isLoaded()){s._api().fp_updateClip(w,r)}var v=s.getConfig();var x=(r==-1)?v.clip:v.playlist[r];i(x,w,true)},_fireEvent:function(v,y,w,A){if(v=="onLoad"){m(p,function(B,C){if(C[0]){s._api().fp_addCuepoints(C[0],r,B)}});return false}A=A||q;if(v=="onCuepoint"){var z=p[y];if(z){return z[1].call(s,A,w)}}if(y&&"onBeforeBegin,onMetaData,onStart,onUpdate,onResume".indexOf(v)!=-1){i(A,y);if(y.metaData){if(!A.duration){A.duration=y.metaData.duration}else{A.fullDuration=y.metaData.duration}}}var x=true;m(u[v],function(){x=this.call(s,A,y,w)});return x}});if(t.onCuepoint){var o=t.onCuepoint;q.onCuepoint.apply(q,typeof o=="function"?[o]:o);delete t.onCuepoint}m(t,function(v,w){if(typeof w=="function"){j(u,v,w);delete t[v]}});if(r==-1){s.onCuepoint=this.onCuepoint}};var l=function(p,r,q,t){var o=this,s={},u=false;if(t){i(s,t)}m(r,function(v,w){if(typeof w=="function"){s[v]=w;delete r[v]}});i(this,{animate:function(y,z,x){if(!y){return o}if(typeof z=="function"){x=z;z=500}if(typeof y=="string"){var w=y;y={};y[w]=z;z=500}if(x){var v=e();s[v]=x}if(z===undefined){z=500}r=q._api().fp_animate(p,y,z,v);return o},css:function(w,x){if(x!==undefined){var v={};v[w]=x;w=v}r=q._api().fp_css(p,w);i(o,r);return o},show:function(){this.display="block";q._api().fp_showPlugin(p);return o},hide:function(){this.display="none";q._api().fp_hidePlugin(p);return o},toggle:function(){this.display=q._api().fp_togglePlugin(p);return o},fadeTo:function(y,x,w){if(typeof x=="function"){w=x;x=500}if(w){var v=e();s[v]=w}this.display=q._api().fp_fadeTo(p,y,x,v);this.opacity=y;return o},fadeIn:function(w,v){return o.fadeTo(1,w,v)},fadeOut:function(w,v){return o.fadeTo(0,w,v)},getName:function(){return p},getPlayer:function(){return q},_fireEvent:function(w,v,x){if(w=="onUpdate"){var z=q._api().fp_getPlugin(p);if(!z){return}i(o,z);delete o.methods;if(!u){m(z.methods,function(){var B=""+this;o[B]=function(){var C=[].slice.call(arguments);var D=q._api().fp_invoke(p,B,C);return D==="undefined"||D===undefined?o:D}});u=true}}var A=s[w];if(A){var y=A.apply(o,v);if(w.slice(0,1)=="_"){delete s[w]}return y}return o}})};function b(q,G,t){var w=this,v=null,D=false,u,s,F=[],y={},x={},E,r,p,C,o,A;i(w,{id:function(){return E},isLoaded:function(){return(v!==null&&v.fp_play!==undefined&&!D)},getParent:function(){return q},hide:function(H){if(H){q.style.height="0px"}if(w.isLoaded()){v.style.height="0px"}return w},show:function(){q.style.height=A+"px";if(w.isLoaded()){v.style.height=o+"px"}return w},isHidden:function(){return w.isLoaded()&&parseInt(v.style.height,10)===0},load:function(J){if(!w.isLoaded()&&w._fireEvent("onBeforeLoad")!==false){var H=function(){u=q.innerHTML;if(u&&!flashembed.isSupported(G.version)){q.innerHTML=""}if(J){J.cached=true;j(x,"onLoad",J)}flashembed(q,G,{config:t})};var I=0;m(a,function(){this.unload(function(K){if(++I==a.length){H()}})})}return w},unload:function(J){if(this.isFullscreen()&&/WebKit/i.test(navigator.userAgent)){if(J){J(false)}return w}if(u.replace(/\s/g,"")!==""){if(w._fireEvent("onBeforeUnload")===false){if(J){J(false)}return w}D=true;try{if(v){v.fp_close();w._fireEvent("onUnload")}}catch(H){}var I=function(){v=null;q.innerHTML=u;D=false;if(J){J(true)}};setTimeout(I,50)}else{if(J){J(false)}}return w},getClip:function(H){if(H===undefined){H=C}return F[H]},getCommonClip:function(){return s},getPlaylist:function(){return F},getPlugin:function(H){var J=y[H];if(!J&&w.isLoaded()){var I=w._api().fp_getPlugin(H);if(I){J=new l(H,I,w);y[H]=J}}return J},getScreen:function(){return w.getPlugin("screen")},getControls:function(){return w.getPlugin("controls")._fireEvent("onUpdate")},getLogo:function(){try{return w.getPlugin("logo")._fireEvent("onUpdate")}catch(H){}},getPlay:function(){return w.getPlugin("play")._fireEvent("onUpdate")},getConfig:function(H){return H?k(t):t},getFlashParams:function(){return G},loadPlugin:function(K,J,M,L){if(typeof M=="function"){L=M;M={}}var I=L?e():"_";w._api().fp_loadPlugin(K,J,M,I);var H={};H[I]=L;var N=new l(K,null,w,H);y[K]=N;return N},getState:function(){return w.isLoaded()?v.fp_getState():-1},play:function(I,H){var J=function(){if(I!==undefined){w._api().fp_play(I,H)}else{w._api().fp_play()}};if(w.isLoaded()){J()}else{if(D){setTimeout(function(){w.play(I,H)},50)}else{w.load(function(){J()})}}return w},getVersion:function(){var I="flowplayer.js 3.2.4";if(w.isLoaded()){var H=v.fp_getVersion();H.push(I);return H}return I},_api:function(){if(!w.isLoaded()){throw"Flowplayer "+w.id()+" not loaded when calling an API method"}return v},setClip:function(H){w.setPlaylist([H]);return w},getIndex:function(){return p},_swfHeight:function(){return v.clientHeight}});m(("Click*,Load*,Unload*,Keypress*,Volume*,Mute*,Unmute*,PlaylistReplace,ClipAdd,Fullscreen*,FullscreenExit,Error,MouseOver,MouseOut").split(","),function(){var H="on"+this;if(H.indexOf("*")!=-1){H=H.slice(0,H.length-1);var I="onBefore"+H.slice(2);w[I]=function(J){j(x,I,J);return w}}w[H]=function(J){j(x,H,J);return w}});m(("pause,resume,mute,unmute,stop,toggle,seek,getStatus,getVolume,setVolume,getTime,isPaused,isPlaying,startBuffering,stopBuffering,isFullscreen,toggleFullscreen,reset,close,setPlaylist,addClip,playFeed,setKeyboardShortcutsEnabled,isKeyboardShortcutsEnabled").split(","),function(){var H=this;w[H]=function(J,I){if(!w.isLoaded()){return w}var K=null;if(J!==undefined&&I!==undefined){K=v["fp_"+H](J,I)}else{K=(J===undefined)?v["fp_"+H]():v["fp_"+H](J)}return K==="undefined"||K===undefined?w:K}});w._fireEvent=function(Q){if(typeof Q=="string"){Q=[Q]}var R=Q[0],O=Q[1],M=Q[2],L=Q[3],K=0;if(t.debug){g(Q)}if(!w.isLoaded()&&R=="onLoad"&&O=="player"){v=v||c(r);o=w._swfHeight();m(F,function(){this._fireEvent("onLoad")});m(y,function(S,T){T._fireEvent("onUpdate")});s._fireEvent("onLoad")}if(R=="onLoad"&&O!="player"){return}if(R=="onError"){if(typeof O=="string"||(typeof O=="number"&&typeof M=="number")){O=M;M=L}}if(R=="onContextMenu"){m(t.contextMenu[O],function(S,T){T.call(w)});return}if(R=="onPluginEvent"||R=="onBeforePluginEvent"){var H=O.name||O;var I=y[H];if(I){I._fireEvent("onUpdate",O);return I._fireEvent(M,Q.slice(3))}return}if(R=="onPlaylistReplace"){F=[];var N=0;m(O,function(){F.push(new h(this,N++,w))})}if(R=="onClipAdd"){if(O.isInStream){return}O=new h(O,M,w);F.splice(M,0,O);for(K=M+1;K<F.length;K++){F[K].index++}}var P=true;if(typeof O=="number"&&O<F.length){C=O;var J=F[O];if(J){P=J._fireEvent(R,M,L)}if(!J||P!==false){P=s._fireEvent(R,M,L,J)}}m(x[R],function(){P=this.call(w,O,M);if(this.cached){x[R].splice(K,1)}if(P===false){return false}K++});return P};function B(){if($f(q)){$f(q).getParent().innerHTML="";p=$f(q).getIndex();a[p]=w}else{a.push(w);p=a.length-1}A=parseInt(q.style.height,10)||q.clientHeight;E=q.id||"fp"+e();r=G.id||E+"_api";G.id=r;t.playerId=E;if(typeof t=="string"){t={clip:{url:t}}}if(typeof t.clip=="string"){t.clip={url:t.clip}}t.clip=t.clip||{};if(q.getAttribute("href",2)&&!t.clip.url){t.clip.url=q.getAttribute("href",2)}s=new h(t.clip,-1,w);t.playlist=t.playlist||[t.clip];var I=0;m(t.playlist,function(){var K=this;if(typeof K=="object"&&K.length){K={url:""+K}}m(t.clip,function(L,M){if(M!==undefined&&K[L]===undefined&&typeof M!="function"){K[L]=M}});t.playlist[I]=K;K=new h(K,I,w);F.push(K);I++});m(t,function(K,L){if(typeof L=="function"){if(s[K]){s[K](L)}else{j(x,K,L)}delete t[K]}});m(t.plugins,function(K,L){if(L){y[K]=new l(K,L,w)}});if(!t.plugins||t.plugins.controls===undefined){y.controls=new l("controls",null,w)}y.canvas=new l("canvas",null,w);u=q.innerHTML;function J(L){var K=w.hasiPadSupport&&w.hasiPadSupport();if(/iPad|iPhone|iPod/i.test(navigator.userAgent)&&!/.flv$/i.test(F[0].url)&&!K){return true}if(!w.isLoaded()&&w._fireEvent("onBeforeClick")!==false){w.load()}return f(L)}function H(){if(u.replace(/\s/g,"")!==""){if(q.addEventListener){q.addEventListener("click",J,false)}else{if(q.attachEvent){q.attachEvent("onclick",J)}}}else{if(q.addEventListener){q.addEventListener("click",f,false)}w.load()}}setTimeout(H,0)}if(typeof q=="string"){var z=c(q);if(!z){throw"Flowplayer cannot access element: "+q}q=z;B()}else{B()}}var a=[];function d(o){this.length=o.length;this.each=function(p){m(o,p)};this.size=function(){return o.length}}window.flowplayer=window.$f=function(){var p=null;var o=arguments[0];if(!arguments.length){m(a,function(){if(this.isLoaded()){p=this;return false}});return p||a[0]}if(arguments.length==1){if(typeof o=="number"){return a[o]}else{if(o=="*"){return new d(a)}m(a,function(){if(this.id()==o.id||this.id()==o||this.getParent()==o){p=this;return false}});return p}}if(arguments.length>1){var t=arguments[1],q=(arguments.length==3)?arguments[2]:{};if(typeof t=="string"){t={src:t}}t=i({bgcolor:"#000000",version:[9,0],expressInstall:"http://static.flowplayer.org/swf/expressinstall.swf",cachebusting:true},t);if(typeof o=="string"){if(o.indexOf(".")!=-1){var s=[];m(n(o),function(){s.push(new b(this,k(t),k(q)))});return new d(s)}else{var r=c(o);return new b(r!==null?r:o,t,q)}}else{if(o){return new b(o,t,q)}}}return null};i(window.$f,{fireEvent:function(){var o=[].slice.call(arguments);var q=$f(o[0]);return q?q._fireEvent(o.slice(1)):null},addPlugin:function(o,p){b.prototype[o]=p;return $f},each:m,extend:i});if(typeof jQuery=="function"){jQuery.fn.flowplayer=function(q,p){if(!arguments.length||typeof arguments[0]=="number"){var o=[];this.each(function(){var r=$f(this);if(r){o.push(r)}});return arguments.length?o[arguments[0]]:new d(o)}return this.each(function(){$f(this,k(q),p?k(p):{})})}}})();(function(){var h=document.all,j="http://www.adobe.com/go/getflashplayer",c=typeof jQuery=="function",e=/(\d+)[^\d]+(\d+)[^\d]*(\d*)/,b={width:"100%",height:"100%",id:"_"+(""+Math.random()).slice(9),allowfullscreen:true,allowscriptaccess:"always",quality:"high",version:[3,0],onFail:null,expressInstall:null,w3c:false,cachebusting:false};if(window.attachEvent){window.attachEvent("onbeforeunload",function(){__flash_unloadHandler=function(){};__flash_savedUnloadHandler=function(){}})}function i(m,l){if(l){for(var f in l){if(l.hasOwnProperty(f)){m[f]=l[f]}}}return m}function a(f,n){var m=[];for(var l in f){if(f.hasOwnProperty(l)){m[l]=n(f[l])}}return m}window.flashembed=function(f,m,l){if(typeof f=="string"){f=document.getElementById(f.replace("#",""))}if(!f){return}if(typeof m=="string"){m={src:m}}return new d(f,i(i({},b),m),l)};var g=i(window.flashembed,{conf:b,getVersion:function(){var m,f;try{f=navigator.plugins["Shockwave Flash"].description.slice(16)}catch(o){try{m=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");f=m&&m.GetVariable("$version")}catch(n){try{m=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");f=m&&m.GetVariable("$version")}catch(l){}}}f=e.exec(f);return f?[f[1],f[3]]:[0,0]},asString:function(l){if(l===null||l===undefined){return null}var f=typeof l;if(f=="object"&&l.push){f="array"}switch(f){case"string":l=l.replace(new RegExp('(["\\\\])',"g"),"\\$1");l=l.replace(/^\s?(\d+\.?\d+)%/,"$1pct");return'"'+l+'"';case"array":return"["+a(l,function(o){return g.asString(o)}).join(",")+"]";case"function":return'"function()"';case"object":var m=[];for(var n in l){if(l.hasOwnProperty(n)){m.push('"'+n+'":'+g.asString(l[n]))}}return"{"+m.join(",")+"}"}return String(l).replace(/\s/g," ").replace(/\'/g,'"')},getHTML:function(o,l){o=i({},o);var n='<object width="'+o.width+'" height="'+o.height+'" id="'+o.id+'" name="'+o.id+'"';if(o.cachebusting){o.src+=((o.src.indexOf("?")!=-1?"&":"?")+Math.random())}if(o.w3c||!h){n+=' data="'+o.src+'" type="application/x-shockwave-flash"'}else{n+=' classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'}n+=">";if(o.w3c||h){n+='<param name="movie" value="'+o.src+'" />'}o.width=o.height=o.id=o.w3c=o.src=null;o.onFail=o.version=o.expressInstall=null;for(var m in o){if(o[m]){n+='<param name="'+m+'" value="'+o[m]+'" />'}}var p="";if(l){for(var f in l){if(l[f]){var q=l[f];p+=f+"="+(/function|object/.test(typeof q)?g.asString(q):q)+"&"}}p=p.slice(0,-1);n+='<param name="flashvars" value=\''+p+"' />"}n+="</object>";return n},isSupported:function(f){return k[0]>f[0]||k[0]==f[0]&&k[1]>=f[1]}});var k=g.getVersion();function d(f,n,m){if(g.isSupported(n.version)){f.innerHTML=g.getHTML(n,m)}else{if(n.expressInstall&&g.isSupported([6,65])){f.innerHTML=g.getHTML(i(n,{src:n.expressInstall}),{MMredirectURL:location.href,MMplayerType:"PlugIn",MMdoctitle:document.title})}else{if(!f.innerHTML.replace(/\s/g,"")){f.innerHTML="<h2>Flash version "+n.version+" or greater is required</h2><h3>"+(k[0]>0?"Your version is "+k:"You have no flash plugin installed")+"</h3>"+(f.tagName=="A"?"<p>Click here to download latest version</p>":"<p>Download latest version from <a href='"+j+"'>here</a></p>");if(f.tagName=="A"){f.onclick=function(){location.href=j}}}if(n.onFail){var l=n.onFail.call(this);if(typeof l=="string"){f.innerHTML=l}}}}if(h){window[n.id]=document.getElementById(n.id)}i(this,{getRoot:function(){return f},getOptions:function(){return n},getConf:function(){return m},getApi:function(){return f.firstChild}})}if(c){jQuery.tools=jQuery.tools||{version:"3.2.4"};jQuery.tools.flashembed={conf:b};jQuery.fn.flashembed=function(l,f){return this.each(function(){$(this).data("flashembed",flashembed(this,l,f))})}}})();
\ No newline at end of file
<html><head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<!-- A minimal Flowplayer setup to get you started -->
<!--
include flowplayer JavaScript file that does
Flash embedding and provides the Flowplayer API.
-->
<script type="text/javascript" src="flowplayer-3.2.4.min.js"></script>
<!-- some minimal styling, can be removed -->
<link rel="stylesheet" type="text/css" href="style.css">
<!-- page title -->
<title>Minimal Flowplayer setup</title>
</head><body>
<div id="page">
<h1>Minimal Flowplayer setup</h1>
<p>View commented source code to get familiar with Flowplayer installation.</p>
<!-- this A tag is where your Flowplayer will be placed. it can be anywhere -->
<a
href="http://e1h13.simplecdn.net/flowplayer/flowplayer.flv"
style="display:block;width:520px;height:330px"
id="player">
</a>
<!-- this will install flowplayer inside previous A- tag. -->
<script>
flowplayer("player", "../flowplayer-3.2.5.swf");
</script>
<!--
after this line is purely informational stuff.
does not affect on Flowplayer functionality
-->
<p>
If you are running these examples <strong>locally</strong> and not on some webserver you must edit your
<a href="http://www.macromedia.com/support/documentation/en/flashplayer/help/settings_manager04.html">
Flash security settings</a>.
</p>
<p class="less">
Select "Edit locations" &gt; "Add location" &gt; "Browse for files" and select
flowplayer-x.x.x.swf you just downloaded.
</p>
<h2>Documentation</h2>
<p>
<a href="http://flowplayer.org/documentation/installation/index.html">Flowplayer installation</a>
</p>
<p>
<a href="http://flowplayer.org/documentation/configuration/index.html">Flowplayer configuration</a>
</p>
<p>
See this identical page on <a href="http://flowplayer.org/demos/example/index.htm">Flowplayer website</a>
</p>
</div>
</body></html>
\ No newline at end of file
body {
background-color:#fff;
font-family:"Lucida Grande","bitstream vera sans","trebuchet ms",verdana,arial;
text-align:center;
}
#page {
background-color:#efefef;
width:600px;
margin:50px auto;
padding:20px 150px 20px 50px;
min-height:600px;
border:2px solid #fff;
outline:1px solid #ccc;
text-align:left;
}
h1, h2 {
letter-spacing:-1px;
color:#2D5AC3;
font-weight:normal;
margin-bottom:-10px;
}
h1 {
font-size:22px;
}
h2 {
font-size:18px;
}
.less {
color:#999;
font-size:12px;
}
a {
color:#295c72;
}
This diff is collapsed.
.flowplayer{position:relative;width:100%;text-align:left;background-size:contain;background-repeat:no-repeat;background-position:center center;display:inline-block;}
.flowplayer *{font-weight:inherit;font-family:inherit;font-style:inherit;text-decoration:inherit;font-size:100%;padding:0;border:0;margin:0;list-style-type:none}
.flowplayer a:focus{outline:0}
.flowplayer video{width:100%}
.flowplayer.is-ipad video{-webkit-transform:translateX(-2048px);}
.is-ready.flowplayer.is-ipad video{-webkit-transform:translateX(0)}
.flowplayer .fp-engine,.flowplayer .fp-ui,.flowplayer .fp-message{position:absolute;top:0;left:0;width:100%;height:100%;cursor:pointer;z-index:1}
.flowplayer .fp-message{display:none;text-align:center;padding-top:5%;cursor:default;}
.flowplayer .fp-message h2{font-size:120%;margin-bottom:1em}
.flowplayer .fp-message p{color:#666;font-size:95%}
.flowplayer .fp-controls{position:absolute;bottom:0;width:100%;}
.no-background.flowplayer .fp-controls{background-color:transparent !important;background-image:-moz-linear-gradient(transparent,transparent) !important;background-image:-webkit-gradient(linear,0 0,0 100%,from(transparent),to(transparent)) !important}
.is-fullscreen.flowplayer .fp-controls{bottom:3px}
.is-mouseover.flowplayer .fp-controls{bottom:0}
.flowplayer .fp-waiting{display:none;margin:19% auto;text-align:center;}
.flowplayer .fp-waiting *{-webkit-box-shadow:0 0 5px #333;-moz-box-shadow:0 0 5px #333;box-shadow:0 0 5px #333}
.flowplayer .fp-waiting em{width:1em;height:1em;-webkit-border-radius:1em;-moz-border-radius:1em;border-radius:1em;background-color:rgba(255,255,255,0.8);display:inline-block;-webkit-animation:pulse .6s infinite;-moz-animation:pulse .6s infinite;animation:pulse .6s infinite;margin:.3em;opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);}
.flowplayer .fp-waiting em:nth-child(1){-webkit-animation-delay:.3s;-moz-animation-delay:.3s;animation-delay:.3s}
.flowplayer .fp-waiting em:nth-child(2){-webkit-animation-delay:.45s;-moz-animation-delay:.45s;animation-delay:.45s}
.flowplayer .fp-waiting em:nth-child(3){-webkit-animation-delay:.6s;-moz-animation-delay:.6s;animation-delay:.6s}
.flowplayer .fp-waiting p{color:#ccc;font-weight:bold}
.flowplayer .fp-speed{font-size:30px;background-color:#333;background-color:rgba(51,51,51,0.8);color:#eee;margin:0 auto;text-align:center;width:120px;padding:.1em 0 0;opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);-webkit-transition:opacity .5s;-moz-transition:opacity .5s;transition:opacity .5s;}
.flowplayer .fp-speed.fp-hilite{opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
.flowplayer .fp-help{position:absolute;top:0;left:-9999em;z-index:100;background-color:#333;background-color:rgba(51,51,51,0.9);width:100%;height:100%;opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);-webkit-transition:opacity .2s;-moz-transition:opacity .2s;transition:opacity .2s;text-align:center;}
.is-help.flowplayer .fp-help{left:0;opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
.flowplayer .fp-help .fp-help-section{margin:3%}
.flowplayer .fp-help .fp-help-basics{margin-top:6%}
.flowplayer .fp-help p{color:#eee;margin:.5em 0;font-size:14px;line-height:1.5;display:inline-block;margin:1% 2%}
.flowplayer .fp-help em{background:#eee;-webkit-border-radius:.3em;-moz-border-radius:.3em;border-radius:.3em;margin-right:.4em;padding:.3em .6em;color:#333}
.flowplayer .fp-help small{font-size:90%;color:#aaa}
.flowplayer .fp-help .fp-close{display:block}
@media (max-width: 600px){.flowplayer .fp-help p{font-size:9px}
}.flowplayer .fp-subtitle{position:absolute;bottom:40px;left:-99999em;z-index:10;text-align:center;width:100%;opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);-webkit-transition:opacity .3s;-moz-transition:opacity .3s;transition:opacity .3s;}
.flowplayer .fp-subtitle p{display:inline;background-color:#333;background-color:rgba(51,51,51,0.9);color:#eee;padding:.1em .4em;font-size:16px;line-height:1.6;}
.flowplayer .fp-subtitle p:after{content:'';clear:both}
.flowplayer .fp-subtitle.fp-active{left:0;opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
.flowplayer .fp-fullscreen,.flowplayer .fp-unload,.flowplayer .fp-mute,.flowplayer .fp-embed,.flowplayer .fp-close,.flowplayer .fp-play{background-image:url(img/white.png);background-size:37px 300px;}
.color-light.flowplayer .fp-fullscreen,.color-light.flowplayer .fp-unload,.color-light.flowplayer .fp-mute,.color-light.flowplayer .fp-embed,.color-light.flowplayer .fp-close,.color-light.flowplayer .fp-play{background-image:url(img/black.png);}
@media (-webkit-min-device-pixel-ratio: 2){.color-light.flowplayer .fp-fullscreen,.color-light.flowplayer .fp-unload,.color-light.flowplayer .fp-mute,.color-light.flowplayer .fp-embed,.color-light.flowplayer .fp-close,.color-light.flowplayer .fp-play