User:संतोष दहिवळ/थेट विकिडाटा.js

From Meta, a Wikimedia project coordination wiki

Note: After publishing, you may have to bypass your browser's cache to see the changes.

  • Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
  • Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
  • Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
  • Opera: Press Ctrl-F5.
$(function ($) {
  var translate = {
    'mr': {
      removeinterwikis: "इतर भाषा काढून टाका",
      summary: "इतर भाषांचे विलिनीकरण ([[d:WD:I|थेट विकिडाटा]])"
    },
    'hi': {
      removeinterwikis: "अन्य भाषा कड़ियाँ निकालो",
      summary: "अन्य भाषा कड़ियाँ निकाली([[d:WD:I|Live Wikidata]])"
    }
  }
  var namespace = mw.config.get('wgNamespaceNumber'), 
    lang = mw.config.get('wgPageContentLanguage'),
    m = translate[ lang ] || translate.en,
    page = namespace === 0 ? mw.config.get('wgTitle') : mw.config.get('wgFormattedNamespaces')[ namespace ] + ':' + mw.config.get('wgTitle').replace(/\/doc$/, ''),
    editbox = document.getElementById( "wpTextbox1" );
  function removeInterwikis() {
    document.body.style.cursor = "wait";
    $.ajax({
      url: '//www.wikidata.org/w/api.php',
      data: {
        'format': 'json',
          'action': 'wbgetentities',
          'sites': mw.config.get('wgDBname'),
          'titles': page,
          'props': 'sitelinks',
          'languages': lang
      },
      dataType: 'jsonp',
      success: function (data) {
        if (data.success) {
          for (var i in data.entities) {
            if ( i != -1 ) {
              var item = data.entities[i] && data.entities[i].sitelinks;
              if ( item ) {
                for ( var i in item ) {
                  var interw = "[[" + item[ i ].site.split("wiki")[0].replace(/_/g,"-") + ":" + item[ i ].title + "]]";
                  editbox.value = editbox.value.replace( interw + "\n", "" ).replace( interw, "" );
                }
              }
            }
            var editsum = document.getElementById("wpSummary");
            editsum && (editsum.value += ( m.summary || '' ));
          }
        }
        document.body.style.cursor = "";
      }
    });
  }
  editbox && $( mw.util.addPortletLink( 'p-cactions', '#', m.removeinterwikis ) ).on( "click", removeInterwikis);
});