From Wikipedia, the free encyclopedia
Note: After saving, you have to bypass your browser's cache to see the changes. Google Chrome, Firefox, Microsoft Edge and Safari: Hold down the ⇧ Shift key and click the Reload toolbar button. For details and instructions about other browsers, see Wikipedia:Bypass your cache.

// [[Category:Wikipedia scripts]]

// <nowiki>

$(function()

{

	////////////////

	// NAMESPACES //

	////////////////

	

	switch(mw.config.get("wgCanonicalNamespace"))

	{

		case "Special":

			switch(mw.config.get("wgCanonicalSpecialPageName"))

			{

				case "Contributions":

					$(".mw-changeslist-date").each(function()

					{

						$(this).html(rxReplace($(this).html()));

					});

					break;

					

				case "Log":

				case "Userrights":

				case "AbuseLog":

					$("ul").children().each(function()

					{	

						$(this).html($(this).html().replace(/()(\d\d:\d\d)(, )/g, rxPartition));

					});

					break;

					

				case "Listusers":

					$("ul").children().each(function()

					{

						$(this).html($(this).html().replace(/(on \d{1,2} \w+ \d{4} at )(\d\d:\d\d)()/g, rxPartition));

					});

					break;

					

				case "Project":

					// TODO

					break;

			}

			break;

			

		case "File":

			// Modify time in file history table.

			$("td > a").each(function()

			{

				// DMY

				$(this).html($(this).html().replace(/()(\d\d:\d\d)(, \d{1,2} \w+ \d{4})/g, rxPartition));

				// MD,Y

				$(this).html($(this).html().replace(/()(\d\d:\d\d)(, \w+ \d{1,2}, \d{4})/g, rxPartition));

			});

			break;

			

		case "User":

			// TODO

			break;

	}

	

	/////////////

	// ACTIONS //

	/////////////

	

	switch(mw.config.get("wgAction"))

	{

		case "history":

			$(".mw-changeslist-date").each(function()

			{

				$(this).text(rxReplace($(this).text()));

			});

			break;

			

		case "view":

			if(document.title.indexOf("Difference between revisions") > -1)

			{

				$("#mw-diff-ntitle1 > strong > a").html(rxReplace($("#mw-diff-ntitle1 > strong > a").html()));

				$("#mw-diff-otitle1 > strong > a").html(rxReplace($("#mw-diff-otitle1 > strong > a").html()));

				$(".diff-currentversion-title").text(rxReplace($(".diff-currentversion-title").text()));

			}

			

			// Modify time in permalink pages.

			if($("div").hasClass("mw-revision"))

			{

				$("#mw-revision-date").html(rxReplace($("#mw-revision-date").html()));

			}

			break;

			

		case "edit":

			// TODO

			break;

	}

	

	///////////

	// OTHER //

	///////////

	

	// Modify time in warning banners.

	if($("div").hasClass("mw-warning-with-logexcerpt mw-content-ltr"))

	{

		$(".mw-warning-with-logexcerpt.mw-content-ltr > ul").children().each(function()

		{

			$(this).html(rxReplace($(this).html()));

		});

	}



	// Modify the time in the footer of most pages.

	if($("#footer-info-lastmod").length)

	{

		$("#footer-info-lastmod").text(rxReplace($("#footer-info-lastmod").text()));

	}



	/*

	 * Used when it is unlikely non-times will be matched.

	 */

	function rxReplace(html)

	{

		// Note a call to html on nonexistent elements returns undefined e.g. $('.sssssss').html(). Guard against this being passed in.

		html = html || '';

		return html.replace(/(\d\d:\d\d)/g, convert);

	}

	

	/*

	 * Used when a very specific match needs to be made and

	 * only a substring of the match should be modified.

	 */

	function rxPartition(match, p1, p2, p3)

	{

		return (p1 + convert(p2) + p3);

	}

	

	function convert(time)

	{

		var hour = parseFloat(time.substr(0, 2));

		

		if(hour >= 12)

		{

			if(hour != 12)

			{

				hour = hour - 12;

			}

			

			return (hour + time.substr(2) + " PM");

		}

		

		if(hour === 0)

		{

			hour = 12;

		}

		

		return (hour + time.substr(2) + " AM");

	}

});

