Fandom Developers Wiki
Advertisement

This is the talk page for discussing improvements to the AjaxBatchDelete page.

How to Get to Delete Form[]

I added this to my global.js and cleared my cache, however, I cannot find how to get to the batch delete form. Any ideas? Thanks! ~ User:Nikolaitttt

If you're using the Wikia skin, there should be a link in your my tools menu called "Batch Delete". If you're using monobook, it should be in the "toolbox" in the sidebar. Let me know if you can't see it. Cheers, grunny:~$ 01:17, March 13, 2012 (UTC)
Thanks! ~ User:Nikolaitttt

MediaWiki 1.19[]

Did this stop working for anyone else after their wikia was updated to MediaWiki 1.19? -Falzar FZ- 07:02, July 4, 2012 (UTC)

I should have read this first. Script is probably broken, or doesn't work for images. Either way I am now going to have to delete about 60 images manually. --Noemon *talk* 18:54, January 26, 2013 (UTC)
Keep in mind that the message above by Falzar was from July of last year. From the history page, it appears that Grunny made a fix for MW 1.19 already, so I do not think the script is broken.
I have been using this script quite a bit in the past few weeks and months, and haven't had any problems deleting images or anything else. Are you sure you're inputting the page list correctly? Are you seeing any error messages in the JavaScript console? 20px_Rin_Tohsaka_Avatar.png Mathmagician ƒ(♫) 20:01 UTC, Saturday, 26 January 2013
Well, I gave it a batch of about 60 image pages, all in this form
http://deadspace.wikia.com/wiki/File:xxx.jpeg (the 3 x stand for 3 numbers)
and while it looked like it was indeed working, outputting a success message after each page was supposedly deleted, in reality nothing was deleted.
Didn't think to check the console log at that point.
Was I supposed to give it just the file name/page title? Giving it the URI made sense at that point, and if that was the issue I will feel stupid; first for not thinking it, secondly for not checking the change log and then thinking it.
--Noemon *talk* 02:42, January 27, 2013 (UTC)
EDIT: Blimey. I'm off to bang my head on the wall. --Noemon *talk* 02:47, January 27, 2013 (UTC)
EDIT 2: Returned, and went ahead and made a few modifications to the description. Off to put some ice. Cheers.--Noemon *talk* 02:57, January 27, 2013 (UTC)
Ah, glad you got it sorted out. Now that you mention it, it is very misleading for it to claim "Deleted" even when the deletion fails. I've made an addition to the script so that it will now output a helpful error message. For example, if you put in a URI now it will say "The page you requested doesn't exist" 20px_Rin_Tohsaka_Avatar.png Mathmagician ƒ(♫) 04:04 UTC, Sunday, 27 January 2013

Sysop only?[]

Does this appear only for admins? I realize that only admins can delete, but will the buttons show only for them? Thanks! :) — SpikeToronto 04:41, October 10, 2012 (UTC)

Yup. It shows only for them.~ Ultimate Supreme talk · wiki I · wiki II  06:02, October 10, 2012 (UTC)
Thanks! — SpikeToronto 00:44, December 9, 2012 (UTC)

Comments[]

Would this work on comments?Babar Suhail 17:11, April 24, 2013 (UTC)

No this only works for whole pages. Benjaminthewill123123 19:35, April 24, 2013 (UTC)
It is possible to delete comments with AjaxBatchDelete, but getting the page titles is prohibitively complicated for most people. Article and blog comments have a page title of this form:
TALKNAMESPACE:PAGENAME/@comment-USERNAME-TIMESTAMP
Example:
  1. Go to this comment. Right-click on the date and time at the bottom of the comment and choose Copy link address or Copy link location (for Chrome/Firefox browsers).
  2. Comment permalink from Step 1 is: http://community.wikia.com/wiki/User_blog_comment:BertH/Introducing_WAM/@comment-ManikWorld-20130423031213?permalink=515615#comm-515615
  3. Isolate the page title: http://community.wikia.com/wiki/User_blog_comment:BertH/Introducing_WAM/@comment-ManikWorld-20130423031213?permalink=515615#comm-515615
  4. The page title highlighted in green is what you would use to delete the comment.
