MediaWiki:Gadget-Arcanum-autofill-page.js
Ir a la navegación
Ir a la búsqueda
Nota: tras guardar, quizás necesites actualizar la caché de tu navegador para ver los cambios.
- Firefox/Safari: Mantén presionada la tecla Mayús mientras pulsas el botón Actualizar, o presiona Ctrl+F5 o Ctrl+R (⌘+R en Mac)
- Google Chrome: presiona Ctrl+Shift+R (⌘+Mayús+R en Mac)
- Internet Explorer: mantén presionada Ctrl mientras pulsas Actualizar, o presiona Ctrl+F5
- Opera: dirígete a Menú → Configuración (Opera → Preferencias en Mac) y luego a Privacidad y seguridad → Borrar datos de navegación → Imágenes y archivos en caché.
// 2018-08-22 auto-generate Cite:Arcanum pages for wob ref template mw.hook('wikipage.editform').add(function Arcanum_autofill() { // determine if this page is editing a Cite: Arcanum page const edit_box = document.querySelector('#editform textarea'); // check that there is an edit box if (!edit_box || mw.config.get('wgCanonicalNamespace') !== 'Cite') return -1; // check that it's a page creation if (mw.config.get('wgArticleId') != 0) return -2; // check that it's an Arcanum page const page_name = mw.config.get('wgPageName'); if (!page_name.startsWith('Cite:Arcanum-')) return -3; console.warn('gadget:', 'Arcanum-autofill-page') // work out the api url const entry = page_name.split('-')[1]; const url = 'https://wob.coppermind.net/api/entry/'+ entry +'/'; // start fetching from Arcanum fetch(url) .then(function fetch_to_json(resp) { return resp.json() }) .then(function add_arcanum_entry_info_to_page(json) { if (!json || !json.event) { return; } // the arcanum-entry-info tag const tag = '<'+'arcanum-entry-info date="'+ (json.date || json.event_date) +'" event="'+ json.event +'">'+ json.event_name +'<'+'/arcanum-entry-info>'; // the rest of the page const page = tag +"<noinclude>\n\n== Users ==\n\{\{Special:WhatLinksHere/\{\{FULLPAGENAME}}|}}\n[[cate"+"gory: generated citations]]\n"; // only fill in the edit box if it is currently blank if (edit_box.value == '') { edit_box.value = page; console.warn('gadget:', 'Arcanum-autofill-page', 'filled') // preview the page document.querySelector('[name="wpPreview"]').click() } }) })