Zum Inhalt springen

Nutza:MGA73/common.js

Aus Wikipedia

Hinweis: Leere nach dem Veröffentlichen den Browser-Cache, um die Änderungen sehen zu können.

  • Firefox/Safari: Umschalttaste drücken und gleichzeitig Aktualisieren anklicken oder entweder Strg+F5 oder Strg+R (⌘+R auf dem Mac) drücken
  • Google Chrome: Umschalttaste+Strg+R (⌘+Umschalttaste+R auf dem Mac) drücken
  • Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
$(document).ready(function() {
    // Only run this script on File pages <nowiki>
    if (mw.config.get('wgNamespaceNumber') === 6) {
        // Function to check for Commons duplication and extract the filename
        function getCommonsFilename() {
            // Locate the duplicates section
            var duplicatesSection = $('#mw-imagepage-section-duplicates');
            
            // Check if the duplicates section exists
            if (duplicatesSection.length) {
                // Find the link to the Commons file
                var commonsLink = duplicatesSection.find('a.external');
                
                if (commonsLink.length) {
                    // Extract the filename from the link text
                    var commonsFilename = commonsLink.text().replace("Datei:", "").trim();
                    return commonsFilename;
                }
            }
            return null;
        }

        // Get the Commons filename if it exists
        var commonsFilename = getCommonsFilename();
        if (commonsFilename) {
            // Create the "Add NowCommons" button
            var addNowCommonsLink = $('<a>')
                .text('Add NowCommons')
                .attr('href', '#')
                .css({
                    'cursor': 'pointer',
                    'color': '#0645AD',
                    'margin-left': '10px',
                })
                .click(function(event) {
                    event.preventDefault();
                    // Redirect to the edit page with NowCommons marker
                    var editUrl = mw.util.getUrl(mw.config.get('wgPageName'), { action: 'edit', nowcommons: commonsFilename });
                    window.location.href = editUrl;
                });

            // Add the link to the page (e.g., next to the edit button)
            $('#ca-edit').after(addNowCommonsLink);
        }

        // Automatically insert the NowCommons template and edit summary if the page is in edit mode
        var urlParams = new URLSearchParams(window.location.search);
        if (mw.config.get('wgAction') === 'edit' && urlParams.has('nowcommons')) {
            var commonsFilename = urlParams.get('nowcommons');
            var nowCommonsTemplate = '{{NowCommons|' + commonsFilename + '}}';
            var editBox = $('#wpTextbox1');
            var currentText = editBox.val();
            editBox.val(nowCommonsTemplate + '\n' + currentText);

            // Set the edit summary </nowiki>
            $('#wpSummary').val('Adding NowCommons template for file duplicated on Commons (' + commonsFilename + ')');
        }
    }
});