* this file exposes some of the functionality of mwEmbed to wikis
* that do not yet have js2 enabled
*/
+
var urlparts = getRemoteEmbedPath();
var mwEmbedHostPath = urlparts[0];
-var reqAguments = urlparts[1];
+var mwRemoteVersion = '1.06';
+var mwUseScriptLoader = true;
+
+//setup up request Params:
+var reqParts = urlparts[1].substring(1).split('&');
+var mwReqParam={};
+for(var i=0;i< reqParts.length; i++){
+ var p = reqParts[i].split('=');
+ if( p.length == 2 )
+ mwReqParam[ p[0] ] = p[1];
+}
addOnloadHook( function(){
- //only do rewrites if MV_EMBED / js2 is "off"
+ // Only do rewrites if MV_EMBED / js2 is "off"
if( typeof MV_EMBED_VERSION == 'undefined' ) {
doPageSpecificRewrite();
}
function doPageSpecificRewrite() {
// Add media wizard
if( wgAction == 'edit' || wgAction == 'submit' ) {
- load_mv_embed( function() {
- loadExternalJs( mwEmbedHostPath + '/editPage.js' + reqAguments );
- } );
+ load_mv_embed( function() {
+ loadExternalJs( mwEmbedHostPath + '/editPage.js?' + mwGetReqArgs() );
+ });
}
- //timed text dispaly:
+ // Timed text display:
if(wgPageName.indexOf("TimedText") === 0){
load_mv_embed(function(){
- alert('wtf');
- loadExternalJs( mwEmbedHostPath + '/mwEmbed/libTimedText/mvTimeTextEdit.js' + reqAguments );
+ // Load with mw loader to get localized interface:
+ $mw.load( ['mvTimeTextEdit'],function(){
+ //could run init here (but mvTimeTextEdit included onLoad actions)
+ });
});
}
// Firefogg integration
if( wgPageName == "Special:Upload" ){
load_mv_embed( function() {
- loadExternalJs( mwEmbedHostPath + '/uploadPage.js' + reqAguments );
+ loadExternalJs( mwEmbedHostPath + '/uploadPage.js?' + mwGetReqArgs() );
} );
}
var wgEnableIframeApiProxy = true;
load_mv_embed( function() {
js_log("Wiki:ApiProxy::");
- loadExternalJs( mwEmbedHostPath + '/apiProxyPage.js' + reqAguments );
+ loadExternalJs( mwEmbedHostPath + '/apiProxyPage.js?' + mwGetReqArgs() );
});
}
} );
}
}
-// will be depreciated in favor of updates to OggHandler
+// This will be depreciated in favour of updates to OggHandler
function rewrite_for_OggHandler( vidIdList ){
function procVidId( vidId ){
//don't process empty vids
var pimg = $j( '#' + vidId + ' img' );
var poster_attr = 'poster = "' + pimg.attr( 'src' ) + '" ';
var pwidth = $j( '#' + vidId).width();
- var pheight = $j( '#' + vidId ).height();
-
+ var pheight = $j( '#' + vidId + ' img').height();
var tag_type = 'video';
// Check for audio
if( vidIdList.length != 0 ){
setTimeout( function(){
procVidId( vidIdList.pop() )
- }, 1);
+ }, 10);
}
});
};
}
}
}
+function mwGetReqArgs(){
+ var rurl = '';
+ if(mwReqParam['debug'])
+ rurl += 'debug=true&';
+
+ if(mwReqParam['uselang'] )
+ rurl += 'uselang=' + mwReqParam['uselang'] + '&';
-function load_mv_embed( callback ) {
+ if( mwReqParam['urid'] ){
+ rurl += 'urid=' + mwReqParam['urid'];
+ }else{
+ // Make sure to use an urid
+ // This way remoteMwEmbed can control version of code being requested
+ rurl += 'urid=' + mwRemoteVersion;
+ }
+ return rurl;
+}
+function load_mv_embed( callback ) {
// Inject mv_embed if needed
- if( typeof $mw == 'undefined' ) {
- var mvurl = mwEmbedHostPath + '/mwEmbed/mv_embed.js' + reqAguments ;
- importScriptURI( mvurl );
+ if( typeof $mw == 'undefined' ) {
+ if( ( mwReqParam['uselang'] || mwReqParam['useloader'] ) && mwUseScriptLoader){
+ var rurl = mwEmbedHostPath + '/mwEmbed/jsScriptLoader.php?class=mv_embed';
+ // Add jQuery too if we need it:
+ if(typeof window.jQuery == 'undefined'){
+ rurl += ',window.jQuery';
+ }
+ rurl += '&' + mwGetReqArgs();
+
+ importScriptURI( rurl );
+ }else{
+ importScriptURI( mwEmbedHostPath + '/mwEmbed/mv_embed.js?' + mwGetReqArgs() );
+ }
}
check_for_mv_embed( callback );
}