Replies to comments have an even longer name:
  1. Comment (reply)
  2. Permalink with page title highlighted: http://community.wikia.com/wiki/User_blog_comment:BertH/Introducing_WAM/@comment-ManikWorld-20130423031213/@comment-Elecbullet-20130423034151?permalink=515623#comm-515623
You can also get comment page titles through the MediaWiki API. For example, to see all of the comments by a particular user:
20px_Rin_Tohsaka_Avatar.png Mathmagician ƒ(♫) 03:04 UTC, Thursday, 25 April 2013

Error: Invalid token[]

Sometimes I just get an "Error: Invalid Token" How to fix this problem?  Alaric SaltzmanTalkContrib 21:07, May 27, 2013 (UTC)

Getting error - Blank Page[]

This page is intentionally left blank. 

When I am on the Adventure Time wiki, this does not happen on the other wikis I an admin of.

-- Bunai82 (talk) 19:33, March 17, 2014 (UTC)

Works for me. I see that text for a split second and then it gets replaced with the AjaxBatchDelete dialog. Have you tried clearing your cache?
That does bring up an interesting point though. I'm not an admin there, yet I can still see it. I wonder if it would let me delete pages too... If so, that probably needs to be fixed. —RyaNayR (talkcontribs) 22:11, March 18, 2014 (UTC)
@Bunai82 Are you getting any js errors in your console? It's possible that there's some error in another bit of code that's preventing this script from loading. The text you're seeing is supposed to be there by default, it's normally removed as part of the script.
@RyaNayR: Whilst the script could potentially use a check that the user is a sysop/staff/vstf, trying to perform a delete will result in an error, it's simply not possible without having the delete right, regardless of the UI suggesting it's possible. cqm 14:28, 19 Mar 2014 (UTC)
@cqm: Ah, that makes sense, I wasn't sure. I suppose it's not a big deal then, or really even needs the check in that case. Though it could display an info message saying that it can't be used without sysop/staff/vstf rights. But that would be a low priority thing. —RyaNayR (talkcontribs) 16:51, March 19, 2014 (UTC)
@Bunai82 The error is cause by w:c:adventuretime:User:Yami Arashi/Sandbox.js, it's unrelated to AjaxBatchDelete. I'd suggest talking to the author of that page to get it fixed. cqm 20:54, 20 Mar 2014 (UTC)

Some error[]

I'm not sure if HotCat is incompatible with this code or this code is missing something. During edit mode when I use the "save" button to add multiple categories, I get {"exception":{"message":"Invalid Format, defaulting to JSON","code":501}} in my wikia toolbar making the other links inaccessible. However, during normal edit mode the error message doesn't appear and batch delete works fine. This only happened now. What happened? Lia (wall) 17:08, September 27, 2014 (UTC)

That looks like an error pertaining to HotCat. I have just tested HotCat in conjunction having batch delete as well and they work fine for me. Not sure what's up. Does this affect just one page, or all for you? – Ozuzanna 01:03, September 28, 2014 (UTC)
It only happens every time I have to use the "save" (++) button, which then takes me to edit mode and the error code appears in the toolbar itself. But when I use the normal way, which is clicking the edit button beside the page's title to go to edit mode, the toolbar works fine. I had HotCat updated last Sept. 19, and I haven't encountered that kind of error for the past week, so I'm not sure why the error is triggered when multiple categories are added lately. But the batch delete, along with several other scripts, can still be accessed in My Tools normally, so it's not too much of an issue yet for me. It also happens in the interlanguage versions of some wikis I'm in, if that helps. Lia (wall) 04:11, September 28, 2014 (UTC)

500 error[]

I'm been getting "500 (Internal Server Error)" for every delete attempt. -452 (talk) 18:35, October 9, 2014 (UTC)

I'm not 100% familiar with error codes, but that suggests it's something wrong with Wikia's servers. If it was a bad api request, you'd still get success but the returned result would be an error with error code and information. cqm 23:26, 9 Oct 2014 (UTC)
I think so, when I tried deleting some pages manually afterwards, I got a blank page. -452 (talk) 23:48, October 9, 2014 (UTC)

Delete from category[]

Hey, I really like this script, but it is a bit of a pain having to manually add the names of lots of articles. I was wondering if there could be an option to bulk-add pages to the list from a category? I know that Special:Export does this, and I like this feature for when I have lots of pages in a deletion candidates category. --SuperSajuuk Talk Page | Tabber Code | Channel

