مدیاویکی:Gadget-CustomizedEditTool.js

از ویکی‌پدیا، دانشنامهٔ آزاد

نکته: برای دیدن تغییرات، ممکن است نیاز باشد که حافظهٔ نهانی مرورگر خود را پس از انتشار پاک‌سازی کنید. گوگل کروم، فایرفاکس، مایکروسافت اج و سافاری: کلید Shift را نگه دارید و روی دکمهٔ Reload در نوار ابزار مرورگر کلیک کنید. برای آگاهی از جزئیات و نحوهٔ پاک‌سازی حافظهٔ نهانی سایر مرورگرها، صفحهٔ ویکی‌پدیا:میانگیر مرورگرتان را خالی کنید را ببینید.

/*jslint indent: 2*/
/*global mw, $*/
$(function () {
  'use strict';
  var action = mw.config.get('wgAction');
  if (action === 'edit' || action === 'submit') {
    new mw.Api().get({
      action: 'parse',
      page: 'کاربر:' + mw.config.get('wgUserName') + '/EditTools',
      format: 'json'
    }).then(function (data) {
      $('.mw-editTools').html(data.parse.text['*']);
      
        // Copied from https://github.com/wikimedia/mediawiki-extensions-CharInsert/blob/master/modules/ext.charinsert.js#L5-L24
		$( 'a.mw-charinsert-item' ).each( function () {
			var $item = $( this ),
				start = $item.data( 'mw-charinsert-start' ),
				end = $item.data( 'mw-charinsert-end' );
			if ( $item.data( 'mw-charinsert-done' ) ) {
				return;
			}
			$item.on( 'click', function ( e ) {
				e.preventDefault();
				$( '#wpTextbox1' ).textSelection(
						'encapsulateSelection', {
							pre: start,
							peri: '',
							post: end
						}
					);
			} )
				.data( 'mw-charinsert-done', true )
				.attr( 'href', '#' );
		} );
    });
  }
});