User:DR/test.js: Difference between revisions
From Test Wiki
Content deleted Content added
No edit summary Tag: Reverted |
1st version Tag: Manual revert |
||
| Line 11: | Line 11: | ||
reasonInputField = new OO.ui.TextInputWidget({ |
reasonInputField = new OO.ui.TextInputWidget({ |
||
placeholder: 'Reason for deletion' |
placeholder: 'Reason for deletion' |
||
}), |
|||
deleteTalkPagesCheckbox = new OO.ui.CheckboxInputWidget({ |
|||
selected: false |
|||
}), |
}), |
||
previewButton = new OO.ui.ButtonWidget({ |
previewButton = new OO.ui.ButtonWidget({ |
||
| Line 36: | Line 33: | ||
reasonLabel: $('<p>').text('Reason:').css('font-weight', 'bold') |
reasonLabel: $('<p>').text('Reason:').css('font-weight', 'bold') |
||
}; |
}; |
||
var deleteTalkPagesContainer = $('<div>').css({ |
|||
'margin-top': '10px', |
|||
'padding': '0px' |
|||
}); |
|||
deleteTalkPagesContainer.append(deleteTalkPagesCheckbox.$element.css({ |
|||
'margin-right': '5px' |
|||
})); |
|||
deleteTalkPagesContainer.append($('<span>').text('Delete associated talk pages')); |
|||
$('#mw-content-text').append( |
$('#mw-content-text').append( |
||
labels.pagesLabel, pagesTextarea.$element, |
labels.pagesLabel, pagesTextarea.$element, |
||
labels.reasonLabel, reasonInputField.$element, |
labels.reasonLabel, reasonInputField.$element, |
||
deleteTalkPagesContainer, |
|||
'<br/>', |
'<br/>', |
||
previewButton.$element, |
previewButton.$element, |
||
| Line 95: | Line 81: | ||
function previewDeleting() { |
function previewDeleting() { |
||
var pages = pagesTextarea.getValue().replace(/^\s*[\r\n]/gm, '').split("\n"), |
var pages = pagesTextarea.getValue().replace(/^\s*[\r\n]/gm, '').split("\n"), |
||
reason = reasonInputField.getValue().trim() |
reason = reasonInputField.getValue().trim(); |
||
deleteTalkPages = deleteTalkPagesCheckbox.isSelected(); |
|||
if (pages[0].trim() === "" || reason === "") { |
if (pages[0].trim() === "" || reason === "") { |
||
| Line 112: | Line 97: | ||
page = page.trim(); |
page = page.trim(); |
||
logList.append("<li><b>" + page + "</b> will be deleted for reason: <b>" + reason + "</b></li>"); |
logList.append("<li><b>" + page + "</b> will be deleted for reason: <b>" + reason + "</b></li>"); |
||
if (deleteTalkPages) { |
|||
var talkPage = getTalkPageName(page); |
|||
if (talkPage) { |
|||
logList.append("<li>Associated talk page <b>" + talkPage + "</b> will also be deleted.</li>"); |
|||
} |
|||
} |
|||
}); |
}); |
||
| Line 129: | Line 108: | ||
var pages = pagesTextarea.getValue().replace(/^\s*[\r\n]/gm, '').split("\n"), |
var pages = pagesTextarea.getValue().replace(/^\s*[\r\n]/gm, '').split("\n"), |
||
reason = reasonInputField.getValue().trim() + " (using [[User:DreamRimmer/MassDelete|MassDelete.js]])" |
reason = reasonInputField.getValue().trim() + " (using [[User:DreamRimmer/MassDelete|MassDelete.js]])"; |
||
deleteTalkPages = deleteTalkPagesCheckbox.isSelected(); |
|||
if (pages[0].trim() === "" || reason === "") { |
if (pages[0].trim() === "" || reason === "") { |
||
| Line 152: | Line 130: | ||
deletePage(page, reason, function(err, data) { |
deletePage(page, reason, function(err, data) { |
||
handleDeleteResponse(err, data, page); |
handleDeleteResponse(err, data, page); |
||
currentIndex++; |
|||
setTimeout(processNextPage, 2000); |
|||
if (talkPage) { |
|||
var talkReason = "Deleted associated talk page when deleting page '" + page + "'"; |
|||
deletePage(talkPage, talkReason, function(err, data) { |
|||
handleDeleteResponse(err, data, talkPage); |
|||
currentIndex++; |
|||
setTimeout(processNextPage, 2000); |
|||
}); |
|||
} else { |
|||
currentIndex++; |
|||
setTimeout(processNextPage, 2000); |
|||
} |
|||
} else { |
|||
currentIndex++; |
|||
setTimeout(processNextPage, 2000); |
|||
} |
|||
}); |
}); |
||
} |
} |
||
processNextPage(); |
processNextPage(); |
||
} |
|||
function getTalkPageName(page) { |
|||
var namespace = mw.config.get('wgFormattedNamespaces')['']; |
|||
var talkNamespace = mw.config.get('wgFormattedNamespaces')['Talk']; |
|||
if (namespace !== undefined && talkNamespace !== undefined) { |
|||
return talkNamespace + ':' + page; |
|||
} |
|||
return null; |
|||
} |
} |
||