Added autocomplete category support. Let me know if there's any issues. – Ozuzanna 10:48, October 24, 2014 (UTC)
How does this autocomplete category support work?
--|| Grudgeholderr (Pulty) ||-- 05:26, November 28, 2017 (UTC)

Please keep AjaxBatchDelete/code.js.[]

Please do not delete the old code at AjaxBatchDelete/code.js. I have tried the new code and, for my purposes and on my machine, the old code is still vastly preferable. So, please do not delete it. Thanks! :) — SpikeToronto 04:26, October 25, 2014 (UTC)

It's here to stay, but be aware that it's likely to be unmaintained in the future and may break due to wikia changes. cqm 23:53, 26 Oct 2014 (UTC)
The reason I asked is that, with the old code, once one has copied and pasted the list into the batch delete window, and set the thing running, one can walk away and check back in later to review the audit trail and finish up. With the new code, one has to stay with it to cope with a constant stream of pop-up dialogue boxes. Thanks! — SpikeToronto 07:21, November 17, 2014 (UTC)
I haven't used the new version, but given what SpikeToronto has said, please consider this another vote for "keep the current version".
Why is the current version more likely to be any more unmaintained than any other script here, and why is it marked as deprecated? I don't see the word deprecated elsewhere on this talk page, was there a discussion about this somewhere else? -452 (talk) 14:38, November 17, 2014 (UTC)
If these pop-ups really occur, I won't use the new version. The whole point of this script was to delete pages quickly and easily (without all the extra clicking). Not having to sit there and do extra clicking while deleting 100 files frees up time elsewhere which is why I use the script. DEmersonJMFM 04:04, November 19, 2014 (UTC)
Loading the version 2 on a category adds autocomplete support that the original lacked, amongst other things. If you want to use/update the original, feel free, but I won't be updating the old one due to the way it's structured to have what version 2 has. I'm sure the original won't be deleted either since it's fairly popular and probably sitting in a lot of user's global.js and such. – Ozuzanna 09:26, November 20, 2014 (UTC)
@Oz: The new version does have a nice interface. I think an improvement to it would be for it not to require that we confirm each time it cannot make a deletion. Generating a report, like the old one does, would allow version 2 to run unattended. What do you think? Thanks! :) — SpikeToronto 03:18, November 26, 2014 (UTC)
I can do that; in fact, I originally planned on adding error screens to each of these modal scripts I made so users can get a nicer error output. It's been added.
@DEmersonJMFM: Apologies for the annoying popups/alerts, I didn't realize that was much of an issue until now. The new release should have a much nicer error display (see here). – Ozuzanna 12:28, November 26, 2014 (UTC)

──────────────────────────────────────────────────────────────────────────────────────────────────── Thanks Oz! :) — SpikeToronto 08:00, December 2, 2014 (UTC)

Old topic, but I still use the old version. It would be a good idea if some of the features in code.2.js could be worked into the older codebase, since the newer codebase has some good features, but I do not like the modal form in any way. --SuperSajuuk Talk Page | Tabber Code | Channel 15:52, February 10, 2015 (UTC)

Color property[]

Where does it get its set color for dark wikis? The error output is hard to read since it shows up as silver-ish in the modal. I'm also not sure where to look because I have no idea where it gets the value ._. I'm getting lazy having to change it manually via Inspect Element or highlighting it when an error shows up. Lia (wall) 10:26, November 27, 2014 (UTC)

Change the color with personal css. Arkondi (talk) 12:13, November 27, 2014 (UTC)
I go to several wikis with dark colors in their content area, though I'm not an admin in most of them. So having a personal CSS just for a short style change for each of the ones I'm an admin at is not practical for me. I'm keeping my global.css as a last resort, but then again, this problem is only for wikis with dark colors. Thanks for helping though. Lia (wall) 14:33, November 27, 2014 (UTC)
The outer styling of the modal color is derived from the wiki's CSS. Also not sure why you're getting silver in the model, because it uses black text with a solid light pink background. – Ozuzanna 16:25, November 27, 2014 (UTC)
The light pink background stays the same for me probably because it's stated in the div unlike the color of the text. If the text is also following the wiki's CSS, it should've been white though, and I tried by clearing everything in the CSS but the silver text is still apparent. :/ Lia (wall) 13:30, November 28, 2014 (UTC)
Ah right, I see what you mean now. I've stated the text color in the div to be black always. – Ozuzanna 13:38, November 28, 2014 (UTC)
Thank you :) Lia (wall) 15:14, November 28, 2014 (UTC)

