User:Blue-Haired Lawyer/test.js

// To make this script work you need to add the following to you style sheet (vector.css): // ++ //  |   #mw-panel { visibility: hidden !important; }                     | // |   #mw-head-base { margin-left: 0 !important; }                     | // |   #content { margin-left: 0 !important; }                          | // |   #left-navigation { margin-left: 1em !important; }                | // |   #footer { margin-left: 0 !important; }                           | // ++

// set viewport for mobile devices myView = document.createElement("meta"); myView.setAttribute("name", "viewport"); myView.setAttribute("content", "width=device-width, initial-scale=1.0, minimal-scale=1.0, maximal-scale=1.0"); document.getElementsByTagName("head")[0].appendChild(myView);

// Insert head banner myDiv = document.createElement("DIV"); myLink = document.createElement("A"); myDiv.appendChild(myLink);

myDiv.id = 'myNewBanner'; myDiv.setAttribute("style", "position: absolute; top: 5px; left: 15px; font: 31pt Times; font-variant: small-caps; z-index: 999999;"); myDiv.className = 'noprint';

myLink.href = mw.config.get( 'wgArticlePath' ).replace('$1', ''); myLink.setAttribute("style", "color: black; text-decoration: none;"); let siteName = mw.config.get( 'wgSiteName' ); if(siteName == 'Wikipedia') { siteName = 'WikipediA'; } myLink.innerHTML = siteName; document.getElementById("mw-head").appendChild(myDiv);

function transferChildren(from, to) { if(typeof from == 'string') { from = document.querySelectorAll(from); }

if(typeof to == 'string') { to = document.querySelector(to); }

if(!from || !to) return;

for(let i = 0; i < from.length ; i++) { let li = document.createElement("LI"); li.className = 'noprint mw-list-item'; li.appendChild(from[i]); to.appendChild(li); } }

$(document).ready(function {	// place certain (less used) links in the footer	transferChildren("#t-permalink A, #t-cite A, #p-wikibase-otherprojects A", "#footer-places");

// language links let langChildren = document.querySelectorAll("#p-lang UL A"); if(langChildren !== null && langChildren.length > 0) { let addLinks = document.querySelector('.wbc-editpage > a'); if(addLinks !== null) { addLinks.innerHTML = 'Add language links'; }

//list let langList = document.createElement("UL"); langList.id = 'langList'; langList.style.fontSize = "0.8em";

// interwiki list transferChildren(langChildren, langList);

// language banner let lbanner = document.createElement("DIV"); lbanner.id = "lbanner"; lbanner.className = "catlinks noprint"; lbanner.appendChild(langList);

document.getElementById("content").appendChild(lbanner); }

let menuTable = document.createElement("table");

// Create a wiki menu for navigation and interaction links // node.cloneNode(true) doesn't copy css stuff properly let vectorMenu = document.getElementById('p-cactions'); let newMenu = document.createElement("NAV"); newMenu.id = 'faviconMenu'; newMenu.innerHTML = vectorMenu.innerHTML.replace(/ id="[^"]+"/g, '');	newMenu.className = vectorMenu.className;	newMenu.style.setProperty("display", "block", "important");	// Change ids and clear content	newMenu.querySelector('span').innerHTML = '';	newMenu.querySelector('.vector-menu-content').innerHTML = ' ';

// Insert newMenu let ln = document.getElementById('left-navigation'); ln.insertBefore(newMenu, ln.firstChild); transferChildren("#p-navigation A", "#mainList"); transferChildren("#p-interaction A", "#contribList"); transferChildren("#p-tb A, #p-coll-print_export A", "#toolsList");

// set some css for good and featured articles let style = document.createElement('style'); let head = document.getElementsByTagName('head')[0]; let css = document.createTextNode( "#lbanner .GA:before { content: url('//upload.wikimedia.org/wikipedia/commons/4/42/Monobook-bullet-ga.png') ' '; } " ); css.appendData( "#lbanner .FA:before { content: url('//upload.wikimedia.org/wikipedia/en/d/d4/Monobook-bullet-star.png') ' '; }" ); style.appendChild(css); head.appendChild(style); });