ميدياويكي:Gadget-VeSuperTool.js

ملاحظة: بعد النشر، أنت قد تحتاج إلى إفراغ الكاش الخاص بمتصفحك لرؤية التغييرات.

  • فايرفوكس / سافاري: أمسك Shift أثناء ضغط Reload، أو اضغط على إما Ctrl-F5 أو Ctrl-R (⌘-R على ماك)
  • جوجل كروم: اضغط Ctrl-Shift-R (⌘-Shift-R على ماك)
  • إنترنت إكسبلورر/إيدج: أمسك Ctrl أثناء ضغط Refresh، أو اضغط Ctrl-F5
  • أوبرا: اضغط Ctrl-F5.
function processText(text) {
	//text = persianTools.toStandardPersianCharacters(text);
	//text = persianTools.applyZwnj(text);
	//text = persianTools.applyOrthography(text);
	text = persianTools.toPersianDigits(text);
	text = persianTools.punctuation(text);
	//text = persianWikiTools.dictation(text);
	return text;
}
mw.hook('ve.activate').add(function () {
	$('#ca-abar-abzar').remove();
	$(mw.util.addPortletLink('p-views', '#', 'ابرابزار ویرایشگر دیداری', 'ca-abar-abzar-ve')).click(function (e) {
		var surfaceModel = ve.init.target.getSurface().getModel();
		var documentModel = surfaceModel.getDocument();
		var fragments = [];
		var ranges = documentModel.findText(new RegExp('.*'), true, true);
		var i, l;
		for (i = 0, l = ranges.length; i < l; i++) {
			fragments.push(surfaceModel.getLinearFragment(ranges[i], true, true));
		}
		for (i = 0, l = fragments.length; i < l; i++) {
			var fragment = fragments[i];
			fragment.insertContent(processText(fragment.getText()), true);
		}
		e.preventDefault();
		
		mw.hook( 've.saveDialog.stateChanged' ).add(function(){
			//.ve-init-mw-viewPageTarget-saveDialog-checkboxes
			var target = ve.init.target;
			var $insertBeforeThis = target.saveDialog.$body.find('.ve-ui-mwSaveDialog-options');
			$summaryBox = target.saveDialog.$body.find('.ve-ui-mwSaveDialog-summary textarea');
			$summaryBox.val("ابرابزار ویرایشیگر دیداری، " + $summaryBox.val());
		});
	});
	$('#ca-abar-abzar-ve').css('font-weight', 'bold');
});

/*
mw.libs.ve.addPlugin(function(){
(function () {
function SuperTool( toolGroup, config ) {
	OO.ui.Tool.call( this, toolGroup, config );
}
OO.inheritClass( SuperTools, OO.ui.Tool );
 
SuperTool.static.name = 'SuperTool';
SuperTool.static.title = mw.msg('SuperTool-toolname');
 
SuperTool.prototype.onSelect = function () {
	aa();
	/*
	this.toolbar.getSurface().getModel().getFragment().collapseRangeToEnd().insertContent([{
		'type': 'mwTransclusionInline',
		'attributes': {
			'mw': {
				parts: [ {
					template: {
						target: {
							href: wgFormattedNamespaces[10]+ ':'+ mw.config.get(''),
							wt: mw.config.get('rlmTemplateName')
						},
						params: {}
					}
				}]
			}
		}
	}]);
};
 
SuperTool.prototype.onUpdateState = function () {
	this.setActive( false );
};
 
ve.ui.toolFactory.register( SuperTool );
 
})();

});
*/