Following[]

Hello. I added this to my wikia, and it works splendidly. However, my Special:FollowedPages is overloaded with redlinks of the pages I deleted through it. Is there a way to avoid this? Many thanks.--User talk:JOA20 15:01, November 30, 2014 (UTC)

Perhaps the volunteers here could add to the modal a tickbox for following the pages being deleted. Its default status could be whatever the user’s default is in Special:Preferences. So, in my case, it would default to ticked, and it would be my responsibility to untick it. — SpikeToronto 08:04, December 2, 2014 (UTC)
I think it'd be better to not add any of the deleted pages to your checklist. I can't think of a legitimate reason to have 100+ deleted pages on your watchlist. cqm 10:30, 2 Dec 2014 (UTC)
@Cqm: I like knowing if a deleted page has been re-created. If one doesn’t like it, one needn’t tick the tickbox. :P — SpikeToronto 06:30, December 15, 2014 (UTC)
…so? Is there any way to avoid having the watchlist cluttered with deleted pages?--User talk:JOA20 22:04, December 2, 2014 (UTC)
Cqm fixed it earlier - it shouldn't happen now. – Ozuzanna 22:53, December 2, 2014 (UTC)
Thanks, now the watchlist isn't flooded.--User talk:JOA20 17:24, December 3, 2014 (UTC)

Bot flag?[]

Would it be possible to add to the original version the ability to toggle the bot flag for the batch? Thanks! :) — SpikeToronto 08:39, March 3, 2016 (UTC)

Don't see much point in that really, especially as the bot flag can only be granted by Wikia Staff. --Sajuuk 10:24, March 7, 2016 (UTC)
First, on many wikis here at Wikia, Bureaucrats can assign the bot userright. Secondly, that’s not what I'm talking about. Sorry I was not clearer. On a wiki, it is possible to “bot” a transaction simply by manipulating the URL, directly or via the API. There are several scripts here at Dev wiki that already do this (e.g., Wham!). Therefore, there is precedent for this request especially as it would bring this tool in line with other batch tools. Thanks! :) — SpikeToronto 16:06, March 9, 2016 (UTC)
No, Bureaucrats can not grant a bot flag. They can remove it from bots, but have never "ever" had the ability to grant it (and I've been on Wikia for a long time).
It is always Wikia Staff who control who gets a bot flag to prevent abuse. Make sure you check your information first instead of making a presumption. --Sajuuk 12:09, March 10, 2016 (UTC)
Just stop. You’re embarrassing yourself, and, more importantly, you’re preventing coders here from considering the request. I am a Bureaucrat on several wikis, on two of which we ’crats can both giveth and taketh away the bot flag. This is also the case on some of the very large wikis (e.g., RuneScape (verify)). And, as already mentioned, we can individually bot certain transactions by the addition of &bot=1 to the URL (verify). Finally, and again, as already mentioned, Joeyaa’s original version of Wham has an option to bot each invocation and run of it (verify). Now, would you please let the coders who work on this script respond? Thanks! :) — SpikeToronto 21:34, March 10, 2016 (UTC)
I'm so used to 'crats having the ability to to bot users I forget most places on wikia have to go through staff and deal with the bureaucracy of a community discussion ;)
Anyway, to go back to the original question, I was under the impression that bot=1 works for reverting (rollback) and maybe undo at a push, but doesn't work for anything else (hence requiring the bot flag itself)? I assumed that was why it was never added to the version of WHAM here (as it was designed for VSTF use who can add the bot flag to themselves). It's Ozzy's call ultimately, but I think it's only useful if there's a check for the bot usergroup before doing anything as a bot or it'll generate an API warning while not really being a bot action. cqm 23:11, 10 Mar 2016 (UTC)
Just thought I'd chip in here - I am only (semi) maintaining version 2 as that is made by me for the most part, and not catering for the original, sorry. – Ozuzanna 23:21, March 10, 2016 (UTC)

──────────────────────────────────────────────────────────────────────────────────────────────────── Cqm/Ozzy: Would appending &bot=1 to the AjaxBatchDelete URL make any difference?

