MediaWiki:Common.js: Difference between revisions

From Celeste Wiki
Jump to navigation Jump to search
Content added Content deleted
(shortened with jQuery, added onclick event listener (hopefully everything works))
(shortened even more, maybe this fixes the issue)
Line 98: Line 98:
// Get a reference to the container element by its ID
// Get a reference to the container element by its ID
var container = $j('#containerID'); // equivalent to document.getElementById('containerID');
$j('#containerID').find('img').attr('src', $j('#newImageURL').text()); // equivalent to document.getElementById('containerID');
/*

// Find the image element within the container
// Find the image element within the container
var imageElement = container.find('img');
var imageElement = container.find('img');
Line 105: Line 105:
// Replace the image source with a new one
// Replace the image source with a new one
imageElement.src = $j('#newImageURL').text(); // requires an element with the newImageURL ID (may be display:none)
imageElement.src = $j('#newImageURL').text(); // requires an element with the newImageURL ID (may be display:none)
*/
});
});
});
});

Revision as of 13:02, 2 March 2024

/* Any JavaScript here will be loaded for all users on every page load. */

/** Title replacement ****************************************************
 * Rewrites the page's title, used by [[Template:Title]]
 * Should use {{DISPLAYTITLE}}, unless you want to use an image
 * By [[User:Sikon|Sikon]], updated by [[User:Bizzeebeever]]
 */
 
$j( function() {
	var $title = $j( '#title-meta0' ),
		text = $title.text().toLowerCase(),
		name = mw.config.get( 'wgPageName' ).replace( /_/g, '' ).toLowerCase();
	if ( $title.length && !window.SKIP_TITLE_REWRITE ) {
		$title.appendTo( $j( '#firstHeading' ).empty() ).show();
		if ( text == name ) {
			document.title = text;
		}
	}
} );



/** Logo remover *********************************************************
 * Used by [[Template:Nologo]]
 * Updated by [[User:Bizzeebeever]]
 */
$j( function() {
	if ( $j( '#nologo' ).length ) {
		$j( '#p-logo' ).hide();
	}
} );


/** Title remover ********************************************************
 * Used by [[Template:Notitle]]
 * Updated by [[User:Bizzeebeever]]
 */
$j( function () {
	if ( $j( '#notitle' ).length ) {
		$j( '#firstHeading' ).hide();
	}
} );

/** Categories remover ***************************************************
 * Used by [[Template:Nocategories]]
 * Updated by [[User:Bizzeebeever]]
 */
$j( function() {
	if ( $j( '#nocategories' ).length ) {
		$j( '#catlinks' ).hide();
	}
} );

/** Show username ********************************************************
 * The annoying hack used by [[Template:USERNAME]]!
 * Inserts user name into <span class='insertusername'></span>
 * Originally by [[wikia:User:Splarka|Splarka]], [[User:Spang]]
 * New version by [[User:Bizzeebeever]]
 */
$j( function() {
	var name = mw.config.get( 'wgUserName' );
	if ( !window.disableUsernameReplace && name ) {
		$j( 'span.insertusername' ).text( name );
	}
} );

/** Archive edit tab disabling *******************************************
 * Disables the edit tab on old forums to stop noobs from bumping them.
 * Page can still be edited by going via the edit tab on the history etc,
 * or by typing the edit address manually.
 * By [[User:Spang|Spang]], rewritten by [[User:Bizzeebeever]]
 */
$j( function() {
	if ( $j( '#old-forum-warning' ).length && !window.enableOldForumEdit ) {
		$j( '#ca-edit a' ).removeAttr( 'href' )
			.css( 'color', 'gray' )
			.text( 'No editing' );
	}
} );

/** Add-section tab disabling ********************************************
 * Disables the add section tab on any page you like, mainly useful for
 * your user page (depending on how you have your user page set up)
 * To use it: include any HTML element with an ID of disableAddSection
 * example: <div id="disableAddSection"></div>
 * By [[User:Olipro|Olipro]], updated by [[User:Bizzeebeever]]
 */
$j( function() {
	if ( $j( '#disableAddSection' ).length ) {
		$j( '#ca-addsection' ).remove();
	}
} );

// (test) Replaces image

$j( function() { // ensures that script will run after all content is loaded (jQuery)
    $j('#replaceImageButton').click(function() { // adds an onClick event listener for an element with id=replaceImageButton
    
        // Get a reference to the container element by its ID
        $j('#containerID').find('img').attr('src', $j('#newImageURL').text()); // equivalent to document.getElementById('containerID');
/*
        // Find the image element within the container
        var imageElement = container.find('img');

        // Replace the image source with a new one
        imageElement.src = $j('#newImageURL').text(); // requires an element with the newImageURL ID (may be display:none)
*/        
    });
});