// </nowiki>
From Wikipedia, the free encyclopedia
Note: After saving, you have to bypass your browser's cache to see the changes. Google Chrome, Firefox, Microsoft Edge and Safari: Hold down the ⇧ Shift key and click the Reload toolbar button. For details and instructions about other browsers, see Wikipedia:Bypass your cache.

// [[Category:Wikipedia scripts]]

// <nowiki>

$(function()

{

	////////////////

	// NAMESPACES //

	////////////////

	

	switch(mw.config.get("wgCanonicalNamespace"))

	{

		case "Special":

			switch(mw.config.get("wgCanonicalSpecialPageName"))

			{

				case "Contributions":

					$(".mw-changeslist-date").each(function()

					{

						$(this).html(rxReplace($(this).html()));

					});

					break;

					

				case "Log":

				case "Userrights":

				case "AbuseLog":

					$("ul").children().each(function()

					{	

						$(this).html($(this).html().replace(/()(\d\d:\d\d)(, )/g, rxPartition));

					});

					break;

					

				case "Listusers":

					$("ul").children().each(function()

					{

						$(this).html($(this).html().replace(/(on \d{1,2} \w+ \d{4} at )(\d\d:\d\d)()/g, rxPartition));

					});

					break;

					

				case "Project":

					// TODO

					break;

			}

			break;

			

		case "File":

			// Modify time in file history table.

			$("td > a").each(function()

			{

				// DMY

				$(this).html($(this).html().replace(/()(\d\d:\d\d)(, \d{1,2} \w+ \d{4})/g, rxPartition));

				// MD,Y

				$(this).html($(this).html().replace(/()(\d\d:\d\d)(, \w+ \d{1,2}, \d{4})/g, rxPartition));

			});

			break;

			

		case "User":

			// TODO

			break;

	}

	

	/////////////

	// ACTIONS //

	/////////////

	

	switch(mw.config.get("wgAction"))

	{

		case "history":

			$(".mw-changeslist-date").each(function()

			{

				$(this).text(rxReplace($(this).text()));

			});

			break;

			

		case "view":

			if(document.title.indexOf("Difference between revisions") > -1)

			{

				$("#mw-diff-ntitle1 > strong > a").html(rxReplace($("#mw-diff-ntitle1 > strong > a").html()));

				$("#mw-diff-otitle1 > strong > a").html(rxReplace($("#mw-diff-otitle1 > strong > a").html()));

				$(".diff-currentversion-title").text(rxReplace($(".diff-currentversion-title").text()));

			}

			

			// Modify time in permalink pages.

			if($("div").hasClass("mw-revision"))

			{

				$("#mw-revision-date").html(rxReplace($("#mw-revision-date").html()));

			}

			break;

			

		case "edit":

			// TODO

			break;

	}

	

	///////////

	// OTHER //

	///////////

	

	// Modify time in warning banners.

	if($("div").hasClass("mw-warning-with-logexcerpt mw-content-ltr"))

	{

		$(".mw-warning-with-logexcerpt.mw-content-ltr > ul").children().each(function()

		{

			$(this).html(rxReplace($(this).html()));

		});

	}



	// Modify the time in the footer of most pages.

	if($("#footer-info-lastmod").length)

	{

		$("#footer-info-lastmod").text(rxReplace($("#footer-info-lastmod").text()));

	}



	/*

	 * Used when it is unlikely non-times will be matched.

	 */

	function rxReplace(html)

	{

		// Note a call to html on nonexistent elements returns undefined e.g. $('.sssssss').html(). Guard against this being passed in.

		html = html || '';

		return html.replace(/(\d\d:\d\d)/g, convert);

	}

	

	/*

	 * Used when a very specific match needs to be made and

	 * only a substring of the match should be modified.

	 */

	function rxPartition(match, p1, p2, p3)

	{

		return (p1 + convert(p2) + p3);

	}

	

	function convert(time)

	{

		var hour = parseFloat(time.substr(0, 2));

		

		if(hour >= 12)

		{

			if(hour != 12)

			{

				hour = hour - 12;

			}

			

			return (hour + time.substr(2) + " PM");

		}

		

		if(hour === 0)

		{

			hour = 12;

		}

		

		return (hour + time.substr(2) + " AM");

	}

});

// </nowiki>

Videos

Youtube | Vimeo | Bing

Websites

Google | Yahoo | Bing

Encyclopedia

Google | Yahoo | Bing

Facebook