2 * JS2-style replacement for MediaWiki edit.js
3 * (right now it just supports the toolbar)
6 // Setup configuration vars (if not set already)
7 if( !mwAddMediaConfig
)
8 var mwAddMediaConfig
= {};
10 //The default editPage AMW config
11 var defaultAddMediaConfig
= {
12 'profile': 'mediawiki_edit',
13 'target_textbox': '#wpTextbox1',
14 // Note: selections in the textbox will take over the default query
15 'default_query': wgTitle
,
16 'target_title': wgPageName
,
17 // Here we can setup the content provider overrides
18 'enabled_cps':['wiki_commons'],
19 // The local wiki API URL:
20 'local_wiki_api_url': wgServer
+ wgScriptPath
+ '/api.php'
23 js2AddOnloadHook( function() {
24 var amwConf
= $j
.extend( true, defaultAddMediaConfig
, mwAddMediaConfig
);
25 // kind of tricky, it would be nice to use run on ready "loader" call here
26 var didWikiEditorBind
= false;
28 //setup the drag drop binding (will only work for html5 upload browsers)
29 //$j('textarea#wpTextbox1').dragFileUpload();
31 //set up the add-media-wizard binding:
32 if( typeof $j
.wikiEditor
!= 'undefined' ) {
33 //the below seems to be broken :(
34 $j( 'textarea#wpTextbox1' ).bind( 'wikiEditor-toolbar-buildSection-main',
35 function( e
, section
) {
36 didWikiEditorBind
= true;
37 if ( typeof section
.groups
.insert
.tools
.file
!== 'undefined' ) {
38 section
.groups
.insert
.tools
.file
.action
= {
40 'execute': function() {
41 js_log('click add media wiz');
42 $j
.addMediaWiz( amwConf
);
49 //add to old toolbar if wikiEditor did not remove '#toolbar' from the page:
50 setTimeout(function(){
51 if( $j('#btn-add-media-wiz').length
== 0 && $j( '#toolbar' ).length
!= 0 ){
52 js_log(' old toolbar bind:');
53 $j( '#toolbar' ).append( '<img style="cursor:pointer" id="btn-add-media-wiz" src="' +
54 mv_skin_img_path
+ 'Button_add_media.png">' );
55 $j( '#btn-add-media-wiz' ).addMediaWiz(
59 js_log('failed to bind via build section bind via target:');
60 //make sure the wikieditor got binded:
61 if( !didWikiEditorBind
)
62 $j(".tool[rel='file']").unbind().addMediaWiz( amwConf
);