PowerPress Podcasting plugin by Blubrry - Version 6.0.5

Version Description

  • Released on 9/8/2015
  • Changed the Play in New Window logic to support WordPress MultiSite switch_to_blog() function calls (Thanks Avi for the patch!)
  • Removed the pp_flashembed JavaScript function from the player.js include (we are no longer using flash for fallback).
  • Minified version of player.min.js updated.
  • Fixed possible XSS vulnerability with the settings tab control.
  • Added new POWERPRESS_CURL define option for wp-config.php. When set, PowerPress will use it's own cURL logic rather than use the wp_remote_get()/wp_remote_post() functions.
Download this release

Release Info

Developer amandato
Plugin Icon 128x128 PowerPress Podcasting plugin by Blubrry
Version 6.0.5
Comparing to
See all releases

Code changes from version 6.0.4 to 6.0.5

player.js CHANGED
@@ -1,14 +1,15 @@
1
  /**
2
- * jsMediaPlayer 1.2.0 for Blubrry PowerPress
3
  *
4
  * http://www.blubrry.com/powepress/
5
  *
6
- * Copyright (c) 2008-2009 Angelo Mandato (angelo [at] mandato {period} com)
7
  *
8
  * Released under Aoache 2 license:
9
  * http://www.apache.org/licenses/LICENSE-2.0
10
  *
11
- * versoin 1.3.0 02/18/2011 - Adding HTML5 audio/video tags if format possibly supported around default video embed.
 
12
  * versoin 1.2.0 - 07/20/2009 - Major rewrite, we're now replying less upon this javascript to make way for flexibility for adding future players.
13
  * versoin 1.1.3 - 03/23/2009 - Added code to support FlowPlayer v3.
14
  * versoin 1.1.2 - 03/04/2009 - Added options to set the width for audio, width and height for video.
@@ -273,20 +274,3 @@ function powerpress_embed_swf(div,media_url,width,height)
273
  return true; // let the default link to the media open...
274
  }
275
 
276
- /**
277
- * flashembed 0.31. Adobe Flash embedding script
278
- *
279
- * http://flowplayer.org/tools/flash-embed.html
280
- *
281
- * Copyright (c) 2008 Tero Piirainen (tipiirai@gmail.com)
282
- *
283
- * Released under the MIT License:
284
- * http://www.opensource.org/licenses/mit-license.php
285
- *
286
- * >> Basically you can do anything you want but leave this header as is <<
287
- *
288
- * version 0.01 - 03/11/2008
289
- * version 0.31 - Tue Jul 22 2008 06:30:31 GMT+0200 (GMT+02:00)
290
- */
291
-
292
- function pp_flashembed(root,userParams,flashvars){function getHTML(){var html="";if(typeof flashvars=='function'){flashvars=flashvars();}if(navigator.plugins&&navigator.mimeTypes&&navigator.mimeTypes.length){html='<embed type="application/x-shockwave-flash" ';if(params.id){extend(params,{name:params.id});}for(var key in params){if(params[key]!==null){html+=[key]+'="'+params[key]+'"\n\t';}}if(flashvars){html+='flashvars=\''+concatVars(flashvars)+'\'';}html+='/>';}else{html='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" ';html+='width="'+params.width+'" height="'+params.height+'"';if(!params.id&&document.all){params.id="_"+(""+Math.random()).substring(5);}if(params.id){html+=' id="'+params.id+'"';}html+='>';html+='\n\t<param name="movie" value="'+params.src+'" />';params.id=params.src=params.width=params.height=null;for(var k in params){if(params[k]!==null){html+='\n\t<param name="'+k+'" value="'+params[k]+'" />';}}if(flashvars){html+='\n\t<param name="flashvars" value=\''+concatVars(flashvars)+'\' />';}html+="</object>";if(debug){alert(html);}}return html;}function init(name){var timer=setInterval(function(){var doc=document;var el=doc.getElementById(name);if(el){pp_flashembed(el,userParams,flashvars);clearInterval(timer);}else if(doc&&doc.getElementsByTagName&&doc.getElementById&&doc.body){clearInterval(timer);}},13);return true;}function extend(to,from){if(from){for(key in from){if(from.hasOwnProperty(key)){to[key]=from[key];}}}}var params={src:'#',width:'100%',height:'100%',version:null,onFail:null,expressInstall:null,debug:false,bgcolor:'#ffffff',allowfullscreen:true,allowscriptaccess:'always',quality:'high',type:'application/x-shockwave-flash',pluginspage:'http://www.adobe.com/go/getflashplayer'};if(typeof userParams=='string'){userParams={src:userParams};}extend(params,userParams);var version=pp_flashembed.getVersion();var required=params.version;var express=params.expressInstall;var debug=params.debug;if(typeof root=='string'){var el=document.getElementById(root);if(el){root=el;}else{return init(root);}}if(!root){return;}if(!required||pp_flashembed.isSupported(required)){params.onFail=params.version=params.expressInstall=params.debug=null;root.innerHTML=getHTML();return root.firstChild;}else if(params.onFail){var ret=params.onFail.call(params,pp_flashembed.getVersion(),flashvars);if(ret){root.innerHTML=ret;}}else if(required&&express&&pp_flashembed.isSupported([6,65])){extend(params,{src:express});flashvars={MMredirectURL:location.href,MMplayerType:'PlugIn',MMdoctitle:document.title};root.innerHTML=getHTML();}else{if(root.innerHTML.replace(/\s/g,'')!==''){}else{root.innerHTML="<h2>Flash version "+required+" or greater is required</h2>"+"<h3>"+(version[0]>0?"Your version is "+version:"You have no flash plugin installed")+"</h3>"+"<p>Download latest version from <a href='"+params.pluginspage+"'>here</a></p>";}}function concatVars(vars){var out="";for(var key in vars){if(vars[key]){out+=[key]+'='+asString(vars[key])+'&';}}return out.substring(0,out.length-1);}function asString(obj){switch(typeOf(obj)){case'string':return'"'+obj.replace(new RegExp('(["\\\\])','g'),'\\$1')+'"';case'array':return'['+map(obj,function(el){return asString(el);}).join(',')+']';case'function':return'"function()"';case'object':var str=[];for(var prop in obj){if(obj.hasOwnProperty(prop)){str.push('"'+prop+'":'+asString(obj[prop]));}}return'{'+str.join(',')+'}';}return String(obj).replace(/\s/g," ").replace(/\'/g,"\"");}function typeOf(obj){if(obj===null||obj===undefined){return false;}var type=typeof obj;return(type=='object'&&obj.push)?'array':type;}if(window.attachEvent){window.attachEvent("onbeforeunload",function(){__flash_unloadHandler=function(){};__flash_savedUnloadHandler=function(){};});}function map(arr,func){var newArr=[];for(var i in arr){if(arr.hasOwnProperty(i)){newArr[i]=func(arr[i]);}}return newArr;}return root;}if(typeof jQuery=='function'){(function($){$.fn.extend({pp_flashembed:function(params,flashvars){return this.each(function(){pp_flashembed(this,params,flashvars);});}});})(jQuery);}pp_flashembed=pp_flashembed||{};pp_flashembed.getVersion=function(){var version=[0,0];if(navigator.plugins&&typeof navigator.plugins["Shockwave Flash"]=="object"){var _d=navigator.plugins["Shockwave Flash"].description;if(typeof _d!="undefined"){_d=_d.replace(/^.*\s+(\S+\s+\S+$)/,"$1");var _m=parseInt(_d.replace(/^(.*)\..*$/,"$1"),10);var _r=/r/.test(_d)?parseInt(_d.replace(/^.*r(.*)$/,"$1"),10):0;version=[_m,_r];}}else if(window.ActiveXObject){try{var _a=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");}catch(e){try{_a=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");version=[6,0];_a.AllowScriptAccess="always";}catch(ee){if(version[0]==6){return;}}try{_a=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");}catch(eee){}}if(typeof _a=="object"){_d=_a.GetVariable("$version");if(typeof _d!="undefined"){_d=_d.replace(/^\S+\s+(.*)$/,"$1").split(",");version=[parseInt(_d[0],10),parseInt(_d[2],10)];}}}return version;};pp_flashembed.isSupported=function(version){var now=pp_flashembed.getVersion();var ret=(now[0]>version[0])||(now[0]==version[0]&&now[1]>=version[1]);return ret;};
1
  /**
2
+ * jsMediaPlayer 1.4.0 for Blubrry PowerPress
3
  *
4
  * http://www.blubrry.com/powepress/
5
  *
6
+ * Copyright (c) 2008-2015 Angelo Mandato (angelo [at] mandato {period} com)
7
  *
8
  * Released under Aoache 2 license:
9
  * http://www.apache.org/licenses/LICENSE-2.0
10
  *
11
+ * versoin 1.4.0 - 09/08/2015 - Removed the pp_flashembed function (we are no longer using flash for fallback).
12
+ * versoin 1.3.0 - 02/18/2011 - Adding HTML5 audio/video tags if format possibly supported around default video embed.
13
  * versoin 1.2.0 - 07/20/2009 - Major rewrite, we're now replying less upon this javascript to make way for flexibility for adding future players.
14
  * versoin 1.1.3 - 03/23/2009 - Added code to support FlowPlayer v3.
15
  * versoin 1.1.2 - 03/04/2009 - Added options to set the width for audio, width and height for video.
274
  return true; // let the default link to the media open...
275
  }
276
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
player.min.js CHANGED
@@ -1 +1 @@
1
- function powerpress_embed_quicktime(e,t,n,r,i){if(document.getElementById(e)){var s="video/mpeg";if(t.indexOf(".m4v")>-1)s="video/x-m4v";if(t.indexOf(".mp4")>-1)s="video/mp4";else if(t.indexOf(".m4a")>-1)s="audio/x-m4a";else if(t.indexOf(".avi")>-1)s="video/avi";else if(t.indexOf(".qt")>-1)s="video/quicktime";else if(t.indexOf(".mov")>-1)s="video/quicktime";var o="";if(s=="video/mp4"||s=="video/x-m4v")o+='<video src="'+t+'" width="'+n+'" height="'+r+'" controls autoplay>';o+='<object classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" width="'+n+'" height="'+r+'" codebase="http://www.apple.com/qtactivex/qtplugin.cab">\n';o+=' <param name="src" value="'+t+'" />\n';o+=' <param name="href" value="'+t+'" />\n';o+=' <param name="scale" value="'+i+'" />\n';o+=' <param name="controller" value="true" />\n';o+=' <param name="autoplay" value="true" />\n';o+=' <param name="pluginspage" value="http://www.apple.com/quicktime/download/" />\n';o+=' <embed type="'+s+'" src="'+t+'" width="'+n+'" height="'+r+'" scale="'+i+'" correction="full" cache="true" autoplay="true" controller="true" pluginspage="http://www.apple.com/quicktime/download/"></embed>';o+="</object>\n";if(s=="video/mp4"||s=="video/x-m4v")o+="</video>";document.getElementById(e).innerHTML=o;return false}return true}function powerpress_show_embed(e){if(document.getElementById("powerpress_embed_"+e)){document.getElementById("powerpress_embed_"+e).style.display="block";document.getElementById("powerpress_embed_"+e+"_t").select()}return false}function powerpress_embed_html5iframe(e,t,n,r){if(document.getElementById("powerpress_player_"+e)){var i="";i+="<iframe";i+=' class="powerpress-player-embed"';i+=' width="'+n+'"';i+=' height="'+r+'"';i+=' src="'+t+'"';i+=' frameborder="0"';i+="></iframe>";document.getElementById("powerpress_player_"+e).innerHTML=i;return false}return true}function powerpress_embed_html5v(e,t,n,r,i){if(document.getElementById("powerpress_player_"+e)){var s="";if(document.getElementById("powerpress_player_"+e).getElementsByTagName){var o=document.getElementById("powerpress_player_"+e).getElementsByTagName("img");if(o.length&&o[0].src)s=o[0].src}var u="video/mp4";if(t.indexOf(".webm")>-1)u="video/webm";if(t.indexOf(".ogg")>-1||t.indexOf(".ogv")>-1)u="video/ogg";var a=document.createElement("video");var f=false;if(!!a.canPlayType){var l=a.canPlayType(u);if(l=="probably"||l=="maybe"){f=true}else if(i){l=a.canPlayType("video/webm");if(l=="probably"||l=="maybe"){f=true}}}if(f){var c=document.createElement("source");a.width=n;a.height=r;a.controls=true;if(s)a.poster=s;c.src=t;c.type=u;a.appendChild(c);if(i){var h=document.createElement("source");h.src=i;h.type='video/webm; codecs="vp8, vorbis"';a.appendChild(h)}document.getElementById("powerpress_player_"+e).innerHTML="";document.getElementById("powerpress_player_"+e).appendChild(a);a.play()}else{delete a;pp_flashembed("powerpress_player_"+e,{src:powerpress_url+"FlowPlayerClassic.swf",width:n,height:r,wmode:"transparent"},{config:{autoPlay:true,autoBuffering:true,showFullScreenButton:true,showMenu:false,videoFile:t,loop:false,autoRewind:true,splashImageFile:s}})}if(window.powerpress_resize_player)powerpress_resize_player();return false}return true}function powerpress_embed_html5a(e,t){if(document.getElementById("powerpress_player_"+e)){var n="";if(document.getElementById("powerpress_player_"+e).getElementsByTagName){var r=document.getElementById("powerpress_player_"+e).getElementsByTagName("img");if(r.length&&r[0].src)n=r[0].src}var i="audio/mpeg";if(t.indexOf(".m4a")>-1)i="audio/x-m4a";if(t.indexOf(".ogg")>-1||t.indexOf(".oga")>-1)i="audio/ogg";var s=document.createElement("audio");var o=false;if(!!s.canPlayType){var u=s.canPlayType(i);if(u=="probably"||u=="maybe"){o=true}}if(o){var a=document.createElement("source");s.controls=true;a.src=t;a.type=i;s.appendChild(a);document.getElementById("powerpress_player_"+e).innerHTML="";document.getElementById("powerpress_player_"+e).appendChild(s);s.play()}else{delete s;if(i!="audio/ogg"){pp_flashembed("powerpress_player_"+e,{src:powerpress_url+"FlowPlayerClassic.swf",width:320,height:24,wmode:"transparent"},{config:{autoPlay:true,autoBuffering:true,showFullScreenButton:false,showMenu:false,videoFile:t,loop:false,autoRewind:true}})}else{return true}}return false}return true}function powerpress_embed_winplayer(e,t,n,r){if(document.getElementById(e)){var i="";i+='<object id="winplayer" classid="clsid:6BF52A52-394A-11d3-B153-00C04F79FAA6" width="'+n+'" height="'+r+'" standby="loading..." type="application/x-oleobject">\n';i+=' <param name="url" value="'+t+'" />\n';i+=' <param name="AutoStart" value="true" />\n';i+=' <param name="AutoSize" value="true" />\n';i+=' <param name="AllowChangeDisplaySize" value="true" />\n';i+=' <param name="standby" value="Media is loading..." />\n';i+=' <param name="AnimationAtStart" value="true" />\n';i+=' <param name="scale" value="aspect" />\n';i+=' <param name="ShowControls" value="true" />\n';i+=' <param name="ShowCaptioning" value="false" />\n';i+=' <param name="ShowDisplay" value="false" />\n';i+=' <param name="ShowStatusBar" value="false" />\n';i+=' <embed type="application/x-mplayer2" src="'+t+'" width="'+n+'" height="'+r+'" scale="aspect" AutoStart="true" ShowDisplay="0" ShowStatusBar="0" AutoSize="1" AnimationAtStart="1" AllowChangeDisplaySize="1" ShowControls="1"></embed>\n';i+="</object>\n";document.getElementById(e).innerHTML=i;return false}return true}function powerpress_embed_swf(e,t,n,r){if(document.getElementById(e)){var i="";i+='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="'+n+'" height="'+r+'" menu="true">\n';i+=' <param name="movie" value="'+t+'" />\n';i+=' <param name="quality" value="high" />\n';i+=' <param name="menu" value="true" />\n';i+=' <param name="scale" value="noorder" />\n';i+=' <param name="quality" value="high" />\n';i+=' <embed src="'+t+'" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="'+n+'" height="'+r+'" menu="true"></embed>';i+="</object>\n";document.getElementById(e).innerHTML=i;return false}return true}function pp_flashembed(e,t,n){function r(){var e="";if(typeof n=="function"){n=n()}if(navigator.plugins&&navigator.mimeTypes&&navigator.mimeTypes.length){e='<embed type="application/x-shockwave-flash" ';if(o.id){s(o,{name:o.id})}for(var t in o){if(o[t]!==null){e+=[t]+'="'+o[t]+'"\n '}}if(n){e+="flashvars='"+p(n)+"'"}e+="/>"}else{e='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" ';e+='width="'+o.width+'" height="'+o.height+'"';if(!o.id&&document.all){o.id="_"+(""+Math.random()).substring(5)}if(o.id){e+=' id="'+o.id+'"'}e+=">";e+='\n <param name="movie" value="'+o.src+'" />';o.id=o.src=o.width=o.height=null;for(var r in o){if(o[r]!==null){e+='\n <param name="'+r+'" value="'+o[r]+'" />'}}if(n){e+='\n <param name="flashvars" value=\''+p(n)+"' />"}e+="</object>";if(l){alert(e)}}return e}function i(e){var r=setInterval(function(){var i=document;var s=i.getElementById(e);if(s){pp_flashembed(s,t,n);clearInterval(r)}else if(i&&i.getElementsByTagName&&i.getElementById&&i.body){clearInterval(r)}},13);return true}function s(e,t){if(t){for(key in t){if(t.hasOwnProperty(key)){e[key]=t[key]}}}}function p(e){var t="";for(var n in e){if(e[n]){t+=[n]+"="+d(e[n])+"&"}}return t.substring(0,t.length-1)}function d(e){switch(v(e)){case"string":return'"'+e.replace(new RegExp('(["\\\\])',"g"),"\\$1")+'"';case"array":return"["+m(e,function(e){return d(e)}).join(",")+"]";case"function":return'"function()"';case"object":var t=[];for(var n in e){if(e.hasOwnProperty(n)){t.push('"'+n+'":'+d(e[n]))}}return"{"+t.join(",")+"}"}return String(e).replace(/\s/g," ").replace(/\'/g,'"')}function v(e){if(e===null||e===undefined){return false}var t=typeof e;return t=="object"&&e.push?"array":t}function m(e,t){var n=[];for(var r in e){if(e.hasOwnProperty(r)){n[r]=t(e[r])}}return n}var o={src:"#",width:"100%",height:"100%",version:null,onFail:null,expressInstall:null,debug:false,bgcolor:"#ffffff",allowfullscreen:true,allowscriptaccess:"always",quality:"high",type:"application/x-shockwave-flash",pluginspage:"http://www.adobe.com/go/getflashplayer"};if(typeof t=="string"){t={src:t}}s(o,t);var u=pp_flashembed.getVersion();var a=o.version;var f=o.expressInstall;var l=o.debug;if(typeof e=="string"){var c=document.getElementById(e);if(c){e=c}else{return i(e)}}if(!e){return}if(!a||pp_flashembed.isSupported(a)){o.onFail=o.version=o.expressInstall=o.debug=null;e.innerHTML=r();return e.firstChild}else if(o.onFail){var h=o.onFail.call(o,pp_flashembed.getVersion(),n);if(h){e.innerHTML=h}}else if(a&&f&&pp_flashembed.isSupported([6,65])){s(o,{src:f});n={MMredirectURL:location.href,MMplayerType:"PlugIn",MMdoctitle:document.title};e.innerHTML=r()}else{if(e.innerHTML.replace(/\s/g,"")!==""){}else{e.innerHTML="<h2>Flash version "+a+" or greater is required</h2>"+"<h3>"+(u[0]>0?"Your version is "+u:"You have no flash plugin installed")+"</h3>"+"<p>Download latest version from <a href='"+o.pluginspage+"'>here</a></p>"}}if(window.attachEvent){window.attachEvent("onbeforeunload",function(){__flash_unloadHandler=function(){};__flash_savedUnloadHandler=function(){}})}return e}if(typeof jQuery=="function"){(function(e){e.fn.extend({pp_flashembed:function(e,t){return this.each(function(){pp_flashembed(this,e,t)})}})})(jQuery)}pp_flashembed=pp_flashembed||{};pp_flashembed.getVersion=function(){var e=[0,0];if(navigator.plugins&&typeof navigator.plugins["Shockwave Flash"]=="object"){var t=navigator.plugins["Shockwave Flash"].description;if(typeof t!="undefined"){t=t.replace(/^.*\s+(\S+\s+\S+$)/,"$1");var n=parseInt(t.replace(/^(.*)\..*$/,"$1"),10);var r=/r/.test(t)?parseInt(t.replace(/^.*r(.*)$/,"$1"),10):0;e=[n,r]}}else if(window.ActiveXObject){try{var i=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7")}catch(s){try{i=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");e=[6,0];i.AllowScriptAccess="always"}catch(o){if(e[0]==6){return}}try{i=new ActiveXObject("ShockwaveFlash.ShockwaveFlash")}catch(u){}}if(typeof i=="object"){t=i.GetVariable("$version");if(typeof t!="undefined"){t=t.replace(/^\S+\s+(.*)$/,"$1").split(",");e=[parseInt(t[0],10),parseInt(t[2],10)]}}}return e};pp_flashembed.isSupported=function(e){var t=pp_flashembed.getVersion();var n=t[0]>e[0]||t[0]==e[0]&&t[1]>=e[1];return n}
1
+ function powerpress_embed_quicktime(e,a,t,r,n){if(document.getElementById(e)){var m="video/mpeg";a.indexOf(".m4v")>-1&&(m="video/x-m4v"),a.indexOf(".mp4")>-1?m="video/mp4":a.indexOf(".m4a")>-1?m="audio/x-m4a":a.indexOf(".avi")>-1?m="video/avi":a.indexOf(".qt")>-1?m="video/quicktime":a.indexOf(".mov")>-1&&(m="video/quicktime");var o="";return("video/mp4"==m||"video/x-m4v"==m)&&(o+='<video src="'+a+'" width="'+t+'" height="'+r+'" controls autoplay>'),o+='<object classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" width="'+t+'" height="'+r+'" codebase="http://www.apple.com/qtactivex/qtplugin.cab">\n',o+=' <param name="src" value="'+a+'" />\n',o+=' <param name="href" value="'+a+'" />\n',o+=' <param name="scale" value="'+n+'" />\n',o+=' <param name="controller" value="true" />\n',o+=' <param name="autoplay" value="true" />\n',o+=' <param name="pluginspage" value="http://www.apple.com/quicktime/download/" />\n',o+=' <embed type="'+m+'" src="'+a+'" width="'+t+'" height="'+r+'" scale="'+n+'" correction="full" cache="true" autoplay="true" controller="true" pluginspage="http://www.apple.com/quicktime/download/"></embed>',o+="</object>\n",("video/mp4"==m||"video/x-m4v"==m)&&(o+="</video>"),document.getElementById(e).innerHTML=o,!1}return!0}function powerpress_show_embed(e){return document.getElementById("powerpress_embed_"+e)&&(document.getElementById("powerpress_embed_"+e).style.display="block",document.getElementById("powerpress_embed_"+e+"_t").select()),!1}function powerpress_embed_html5iframe(e,a,t,r){if(document.getElementById("powerpress_player_"+e)){var n="";return n+="<iframe",n+=' class="powerpress-player-embed"',n+=' width="'+t+'"',n+=' height="'+r+'"',n+=' src="'+a+'"',n+=' frameborder="0"',n+="></iframe>",document.getElementById("powerpress_player_"+e).innerHTML=n,!1}return!0}function powerpress_embed_html5v(e,a,t,r,n){if(document.getElementById("powerpress_player_"+e)){var m="";if(document.getElementById("powerpress_player_"+e).getElementsByTagName){var o=document.getElementById("powerpress_player_"+e).getElementsByTagName("img");o.length&&o[0].src&&(m=o[0].src)}var p="video/mp4";a.indexOf(".webm")>-1&&(p="video/webm"),(a.indexOf(".ogg")>-1||a.indexOf(".ogv")>-1)&&(p="video/ogg");var l=document.createElement("video"),i=!1;if(l.canPlayType){var d=l.canPlayType(p);"probably"==d||"maybe"==d?i=!0:n&&(d=l.canPlayType("video/webm"),("probably"==d||"maybe"==d)&&(i=!0))}if(i){var s=document.createElement("source");if(l.width=t,l.height=r,l.controls=!0,m&&(l.poster=m),s.src=a,s.type=p,l.appendChild(s),n){var c=document.createElement("source");c.src=n,c.type='video/webm; codecs="vp8, vorbis"',l.appendChild(c)}return document.getElementById("powerpress_player_"+e).innerHTML="",document.getElementById("powerpress_player_"+e).appendChild(l),l.play(),window.powerpress_resize_player&&powerpress_resize_player(),!1}}return!0}function powerpress_embed_html5a(e,a){if(document.getElementById("powerpress_player_"+e)){var t="";if(document.getElementById("powerpress_player_"+e).getElementsByTagName){var r=document.getElementById("powerpress_player_"+e).getElementsByTagName("img");r.length&&r[0].src&&(t=r[0].src)}var n="audio/mpeg";a.indexOf(".m4a")>-1&&(n="audio/x-m4a"),(a.indexOf(".ogg")>-1||a.indexOf(".oga")>-1)&&(n="audio/ogg");var m=document.createElement("audio"),o=!1;if(m.canPlayType){var p=m.canPlayType(n);("probably"==p||"maybe"==p)&&(o=!0)}if(o){var l=document.createElement("source");return m.controls=!0,l.src=a,l.type=n,m.appendChild(l),document.getElementById("powerpress_player_"+e).innerHTML="",document.getElementById("powerpress_player_"+e).appendChild(m),m.play(),!1}}return!0}function powerpress_embed_winplayer(e,a,t,r){if(document.getElementById(e)){var n="";return n+='<object id="winplayer" classid="clsid:6BF52A52-394A-11d3-B153-00C04F79FAA6" width="'+t+'" height="'+r+'" standby="loading..." type="application/x-oleobject">\n',n+=' <param name="url" value="'+a+'" />\n',n+=' <param name="AutoStart" value="true" />\n',n+=' <param name="AutoSize" value="true" />\n',n+=' <param name="AllowChangeDisplaySize" value="true" />\n',n+=' <param name="standby" value="Media is loading..." />\n',n+=' <param name="AnimationAtStart" value="true" />\n',n+=' <param name="scale" value="aspect" />\n',n+=' <param name="ShowControls" value="true" />\n',n+=' <param name="ShowCaptioning" value="false" />\n',n+=' <param name="ShowDisplay" value="false" />\n',n+=' <param name="ShowStatusBar" value="false" />\n',n+=' <embed type="application/x-mplayer2" src="'+a+'" width="'+t+'" height="'+r+'" scale="aspect" AutoStart="true" ShowDisplay="0" ShowStatusBar="0" AutoSize="1" AnimationAtStart="1" AllowChangeDisplaySize="1" ShowControls="1"></embed>\n',n+="</object>\n",document.getElementById(e).innerHTML=n,!1}return!0}function powerpress_embed_swf(e,a,t,r){if(document.getElementById(e)){var n="";return n+='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="'+t+'" height="'+r+'" menu="true">\n',n+=' <param name="movie" value="'+a+'" />\n',n+=' <param name="quality" value="high" />\n',n+=' <param name="menu" value="true" />\n',n+=' <param name="scale" value="noorder" />\n',n+=' <param name="quality" value="high" />\n',n+=' <embed src="'+a+'" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="'+t+'" height="'+r+'" menu="true"></embed>',n+="</object>\n",document.getElementById(e).innerHTML=n,!1}return!0}
powerpress-player.php CHANGED
@@ -1016,8 +1016,10 @@ function powerpressplayer_link_pinw($content, $media_url, $ExtraData = array() )
1016
  case 5: { // Play in page and new window
1017
  if( $is_pdf )
1018
  $player_links .= "<a href=\"{$media_url}\" class=\"powerpress_link_pinw\" target=\"_blank\" title=\"". __('Open in New Window', 'powerpress') ."\" rel=\"nofollow\">". __('Open in New Window', 'powerpress') ."</a>".PHP_EOL;
1019
- else if( !empty($ExtraData['id']) && !empty($ExtraData['feed']) )
1020
- $player_links .= "<a href=\"{$media_url}\" class=\"powerpress_link_pinw\" target=\"_blank\" title=\"". POWERPRESS_PLAY_IN_NEW_WINDOW_TEXT ."\" onclick=\"return powerpress_pinw('{$ExtraData['id']}-{$ExtraData['feed']}');\" rel=\"nofollow\">". POWERPRESS_PLAY_IN_NEW_WINDOW_TEXT ."</a>".PHP_EOL;
 
 
1021
  else
1022
  $player_links .= "<a href=\"{$media_url}\" class=\"powerpress_link_pinw\" target=\"_blank\" title=\"". POWERPRESS_PLAY_IN_NEW_WINDOW_TEXT ."\" rel=\"nofollow\">". POWERPRESS_PLAY_IN_NEW_WINDOW_TEXT ."</a>".PHP_EOL;
1023
  }; break;
1016
  case 5: { // Play in page and new window
1017
  if( $is_pdf )
1018
  $player_links .= "<a href=\"{$media_url}\" class=\"powerpress_link_pinw\" target=\"_blank\" title=\"". __('Open in New Window', 'powerpress') ."\" rel=\"nofollow\">". __('Open in New Window', 'powerpress') ."</a>".PHP_EOL;
1019
+ else if( !empty($ExtraData['id']) && !empty($ExtraData['feed']) ) {
1020
+ $pinw_url = get_bloginfo('url') ."/?powerpress_pinw={$ExtraData['id']}-{$ExtraData['feed']}";
1021
+ $player_links .= "<a href=\"{$media_url}\" class=\"powerpress_link_pinw\" target=\"_blank\" title=\"". POWERPRESS_PLAY_IN_NEW_WINDOW_TEXT ."\" onclick=\"return powerpress_pinw('". esc_js($pinw_url) ."');\" rel=\"nofollow\">". POWERPRESS_PLAY_IN_NEW_WINDOW_TEXT ."</a>".PHP_EOL;
1022
+ }
1023
  else
1024
  $player_links .= "<a href=\"{$media_url}\" class=\"powerpress_link_pinw\" target=\"_blank\" title=\"". POWERPRESS_PLAY_IN_NEW_WINDOW_TEXT ."\" rel=\"nofollow\">". POWERPRESS_PLAY_IN_NEW_WINDOW_TEXT ."</a>".PHP_EOL;
1025
  }; break;
powerpress.php CHANGED
@@ -3,7 +3,7 @@
3
  Plugin Name: Blubrry PowerPress
4
  Plugin URI: http://create.blubrry.com/resources/powerpress/
5
  Description: <a href="http://create.blubrry.com/resources/powerpress/" target="_blank">Blubrry PowerPress</a> adds podcasting support to your blog. Features include: media player, 3rd party statistics, iTunes integration, Blubrry Services (Media Statistics and Hosting) integration and a lot more.
6
- Version: 6.0.4
7
  Author: Blubrry
8
  Author URI: http://www.blubrry.com/
9
  Change Log:
@@ -32,7 +32,7 @@ if( !function_exists('add_action') )
32
  die("access denied.");
33
 
34
  // WP_PLUGIN_DIR (REMEMBER TO USE THIS DEFINE IF NEEDED)
35
- define('POWERPRESS_VERSION', '6.0.4' );
36
 
37
  // Translation support:
38
  if ( !defined('POWERPRESS_ABSPATH') )
@@ -392,8 +392,7 @@ function powerpress_header()
392
  }
393
 
394
  ?>
395
- function powerpress_pinw(pinw){window.open('<?php echo get_bloginfo('url'); ?>/?powerpress_pinw='+pinw, 'PowerPressPlayer','toolbar=0,status=0,resizable=1,width=<?php echo ($new_window_width); ?>,height=<?php echo ($new_window_height); ?>'); return false;}
396
- powerpress_url = '<?php echo powerpress_get_root_url(); ?>';
397
  //-->
398
  </script>
399
  <?php
3
  Plugin Name: Blubrry PowerPress
4
  Plugin URI: http://create.blubrry.com/resources/powerpress/
5
  Description: <a href="http://create.blubrry.com/resources/powerpress/" target="_blank">Blubrry PowerPress</a> adds podcasting support to your blog. Features include: media player, 3rd party statistics, iTunes integration, Blubrry Services (Media Statistics and Hosting) integration and a lot more.
6
+ Version: 6.0.5
7
  Author: Blubrry
8
  Author URI: http://www.blubrry.com/
9
  Change Log:
32
  die("access denied.");
33
 
34
  // WP_PLUGIN_DIR (REMEMBER TO USE THIS DEFINE IF NEEDED)
35
+ define('POWERPRESS_VERSION', '6.0.5' );
36
 
37
  // Translation support:
38
  if ( !defined('POWERPRESS_ABSPATH') )
392
  }
393
 
394
  ?>
395
+ function powerpress_pinw(pinw_url){window.open(pinw_url, 'PowerPressPlayer','toolbar=0,status=0,resizable=1,width=<?php echo ($new_window_width); ?>,height=<?php echo ($new_window_height); ?>'); return false;}
 
396
  //-->
397
  </script>
398
  <?php
powerpressadmin-player-page.php CHANGED
@@ -127,8 +127,6 @@ function powerpress_admin_players($type='audio')
127
  <script type="text/javascript" src="<?php echo powerpress_get_root_url(); ?>player.min.js"></script>
128
  <script type="text/javascript"><!--
129
 
130
- powerpress_url = '<?php echo powerpress_get_root_url(); ?>';
131
-
132
  function rgb2hex(rgb) {
133
 
134
  rgb = rgb.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/);
127
  <script type="text/javascript" src="<?php echo powerpress_get_root_url(); ?>player.min.js"></script>
128
  <script type="text/javascript"><!--
129
 
 
 
130
  function rgb2hex(rgb) {
131
 
132
  rgb = rgb.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/);
powerpressadmin.php CHANGED
@@ -2092,7 +2092,7 @@ jQuery(document).ready(function($) {
2092
  if( jQuery("#powerpress_settings_page").length > 0 )
2093
  {
2094
  var tabsCtl = jQuery("#powerpress_settings_page").tabs();
2095
- tabsCtl.tabs("option", "active", <?php echo (empty($_POST['tab'])?0:$_POST['tab']); ?>);
2096
  jQuery('form').submit(function() {
2097
  var selectedTemp = tabsCtl.tabs('option', 'active');
2098
  jQuery('#save_tab_pos').val(selectedTemp);
@@ -2132,7 +2132,6 @@ jQuery(document).ready(function($) {
2132
  });
2133
  });
2134
 
2135
- powerpress_url = '<?php echo powerpress_get_root_url(); ?>';
2136
  //-->
2137
  </script>
2138
  <link rel="stylesheet" href="<?php echo powerpress_get_root_url(); ?>css/admin.css" type="text/css" media="screen" />
@@ -2551,10 +2550,6 @@ function powerpress_send_to_poster_image(url)
2551
  // Print this line for debugging when looking for other pages to include header data for
2552
  //echo "<!-- WP Page Name: $page_name; Hook Suffix: $hook_suffix -->\n";
2553
  ?>
2554
- <script type="text/javascript"><!--
2555
- powerpress_url = '<?php echo powerpress_get_root_url(); ?>';
2556
- //-->
2557
- </script>
2558
  <link rel="stylesheet" href="<?php echo powerpress_get_root_url(); ?>css/dashboard.css" type="text/css" media="screen" />
2559
  <?php
2560
  }
@@ -3119,7 +3114,7 @@ function powerpress_remote_fopen($url, $basic_auth = false, $post_args = array()
3119
  unset($GLOBALS['g_powerpress_remote_error']);
3120
  unset($GLOBALS['g_powerpress_remote_errorno']);
3121
 
3122
- if( false && function_exists( 'curl_init' ) ) // Preferred method of connecting
3123
  {
3124
  $curl = curl_init();
3125
  curl_setopt($curl, CURLOPT_URL, $url);
2092
  if( jQuery("#powerpress_settings_page").length > 0 )
2093
  {
2094
  var tabsCtl = jQuery("#powerpress_settings_page").tabs();
2095
+ tabsCtl.tabs("option", "active", <?php echo (empty($_POST['tab'])?0: intval($_POST['tab'])); ?>);
2096
  jQuery('form').submit(function() {
2097
  var selectedTemp = tabsCtl.tabs('option', 'active');
2098
  jQuery('#save_tab_pos').val(selectedTemp);
2132
  });
2133
  });
2134
 
 
2135
  //-->
2136
  </script>
2137
  <link rel="stylesheet" href="<?php echo powerpress_get_root_url(); ?>css/admin.css" type="text/css" media="screen" />
2550
  // Print this line for debugging when looking for other pages to include header data for
2551
  //echo "<!-- WP Page Name: $page_name; Hook Suffix: $hook_suffix -->\n";
2552
  ?>
 
 
 
 
2553
  <link rel="stylesheet" href="<?php echo powerpress_get_root_url(); ?>css/dashboard.css" type="text/css" media="screen" />
2554
  <?php
2555
  }
3114
  unset($GLOBALS['g_powerpress_remote_error']);
3115
  unset($GLOBALS['g_powerpress_remote_errorno']);
3116
 
3117
+ if( defined('POWERPRESS_CURL') && POWERPRESS_CURL && function_exists( 'curl_init' ) )
3118
  {
3119
  $curl = curl_init();
3120
  curl_setopt($curl, CURLOPT_URL, $url);
readme.txt CHANGED
@@ -3,7 +3,7 @@ Contributors: amandato, blubrry
3
  Tags: podcasting, podcast, podcaster, itunes, enclosure, zune, iphone, youtube, viddler, blip.tv, ustream, podcasting, audio, video, rss2, feed, player, media, rss, mp3, music, embed, feedburner, statistics, stats, flv, flash, id3, episodes, blubrry, webm, mp4, m4v, wordpressmu, mu, wordpress mu, multisite, multi site, mediacaster, post, plugin, posts, simple, social, dashboard, TSG, Buzzsprout, MTR, WP-boxCast, CastMyBlog, simple podcasting, seriously simple podcasting, seriously-simple-podcasting, podlove, podcast.de
4
  Requires at least: 3.6
5
  Tested up to: 4.3
6
- Stable tag: 6.0.4
7
  Donate link: https://www.patreon.com/blubrry?ty=h
8
  License: GPLv2 or later
9
 
@@ -205,6 +205,15 @@ To install Blubrry PowerPress manually, follow these steps:
205
  = Become a PowerPress Patron! =
206
  Help support your favorite podcasting plugin via Patreon. [Visit Blubrry's Patreon page](https://www.patreon.com/blubrry?ty=h)
207
 
 
 
 
 
 
 
 
 
 
208
  = 6.0.4 =
209
  * Released on 8/27/2015
210
  * Added new Subscribe by Email option to Subscribe Links feature. By default this new feature is not enabled. Go to "PowerPress Settings" > "Media Appearance" to enable Subscribe by Email.
3
  Tags: podcasting, podcast, podcaster, itunes, enclosure, zune, iphone, youtube, viddler, blip.tv, ustream, podcasting, audio, video, rss2, feed, player, media, rss, mp3, music, embed, feedburner, statistics, stats, flv, flash, id3, episodes, blubrry, webm, mp4, m4v, wordpressmu, mu, wordpress mu, multisite, multi site, mediacaster, post, plugin, posts, simple, social, dashboard, TSG, Buzzsprout, MTR, WP-boxCast, CastMyBlog, simple podcasting, seriously simple podcasting, seriously-simple-podcasting, podlove, podcast.de
4
  Requires at least: 3.6
5
  Tested up to: 4.3
6
+ Stable tag: 6.0.5
7
  Donate link: https://www.patreon.com/blubrry?ty=h
8
  License: GPLv2 or later
9
 
205
  = Become a PowerPress Patron! =
206
  Help support your favorite podcasting plugin via Patreon. [Visit Blubrry's Patreon page](https://www.patreon.com/blubrry?ty=h)
207
 
208
+ = 6.0.5 =
209
+ * Released on 9/8/2015
210
+ * Changed the Play in New Window logic to support WordPress MultiSite `switch_to_blog()` function calls (Thanks Avi for the patch!)
211
+ * Removed the pp_flashembed JavaScript function from the player.js include (we are no longer using flash for fallback).
212
+ * Minified version of player.min.js updated.
213
+ * Fixed possible XSS vulnerability with the settings tab control.
214
+ * Added new `POWERPRESS_CURL` define option for wp-config.php. When set, PowerPress will use it's own cURL logic rather than use the `wp_remote_get()`/`wp_remote_post()` functions.
215
+
216
+
217
  = 6.0.4 =
218
  * Released on 8/27/2015
219
  * Added new Subscribe by Email option to Subscribe Links feature. By default this new feature is not enabled. Go to "PowerPress Settings" > "Media Appearance" to enable Subscribe by Email.