Note: After publishing, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
- Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
- Opera: Press Ctrl-F5.
/**
*Makes credits closable
*/
mw.loader.using(['jquery'], function () {
$(document).on('click', '#worldbuildercredits .close-btn', function() {
$('#worldbuildercredits').hide();
});
});
/**
* Adds an AI Artwork button to the image uploader page
*/
$(function() {
if (mw.config.get('wgCanonicalSpecialPageName') === 'Upload') {
// checkbox element
var checkboxHtml = '<td class="mw-label"><label for="aiCheckbox">AI Artwork?: </label></td>'
+ '<td class="mw-input"><input type="checkbox" id="aiCheckbox"></td>';
// Insert the checkbox element after the Licensing row
$('td.mw-label label[for="wpLicense"]').closest('tr').after('<tr>' + checkboxHtml + '</tr>');
// Update the destination filename when the checkbox value changes
$('#aiCheckbox').change(function() {
var destFileInput = $('#wpDestFile');
var currentFilename = destFileInput.val();
if ($(this).prop('checked')) {
// Prepend "-ai-" if checkbox is checked
if (!currentFilename.startsWith("-ai-")) {
destFileInput.val("-ai-" + currentFilename);
}
} else {
// Remove "-ai-" prefix if checkbox is unchecked
if (currentFilename.startsWith("-ai-")) {
destFileInput.val(currentFilename.replace("-ai-", ""));
}
}
});
}
});
/**
* Adds CSS classes to the body tag based on the categories this page belongs to. Used for CR/Astral page theming.
*
* @source https://www.mediawiki.org/wiki/Snippets/Style_pages_based_on_categories
* @revision 2016-01-18
*/
(function($, mw) {
var fn = function() {
var cats = mw.config.get('wgCategories'), newClasses;
if (cats) {
newClasses = $.map(cats, function(el) {
return 'cat-' + encodeURIComponent(el.replace(/[ .]/g, '_')).replace(/%/g, '_');
}).join(' ');
$(document.body).addClass(newClasses);
}
};
if (document.body) {
fn();
} else {
$(fn);
}
})(jQuery, mw);
//Deprecated code: Used for autoplaying theme songs
//function Bebop(){
// console.log("OK 3 2 1 Let's Jam");
// var x = document.getElementById("myaudio");
// x.play();
//}
//
//setTimeout(Bebop, 2000);
// START HOTCAT
/*
This imports the latest version of HotCat from Commons.
HotCat is a gadget to make changes to categories much easier.
Full documentation can be found at http://commons.wikimedia.org/wiki/Help:Gadget-HotCat
*/
window.hotcat_translations_from_commons = true;
mw.loader.load( 'https://commons.wikimedia.org/w/index.php?title=MediaWiki:Gadget-HotCat.js&action=raw&ctype=text/javascript' );
// END HOTCAT
//Watermark AI Image
//Images can be renamed to have "-ai-" anywhere in their name and automatically get a watermark
$(document).ready(function() {
//Format PC Iconic Table (Temporary)
if (mw.config.get('wgTitle') === "List of Iconic Quelmar Heroes") {
// Iterate through each table row
$('table.wikitable sortable jquery-tablesorter tr').each(function() {
// Check if the last column contains 'No'
if ($(this).find('td:last-child').text().trim() === 'No') {
// Change the background color of the row to pink
$(this).css('background-color', '#FFC0CB');
}
});
}
// Define the watermark image URL
var watermarkURL = 'https://quelmarwiki.com/wiki/images/b/b8/Aiwatermark.png';
// Loop through images on the page
$('img').each(function() {
var img = $(this); // Reference to the current img tag in the loop
var src = img.attr('src'); // Get the src attribute
// Check if image name contains '-ai'
if (src.includes('-ai')) {
// Create a div to contain the image and its watermark
var container = $('<div>').css({
'position': 'relative',
'display': 'inline-block',
'overflow': 'hidden',
'width': img.width(),
'height': img.height,
'pointer-events': 'none'
});
//Generate the watermark
var watermark = $('<img>').attr('src', watermarkURL).css({
'position': 'absolute',
'bottom': '0',
'right': '0',
'max-width': '20%', // Adjust size if needed
'max-height': '20%', // Adjust size if needed
'pointer-events': 'none', // Ensure it doesn't interfere with any interactions
'opacity': '0.5' // Adjust opacity if needed
});
// Insert the container before the original image, then move the original image and watermark inside the container
img.before(container).appendTo(container);
container.append(watermark);
}
});
});
