跳转到内容
主菜单
主菜单
移至侧栏
隐藏
导航
首页
分类索引
最近更改
随便看看
灵兰秘典
捐助本站
帮助
帮助
联系我们
关于本站
MediaWiki帮助
USER-SIDEBAR
GROUP-SIDEBAR
CATEGORY-SIDEBAR
中医百科
搜索
搜索
外观
登录
个人工具
登录
查看“︁MediaWiki:Gadget-defaultsummaries.js”︁的源代码
系统消息
讨论
English
阅读
查看源代码
查看历史
工具
工具
移至侧栏
隐藏
操作
阅读
查看源代码
查看历史
常规
链入页面
相关更改
特殊页面
页面信息
外观
移至侧栏
隐藏
←
MediaWiki:Gadget-defaultsummaries.js
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于该用户组的用户执行:
用户
此页面为本wiki上的软件提供界面文本,并受到保护以防止滥用。 如欲修改所有wiki的翻译,请访问
translatewiki.net
上的MediaWiki本地化项目。
您无权编辑此JavaScript页面,因为编辑此页面可能会影响所有访问者。
您可以查看和复制此页面的源代码。
/* _____________________________________________________________________________ * | | * | === WARNING: GLOBAL GADGET FILE === | * | Changes to this page affect many users. | * | Please discuss changes on the talk page or on [[WT:Gadget]] before editing. | * |_____________________________________________________________________________| * * Imported as of 09/06/2011 from [[User:ErrantX/defaultsummaries.js]] * Edited version from [[User:MC10/defaultsummaries.js]] * Implements default edit summary dropdown boxes */ /* global mw, ve */ /* eslint-disable no-jquery/no-global-selector */ (() => { 'use strict'; const SUMMARY_LISTS = { minor: [ '拼写/语法/标点符号/排版更正', '修复样式/布局错误', '回退破坏或测试编辑', '回退无法解释的内容删除', '修改(小编辑)' ], article: [ '扩展文章', '添加/改进参考资料', '添加/删除维基链接', '清理/修改', '添加/删除类别', '添加/删除外部链接', '删除无源内容' ], nonArticle: [ '回复', '注释', '建议' ], talkPage: [ 'WikiProject 标记', 'WikiProject 评估' ] }; const STYLES = { dropdownContainer: { width: '48%', paddingBottom: '1em' } }; class SummaryHelper { constructor() { this.summaryBox = $('#wpSummary'); this.initialized = false; this.init(); } init() { if (this.initialized) return; this.setupVisualEditorHook(); this.setupWikiEditor(); this.initialized = true; } setupVisualEditorHook() { mw.hook('ve.saveDialog.stateChanged').add(() => { if ($('body').hasClass('has-summary-dropdowns')) return; const target = ve.init.target; const $saveOptions = target.saveDialog.$saveOptions; this.summaryBox = target.saveDialog.editSummaryInput.$input; if (!$saveOptions.length) return; $('body').addClass('has-summary-dropdowns'); $saveOptions.before(this.createDropdowns()); }); } setupWikiEditor() { Promise.all([ mw.loader.using('oojs-ui-core'), $.ready ]).then(() => { const $editCheckboxes = $('.editCheckboxes'); if (!$editCheckboxes.length) return; $editCheckboxes.before( this.createDropdowns().css(STYLES.dropdownContainer) ); }); } createDropdowns() { const namespace = mw.config.get('wgNamespaceNumber'); const isArticle = namespace === 0; const isDraft = namespace === 118; const isTalkPage = namespace % 2 !== 0 && namespace !== 3; const dropdown = new OO.ui.DropdownWidget({ label: '通用编辑摘要' }); const minorDropdown = new OO.ui.DropdownWidget({ label: '常见小编辑摘要' }); dropdown.menu.on('select', this.handleSummarySelect.bind(this)); minorDropdown.menu.on('select', this.handleSummarySelect.bind(this)); this.addOptionsToDropdown(minorDropdown, SUMMARY_LISTS.minor); if (isArticle || isDraft) { this.addOptionsToDropdown(dropdown, SUMMARY_LISTS.article); } else { this.addOptionsToDropdown(dropdown, SUMMARY_LISTS.nonArticle); if (isTalkPage) { this.addOptionsToDropdown(dropdown, SUMMARY_LISTS.talkPage); } } return dropdown.$element.add(minorDropdown.$element); } addOptionsToDropdown(dropdown, optionTexts) { dropdown.menu.addItems( optionTexts.map(text => new OO.ui.MenuOptionWidget({ label: text })) ); } handleSummarySelect(option) { const originalValue = this.summaryBox.val(); const newSummary = originalValue.length && !originalValue.endsWith(' ') ? `${originalValue} ${option.getLabel()}` : originalValue + option.getLabel(); this.summaryBox.val(newSummary).trigger('change'); } } // Initialize on document ready $(() => new SummaryHelper()); })();
返回
MediaWiki:Gadget-defaultsummaries.js
。