மீடியாவிக்கி:Gadget-twinkleunlink.js: திருத்தங்களுக்கு இடையிலான வேறுபாடு

உள்ளடக்கம் நீக்கப்பட்டது உள்ளடக்கம் சேர்க்கப்பட்டது
சிNo edit summary
Shanmugamp7 (பேச்சு | பங்களிப்புகள்)
update from enwiki
 
வரிசை 1:
// <nowiki>
 
 
(function($) {
 
 
வரிசை 11:
* Mode of invocation: Tab ("Unlink")
* Active on: Non-special pages, except Wikipedia:Sandbox
* Config directives in: TwinkleConfig
*/
 
Twinkle.unlink = function twinkleunlink() {
if( (mw.config.get('wgNamespaceNumber') < 0 || mw.config.get('wgPageName') === 'விக்கிப்பீடியாWikipedia:மணல்தொட்டிSandbox' ) {||
// Restrict to extended confirmed users (see #428)
(!Morebits.userIsInGroup('extendedconfirmed') && !Morebits.userIsSysop)) {
return;
}
Twinkle.addPortletLink( Twinkle.unlink.callback, "உள்"'Unlink', "'tw-unlink"', "உள்வரும் இணைப்புகளை நீக்க"'Unlink backlinks');
};
 
Twinkle.unlink.getChecked2 = function twinkleunlinkGetChecked2( nodelist ) {
if( !( nodelist instanceof NodeList ) && !( nodelist instanceof HTMLCollection ) ) {
return nodelist.checked ? [ nodelist.values ] : [];
}
var result = [];
for(var i = 0; i < nodelist.length; ++i ) {
if( nodelist[i].checked ) {
result.push( nodelist[i].values );
}
}
return result;
};
 
// the parameter is used when invoking unlink from admin speedy
Twinkle.unlink.callback = function(presetReason) {
var fileSpace = mw.config.get('wgNamespaceNumber') === 6;
var Window = new Morebits.simpleWindow( 600, 440 );
Window.setTitle( "உள்வரும் இணைப்புகளை நீக்குக." + (mw.config.get('wgNamespaceNumber') === 6 ? " கோப்புப் பயன்பாடுகளை நீக்குக." : "") );
Window.setScriptName( "மின்னல்" );
Window.addFooterLink( "மின்னல் உதவி", "WP:TW/DOC#unlink" );
 
var formWindow = new Morebits.quickFormsimpleWindow(600, Twinkle.unlink.callback.evaluate 440);
Window.setTitle('Unlink backlinks' + (fileSpace ? ' and file usages' : ''));
Window.setScriptName('Twinkle');
Window.addFooterLink('Unlink prefs', 'WP:TW/PREF#unlink');
Window.addFooterLink('Twinkle help', 'WP:TW/DOC#unlink');
Window.addFooterLink('Give feedback', 'WT:TW');
 
var form = new Morebits.quickForm(Twinkle.unlink.callback.evaluate);
// prepend some basic documentation
 
var node1 = Morebits.htmlNode("code", "[[" + Morebits.pageNameNorm + "|இணைப்பு உரை]]");
// prepend some documentation: files are commented out, while any
var node2 = Morebits.htmlNode("code", "இணைப்பு உரை");
// display text is preserved for links (otherwise the link itself is used)
node1.style.fontFamily = node2.style.fontFamily = "monospace";
var linkTextBefore = Morebits.htmlNode('code', '[[' + (fileSpace ? ':' : '') + Morebits.pageNameNorm + '|link text]]');
node1.style.fontStyle = node2.style.fontStyle = "normal";
var linkTextAfter = Morebits.htmlNode('code', 'link text');
form.append( {
var linkPlainBefore = Morebits.htmlNode('code', '[[' + Morebits.pageNameNorm + ']]');
var linkPlainAfter;
if (fileSpace) {
linkPlainAfter = Morebits.htmlNode('code', '<!-- [[' + Morebits.pageNameNorm + ']] -->');
} else {
linkPlainAfter = Morebits.htmlNode('code', Morebits.pageNameNorm);
}
[linkTextBefore, linkTextAfter, linkPlainBefore, linkPlainAfter].forEach(function(node) {
node.style.fontFamily = 'monospace';
node.style.fontStyle = 'normal';
});
 
form.append({
type: 'div',
style: 'margin-bottom: 0.5em',
label: [
'This tool allows you to unlink all incoming links ("backlinks") that point to this page' +
'இப்பக்கத்திற்கு உள்வரும் இணைப்புகள் அனைத்தையும் நீக்குவதற்கு இக்கருவி உதவும்' +
(fileSpace ? ', and/or hide all inclusions of this file by wrapping them in <!-- --> comment markup' : '') +
(mw.config.get('wgNamespaceNumber') === 6 ? ", அத்துடன், <!-- --> என்பதைப் பயன்படுத்திக் கோப்புப் பயன்பாடுகளை மறைக்கவும் உதவும்" : "") +
'. For instance, ',
". எடுத்துக்காட்டாக, ",
linkTextBefore, ' would become ', linkTextAfter, ' and ',
node1,
linkPlainBefore, ' would become ', linkPlainAfter, '. Use it with caution.'
" என்பது ",
node2,
" என மாறும். இக்கருவியைக் கவனத்துடன் பயன்படுத்துங்கள்."
]
} );
 
form.append( {
type: 'input',
name: 'reason',
label: 'காரணம்Reason: ',
value: (presetReason ? presetReason : ''),
size: 60
} );
 
var query; = {
action: 'query',
if(mw.config.get('wgNamespaceNumber') === 6) { // File:
list: 'backlinks',
query = {
bltitle: mw.config.get('wgPageName'),
'action': 'query',
bllimit: 'max', // 500 is max for normal users, 5000 for bots and sysops
'list': [ 'backlinks', 'imageusage' ],
blnamespace: Twinkle.getPref('unlinkNamespaces'),
'bltitle': mw.config.get('wgPageName'),
rawcontinue: true,
'iutitle': mw.config.get('wgPageName'),
format: 'json'
'bllimit': Morebits.userIsInGroup( 'sysop' ) ? 5000 : 500, // 500 is max for normal users, 5000 for bots and sysops
};
'iulimit': Morebits.userIsInGroup( 'sysop' ) ? 5000 : 500, // 500 is max for normal users, 5000 for bots and sysops
if (fileSpace) {
'blnamespace': Twinkle.getPref('unlinkNamespaces'),
query.list += '|imageusage';
'iunamespace': Twinkle.getPref('unlinkNamespaces'),
query.iutitle = query.bltitle;
'rawcontinue': true
query.iulimit = query.bllimit;
};
query.iunamespace = query.blnamespace;
} else {
query.blfilterredir = {'nonredirects';
'action': 'query',
'list': 'backlinks',
'bltitle': mw.config.get('wgPageName'),
'blfilterredir': 'nonredirects',
'bllimit': Morebits.userIsInGroup( 'sysop' ) ? 5000 : 500, // 500 is max for normal users, 5000 for bots and sysops
'blnamespace': Twinkle.getPref('unlinkNamespaces'),
'rawcontinue': true
};
}
var wikipedia_api = new Morebits.wiki.api( 'உள்வரும்Grabbing இணைப்புகளைத் திரட்டுகின்றதுbacklinks', query, Twinkle.unlink.callbacks.display.backlinks );
wikipedia_api.params = { form: form, Window: Window, image: mw.config.get('wgNamespaceNumber') === 6fileSpace };
wikipedia_api.post();
 
var root = document.createElement( 'div' );
root.style.padding = '15px'; // just so it doesn't look broken
Morebits.status.init( root );
wikipedia_api.statelem.status( "ஏற்றுகின்றது'loading..." ');
Window.setContent( root );
Window.display();
};
 
Twinkle.unlink.callback.evaluate = function twinkleunlinkCallbackEvaluate(event) {
var reasonform = event.target.reason.value;
var input = Morebits.quickForm.getInputData(form);
if (!reason) {
 
alert("உள்வரும் இணைப்புகளை நீக்குவதற்கு, நீங்கள் கட்டாயம் ஒரு காரணத்தைக் குறிப்பிடவேண்டும்.");
if (!input.reason) {
alert('You must specify a reason for unlinking.');
return;
}
 
var input.backlinks = [],input.backlinks imageusage =|| [];
input.imageusage = input.imageusage || [];
if( event.target.backlinks ) {
var pages = Morebits.array.uniq(input.backlinks.concat(input.imageusage));
backlinks = Twinkle.unlink.getChecked2(event.target.backlinks);
if (!pages.length) {
alert('You must select at least one item to unlink.');
return;
}
if( event.target.imageusage ) {
imageusage = Twinkle.unlink.getChecked2(event.target.imageusage);
}
 
Morebits.simpleWindow.setButtonsEnabled( false );
Morebits.status.init( event.target );
 
Morebits.simpleWindow.setButtonsEnabled(false);
var pages = Morebits.array.uniq(backlinks.concat(imageusage));
Morebits.status.init(form);
 
var unlinker = new Morebits.batchOperation('Unlinking ' + (input.backlinks.length ? 'backlinks' +
var unlinker = new Morebits.batchOperation("உள்வரும் இணைப்புகள் நீக்கப்படுகின்றன." + (imageusage ? " கோப்புப் பயன்பாடுகள் நீக்கப்படுகின்றன." : ""));
(input.imageusage.length ? ' and instances of file usage' : '') : 'instances of file usage'));
unlinker.setOption("preserveIndividualStatusLines", true);
unlinker.setOption('preserveIndividualStatusLines', true);
unlinker.setPageList(pages);
var params = { reason: input.reason, unlinker: unlinker };
unlinker.run(function(pageName) {
var wikipedia_page = new Morebits.wiki.page(pageName, "பின்வரும்'Unlinking பக்கத்தில்in உள்வரும்page இணைப்புகள் நீக்கப்படுகின்றன: \""' + pageName + '"\""');
wikipedia_page.setBotEdit(true); // unlink considered a floody operation
wikipedia_page.setCallbackParameters($.extend({
var innerParams = $.extend({}, params);
innerParams. doBacklinks: = backlinks && input.backlinks.indexOf(pageName) !== -1;,
innerParams. doImageusage: = imageusage && input.imageusage.indexOf(pageName) !== -1;
}, params));
wikipedia_page.setCallbackParameters(innerParams);
wikipedia_page.load(Twinkle.unlink.callbacks.unlinkBacklinks);
});
வரி 144 ⟶ 139:
display: {
backlinks: function twinkleunlinkCallbackDisplayBacklinks(apiobj) {
var xmlDocresponse = apiobj.responseXMLgetResponse();
var havecontent = false;
var list, namespaces, i;
 
if ( apiobj.params.image ) {
var imageusage = $(xmlDoc)response.find('query .imageusage.sort(function(one, iu'two); {
// json formatversion=2 doesn't sort pages by namespace
return one.ns - two.ns || (one.title > two.title ? 1 : -1);
});
list = [];
for ( i = 0; i < imageusage.length; ++i ) {
// Label made by Twinkle.generateBatchPageLinks
var usagetitle = imageusage[i].getAttribute('title');
list.push( { label: usagetitle'', value: usagetitleimageusage[i].title, checked: true } );
}
if (!list.length) {
apiobj.params.form.append({ type: 'div', label: 'No instances of file usage found.' });
{
} else {
apiobj.params.form.append( { type: 'div', label: 'இக்கோப்பு எந்தவோர் இடத்திலும் பயன்படுத்தப்படவில்லை.' } );
apiobj.params.form.append({ type: 'header', label: 'File usage' });
}
else
{
apiobj.params.form.append( { type:'header', label: 'கோப்புப் பயன்பாடு' } );
namespaces = [];
$.each(Twinkle.getPref('unlinkNamespaces'), function(k, v) {
namespaces.push(Morebitsv === '0' ? '(Article)' : mw.wikipediaconfig.namespacesFriendlyget('wgFormattedNamespaces')[v]);
});
apiobj.params.form.append( {
type: 'div',
label: "தெரிவுசெய்யப்பட்ட'Selected பெயர்வெளிகள்namespaces: "' + namespaces.join(', '),
tooltip: 'You can change this with your Twinkle preferences, at [[WP:TWPREFS]]'
tooltip: "உங்கள் மின்னல் விருப்பத்தேர்வுகளில் (WP:TWPREFS) இதனை நீங்கள் மாற்றிக்கொள்ளமுடியும்."
});
if ($(xmlDoc).find(response['query-continue'] && response['query-continue')].lengthimageusage) {
apiobj.params.form.append( {
type: 'div',
label: 'First ' + mw.language.convertNumber(list.length) + ' file usages shown.'
label: "முதல் " + list.length.toString() + " கோப்புப் பயன்பாடுகள் காட்டப்பட்டுள்ளன."
});
}
apiobj.params.form.append({
type: 'button',
label: "அனைத்தும்"'Select All',
event: function(e) {
$(Morebits.quickForm.getElements(e.target.form, "'imageusage"')).prop('checked', true);
}
});
apiobj.params.form.append({
type: 'button',
label: "எதுவும்'Deselect வேண்டாம்"All',
event: function(e) {
$(Morebits.quickForm.getElements(e.target.form, "'imageusage"')).prop('checked', false);
}
});
வரி 194 ⟶ 189:
type: 'checkbox',
name: 'imageusage',
shiftClickSupport: true,
list: list
});
வரி 200 ⟶ 196:
}
 
var backlinks = $(xmlDoc)response.find('query .backlinks.sort(function(one, bl'two); {
// json formatversion=2 doesn't sort pages by namespace
if( backlinks.length > 0 ) {
return one.ns - two.ns || (one.title > two.title ? 1 : -1);
});
if (backlinks.length > 0) {
list = [];
for ( i = 0; i < backlinks.length; ++i ) {
// Label made by Twinkle.generateBatchPageLinks
var title = backlinks[i].getAttribute('title');
list.push( { label: title'', value: backlinks[i].title, checked: true } );
}
apiobj.params.form.append( { type: 'header', label: 'உள்வரும் இணைப்புகள்Backlinks' } );
namespaces = [];
$.each(Twinkle.getPref('unlinkNamespaces'), function(k, v) {
namespaces.push(Morebitsv === '0' ? '(Article)' : mw.wikipediaconfig.namespacesFriendlyget('wgFormattedNamespaces')[v]);
});
apiobj.params.form.append( {
type: 'div',
label: "தெரிவுசெய்யப்பட்ட'Selected பெயர்வெளிகள்namespaces: "' + namespaces.join(', '),
tooltip: 'You can change this with your Twinkle preferences, linked at the bottom of this Twinkle window'
tooltip: "உங்கள் மின்னல் விருப்பத்தேர்வுகளில் (WP:TWPREFS) இதனை நீங்கள் மாற்றிக்கொள்ளமுடியும்."
});
if ($(xmlDoc).find(response['query-continue'] && response['query-continue')].lengthbacklinks) {
apiobj.params.form.append( {
type: 'div',
label: "'First "' + listmw.lengthlanguage.toStringconvertNumber(list.length) + "' backlinks shown."'
});
}
apiobj.params.form.append({
type: 'button',
label: "அனைத்தும்"'Select All',
event: function(e) {
$(Morebits.quickForm.getElements(e.target.form, "'backlinks"')).prop('checked', true);
}
});
apiobj.params.form.append({
type: 'button',
label: "எதுவும்'Deselect வேண்டாம்"All',
event: function(e) {
$(Morebits.quickForm.getElements(e.target.form, "'backlinks"')).prop('checked', false);
}
});
apiobj.params.form.append({
type: 'checkbox',
name: 'backlinks',
shiftClickSupport: true,
list: list
});
havecontent = true;
} else {
apiobj.params.form.append({ type: 'div', label: 'No backlinks found.' });
else
{
apiobj.params.form.append( { type: 'div', label: 'எந்தவோர் உள்வரும் இணைப்பும் இல்லை.' } );
}
 
if (havecontent) {
apiobj.params.form.append( { type: 'submit' } );
}
 
var result = apiobj.params.form.render();
apiobj.params.Window.setContent( result );
 
Morebits.quickForm.getElements(result, 'backlinks').forEach(Twinkle.generateBatchPageLinks);
Morebits.checkboxShiftClickSupport($("input[name='imageusage']", result));
Morebits.quickForm.getElements(result, 'imageusage').forEach(Twinkle.generateBatchPageLinks);
Morebits.checkboxShiftClickSupport($("input[name='backlinks']", result));
 
}
வரி 266 ⟶ 264:
var wikiPage = new Morebits.wikitext.page(oldtext);
 
var summaryText = ""'', warningString = false;
var text;
 
// remove image usages
if (params.doImageusage) {
text = wikiPage.commentOutImage(mw.config.get('wgTitle'), 'Commented out').getText();
text = wikiPage.getText();
// did we actually make any changes?
if (text === oldtext) {
warningString = "கோப்புப்'file பயன்பாடுகளைக்"usages';
} else {
summaryText = 'Commenting out use(s) of file';
summaryText = "கோப்புப் பயன்பாடு(கள்) மறைக்கப்பட்டது(ன).";
oldtext = text;
}
வரி 284 ⟶ 281:
// remove backlinks
if (params.doBacklinks) {
text = wikiPage.removeLink(Morebits.pageNameNorm).getText();
text = wikiPage.getText();
// did we actually make any changes?
if (text === oldtext) {
warningString = warningString ? 'backlinks or file usages' : 'backlinks';
warningString = (warningString ? "உள்வரும் இணைப்புகளையோ கோப்புப் பயன்பாடுகளையோ" : "உள்வரும் இணைப்புகளைக்");
} else {
summaryText = (summaryText ? (summaryText + "' / ")' : ""'') + "இதற்கான(வற்றுக்கான)'Removing இணைப்புlink(கள்s) நீக்கப்பட்டது(ன):"to';
oldtext = text;
}
வரி 297 ⟶ 293:
if (warningString) {
// nothing to do!
pageobj.getStatusElement().error("பக்கத்தில்Didn't find any " + warningString + "' கண்டுபிடிக்கவில்லைon the page."');
params.unlinker.workerFailure(pageobj);
return;
வரி 303 ⟶ 299:
 
pageobj.setPageText(text);
pageobj.setEditSummary(summaryText + "' \""' + Morebits.pageNameNorm + "\'": "' + params.reason + "'." + Twinkle.getPref('summaryAd'));
pageobj.setChangeTags(Twinkle.changeTags);
pageobj.setCreateOption('nocreate');
pageobj.save(params.unlinker.workerSuccess, params.unlinker.workerFailure);
}
};
 
Twinkle.addInitCallback(Twinkle.unlink, 'unlink');
})(jQuery);
 
 
// </nowiki>
"https://ta.wikipedia.org/wiki/மீடியாவிக்கி:Gadget-twinkleunlink.js" இலிருந்து மீள்விக்கப்பட்டது