Difference between revisions of "User:Fbstj/gadget/history-test.js"
Jump to navigation
Jump to search
m (silly mediawiki) |
m (hmm) |
||
Line 39: | Line 39: | ||
/* 2018-09-16 display Arcanum entry on Cite:Arcanum-X page */ |
/* 2018-09-16 display Arcanum entry on Cite:Arcanum-X page */ |
||
$(function () { |
$(function () { |
||
− | // check that there is an edit box |
||
− | if (!mw.config.get('wgCanonicalNamespace') !== 'Cite') return -1; |
||
// check that it's an Arcanum page |
// check that it's an Arcanum page |
||
const page_name = mw.config.get('wgPageName'); |
const page_name = mw.config.get('wgPageName'); |
||
− | if (!page_name.startsWith('Cite:Arcanum-')) return |
+ | if (!page_name.startsWith('Cite:Arcanum-')) return; |
// work out the api url |
// work out the api url |
||
const entry = page_name.split('-')[1]; |
const entry = page_name.split('-')[1]; |
||
const url = 'https://wob.coppermind.net/api/entry/'+ entry +'/'; |
const url = 'https://wob.coppermind.net/api/entry/'+ entry +'/'; |
||
// start fetching from Arcanum |
// start fetching from Arcanum |
||
+ | console.log('fetching '+ url); |
||
fetch(url) |
fetch(url) |
||
.then(function(resp) { return resp.json() }) |
.then(function(resp) { return resp.json() }) |
||
Line 67: | Line 66: | ||
// place container on page |
// place container on page |
||
console.log(entry); |
console.log(entry); |
||
− | }) |
+ | }); |
− | }) |
+ | }); |
Revision as of 13:12, 16 September 2018
/* Add edit link to templates */ $(function () { function add_editsection_link(box) { if (!box.id) return; // FIXME: what does this do? const id = box.id.replace(/\.(\d+)/, '%$1') // generate an edit link const el = make_editsection_link('/edit/Template:'+ id) // get the title element const title = box.querySelector('.title') title.appendChild(el) } document.querySelectorAll('.infobox,.navbar').forEach(add_editsection_link) function enable_link(el) { el.style['pointer-events'] = 'auto' } document.querySelectorAll('.patrollink').forEach(enable_link) // move notices above indicators while (true) { const edit_box = document.querySelector('.editButtons') if (!!edit_box) break if (location.search != '') break var el = document.querySelector('.infobox+.notice') if (!el) { // check first child of #mw-content-text is a notice const txt = document.querySelector('#mw-content-text') if (txt.firstElementChild.classList.contains('notice')) el = txt.firstElementChild } if (!el) break const ind = document.querySelector('.mw-indicators') ind.parentElement.insertBefore(el, ind) } }) /* 2018-09-16 display Arcanum entry on Cite:Arcanum-X page */ $(function () { // check that it's an Arcanum page const page_name = mw.config.get('wgPageName'); if (!page_name.startsWith('Cite:Arcanum-')) return; // work out the api url const entry = page_name.split('-')[1]; const url = 'https://wob.coppermind.net/api/entry/'+ entry +'/'; // start fetching from Arcanum console.log('fetching '+ url); fetch(url) .then(function(resp) { return resp.json() }) .then(function(json) { // debugging: console.log('Entry '+ entry, json); // create containing element const entry = document.createElement('article'); entry.classList.add('arcanum-entry'); // add lines json.lines.forEach(function(line) { // create speaker element const speaker = document.createElement('h4'); speaker.innerText = line.speaker; // append the speaker and html from the line entry.appendChild(entry); entry.innerText += line.text; }); // place container on page console.log(entry); }); });