MediaWiki:Common.js

From Summertime Saga Wiki
Revision as of 22:02, 5 February 2017 by Codeboxhr j08oql03 (talk)
Jump to: navigation, search

Note: After saving, 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: Hold Ctrl while clicking Refresh, or press Ctrl-F5
  • Opera: Go to Menu → Settings (Opera → Preferences on a Mac) and then to Privacy & security → Clear browsing data → Cached images and files.
/* Any JavaScript here will be loaded for all users on every page load. */

// Test code for youtube embeds -sam9
$(function() {
	// Click handler
	$('#content').on('click', '.yt-embed', function(e) {
		e.preventDefault();

		var elm = $(this);
		$.magnificPopup.open({
			items : [{
				src : elm.attr('href')
			}],
			gallery : {
				enabled : false
			}
		});
	});

	// Main parsing function
	var parseTags = function() {
		// Loop through our tags
		$('.yt').each(function(){
			var elm = $(this);
			var ytId = elm.text();
			elm.replaceWith('<a class="yt-embed" href="https://youtube.com/' + ytId + '" target="_blank" style="background-image:url(//i.ytimg.com/vi/' + ytId + '/maxresdefault.jpg)" data-ytt="' + ytId + '"></a>');
		});
	};

	// Load magnificPopup if it isn't already
	if (typeof typeof $.magnificPopup === 'undefined') {
		// Temporary work around due to lack of server access
		$.getScript('//cdnjs.cloudflare.com/ajax/libs/magnific-popup.js/1.1.0/jquery.magnific-popup.min.js', function() {
			var headElm = $('head');
			// Load magnificPopup CSS
			headElm.append('<link rel="stylesheet" type="text/css" href="//cdnjs.cloudflare.com/ajax/libs/magnific-popup.js/1.1.0/magnific-popup.min.css"/>');

			// Add our own custom CSS, again temporary
			headElm.append('<style type="text/css">.yt-embed { text-decoration: none; display: block; width: 384px; height: 216px; background-size: cover; background-position: center center;}</style>');

			// Run our main function
			parseTags();
		});
	} else {
		// Run our main function
		parseTags();
	}
}());