MediaWiki:Common.js: Difference between revisions

From creative crowd wiki
Jump to navigation Jump to search
No edit summary
No edit summary
 
(11 intermediate revisions by the same user not shown)
Line 10: Line 10:


const  
const  
url   = window.location.href,
url     = window.location.href,
NS     = 'Pdf',         // content namespace
NS       = 'Pdf',                 // content namespace
cssNS = NS + 'CSS'            // css namespace
cssNS   = NS + 'CSS',           // css namespace
 
    pageName = mw.config.get("wgPageName").split(":")[1]
   
if (url.includes(NS + ':')) {
if (url.includes(NS + ':')) {
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!'
const talkButton = document.querySelector('#ca-talk')
talkButton.classList.add('wiki2print')
talkAnchor.innerText = 'CSS'
// adding more buttons
const pageViews  = document.querySelector('#p-views ul')
const pageViews  = document.querySelector('#p-views ul')
// View HTML
const wiki2printButton = document.createElement('li')
const htmlButton  = document.createElement('li')
htmlButton.classList.add('collapsible', 'mw-list-item', 'wiki2print')
wiki2printButton.classList.add('collapsible', 'mw-list-item')
htmlButton.id = 'ca-html'
wiki2printButton.id = 'ca-wiki2print'
htmlButton.innerHTML = '<a href="https://cc.vvvvvvaria.org/wiki-to-print/html/' + pageName + '" target="_blank">View HTML</a>'
wiki2printButton.innerHTML = '<a href="http://51.195.117.20:5555/">wiki2print</a>'
pageViews.appendChild(htmlButton)
pageViews.appendChild(wiki2printButton)
 
// View PDF
const pdfButton = document.createElement('li')
pdfButton.classList.add('collapsible', 'mw-list-item', 'wiki2print')
pdfButton.id = 'ca-pdf'
pdfButton.innerHTML = '<a href="https://cc.vvvvvvaria.org/wiki-to-print/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="https://cc.vvvvvvaria.org/wiki-to-print/update/' + pageName + '" target="_blank">Update text</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="https://cc.vvvvvvaria.org/wiki-to-print/update/' + pageName + '?full=true" target="_blank">Update media</a>'
pageViews.appendChild(fullupdateButton)


} else if (url.includes(cssNS + ':')) {
} else if (url.includes(cssNS + ':')) {
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 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')
const pageViews = document.querySelector('#p-views ul')
// View HTML
const addTopicButton = document.querySelector('#ca-addsection')
const htmlButton  = document.createElement('li')
htmlButton.classList.add('collapsible', 'mw-list-item', 'wiki2print')
pageViews.removeChild(addTopicButton)
htmlButton.id = 'ca-html'
htmlButton.innerHTML = '<a href="https://cc.vvvvvvaria.org/wiki-to-print/html/' + pageName + '" target="_blank">View HTML</a>'
const contentButton = document.createElement('li')
pageViews.appendChild(htmlButton)
 
contentButton.classList.add('collapsible', 'mw-list-item')
// View PDF
contentButton.id = 'ca-content'
const pdfButton  = document.createElement('li')
contentButton.innerHTML = '<a href="' + contentLink + '">Content!</a>'
pdfButton.classList.add('collapsible', 'mw-list-item', 'wiki2print')
pageViews.appendChild(contentButton)
pdfButton.id = 'ca-pdf'
pdfButton.innerHTML = '<a href="https://cc.vvvvvvaria.org/wiki-to-print/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="https://cc.vvvvvvaria.org/wiki-to-print/update/' + pageName + '" target="_blank">Update text</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="https://cc.vvvvvvaria.org/wiki-to-print/update/' + pageName + '?full=true" target="_blank">Update media</a>'
pageViews.appendChild(fullupdateButton)
}
}

Latest revision as of 13:30, 20 January 2023

/* 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="https://cc.vvvvvvaria.org/wiki-to-print/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="https://cc.vvvvvvaria.org/wiki-to-print/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="https://cc.vvvvvvaria.org/wiki-to-print/update/' + pageName + '" target="_blank">Update text</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="https://cc.vvvvvvaria.org/wiki-to-print/update/' + pageName + '?full=true" target="_blank">Update media</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="https://cc.vvvvvvaria.org/wiki-to-print/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="https://cc.vvvvvvaria.org/wiki-to-print/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="https://cc.vvvvvvaria.org/wiki-to-print/update/' + pageName + '" target="_blank">Update text</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="https://cc.vvvvvvaria.org/wiki-to-print/update/' + pageName + '?full=true" target="_blank">Update media</a>'
	pageViews.appendChild(fullupdateButton)
		
}