http://scratchpad.wikia.com/index.php?title=Special:BlankPage&blankspecial=ajaxjqbd&bot=1

Would it matter if one were in a usergroup that has the ability to add/remove the bot flag on that wiki? Or, would the JS have to do that check and provide a tickbox like the original Joeyaa version of WHAM? Thanks! :) — SpikeToronto 10:25, March 11, 2016 (UTC)

It would not make a difference. ?bot=1 works for rollback because of the markbotedits right, which lets the rollbacked edits be marked as a bot edit. It would have no effect here. Full stop. ~ty 17:31, March 11, 2016 (UTC)
Thanks TyA! :) — SpikeToronto 05:50, March 13, 2016 (UTC)

Different Page[]

When I opened this from my toolbar, it brought me to another page called 'Blank page' instead of the on-screen box shown in the image. Is this what is supposed to happen, or have i done something wrong?
--|| Grudgeholderr (Pulty) ||-- 05:22, November 28, 2017 (UTC)

It should load the form on that blank page after a very short delay. Are there any errors in your browser console (press F12)? ~Bobogoobo (talk) 05:30, November 28, 2017 (UTC)
BlankPage is from the first version of the script, you should import v2 instead to make it appear as a modal. -- Cube-shaped garbage can 07:07, November 28, 2017 (UTC)
It works! Thanks a lot!
--|| Grudgeholderr (Pulty) ||-- 14:50, November 28, 2017 (UTC)

Delay[]

Hi! Can someone say, where exactly do I need to write the "batchDeleteDelay = 100;" if I wish it to work? --Remos talk 21:53, May 8, 2018 (UTC)

On the same page you import the script. Something like this would work:
importArticles({
    type: 'script',
    articles: [
        'u:dev:AjaxBatchDelete/code.js'
    ]
});

batchDeleteDelay = 100;

—|| Grudgeholderr ||— 18:09, May 18, 2018 (UTC)

Original Version[]

Hello! This code currently has two versions: the orignial and code2 version. At this point the newer version is far more sophisticated than the the original, with an improved layout, I18n-js, and a faster interface (opens a module instead of a special page). Anyone still using the old version should really just upgrade to the new one. Absolutely no functionality is lost, while a lot is gained. That's why I propose that we replace the old version with code that imports the new version. Then we could ask a Staff member to rename the code.2.js to AjaxBatchDelete.js. Please let me know what you think, thanks! Patrik 16:48, August 18, 2018 (UTC)

Noticed you copy+pasted it - not a great way to do that as it makes contribution history hard to find in the future, so I've undone the MediaWiki:AjaxBatchDelete/code.2.js change in preparation of a move. Personally, I don't see the point of changing page name, but if you'd really like it done I'd recommend asking staff to move the page properly. - OneTwoThreeFall talk 10:20, August 27, 2018 (UTC)
Ok. Patrik 13:43, August 27, 2018 (UTC)
Done. Patrik 21:40, August 27, 2018 (UTC)

Incease the 'Reason for deletion' bar[]

Prior to the update? Jan 2019, the bar next to Reason for deleting is very limited. I wanted to know if the length of the bar could be increased at least to the size of the content window itself. -- Bunai Di (talk) 06:56, February 5, 2019 (UTC)

Remove banner notifications[]

