Site Notice

hello, world

Difference between revisions of "User:机智的小鱼君/common.js"

From Project-EPB Commons
([InPageEdit] 没有编辑摘要)
Line 67: Line 67:
  
 
$('#firstHeading').append('<span style="font-size:12px;float:right">wgRevisionId: ' + mw.config.get('wgRevisionId') + ' | wgArticleId: ' + wgArticleId + '</span>');
 
$('#firstHeading').append('<span style="font-size:12px;float:right">wgRevisionId: ' + mw.config.get('wgRevisionId') + ' | wgArticleId: ' + wgArticleId + '</span>');
 
/** 自动推送IPE **/
 
if (mw.config.get('wgPageName') === 'MediaWiki:Js-InPageEdit-canary.js') {
 
  $('#mw-content-text').prepend(
 
    $('<button>', { id: 'mergeCanary' })
 
      .text('合并到正式版')
 
      .click(function () {
 
        var versionNum = prompt('版本号?', '2.xx.x(build_' + wgRevisionId + ')');
 
        if (versionNum !== null) {
 
          var summary = prompt('摘要?', '[Automatic] Merged canary [[Special:Diff/' + wgRevisionId + ']]');
 
          if (summary !== null) {
 
            new mw.Api().post({
 
              action: 'parse',
 
              page: 'MediaWiki:Js-InPageEdit-canary.js',
 
              prop: 'wikitext',
 
              format: 'json'
 
            }).then(function (data1) {
 
              var canarytext = data1.parse.wikitext['*'],
 
                canarynew = canarytext.split('/*** BOT FLAG ***/')[1];
 
              new mw.Api().post({
 
                action: 'parse',
 
                page: 'MediaWiki:Js-InPageEdit-v2.js',
 
                prop: 'wikitext',
 
                format: 'json'
 
              }).then(function (data2) {
 
                var v2text = data2.parse.wikitext['*'],
 
                  v2new = v2text.split('/*** BOT FLAG ***/')[0] + '/*** BOT FLAG ***/' + canarynew;
 
                if (versionNum !== '' && versionNum !== '2.xx.x(build_' + wgRevisionId + ')') v2new = v2new.replace(/\/\*\=version\*\/(.*)\/\*version\=\*\//ig, "/*=version*/InPageEdit.version = '" + versionNum + "';/*version=*/");
 
                new mw.Api().postWithToken('csrf', {
 
                  action: 'edit',
 
                  title: 'MediaWiki:Js-InPageEdit-v2.js',
 
                  text: v2new,
 
                  summary: summary
 
                }).then(function () {
 
                  alert('成功!');
 
                });
 
              });
 
            });
 
          }
 
        }
 
      })
 
  );
 
}
 
  
 
!(function(){
 
!(function(){
 
   // $.getScript('https://cdn.jsdelivr.net/npm/[email protected]/dist/vconsole.min.js',function(){new VConsole();});
 
   // $.getScript('https://cdn.jsdelivr.net/npm/[email protected]/dist/vconsole.min.js',function(){new VConsole();});
 
}());
 
}());

Revision as of 14:22, 14 September 2020

mw.loader.load('https://cdn.jsdelivr.net/npm/mediawiki-inpageedit@latest/dist/InPageEdit.min.js');

/** InPageEdit Preferences **/
window.InPageEdit = window.InPageEdit || {}; // Keep this line
InPageEdit.myPreference = {
  "editMinor": false,
  "editSummary": "[InPageEdit] $section 没有编辑摘要 $oldid",
  "redLinkQuickEdit": true,
  "watchList": true,
  "plugins": [
    "toolbox.js",
    "edit-any-page.js",
    "color-preview.js"
  ]
}
InPageEdit.buttons =[{
  open: '<-- ', // 添加到光标前的内容
  middle: '注释文字', // 选区内容占位符,选填
  close: ' -->', // 添加到光标后的内容
  text: '<span class="material-icons">description</span>' // 按钮文字,被解析为html
}, { // 再举个栗子
  open: '<s>',
  middle: '删除线',
  close: '</s>',
  text: '<span class="material-icons">strikethrough_s</span>'
}];

mw.hook('InPageEdit').add(function(){
  if (mw.config.get('wgIsArticle')) {
    mw.hook('dfgh.i18n').add(function (i18no) {
      //i18no.loadMessages('InPageEdit-v2').then(function(i18n){
        $('#ca-edit, #ca-viewsource').after(
          $('<li>', {
            id: 'ca-quick-edit',
            class: 'collapsible'
          }).append(
            $('<span>').append(
              $('<a>', {
                href: 'javascript:void(0)',
                text: '快速编辑'
              }).click(function () {
                InPageEdit.edit({
                  page: mw.config.get('wgPageName'),
                  revision: mw.config.get('wgRevisionId')
                });
              })
            )
          )
        );
      //});
    });
  }
});

if (mw.config.get('wgIsArticle')) {
  $('#ca-history').append(
    $('<a>', {
      href: 'javascript:void(0);',
      style: 'margin-left:2px;top: -1.2em;position: relative;font-size: 8px;'
    }).append(
      $('<span>').html('最后更改')
    ).click(function () {
      InPageEdit.quickDiff({ fromtitle: mw.config.get('wgPageName'), torelative: 'prev' });
    })
  );
}

$('#firstHeading').append('<span style="font-size:12px;float:right">wgRevisionId: ' + mw.config.get('wgRevisionId') + ' | wgArticleId: ' + wgArticleId + '</span>');

!(function(){
  // $.getScript('https://cdn.jsdelivr.net/npm/[email protected]/dist/vconsole.min.js',function(){new VConsole();});
}());