Fandom

Wikia Developers Wiki

AjaxCommentDelete

908pages on
this wiki
Add New Page
Talk0 Share
For a script that can generally delete pages fast, see AjaxDelete.

AjaxCommentDelete is a script that allows deletion of comments without leaving the article page comment is on by adding an "Ajax Delete" button to every comment. When clicked, the button opens a modal asking for entering a deletion reason.

Installation

Add this JavaScript on your wiki:

Global Personal Site-wide
w:Special:Mypage/global.js Special:Mypage/common.js MediaWiki:Common.js
importArticles({
    type: 'script',
    articles: [
        // ...
        'u:kocka:MediaWiki:AjaxCommentDelete/code.js',
        // ...
    ]
});
importArticles — Best Practices for installing JavaScript on Fandom
The importArticles statement is designed to combine multiple HTTP requests into a single data transfer, allowing multiple scripts to load and execute faster. If you've been installing several different scripts, your JavaScript file has probably accumulated unnecessary import statements. Click "Expand" to learn how to efficiently batch import scripts to speed up performance and make your code look cleaner. One other approach is by using the MediaWiki:ImportJS.
If your JavaScript file has several lines of code that say importScript, importScriptPage, or importArticles, you may be able to combine them! By batch importing a collection of scripts with a single import, your JavaScript code will load faster and look cleaner. Consider the example below. On the left is an example of what your JavaScript file might currently look like. On the right is how you could improve that code.
Multiple imports — messy and slow One import — clean and efficient
importScriptPage('AjaxRC/code.js','dev');
 
importScript('MediaWiki:localScript.js');
 
importArticle({
  type: 'script',
  article: 'u:dev:FloatingToc/code.js'
});
 
importScriptPage('page1.js', 'wikiname');
 
importScriptPage('page2.js', 'wikiname');
importArticles({
    type: 'script',
    articles: [
        'u:dev:AjaxRC/code.js',
        'MediaWiki:localScript.js',
        'u:dev:FloatingToc/code.js',
        'u:wikiname:page1.js',
        'u:wikiname:page2.js'
    ]
});
Note: In this example, pay close attention to the placement of commas and other punctuation. For people who aren't familiar with programming (and even those who are!), a common mistake when writing code is to accidentally delete, forget, or misplace critical symbols like commas or quotation marks. This can cause a syntax error that breaks the code. Carefully follow the convention shown here when using importArticles.
But there's much more to importArticles than just this! For more examples and advanced usage, see the help page at Help:Including additional JavaScript and CSS.


Configuration

JS

You can configure the script to delete comments without prompting for a reason every time, by inserting the following code in your common.js or global.js:

window.AjaxCommentDeleteConfig = {
    fastDelete: "The reason for deletion of the comment. You can modify this text!"
}

The above code is provided as an example configuration and isn't necessary for the script to work.

CSS

Option Description Default
.AjaxCommentDeleteLink "Ajax Delete" button on comments N/A
.AjaxCommentDeleteModalMain Main section of the deletion modal N/A
.AjaxCommentDeleteHelpText Description above the reason entrance text box N/A
#AjaxCommentDeleteReason Reason entrance text box N/A
#AjaxCommentDeleteModal Deletion modal N/A
#AjaxCommentDeleteRemoveButton "Delete" button in the modal N/A
#AjaxCommentDeleteCloseButton "Close" button in the modal N/A


Translation

This script can be translated to multiple languages by editing the internationalization data page with proper JSON markup of the translation, if you have the rights to edit it. However, if you don't, you could post the translation on this script's or KockaAdmiralac's talk page.

There are several strings that should be translated. Every string has it's code that is used to identify what is the string used for, so when translating these strings please supply the code of the string that you're translating along the string.

Code String Usage
linkText Ajax Delete Text on the button inserted next to the regular delete button
modalTitle Delete comment Title of the deletion modal
selectReason Enter a proper deletion reason below. Help text in the modal
deleteText Delete Text on the modal button for deletion
close Close Text on the modal button for closing
fail Failed to delete comment Text displayed when a comment fails to delete

Changelog

v1.0
Initial revision
v1.1
Added fastDelete configuration option.
v1.2
Better internationalization system
General reformatting

Ad blocker interference detected!


Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.