MediaWiki:Common.js: Difference between revisions
From Business Heroes Food Truck Simulation
			Wikiworks743 (talk | contribs) No edit summary  | 
				Wikiworks743 (talk | contribs)  No edit summary  | 
				||
| Line 5: | Line 5: | ||
const server     = mw.config.get ( 'wgServer' );  | const server     = mw.config.get ( 'wgServer' );  | ||
const path       = mw.config.get ( 'wgScriptPath' );  | const path       = mw.config.get ( 'wgScriptPath' );  | ||
const   | const categories = mw.config.get ( 'wgCategories' );  | ||
const curpage    = mw.config.get( 'wgTitle' );  | |||
const manpage    = window.location.pathname.replace(/\/index\.php\//, '');  | |||
const areas      = ['Marketing', 'Finance', 'Operations', 'Planning', 'HR', 'Accounting'];  | const areas      = ['Marketing', 'Finance', 'Operations', 'Planning', 'HR', 'Accounting'];  | ||
// add a link and click event to the dropdown togglers  | // add a link and click event to the dropdown togglers  | ||
$('#top-panel .dropdown-toggle').each(function(i,v){  | $('#top-panel .dropdown-toggle').each(function(i,v){  | ||
	var p = $(v).text();  | 	var p = $(v).text();  | ||
| Line 22: | Line 22: | ||
});  | });  | ||
// on page load check its   | // on page load check its name to highlight menu items  | ||
$('#top-panel a.dropdown-toggle').each(function(i,v){  | $('#top-panel a.dropdown-toggle').each(function(i,v){  | ||
    var p = new URL($(v).attr('href')).pathname.replace(/%20/g, ' ').replace(/\/index\.php\//, '');  |     var p = new URL($(v).attr('href')).pathname.replace(/%20/g, ' ').replace(/\/index\.php\//, '');  | ||
| Line 44: | Line 44: | ||
});  | });  | ||
// highlight active category  | |||
getActiveCategory();  | getActiveCategory();  | ||
function getActiveCategory(){  | function getActiveCategory(){  | ||
	for(var i = 0, j = areas.length; i < j; i++) {  | 	for(var i = 0, j = areas.length; i < j; i++) {  | ||
     	if(categories.includes(areas[i])) {  |      	if(categories.includes(areas[i])) {  | ||
| Line 57: | Line 55: | ||
		}  | 		}  | ||
	}  | 	}  | ||
}  | }  | ||
Revision as of 22:55, 19 December 2022
/* Any JavaScript here will be loaded for all users on every page load. */
$('#p-contentnavigation').append($('#editor-menu'));
const server     = mw.config.get ( 'wgServer' );
const path       = mw.config.get ( 'wgScriptPath' );
const categories = mw.config.get ( 'wgCategories' );
const curpage    = mw.config.get( 'wgTitle' );
const manpage    = window.location.pathname.replace(/\/index\.php\//, '');
const areas      = ['Marketing', 'Finance', 'Operations', 'Planning', 'HR', 'Accounting'];
// add a link and click event to the dropdown togglers
$('#top-panel .dropdown-toggle').each(function(i,v){
	var p = $(v).text();
	var url = new URL( server + path + '/index.php/' + encodeURIComponent(p));
	$(v).attr('href', url);
	$(v).on('click', function(e){
		e.stopPropagation();
		$(v).click;
	});
});
// on page load check its name to highlight menu items
$('#top-panel a.dropdown-toggle').each(function(i,v){
   var p = new URL($(v).attr('href')).pathname.replace(/%20/g, ' ').replace(/\/index\.php\//, '');
   if(p === curpage){
      $(v)
        .addClass('show')
        .attr('aria-expanded','true')
        .parent()
        .addClass('position-static show')
        .find('.dropdown-menu')
        .show();
   } else {
      $(v)
        .removeClass('show')
        .attr('aria-expanded','false')
        .parent()
        .removeClass('position-static show')
        .find('.dropdown-menu')
        .hide();
   }
});
// highlight active category
getActiveCategory();
function getActiveCategory(){
	for(var i = 0, j = areas.length; i < j; i++) {
    	if(categories.includes(areas[i])) {
    		$('.im-' + areas[i].toLowerCase()).parent().addClass('im-active');
		} else {
			$('.im-' + areas[i].toLowerCase()).parent().removeClass('im-active');
		}
	}
}