MediaWiki:Common.js: Difference between revisions

From creative crowd wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 18: Line 18:
console.log('this page is in namespace', NS)
console.log('this page is in namespace', NS)
// Change Discussion into CSS button
const talkAnchor = document.querySelector('#ca-talk a')
const talkAnchor = document.querySelector('#ca-talk a')
const talkLink = talkAnchor.href
const talkLink = talkAnchor.href
talkAnchor.innerText = 'CSS!'
talkAnchor.innerText = 'CSS!'
const talkButton = document.querySelector('#ca-talk')
const talkButton = document.querySelector('#ca-talk')
talkButton.classList.add('wiki2print')
talkButton.classList.add('wiki2print')
Line 28: Line 28:
const pageViews  = document.querySelector('#p-views ul')
const pageViews  = document.querySelector('#p-views ul')
// HTML
// View HTML
const htmlButton  = document.createElement('li')
const htmlButton  = document.createElement('li')
htmlButton.classList.add('collapsible', 'mw-list-item', 'wiki2print')
htmlButton.classList.add('collapsible', 'mw-list-item', 'wiki2print')
Line 35: Line 35:
pageViews.appendChild(htmlButton)
pageViews.appendChild(htmlButton)


// PDF
// View PDF
const pdfButton  = document.createElement('li')
const pdfButton  = document.createElement('li')
pdfButton.classList.add('collapsible', 'mw-list-item', 'wiki2print')
pdfButton.classList.add('collapsible', 'mw-list-item', 'wiki2print')
Line 59: Line 59:
console.log('this page is in namespace', cssNS)
console.log('this page is in namespace', cssNS)
// Change "Page" button into "Content" button
const contentAnchor = document.querySelector('#ca-nstab-pdf a')
const contentAnchor = document.querySelector('#ca-nstab-pdf a')
const contentLink = contentAnchor.href
const contentLink = contentAnchor.href
contentAnchor.innerText = 'Content'
contentAnchor.innerText = 'Content'
// Change "Discussion" button into "CSS" button
const talkAnchor = document.querySelector('#ca-talk a')
const talkAnchor = document.querySelector('#ca-talk a')
const talkLink = talkAnchor.href
const talkLink = talkAnchor.href
talkAnchor.innerText = 'CSS!'
talkAnchor.innerText = 'CSS!'
const talkButton = document.querySelector('#ca-talk')
talkButton.classList.add('wiki2print')
// adding more buttons
// adding more buttons
const pageViews  = document.querySelector('#p-views ul')
const pageViews  = document.querySelector('#p-views ul')
// HTML
// View HTML
const htmlButton  = document.createElement('li')
const htmlButton  = document.createElement('li')
htmlButton.classList.add('collapsible', 'mw-list-item', 'wiki2print')
htmlButton.classList.add('collapsible', 'mw-list-item', 'wiki2print')
Line 78: Line 81:
pageViews.appendChild(htmlButton)
pageViews.appendChild(htmlButton)


// PDF
// View PDF
const pdfButton  = document.createElement('li')
const pdfButton  = document.createElement('li')
pdfButton.classList.add('collapsible', 'mw-list-item', 'wiki2print')
pdfButton.classList.add('collapsible', 'mw-list-item', 'wiki2print')

Revision as of 11:59, 15 December 2022

/* Any JavaScript here will be loaded for all users on every page load. */

// Any JavaScript here will be loaded for all 
// users on every page load. 

console.log('hello from common.js')

// rename 'Discussion' tab or context menu button 
// to 'CSS' in the 'Pdf' namespace.

const 
	url      = window.location.href,
	NS       = 'Pdf',                 // content namespace
	cssNS    = NS + 'CSS',            // css namespace
    pageName = mw.config.get("wgPageName").split(":")[1]
    
