Commit 309b7487 authored by Melissa Draper's avatar Melissa Draper Committed by Francois Marier
Browse files

Update flowplayer code to fix the mp3 player in ie7/8 (Bug #804129)



The flowplayer code was out of date for ie7 and ie8 causing the object
to not load. Additionally, the eolas_fix script was now causing a js
error and has been removed as it was no longer needed.

Change-Id: I67a23f223954276520b6c9da1ae1f7b291e84b47
Signed-off-by: default avatarMelissa Draper <melissa@catalyst.net.nz>
parent 4eac5847
// Documentation & updates available at:
// http://codecentre.eplica.is/js/eolasfix/test.htm
// Hugsmijan ehf. (June 2007)
// Usage: Place the following line of code somewhere in the HTML code of your page:
// <script type="text/javascript" src="[path-to-your-script-folder]/eolasfix.js" defer="defer"></script>
(function( Eolas_Fixed,
win, doc,
getElementsByTagName,
outerHTML,
parentNode,
tags,
elmsToRemoveOnload,
x,
is_ie,
y,z,elm,childNode,HTML,dummy,eolasfix)
{
// run only once!
if (win[Eolas_Fixed]) return;
win[Eolas_Fixed] = 1;
eolasfix = function ()
{
// for each tag name specified in Array t
while (tags[++x])
{
// find all elements of that type in the document
// loop through the elements
y = 0;
while (elm = doc[getElementsByTagName](tags[x])[y++])
{
if (is_ie)
{
HTML = '>';
z = 0;
// <param> elements don't show up in innerHTML IE
// so we need to collect their outerHTML.
while (childNode = elm.childNodes[z++]) HTML += childNode[outerHTML];
// create a 'dummy' element
dummy = doc.createElement('i');
// inject it next to `elm`,
elm[parentNode].insertBefore(dummy, elm);
// and turn it into an `elm` clone
dummy[outerHTML] = elm[outerHTML].replace(/>/, HTML);
// increment y to skip over it
y++;
// then hide the original elm
elm.style.display = 'none';
// and save it in 'The List of Elements to Remove Later'.
elmsToRemoveOnload[elmsToRemoveOnload.length] = elm;
}
else
{
elm[outerHTML] = elm[outerHTML];
}
}
}
};
// For IE run the fix straight away (because the defer="defer"
// attribute has delayed execution until the DOM has loaded).
// Then assign a window.onload event to purge the old elements.
is_ie && !eolasfix() && win.attachEvent('onload', function(){
x=0;
while(elm = elmsToRemoveOnload[x++]) elm[parentNode].removeChild(elm);
});
// For Opera set an `DOMContentLoaded` event to run the fix.
win.opera && doc.addEventListener('DOMContentLoaded', eolasfix, 0);
})( '__Eolas_Fixed', // Eolas_Fixed
window, // win
document, // doc
'getElementsByTagName', // getElementsByTagName
'outerHTML', // outerHTML
'parentNode', // parentNode
['object','embed','applet'], // tags
[], // elmsToRemoveOnload
-1 // x
/*@cc_on,1 @*/ // is_ie
);
......@@ -2,7 +2,7 @@ Flowplayer in Mahara
=====================
Website: http://flowplayer.org/plugins/streaming/audio.html
Version: 3.2.1
Version: 3.2.2
This flash mp3 player is used by the internal media blocktype.
......
Version history:
3.2.2
-----
Fixes:
- Now can download cover images from different domains without cross-domain security errors
3.2.1
-----
Changes:
......
version=3.2.1
version=3.2.2
devkit-dir=../flowplayer.devkit
\ No newline at end of file
/* * Copyright 2008, 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/>. */ package org.flowplayer.audio { import org.flowplayer.model.PluginFactory; import flash.display.Sprite; /** * @author api */ public class AudioProviderFactory extends Sprite implements PluginFactory { public function newPlugin():Object { return new AudioProvider(); } }}
\ No newline at end of file
/* * Copyright (c) 2008-2011 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/>. */ package org.flowplayer.audio { import org.flowplayer.model.PluginFactory; import flash.display.Sprite; /** * @author api */ public class AudioProviderFactory extends Sprite implements PluginFactory { public function newPlugin():Object { return new AudioProvider(); } }}
\ No newline at end of file
......
......@@ -2,7 +2,7 @@ Flowplayer in Mahara
=====================
Website: http://flowplayer.org
Version: 3.2.4
Version: 3.2.7
This flash video player is used by the internal media blocktype.
......
Version history:
3.2.7
-----
- Loads the new controlbar plugin version 3.2.5. No other functional changes.
3.2.6
-----
- linkUrl should now work better with popup blockers: http://code.google.com/p/flowplayer-core/issues/detail?id=31
- new linkWindow value "_popup" opens the linked page in a popup browser window
- added new onClipResized event
- Added new onUnload event, can be only listened in Flash and not triggered to JS
- API: Added new url property to plugin objects
Fixes:
- it was not possible to call play() in an onFinish listener
- fix to preserve the infoObject for custom netStream and netConnection clients in cases where the infoObject is a
primitive object without properties
- does not show the error dialog in the debugger player when showErrors: false
- fixed to correctly handle xx.ca subdomains when validating the license key
- a custom logo is now sized correctly according to the configured size
- does not show the buffer animation any more when the player receives the onBufferEmpty message from the netStream.
The animation was unnecessarily shown in some situations.
- fixed #155. added new urlEncoding property to Clip for url ncoding ut8 urls
3.2.5
-----
- added new scaling option 'crop' that resizes to fill all available space, cropping on top/bottom or left/right
- improvements to RSS file parsing
- Now displays a hand cursor when a linkUrl is used in clips
3.2.4
-----
- new flowplayer.js version, with Apple iDevice fixes
......@@ -17,6 +46,7 @@ Fixes:
Fixes:
- correct verification of license keys in *.ca domains
- fix to make playback to always reach end of video
- fixed resuming of live streams
3.2.2
-----
......
......@@ -11,36 +11,26 @@ devkit-dir=../flowplayer.devkit
plugins.dir=../
deploy.dir=/Users/api/flowplayer.org/out/artifacts/setup_war_exploded/swf
# list of plugins to build as part of this build
# 3.0.4
#plugin.buildfiles=controls/build.xml,captions/build.xml,audio/build.xml,smil/build.xml,rtmp-streaming/build.xml,bwcheck/build.xml
# plugin.buildfiles=pseudostreaming/build.xml,content/build.xml,\
# captions/build.xml,bwcheck/build.xml,securestreaming/build.xml,cluster/build.xml,smil/build.xml,\
# akamai/build.xml,content/build.xml,sorenson/build.xml
# 3.1.3
#plugin.buildfiles=akamai/build.xml,pseudostreaming/build.xml,\
# bwcheck/build.xml,smil/build.xml,rtmp/build.xml,securestreaming/build.xml,controls/build.xml,audio/build.xml,captions/build.xml,cluster/build.xml,\
# controls/build-tube.xml,controls/build-skinless.xml,audio/build.xml
# 3.1.6
# plugin.buildfiles=controls/build.xml,controls/build-skinless.xml,controls/build-tube.xml,controls/build-air.xml, \
# rtmp/build.xml,slowmotion/build.xml,captions/build.xml, \
# audio/build.xml,pseudostreaming/build.xml,analytics/build.xml,akamai/build.xml,bwcheck/build.xml,cluster/build.xml, \
# viralvideos/build.xml,securestreaming/build.xml,analytics/build.xml
#plugin.buildfiles=bwcheck/build.xml
# 3.2.4
#plugin.buildfiles=rtmp/build.xml,pseudostreaming/build.xml
# 3.2.3:
#plugin.buildfiles=viralvideos/build.xml,rtmp/build.xml,controls/build.xml,controls/build-air.xml,controls/build-tube.xml,controls/build-skinless.xml,\
# audio/build.xml,analytics/build.xml,smil/build.xml,\
# bwcheck/build.xml,youtube_new/build.xml,pseudostreaming/build.xml,captions/build.xml,securestreaming/build.xml,cluster/build.xml
#plugin.buildfiles=bwcheck/build.xml, \
# analytics/build.xml, \
# audio/build.xml, \
# captions/build.xml, \
# cluster/build.xml, \
# controls/build.xml,controls/build-air.xml,controls/build-tube.xml,controls/build-skinless.xml, \
# pseudostreaming/build.xml, \
# securestreaming/build.xml, \
# viralvideos/build.xml, \
# sharing/build.xml
#
plugin.buildfiles=bwcheck/build.xml,controls/build.xml,controls/build-air.xml,controls/build-tube.xml,controls/build-skinless.xml, \
viralvideos/build.xml,pseudostreaming/build.xml,securestreaming/build.xml,smil/build.xml,sharing/build.xml
# 3.2.4
plugin.buildfiles=rtmp/build.xml,pseudostreaming/build.xml
# for plugins that can be built inside the player
for plugins that can be built inside the player
plugin-classes=${plugins.dir}controls/src/actionscript ${plugins.dir}content/src/actionscript \
${plugins.dir}akamai/src/actionscript ${plugins.dir}rtmp/src/actionscript ${plugins.dir}pseudostreaming/src/actionscript \
......@@ -61,3 +51,4 @@ bgcolor=0xFFFFFF
width=500
height=350
Str
\ No newline at end of file
......@@ -4,11 +4,11 @@
<property name="version-1" value="3"/>
<property name="version-2" value="2"/>
<property name="version-3" value="4"/>
<property name="version-3" value="7"/>
<property name="version-status" value=""/>
<property name="controls-version-info" value="3.2.2"/>
<property name="audio-version-info" value="3.2.1"/>
<property name="flowplayer-js-version-info" value="3.2.4"/>
<property name="controls-version-info" value="3.2.5"/>
<property name="audio-version-info" value="3.2.2"/>
<property name="flowplayer-js-version-info" value="3.2.6"/>
<property name="source-dist-root-folder" value="flowplayer"/>
<property name="version-status-quoted" value="&quot;&#39;${version-status}&#39;&quot;"/>
......@@ -48,7 +48,7 @@
<property name="libs-path" value="${flex3libsdir} ${lib-dir}/thunderbolt ${plugin-libs} ${plugin-swc}"/>
<property name="classes-for-lib"
value="org.flowplayer.view.Flowplayer org.flowplayer.util.PropertyBinder org.flowplayer.util.Arrange org.flowplayer.util.Assert org.flowplayer.model.PluginEvent org.flowplayer.util.TextUtil org.flowplayer.view.AbstractSprite org.flowplayer.view.AnimationEngine org.flowplayer.controller.NetStreamControllingStreamProvider"/>
value="org.flowplayer.view.Flowplayer org.flowplayer.util.PropertyBinder org.flowplayer.util.Arrange org.flowplayer.util.Assert org.flowplayer.model.PluginEvent org.flowplayer.util.TextUtil org.flowplayer.view.AbstractSprite org.flowplayer.view.AnimationEngine org.flowplayer.controller.NetStreamControllingStreamProvider org.flowplayer.controller.NetStreamClient org.flowplayer.controller.NetConnectionClient"/>
<property name="doc-classes"
value="${classes-for-lib} org.flowplayer.view.FlowplayerBase org.flowplayer.view.StyleableSprite org.flowplayer.model.Plugin org.flowplayer.model.PluginModel org.flowplayer.model.DisplayPluginModel org.flowplayer.model.ProviderModel org.flowplayer.model.Cloneable org.flowplayer.model.DisplayProperties org.flowplayer.model.Identifiable org.flowplayer.model.Callable org.flowplayer.model.Clip org.flowplayer.model.Playlist org.flowplayer.model.AbstractEvent org.flowplayer.model.ClipEvent org.flowplayer.model.PlayerEvent org.flowplayer.model.PluginEvent org.flowplayer.model.ClipEventDispatcher org.flowplayer.model.ClipEventSupport org.flowplayer.model.EventType org.flowplayer.model.ClipEventType org.flowplayer.model.PlayerEventType org.flowplayer.model.PluginEventType org.flowplayer.view.Styleable org.flowplayer.controller.StreamProvider org.flowplayer.model.PluginFactory org.flowplayer.controller.ClipURLResolver org.flowplayer.controller.ConnectionProvider org.flowplayer.util.Log"/>
......@@ -192,7 +192,8 @@
<arg line="-define+=CONFIG::audioVersion,${audio-version-info-quoted}"/>
<arg line="-define+=CONFIG::skin,true"/>
<arg line="-define+=CONFIG::hasSlowMotion,'${has-slowmotion-buttons}'"/>
<arg line="-define+=CONFIG::debug,'@{debug}'"/>
<arg line="-define+=CONFIG::debug,'@{debug}'"/>
<arg line="-define+=CONFIG::enableByteRange,'false'"/>
<arg line="-keep-as3-metadata=Value,External"/>
<arg line="-source-path ${src-as} ${src-as-commercial} ${classpath} ${plugin-libs}"/>
<arg line="-static-link-runtime-shared-libraries=true" />
......@@ -225,7 +226,6 @@
<target name="compile-lib">
<exec executable="${compc_bin}" failonerror="true">
<arg line="-source-path ${src-as} ${src-as-commercial} ${classpath}"/>
<!-- arg line="-include-classes ${classes-for-lib}" -->
<arg line="-compute-digest=false"/>
<arg line="-output '${build-dir}/${library-binary}'"/>
<arg line="-namespace http://flowplayer.org/flowplayer/2008 ${basedir}/manifest.xml -include-namespaces http://flowplayer.org/flowplayer/2008"/>
......@@ -359,16 +359,16 @@
</target>
<target name="doc" description="generates the apidocs">
<exec executable="${asdoc_bin}" failonerror="true">
<arg line="-source-path ${src-as} ${classpath}"/>
<arg line="-library-path ${libs-path} ${src-flash}"/>
<arg line="-doc-classes ${doc-classes}"/>
<arg line="-exclude-dependencies"/>
<arg line="-output ${apidoc-dir}"/>
<arg line="-main-title 'FlowPlayer ${version-1}.${version-2}.${version-3} API documentation'"/>
<arg line="-window-title 'FlowPlayer ${version-1}.${version-2}.${version-3} API documentation'"/>
<arg line="-define+=CONFIG::debug,'false'"/>
</exec>
<!--<exec executable="${asdoc_bin}" failonerror="true">-->
<!--<arg line="-source-path ${src-as} ${classpath}"/>-->
<!--<arg line="-library-path ${libs-path} ${src-flash}"/>-->
<!--<arg line="-doc-classes ${doc-classes}"/>-->
<!--<arg line="-exclude-dependencies"/>-->
<!--<arg line="-output ${apidoc-dir}"/>-->
<!--<arg line="-main-title 'FlowPlayer ${version-1}.${version-2}.${version-3} API documentation'"/>-->
<!--<arg line="-window-title 'FlowPlayer ${version-1}.${version-2}.${version-3} API documentation'"/>-->
<!--<arg line="-define+=CONFIG::debug,'false'"/>-->
<!--</exec>-->
</target>
<target name="zip" description="creates a distribution zip package" depends="build">
......
......@@ -25,7 +25,7 @@
<!-- this A tag is where your Flowplayer will be placed. it can be anywhere -->
<a
href="http://e1h13.simplecdn.net/flowplayer/flowplayer.flv"
href="http://pseudo01.hddn.com/vod/demo.flowplayervod/flowplayer-700.flv"
style="display:block;width:520px;height:330px"
id="player">
</a>
......
/**
* flowplayer.js 3.2.4. The Flowplayer API
* flowplayer.js 3.2.6. The Flowplayer API
*
* Copyright 2009 Flowplayer Oy
*
......@@ -19,7 +19,7 @@
* 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
* Revision: 575
*/
(function() {
......@@ -720,7 +720,7 @@ function Player(wrapper, params, conf) {
},
getVersion: function() {
var js = "flowplayer.js 3.2.4";
var js = "flowplayer.js 3.2.6";
if (self.isLoaded()) {
var ver = api.fp_getVersion();
ver.push(js);
......@@ -1178,7 +1178,7 @@ window.flowplayer = window.$f = function() {
bgcolor: "#000000",
version: [9, 0],
expressInstall: "http://static.flowplayer.org/swf/expressinstall.swf",
cachebusting: true
cachebusting: false
}, params);
......@@ -1270,7 +1270,7 @@ if (typeof jQuery == 'function') {
})();
/**
* @license
* jQuery Tools 3.2.4 / Flashembed - New wave Flash embedding
* jQuery Tools 3.2.6 / Flashembed - New wave Flash embedding
*
* NO COPYRIGHTS OR LICENSES. DO WHAT YOU LIKE.
*
......@@ -1554,7 +1554,7 @@ if (typeof jQuery == 'function') {
if (JQUERY) {
// tools version number
jQuery.tools = jQuery.tools || {version: '3.2.4'};
jQuery.tools = jQuery.tools || {version: '3.2.6'};
jQuery.tools.flashembed = {
conf: GLOBAL_OPTS
......@@ -1562,7 +1562,7 @@ if (typeof jQuery == 'function') {
jQuery.fn.flashembed = function(opts, conf) {
return this.each(function() {
$(this).data("flashembed", flashembed(this, opts, conf));
jQuery(this).data("flashembed", flashembed(this, opts, conf));
});
};
}
......
/*
* Copyright (c) 2008, 2009 Flowplayer Oy
*
* Copyright (c) 2008-2011 Flowplayer Oy *
* This file is part of Flowplayer.
*
* Flowplayer is free software: you can redistribute it and/or modify
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment