نکته: پس از انتشار ممکن است برای دیدن تغییرات نیاز باشد که حافظهٔ نهانی مرورگر خود را پاک کنید.
- فایرفاکس / سافاری: کلید Shift را نگه دارید و روی دکمهٔ Reload کلیک کنید، یا کلیدهای Ctrl-F5 یا Ctrl-R را با هم فشار دهید (در رایانههای اپل مکینتاش کلیدهای ⌘-R)
- گوگل کروم: کلیدهای Ctrl+Shift+R را با هم فشار دهید (در رایانههای اپل مکینتاش کلیدهای ⌘-Shift-R)
- Edge: کلید Ctrl را نگهدارید و روی دکمهٔ Refresh کلیک کنید، یا کلیدهای Ctrl-F5 را با هم فشار دهید
/** * This gadget is a rewrite of the UserMessages gadget, which was influenced by * [[n:en:MediaWiki:Gadget-UserMessages.js]] and [[n:MediaWiki:Gadget-UserMessages.js]] * * Unlike the previous version, this uses jquery.ui dialogs and accept parameters for * the messages that are being posted on the user's talk page. * * * The mw.util.addPortletLink() function is adopted from Twinkle. See * https://github.com/azatoth/twinkle for copyright information. */ ( function ( window, document, $, undefined ) { // Wrapper for anonymous function var UserMessages = {}; window.UserMessages = UserMessages; // global acecss UserMessages.addNewSection = function( summary, content ) { api = new mw.Api(); api.get( { action : 'query', titles : mw.config.get( 'wgPageName' ), prop : 'revisions', rvprop : 'content' } ).done( function( data ) { pages = data.query.pages; page_id = Object.keys(pages)[0]; if( page_id == -1 ) { wikitext = content; } else { wikitext = pages[page_id].revisions[0]["*"] + '\n\n' + content; } api.post( { action : 'edit', title : mw.config.get( 'wgPageName' ), summary : summary, text : wikitext, token : mw.user.tokens.get('csrfToken') } ).done ( function( data ) { mw.log( "Saved successfully" ); location.reload(); } ).fail( function( code, result ) { if ( code === "http" ) { mw.log( "HTTP error: " + result.textStatus ); } else if ( code === "ok-but-empty" ) { mw.log( "Got an empty response from the server" ); } else { mw.log( "API error: " + code ); } } ); } ); } UserMessages.dialog = null; UserMessages.addTemplate = function( template, param ) { summary = 'افزودن الگوی «' + template + '» به بحث کاربر' content = '{{subst:' + template + param + '}}\n~~' + '~~'; UserMessages.addNewSection( summary, content ); return true; } UserMessages.prepareTemplate = function( template, param_array ){ param_str = ''; if( param_array ) { UserMessages.dialog = new Morebits.simpleWindow( 600, 400 ); UserMessages.dialog.setTitle( 'افزودن الگوی {{' + template + '}} با پارامتر' ); var form = new Morebits.quickForm( function(){ param_str = ''; for( i=0; i < param_array.length; i++ ) { p = param_array[i]; param_str += '|' + p.param + '='; param_str += $(UserMessages.dialog.content).find('[name=' + p.param + ']').val(); } UserMessages.addTemplate( template, param_str ); }); form.append({ type: 'div', name: 'what-to-do', label: 'مقدار پارامترهای زیر را وارد کنید.', }); for( i=0; i < param_array.length; i++ ) { p = param_array[i]; form.append({ type: 'input', name: p.param, label: p.label + ': ' }); } form.append({ type: 'div', name: 'preview-what-to-do', label: 'اگر میخواهید پیشنمایشی از نتیجه را ببینید روی دکمهٔ پیشنمایش کلیک کنید:', }); form.append({ type: 'button', name: 'preview-btn', label: 'پیشنمایش', event: function(){ param_str = ''; for( i=0; i < param_array.length; i++ ) { p = param_array[i]; param_str += '|' + p.param + '='; param_str += $(UserMessages.dialog.content).find('[name=' + p.param + ']').val(); } api = new mw.Api(); api.get({ action: 'parse', text: '{{subst:' + template + param_str + '}}', pst: true }).done(function( data ){ $('[name=preview-warn]').html(data.parse.text['*']); }); } }); form.append({ type: 'div', name: 'preview-warn', label: '' }); form.append( { type:'submit' } ); var result = form.render(); UserMessages.dialog.setContent( result ); UserMessages.dialog.display(); return false; } } UserMessages.messages = [ [{ tpl : 'خوشامد', params : [{param : 1, label : 'پیام تکمیلی'}], label : 'خوشامد (کاربر)', id : 'p-warn-welcome', }, { tpl : 'خوشامد-آیپی', params : false, label : 'خوشامد (آیپی)', id : 'p-warn-welcome-ip', }], [{ tpl : 'امضا کنید', params : [{param : 1, label : 'پیام تکمیلی'}], label : 'تازهکاران: امضا کنید', id : 'p-warn-sign', }, { tpl : 'امضا مکنید', params : [{param : 1, label : 'عنوان مقاله'}], label : 'تازهکاران: امضا مکنید', id : 'p-warn-dont-sign', }, { tpl : 'دعوت دانشجویان برنامه آموزشی', params : false, label : 'دعوت کاربر', id : 'p-warn-invite', }, { tpl : 'آغازیدن مقاله آموزشی', params : false, label : 'درخواست آغازیدن مقاله', id : 'p-warn-start-article', }, { tpl : 'استفاده از صفحه کلید فارسی', params : false, label : 'تازهکاران: صفحهکلید فارسی', id : 'p-warn-keyboard', }, { tpl : 'صفحه تمرین', params : false, label : 'تازهکاران: صفحه تمرین', id : 'p-warn-sandbox', }, { tpl : 'از پیشنمایش استفاده کنید', params : [{param : 1, label : 'عنوان مقاله'}], label : 'تازهکاران: پیشنمایش', id : 'p-warn-preview', }, { tpl : 'تذکر خلاصه ویرایش', params : false, label : 'تازهکاران: خلاصه ویرایش', id : 'p-warn-summary', }], [{ tpl : 'کار با ویرایشگر دیداری', params : false, label : 'ابزارها: ویرایشگر دیداری', id : 'p-warn-visual-editor', }, { tpl : 'ابزار کمکمترجم', params : false, label : 'ابزارها: کمکمترجم', id : 'p-warn-translate-tool', }, { tpl : 'ابزارهای ویرایشی', params : false, label : 'ابزارها: ابزارهای ویرایشی', id : 'p-warn-edittools', }, { tpl : 'ابرابزار', params : false, label : 'ابزارها: ابرابزار', id : 'p-warn-supertool', }, { tpl : 'ابزارهای کاربردی', params : false, label : 'ابزارها: کاربردی', id : 'p-warn-useful-tools', }], [{ tpl : 'ویکینویسی', params : false, label : 'مقاله: آموزش ویکینویسی', id : 'p-warn-style', }, { tpl : 'ویرایش دانشجویی', params : false, label : 'مقاله: ویرایش دانشجویی', id : 'p-warn-student', }, { tpl : 'نوشتار نامناسب', params : [{param : 1, label : 'عنوان مقاله'}], label : 'مقاله: نوشتار نامناسب', id : 'p-warn-poor-quality', }, { tpl : 'بیش از حد کوتاه', params : [{param : 1, label : 'عنوان مقاله'}], label : 'مقاله: زیادی کوتاه', id : 'p-warn-too-short', }, { tpl : 'حداقلهای مقاله', params : false, label : 'مقاله: حداقلها', id : 'p-warn-minimum-req', }, { tpl : 'مقاله حذف شده', params : [{param : 1, label : 'پیام تکمیلی'}], label : 'مقاله: حذف شده', id : 'p-warn-deleted', }, { tpl : 'از تغییرمسیر استفاده کنید', params : false, label : 'مقاله: تغییرمسیر', id : 'p-warn-redir', }, { tpl : 'از انتقال استفاده کنید', params : false, label : 'مقاله: انتقال', id : 'p-warn-move', }], [{ tpl : 'کپی مکنید', params : [{param : '1', label : 'عنوان مقاله'}], label : 'حق تکثیر: کپیکاری', id : 'p-warn-copyright', }, { tpl : 'هشدار نقض حق تکثیر', params : false, label : 'حقتکثیر: هشدار نگاره', id : 'p-warn-copyvio', }], [{ tpl : 'مختصاتدهی', params : false, label : 'پیشرفته: مختصات', id : 'p-warn-coord', }, { tpl : 'ردهدهی', params : false, label : 'پیشرفته: ردهبندی', id : 'p-warn-cat', }, { tpl : 'افزودن میانویکی', params : false, label : 'پیشرفته: میانویکی', id : 'p-warn-iw', }], [{ tpl : 'تبلیغ مکنید', params : [{param : 1, label : 'عنوان مقاله'}], label : 'هرزنگاری: تبلیغ', id : 'p-warn-ad', }, { tpl : 'هشدار نقض قانون سه برگردان', params : [{param : 1, label : 'عنوان مقاله'}], label : 'هرزنگاری: سهبرگردان', id : 'p-warn-3RR', }, { tpl : 'اشتباه گرفتهاید', params : [{param : 1, label : 'با چه اشتباه گرفته؟'}], label : 'هرزنگاری: اشتباهگرفتهاید', id : 'p-warn-wrong-place', }, { tpl : 'نام کاربری نامناسب', params : [{param : 1, label : 'دلیل نامناسب بودن'}], label : 'هرزنگاری: نام کاربری', id : 'p-warn-bad-username', }] ]; if( mw.config.get( 'wgUserGroups' ).indexOf( 'sysop' ) > -1) { UserMessages.messages.push([{ tpl : 'بستن نام تبلیغی', params : false, label : 'بستن: نام تبلیغی', id : 'p-block-bad-username', }, { tpl : 'اعطای گشت خودکار', params : false, label : 'دسترسی: گشتخودکار', id : 'p-warn-autopatrol', }, { tpl : 'اعطای واگردان', params : false, label : 'دسترسی: واگردان', id : 'p-warn-revert', }, { tpl : 'اعطای گشت', params : false, label : 'دسترسی: گشت', id : 'p-warn-patroll', }]); } UserMessages.addPortletLink = function( tpl, params, text, id, tooltip ) { var link = mw.util.addPortletLink( 'p-warn' , "#", text, id, tooltip ); $( link ).click( function( ev ) { ev.preventDefault(); UserMessages.addTemplate(tpl, ''); }); if( params ) { $( link ).find( 'a' ).append( '<a href="#" id="' + id + '-parametric" class="p-warn-param"><small>+ پارامتر</small></a>' ); $( link ).find( '.p-warn-param' ).click( function( evt ) { evt.stopPropagation(); evt.preventDefault(); UserMessages.prepareTemplate(tpl, params); return false; }); } }; UserMessages.load = function () { if( mw.config.get('wgNamespaceNumber') != 3) return false; $('#p-views').after('<div id="p-warn" class="vectorMenu"><h3><span><a href="#"></a>تذکر۲</span></h3><div class="menu"><ul></ul></div></div>'); for( g=0; g < UserMessages.messages.length; g++ ) { for( i=0; i < UserMessages.messages[g].length; i++ ) { m = UserMessages.messages[g][i]; UserMessages.addPortletLink( m.tpl, m.params, m.label, m.id, 'افزودن {{' + m.tpl + '}} با امضای شما' ); } if( g != UserMessages.messages.length - 1 ) { $('#p-warn .menu ul').append('<li class="sep"><hr /></li>'); } } }; $(UserMessages.load); } ( window, document, jQuery )); // End wrapper for anonymous function