MediaWiki

Gadget-helppage.js

From Dogcraft Wiki

Revision as of 16:18, 12 December 2020 by Domino (talk | contribs)

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.
$(document).ready(function() {
	
	if (mw.config.get('wgPageName') === "Rules" || mw.config.get('wgPageName') === "Help_Resources")
	{
		/*var wiki_dogcraft_nav_title = '<a href="//dogcraft.net" class="dogcraft_title"><img src="//dogcraft.net/img/logo.svg" class="dogcraft_logo">DogCraft</a>';
		var wiki_dogcraft_nav_redirects1 = '<a id="dogcraft_patreon" class="nav_ext_link" href="https://patreon.com/rendog" target="blank_"><img src="/wiki/images/e/eb/Digital-Patreon-Logo_FireyCoral.png"></a><a id="dogcraft_discord" class="nav_ext_link" href="https://discord.gg/rendog" target="blank_"><img src="/wiki/images/4/4e/Discord-Logo-White.png"></a><a id="dogcraft_youtube" class="nav_ext_link" href="https://youtube.com/user/rendog/" target="blank_"><i class="fa fa-youtube"></i></a>';
		var wiki_dogcraft_nav_redirects2 = '<a id="dogcraft_twitch" class="nav_ext_link" href="https://twitch.tv/rendogtv" target="blank_"><i class="fa fa-twitch"></i></a><a id="dogcraft_twitter" class="nav_ext_link" href="https://twitter.com/dogcraftnet" target="blank_"><i class="fa fa-twitter"></i></a><a id="dogcraft_wiki" class="nav_ext_link" href="/wiki"><img src="//dogcraft.net/img/wiki.png"></a>';
		var wiki_dogcraft_nav_right = '<div class="dogcraft_nav_right"><a id="dogcraft_leaderboard" class="nav_ext_link" href="/leaderboards"><i class="fa fa-trophy"></i></a></div>';
		var wiki_helppagehtml = '<div class="dogcraft_nav">' + wiki_dogcraft_nav_title + wiki_dogcraft_nav_redirects1 + wiki_dogcraft_nav_redirects2 + wiki_dogcraft_nav_right + '</div><div class="dogcraft_statusBar"></div>';
		*/
		
		var dogcraftNav = '<div id="dogcraftNav" class="dogcraft_nav"></div>'
		
		$("#navwrapper").prepend(dogcraftNav);
		
		var dcNavPatreon   = '<a class="patreon dc_nav_icon dc_nav_imgicon" target="_blank" title="Patreon" href="https://patreon.com/rendog"><img class="dc_nav_left_icon" src="/wiki/images/e/eb/Digital-Patreon-Logo_FireyCoral.png"></a>',
		    dcNavDiscord   = '<a class="discord dc_nav_icon" target="_blank dc_nav_imgicon" title="Discord" href="https://discord.gg/rendog"><img class="dc_nav_left_icon" src="/wiki/images/2/2d/Discord-Logo-Color.png"></a>',
		    dcNavYoutube   = '<a class="youtube dc_nav_icon" target="_blank" title="YouTube" href="https://youtube.com/user/rendog/"><i class="fa fa-youtube dc_nav_left_icon"></i></a>',
		    dcNavTwitch    = '<a class="twitch dc_nav_icon" target="_blank" title="Twitch" href="https://twitch.tv/rendogtv"><i class="fa fa-twitch dc_nav_left_icon"></i></a>',
		    dcNavTwitter   = '<a class="twitter dc_nav_icon" target="_blank" title="Twitter" href="https://twitter.com/dogcraftnet"><i class="fa fa-twitter dc_nav_left_icon"></i></a>',
		    dcNavWiki      = '<a class="wiki dc_nav_icon dc_nav_imgicon" title="You are here" href="#"><img class="dc_nav_left_icon" src="/img/wiki-red.png" alt="Wiki"></a>',
		    dcNavMap       = '<div id="navMapToggle" class="nav_map nav_loggedin dc_nav_icon" title="Server Maps"><i class="fa fa-map"></i><a class="navBeagle" href="/map/beagle" title="Beagle Map">Beagle</a><a class="navHusky" href="/map/husky" title="Husky Map">Husky</a></div>',
		    dcNavLb        = '<a id="dc_nav_lb" class="dc_nav_icon" href="/leaderboards" title="Leaderboards"><i class="fa fa-trophy"></i></a>',
		    dcNavSettings  = '<a id="dc_nav_settings" class="dc_nav_icon" title="Account Settings" href="/u/settings"><i class="fa fa-user"></i></a>',
		    dcNavProfile   = '<a id="dc_nav_profile" class="dc_nav_icon dc_nav_imgicon" title="My Profile" href="/u/' + getUUID() + '"><img src="https://dogcraft.net/img/mc/avatars/' + getUUID() + '?size=50&amp;default=MHF_Steve&amp;overlay" onerror="this.src=\'/img/steve.png\'" alt="Domino_1"></a>',
		    dcNavLogout    = '<a id="dc_nav_logout" class="dc_nav_icon" title="Logout" href="/u/logout"><i class="fa fa-sign-out"></i></a>',
		    dcNavLogin     = '<a id="dc_nav_login" class="dc_nav_icon" href="/u/login" title="Login">Login</a>',
		    dcNavRegister  = '<a id="dc_nav_register" class="dc_nav_icon" href="/u/register" title="Register">Register</a>',
		    dcNavLeft  = '<div id="dc-nav-left" class="dc_nav_left">' + dcNavPatreon + dcNavDiscord + dcNavYoutube + dcNavTwitch + dcNavTwitter + dcNavWiki + '</div>',
		    dcNavTitle = '<div id="dc-nav-title"><a href="/"><img src="/img/logo-white.svg" alt=""><span>DogCraft</span></a></div>',
		    dcNavRightLoggedIn = '<div id="dc-nav-right" class="dc_nav_right"><div class="dc_nav_btns">' + dcNavMap + dcNavLb + dcNavSettings + dcNavProfile + dcNavLogout + '</div></div>',
		    dcNavRightLoggedOut = '<div id="dc-nav-right" class="dc_nav_right"><div class="dc_nav_btns">' + dcNavLogin + dcNavRegister + dcNavMap + dcNavLb + '</div></div>',
		    dcNavHTML           = '';
		
		if (mw.config.get('wgUserName') !== null)
		{
			dcNavHTML  = dcNavLeft + dcNavTitle + dcNavRightLoggedIn;
		}
		else
		{
			dcNavHTML  = dcNavLeft + dcNavTitle + dcNavRightLoggedOut;
		}
		    
		$("#dogcraftNav").html(dcNavHTML);
		
		
		/* Partially sticky header */
		/* JS from https://www.w3schools.com/howto/howto_js_sticky_header.asp*/
		// When the user scrolls the page, execute myFunction
			window.onscroll = function() {myFunction()};
			
			// Get the header
			var topbar = document.querySelector(".top-bar");
			var header = document.getElementById("myHeader");
			
			// Get the offset position of the navbar
			var sticky = topbar.offsetTop;
			
			// Add the sticky class to the header when you reach its scroll position. Remove "sticky" when you leave the scroll position
			function myFunction() {
			  if (window.pageYOffset > sticky) 
			  {
			    topbar.classList.add("sticky1");
			  } 
			  else 
			  {
			    topbar.classList.remove("sticky1");
			  }
			}
			
		$("#navMapToggle").click(function(){
			$( "#navMapToggle" ).toggleClass( "expanded" );
		});
			
	}
	
	
	if (mw.config.get('wgPageName') === "User:Domino/Sandbox")
	{
			$("#alertbutton").click(function(){
				alert( 'According to your preferences, your gender is ' + mw.user.options.get( 'userjs-testt' ) );
			}); 
	}
	
	function getUUID() {
		
		if (mw.config.get('wgUserName') !== null)
		{
			if (mw.user.options.get( 'userjs-uuid' ) !== null )
			{
				return mw.user.options.get( 'userjs-uuid' ); //returns UUID of currently logged in user
			}
			else
			{
				/*
    				expand_templates.js

    				MediaWiki API Demos
    				Demo of `Expandtemplates` module: Expand the Project:Sandbox template.

    				MIT License
				*/
				var expandtemplatesparams = {
				    action: "expandtemplates",
				    text: "{{UUID| " + mw.config.get('wgUserName') + "}}",
				    prop: "wikitext",
				    format: "json"
					},
					api = new mw.Api();

				api.get( expandtemplatesparams ).done( function ( data ) {
					var uuid = data.expandtemplates.wikitext;
					/*
					change_user_options.js

					MediaWiki API Demos
					Demo of `Options` module: POST request to change three options
				    for current user
				
					MIT License
					*/
					var optionsparams = {
						action: 'options',
						change: 'userjs-uuid=' + uuid,
						format: 'json'
					};
					api.postWithToken( 'csrf', optionsparams ).done( function ( optionsdata ) {
						console.log( optionsparams );
					} );
				} );
				return mw.user.options.get( 'userjs-uuid' ); //returns UUID of currently logged in user
			}
		}
		else
		{
			return; //return if user not logged in
		}
			
	}
	
});
This page was last modified on 12 December 2020, at 16:18. (2 years ago)
Background Dragon Slayer - Retriever by Ironboundred