if (url.includes(NS + ':')) {
	console.log('this page is in namespace', NS)
	
	// Change Discussion into CSS button
	const talkAnchor = document.querySelector('#ca-talk a')
	const talkLink = talkAnchor.href
	talkAnchor.innerText = 'CSS!'
	const talkButton = document.querySelector('#ca-talk')
	talkButton.classList.add('wiki2print')
	
	// adding more buttons
	const pageViews  = document.querySelector('#p-views ul')
	
	// View HTML
	const htmlButton  = document.createElement('li')
	htmlButton.classList.add('collapsible', 'mw-list-item', 'wiki2print')
	htmlButton.id = 'ca-html'
	htmlButton.innerHTML = '<a href="http://51.195.117.20:5555/html/' + pageName + '" target="_blank">View HTML</a>'
	pageViews.appendChild(htmlButton)

	// View PDF
	const pdfButton  = document.createElement('li')
	pdfButton.classList.add('collapsible', 'mw-list-item', 'wiki2print')
	pdfButton.id = 'ca-pdf'
	pdfButton.innerHTML = '<a href="http://51.195.117.20:5555/pdf/' + pageName + '" target="_blank">View PDF</a>'
	pageViews.appendChild(pdfButton)

	// UPDATE
	const updateButton  = document.createElement('li')
	updateButton.classList.add('collapsible', 'mw-list-item', 'wiki2print')
	updateButton.id = 'ca-update'
	updateButton.innerHTML = '<a href="http://51.195.117.20:5555/update/' + pageName + '" target="_blank">Update</a>'
	pageViews.appendChild(updateButton)

	// FULL UPDATE
	const fullupdateButton  = document.createElement('li')
	fullupdateButton.classList.add('collapsible', 'mw-list-item', 'wiki2print')
	fullupdateButton.id = 'ca-full-update'
	fullupdateButton.innerHTML = '<a href="http://51.195.117.20:5555/update/' + pageName + '?full=true" target="_blank">Full update</a>'
	pageViews.appendChild(fullupdateButton)

} else if (url.includes(cssNS + ':')) {
	console.log('this page is in namespace', cssNS)
	
	// Change "Page" button into "Content" button
	const contentAnchor = document.querySelector('#ca-nstab-pdf a')
	const contentLink = contentAnchor.href
	contentAnchor.innerText = 'Content'
	
	// Change "Discussion" button into "CSS" button
	const talkAnchor = document.querySelector('#ca-talk a')
	const talkLink = talkAnchor.href
	talkAnchor.innerText = 'CSS!'
	const talkButton = document.querySelector('#ca-talk')
	talkButton.classList.add('wiki2print')
	
	// adding more buttons
	const pageViews  = document.querySelector('#p-views ul')
	
	// View HTML
	const htmlButton  = document.createElement('li')
	htmlButton.classList.add('collapsible', 'mw-list-item', 'wiki2print')
	htmlButton.id = 'ca-html'
	htmlButton.innerHTML = '<a href="http://51.195.117.20:5555/html/' + pageName + '" target="_blank">View HTML</a>'
	pageViews.appendChild(htmlButton)

	// View PDF
	const pdfButton  = document.createElement('li')
	pdfButton.classList.add('collapsible', 'mw-list-item', 'wiki2print')
	pdfButton.id = 'ca-pdf'
	pdfButton.innerHTML = '<a href="http://51.195.117.20:5555/pdf/' + pageName + '" target="_blank">View PDF</a>'
	pageViews.appendChild(pdfButton)

	// UPDATE
	const updateButton  = document.createElement('li')
	updateButton.classList.add('collapsible', 'mw-list-item', 'wiki2print')
	updateButton.id = 'ca-update'
	updateButton.innerHTML = '<a href="http://51.195.117.20:5555/update/' + pageName + '" target="_blank">Update</a>'
	pageViews.appendChild(updateButton)

	// FULL UPDATE
	const fullupdateButton  = document.createElement('li')
	fullupdateButton.classList.add('collapsible', 'mw-list-item', 'wiki2print')
	fullupdateButton.id = 'ca-full-update'
	fullupdateButton.innerHTML = '<a href="http://51.195.117.20:5555/update/' + pageName + '?full=true" target="_blank">Full update</a>'
	pageViews.appendChild(fullupdateButton)
		
}