User:Zuohaocheng/checkOrphan.js

维基百科,自由的百科全书

注意:保存之后,你必须清除浏览器缓存才能看到做出的更改。Google ChromeFirefoxMicrosoft EdgeSafari:按住⇧ Shift键并单击工具栏的“刷新”按钮。参阅Help:绕过浏览器缓存以获取更多帮助。

/**   Name: CheckOrphan
   Author: ZUO Haocheng [[User:zuohaocheng]]
   Email: Please feel free to email me via http://en.wikipedia.org/wiki/Special:EmailUser/Zuohaocheng
   电邮: 请通过 http://zh.wikipedia.org/wiki/Special:EmailUser/Zuohaocheng 给我发送电邮
   Date: 2011年11月21日 (一) 08:16 (UTC)
   用途: 检查条目是否为孤立页面
   Usage: Check if the article is a orphan
*/
(function() {
  $(function() {
    var apiURIprefix, backlinkURI, pageName;
    if (mw.config.get('wgNamespaceNumber') !== 0 || mw.config.get('wgAction') !== 'view') {
      return;
    }
    apiURIprefix = '/w/api.php';
    pageName = encodeURIComponent(mw.config.get('wgPageName'));
    backlinkURI = apiURIprefix + '?format=xml&action=query&list=backlinks&blnamespace=0&blredirect=yes&bltitle=' + pageName;
    return $.get(backlinkURI, function(result) {
      var $result, a, backlinkCount, out;
      $result = $(result);
      backlinkCount = 0;
      if ($result.find('backlinks').length === 0) {
        return;
      }
      backlinkCount = $result.find('bl[redirect!=""]').length;
      a = $('<a></a>', {
        href: '/w/index.php?title=Special:WhatLinksHere&namespace=0&target=' + pageName
      });
      out = $('<div></div>').css({
        float: 'right',
        fontSize: '60%'
      });
      out.append(a);
      if (backlinkCount === 0) {
        a.text('Orphan').css('color', 'red');
      } else if (backlinkCount < 10) {
        a.text('Semi-orphan: ' + backlinkCount).css('color', 'orange');
      } else {
        return;
      }
      return $('h1#firstHeading').append(out);
    });
  });
}).call(this);