The banner notifications after deleting numerous pages at a time are so annoying — especially when you have to delete them all individually. I've found that $('.banner-notifications-placeholder').remove(); removes them. My JS isn't that advanced (especially for modifying other people's code), so can someone perhaps add it to trigger when the script finishes? Or at least a button in the modal when it finishes for those wanting to trigger it? Original Authority (talk) 01:41, January 3, 2020 (UTC)

Would this do the trick? Original Authority (talk) 01:47, January 3, 2020 (UTC)
The banner notifications upon page deletion are served by Fandom and appear upon refreshing the page next time. The line you added will remove all banner notifications from the page you're currently on, but not on the next page you visit. What AjaxDelete does to prevent these banner notifications is (equivalent to) $.get(mw.util.getUrl('Special:BlankPage'));, which "visits" the next page so banner notifications count as read on the next visit and don't appear. -- Cube-shaped garbage can 07:16, January 3, 2020 (UTC)

badtoken[]

I saw an earlier unanswered message on a similar topic, but whenever I hit the Initiate button, only the first page gets deleted and the rest turn up with a "Failed to delete <page>: badtoken". Here's a screenshot. Why does this happen? It's worked for me before, but now it's consistently doing this across every wiki I've tried so far that I do have admin permissions on. - Random-storykeeper (YELL AT IT) 18:17, January 27, 2020 (UTC)

The badtoken error occurs when your edit token has expired and Fandom, for some reason, doesn't refresh it. Try either clearing your browser cache (CTRL+F5 or CTRL+SHIFT+R), logging out and back in, clearing your Fandom cookies or, if none of that works, using a different browser. The edit token should eventually be refreshed. -- Cube-shaped garbage can 23:34, January 27, 2020 (UTC)

UCP[]

A page on this wiki suggests this script works on UCP but I can't find it in the place it used to exist on the now-UCP wiki I admin... - Citrusellaeditswikis (talk) 17:33, August 22, 2020 (UTC)

Did you move it to the top of your imports? -- Cube-shaped garbage can 17:34, August 22, 2020 (UTC)
It was at the top, but it was also in the "importscriptpage" format... have put it at the top of importarticles and moved the two importscriptpage links I still have that I don't want to look into underneath and now my tools menu has exploded. Can't believe I didn't realize that was the problem on my own. Thanks! - Citrusellaeditswikis (talk) 17:51, August 22, 2020 (UTC)

Just installed[]

I installed this on my local wiki but I do not know how to get to be able to delete multiple files. Best (CARTOONNEWSCP) (talk) 06:31, November 26, 2020 (UTC)

Which wiki did you install it on? -- Cube-shaped garbage can 11:46, November 26, 2020 (UTC)

Script appears to break VisualEditor options[]

After a bit of testing, I believe I have identified that this script causes VisualEditor "Options" dialog suggestions dropdowns to have z-index issues: Screenshot.

I think some code tweaks may be needed. -- Kirkburn (talk) 15:54, 17 January 2023 (UTC)

I poked around a bit and I can reproduce it, but it goes away if I use &useuserjs=0 so it might be a script or something that's causing it, I don't import AjaxBatchDelete tho, so not exactly sure what's causing it. --Sophie ♦ 16:09, 17 January 2023 (UTC)
Curious. When I removed it (and only it) from my personal imports, the issue went away. -- Kirkburn (talk) 16:18, 17 January 2023 (UTC)
I narrowed it down to this CSS that seems to be causing it, since it comes from Modal I'll ping Kocka about it and see what he wants to do. (the comment in the CSS mentions opacity but I removed that as part of testing)
/*
** Remove default backdrop visiblity. We also set opacity to 100% so the new
** backdrop's opacity is handled by the new backdrop element itself instead of
** this one.
*/
.oo-ui-windowManager-modal > .oo-ui-dialog {
  visibility: hidden;
}

/* Restore visibility for the modal. */
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
  visibility: visible;
}
--Sophie ♦ 16:26, 17 January 2023 (UTC)
Hello! Late reply but I think I fixed the issue1, 2, feel free to test it out and let me know if you find any problems! My apologies. -- Polymeric (talk) 22:44, 18 January 2023 (UTC)
Thanks, seems to be better now! -- Kirkburn (talk) 16:47, 19 January 2023 (UTC)

Regarding personal installation[]

It says to add JavaScript on your wiki, but where on your wiki? Money12123 (talk) 10:21, 7 December 2023 (UTC)

Does this works on Files?[]

Can I use this to mass delete file such as images, gifs and videos? Blitzsparkz (talk) 16:44, 22 January 2024 (UTC)

Annoying Orange Wiki[]

Ok, so I've been trying to use this script on the Annoying Orange Wiki, but I can't seem to use it. Here's the link to the thread/discussion on said wiki: https://annoyingorange.fandom.com/wiki/Message_Wall:Loveable_Cats?threadId=4400000000000055761 So, can anyone please give me help or give me advice on how to use it? Thanks. Loveable Cats (talk) 02:23, 30 March 2024 (UTC)

Did you enable personal JavaScript in preferences? -- Cube-shaped garbage can 14:29, 30 March 2024 (UTC)

Ok, I've just done it. Thanks for your help :) Loveable Cats (talk) 02:10, 31 March 2024 (UTC)

Advertisement