|
|
| 第14行: |
第14行: |
| //编辑器更改 | | //编辑器更改 |
| loadAddon('WikiEditorModify') | | loadAddon('WikiEditorModify') |
| loadAddon('loadprism') | | //loadAddon('loadprism') |
| | // 挂在GitHub,用CDN获取 |
| | |
| }) | | }) |
|
| |
|
| 第24行: |
第26行: |
| mw.loader.load("//mcbbs-wiki.cn/index.php?title=MediaWiki:Addon-" + s + ".js&action=raw&ctype=text/javascript" | | mw.loader.load("//mcbbs-wiki.cn/index.php?title=MediaWiki:Addon-" + s + ".js&action=raw&ctype=text/javascript" |
| , "text/javascript"); | | , "text/javascript"); |
| }
| |
| //获取页面标题
| |
| function getTitle() {
| |
| var url = document.querySelector('#ca-view a').getAttribute('href');
| |
| return url.slice(url.indexOf('/wiki/')+6);
| |
| } | | } |
| //计算日志有几行 | | //计算日志有几行 |
| 第37行: |
第34行: |
| }) | | }) |
| } | | } |
| /* 弃用
| |
| // --------
| |
| // 高亮代码
| |
| // --------
| |
| var preList = document.querySelectorAll('pre')
| |
| var el
| |
| for (var i = 0; i < preList.length; i++) {
| |
| el=preList[i]
| |
| el.classList.add('line-numbers')
| |
| el.innerHTML='<code class="language-'+langGuess(el)+'">'+el.innerHTML+'</code>'
| |
| }
| |
| //猜测是哪种编程语言
| |
| function langGuess(el) {
| |
| var pel = el.parentNode
| |
| var langList = ['css', 'js', 'java', 'vbnet', 'batch', 'python', 'lua', 'vb', 'basic', 'c', 'cpp', 'sql', 'bbcode', 'kotlin', 'markdown']
| |
| for (var i = 0; i < langList.length; i++) {
| |
| if (pel.classList.contains(langList[i])) {
| |
| return langList[i]
| |
| }
| |
| }
| |
| if (thisHref.indexOf('.js') != -1) {
| |
| return 'js'
| |
| } else if (thisHref.indexOf('.css') != -1) {
| |
| return 'css'
| |
| }
| |
| return 'js'
| |
| }
| |
| */
| |
| /* 弃用
| |
| // 导入插件
| |
| $('head').append('<script src="https://cdn.bootcdn.net/ajax/libs/prism/1.22.0/prism.min.js"></script>' //本体
| |
| //+'<script src="https://cdn.bootcdn.net/ajax/libs/prism/1.22.0/components/prism-basic.min.js"></script>'
| |
| +'<script src="https://cdn.bootcdn.net/ajax/libs/prism/1.22.0/components/prism-batch.min.js"></script>'
| |
| +'<script src="https://cdn.bootcdn.net/ajax/libs/prism/1.22.0/components/prism-bbcode.min.js"></script>'
| |
| +'<script src="https://cdn.bootcdn.net/ajax/libs/prism/1.22.0/components/prism-c.min.js"></script>'
| |
| +'<script src="https://cdn.bootcdn.net/ajax/libs/prism/1.22.0/components/prism-cpp.min.js"></script>'
| |
| +'<script src="https://cdn.bootcdn.net/ajax/libs/prism/1.22.0/components/prism-css.min.js"></script>'
| |
| //+'<script src="https://cdn.bootcdn.net/ajax/libs/prism/1.22.0/components/prism-go.min.js"></script>'
| |
| +'<script src="https://cdn.bootcdn.net/ajax/libs/prism/1.22.0/components/prism-java.min.js"></script>'
| |
| +'<script src="https://cdn.bootcdn.net/ajax/libs/prism/1.22.0/components/prism-javascript.min.js"></script>'
| |
| +'<script src="https://cdn.bootcdn.net/ajax/libs/prism/1.22.0/components/prism-json.min.js"></script>'
| |
| //+'<script src="https://cdn.bootcdn.net/ajax/libs/prism/1.22.0/components/prism-kotlin.min.js"></script>'
| |
| //+'<script src="https://cdn.bootcdn.net/ajax/libs/prism/1.22.0/components/prism-markdown.min.js"></script>'
| |
| +'<script src="https://cdn.bootcdn.net/ajax/libs/prism/1.22.0/components/prism-lua.min.js"></script>'
| |
| +'<script src="https://cdn.bootcdn.net/ajax/libs/prism/1.22.0/components/prism-python.min.js"></script>'
| |
| //+'<script src="https://cdn.bootcdn.net/ajax/libs/prism/1.22.0/components/prism-sql.min.js"></script>'
| |
| +'<script src="https://cdn.bootcdn.net/ajax/libs/prism/1.22.0/components/prism-visual-basic.min.js"></script>'
| |
| //+'<script src="https://cdn.bootcdn.net/ajax/libs/prism/1.22.0/components/prism-vbnet.min.js"></script>'
| |
| +'<script src="https://cdn.bootcdn.net/ajax/libs/prism/1.22.0/components/prism-yaml.min.js"></script>'
| |
| //+'<script src="https://cdn.bootcdn.net/ajax/libs/prism/1.22.0/plugins/inline-color/prism-inline-color.min.js"></script>' //插件 行内颜色
| |
| //+'<link href="https://cdn.bootcdn.net/ajax/libs/prism/1.22.0/plugins/inline-color/prism-inline-color.min.css" rel="stylesheet">' // 该插件的CSS
| |
| +'<script src="https://cdn.bootcdn.net/ajax/libs/prism/1.22.0/plugins/line-numbers/prism-line-numbers.min.js"></script>' //插件 显示行数
| |
| +'<link href="https://cdn.bootcdn.net/ajax/libs/prism/1.22.0/plugins/line-numbers/prism-line-numbers.min.css" rel="stylesheet">'
| |
| +'<script src="https://cdn.bootcdn.net/ajax/libs/prism/1.22.0/plugins/toolbar/prism-toolbar.min.js"></script>' // 插件 工具栏
| |
| +'<link href="https://cdn.bootcdn.net/ajax/libs/prism/1.22.0/plugins/toolbar/prism-toolbar.min.css" rel="stylesheet">'
| |
| +'<script src="https://cdn.bootcdn.net/ajax/libs/prism/1.22.0/plugins/show-language/prism-show-language.min.js"></script>' // 插件 显示语言
| |
| +'<link href="https://cdn.bootcdn.net/ajax/libs/prism/1.22.0/themes/prism.min.css" rel="stylesheet">') //样式
| |
| */
| |
| /* 弃用,更优方案已在管理员裙发布
| |
| // API扩展
| |
| window.addEventListener('load',function(){$.extend(mw.Api.prototype,{postWithEditToken:function(params,ajaxOptions){return this.postWithToken('csrf',params,ajaxOptions)},getEditToken:function(){return this.getToken('csrf')},create:function(title,params,content){return this.postWithEditToken($.extend(this.assertCurrentUser({action:'edit',title:String(title),text:content,formatversion:'2',createonly:true}),params)).then(function(data){return data.edit})},edit:function(title,transform){var basetimestamp,curtimestamp,api=this;title=String(title);return api.get({action:'query',prop:'revisions',rvprop:['content','timestamp'],titles:[title],formatversion:'2',curtimestamp:true}).then(function(data){var page,revision;if(!data.query||!data.query.pages){return $.Deferred().reject('unknown')}page=data.query.pages[0];if(!page||page.invalid){return $.Deferred().reject('invalidtitle')}if(page.missing){return $.Deferred().reject('nocreate-missing')}revision=page.revisions[0];basetimestamp=revision.timestamp;curtimestamp=data.curtimestamp;return transform({timestamp:revision.timestamp,content:revision.content})}).then(function(params){var editParams=typeof params==='object'?params:{text:String(params)};return api.postWithEditToken($.extend({action:'edit',title:title,formatversion:'2',assert:mw.config.get('wgUserName')?'user':undefined,basetimestamp:basetimestamp,starttimestamp:curtimestamp,nocreate:true},editParams))}).then(function(data){return data.edit})},newSection:function(title,header,message,additionalParams){return this.postWithEditToken($.extend({action:'edit',section:'new',title:String(title),summary:header,text:message},additionalParams))}})});
| |
| */
| |