MediaWiki:Gadget-PreloadTemplates.js

From Tardis Wiki, the free Doctor Who reference
Revision as of 22:36, 17 October 2017 by w:c:Dev>Leviathan 89 (Update notification)
Clear your cache often around here

After changes are made to this site's CSS or Javascript, you have to bypass your browser's cache to see the changes. You can always do this by going to your browser's preferences panel. But many browsers also offer keyboard shortcuts to save you that trouble. The following shortcuts work in the versions of the browsers that Tardis currently supports. They may not work in earlier versions.

  • Firefox: hold down Shift while performing a page reload.
  • Opera offers no default keyboard shortcut, but you can create a custom keyboard shortcut with the value Clear disk cache
  • Safari users should simultaneously hold down + Option + E. You may need to enable the Develop menu first
  • Chrome: press Ctrl + F5 or Shift + F5 while performing a page reload.
//  ================================
//      Custom preload templates
//  ================================
/*  @author Grunny 
    From http://harrypotter.wikia.com/wiki/MediaWiki:Wikia.js
    edited by leviathan_89

    ** Info: **
    Template list loaded by default from "MediaWiki:Custom-PreloadTemplates",
    each syntax is loaded by default from the "/preload" subpage of the
    template.
*/

$(function() {

    // Run conditions
    if (    wgAction != 'edit' || 
            (!$('div.module_content').length && skin == 'oasis') ||
            (!$('div.editButtons').length && skin == 'monobook') ||
             mw.config.get('wgNamespaceNumber') == 8 // MediaWiki:
        ) {
        console.log('[PreloadTemplates]: container not found or page is not supported.');
        return;
    }
    console.log('[PreloadTemplates]: version 1.02 - 17/10/2017.');
    
    // =================
    //   Configuration
    // =================
    var config = {
            list: null,
            subpage: null
        };

    // Checking user's custom settings
    config.list = ( typeof preloadTemplates_list == 'string' ) ? preloadTemplates_list : 'MediaWiki:Custom-PreloadTemplates';
    config.subpage = ( typeof preloadTemplates_subpage == 'string' ) ? preloadTemplates_subpage : 'preload';


    // ========
    //   i18n
    // ========
    var lang = mw.config.get('wgUserLanguage');
    var splitLang = lang.split('-')[0];
    var i18n = {
            // English
            en: {
                preload: "Preload template:",
                choose: "(choose)",
                help: "Select a template to insert its preloaded syntax at the current position",
                devWiki: "Check the documentation on Dev Wiki",
                error: "No valid syntax found at $1 or page is missing."
            },
            // Belarusian
            be: {
                preload: "Гатовы шаблон:",
                choose: "(выберыце)",
                help: "Выберыце падрыхтаваны шаблон, каб ўставіць код у дадзеным месцы",
                devWiki: "Паглядзець дакументацыю на Dev Wiki",
                error: "Не знойдзены правільны сінтаксіс у $1 ці старонка не існуе."
            },
            // Catalan
            ca: {
                preload: "Pre-carrega una plantilla:",
                choose: "(tria)",
                help: "Selecciona una plantilla per inserir la seva sintaxi pre-carregada a la posició actual",
                devWiki: "Controla la documentació al Dev Wiki",
                error: "Cap sintaxi vàlida trobada a $1 o la pàgina hi falta."
            },
            // German
            de: {
                preload: "Vorlage einfügen:",
                choose: "(Auswählen)",
                help: "Wähle die Vorlage, deren vorgefertigte Syntax an der aktuellen Position eingefügt werden soll",
                devWiki: "Lies die Dokumentation im Dev-Wiki",
                error: "Keine gültige Syntax unter $1 gefunden bzw. keine Seite."
            },
            // Spanish
            es: {
                preload: "Precarga una plantilla:",
                choose: "(elige)",
                help: "Selecciona una plantilla para insertar su sintaxis precargada en la posición actual",
                devWiki: "Controla la documentación en la Dev Wiki",
                error: "Ninguna sintaxis válida encontrada en $1 o falta la página."
            },
            // French
            fr: {
                preload: "Précharger un modèle :",
                choose: "(choisir)",
                help: "Sélectionnez un modèle pour insérer sa syntaxe préchargée dans la position actuelle",
                devWiki: "Contrôlez la documentation sur le Dev Wiki",
                error: "Aucune syntaxe valable trouvée sur $1 ou la page est absente."
            },
            // Finnish
            fi: {
                preload: "Esilataa malline:",
                choose: "(valitse)",
                help: "Valitse malline lisätäksesi sen esiladatun syntaksin nykyiseen paikkaan",
                devWiki: "Katso dokumentointi Dev Wikissä",
                error: "Väärin syntaksi kohdassa $1 or tai sivu puuttuu."
            },
            // Galician
            gl: {
                preload: "Pre-carga un modelo:",
                choose: "(elixe)",
                help: "Selecciona un modelo para inserir a súa sintaxe pre-cargada na posición actual",
                devWiki: "Controla a documentación no Dev Wiki",
                error: "Ningunha sintaxe válida atopada en $1 ou a páxina está a faltar."
            },           
            // Bahasa Indonesia
            "id": {
                preload: "Pramuat templat:",   
                choose: "(plihan)",             
                help: "Pilihlah sebuah templat untuk dimasukkan ke pramuat sintaksis di posisi sekarang ini ",
                devWiki: "Mengecek dokumentasi di devwiki",
                error: "Tidak ditemukan sintaksis yang sah ditemukan $1 atau laman menghilang."
            },
            // Italian
            it: {
                preload: "Precarica un template:",
                choose: "(scegli)",
                help: "Seleziona un template per inserire la sua sintassi precaricata nella posizione corrente",
                devWiki: "Controlla la documentazione su Dev Wiki",
                error: "Nessuna sintassi valida trovata su $1 o la pagina è mancante."
            },
            // Japanese
            ja: {
                preload: "プリロード・テンプレート:",
                choose: "(選択してください)",
                help: "テンプレートを選ぶと、文字入力カーソルの位置に埋め込まれます。",
                devWiki: "Dev Wikiの解説ページをご覧ください。",
                error: "$1は無効な構文か、ページが存在しません。"
            },
            // Occitan
            oc: {
                preload: "Precarga un modèl:",
                choose: "(escuelh)",
                help: "Selecciona un modèl per inserir la siá sintaxi precargada dins la posicion actuala",
                devWiki: "Contròtla la documentacion sul Dev Wiki",
                error: "Cap de sintaxi valida amassada sus $1 o la pagina i manca."
            },
            // Polish
            pl: {
                preload: "Gotowy szablon:",
                choose: "(wybierz)",
                help: "Wybierz przygotowany szablon, aby wstawić kod w obecnym miejscu",
                devWiki: "Zobacz dokumentację na Dev Wiki",
                error: "Nie znaleziono odpowiedniej składni w $1 lub strona nie istnieje."
            },
            // Portuguese
            pt: {
                preload: "Pré-carrega uma predefinição:",
                choose: "(escolhe)",
                help: "Seleciona uma predefinição para inserires a sua sintaxe pré-carregada na posição actual",
                devWiki: "Controla a documentação no Dev Wiki",
                error: "Nenhuma sintaxe válida encontrada em $1 ou a página está a faltar."
            },
            // Brazilian Portuguese
            "pt-br": {
                preload: "Pré-carrega uma predefinição:",
                choose: "(escolha)",
                help: "Selecione uma predefinição para inserir a sintaxe dela pré-carregada na posição atual",
                devWiki: "Controle a documentação na Dev Wiki",
                error: "Nenhuma sintaxe válida encontrada em $1 ou a página está faltando."
            },
            // Romanian
            ro: {
                preload: "Preîncărcaţi un format:",
                choose: "(alegeţi)",
                help: "Selecţionaţi un format pentru a insera sintaxa acesta preîncărcată în poziţia actuală",
                devWiki: "Controlaţi documentaţia pe Dev Wiki",
                eroare: "Nicio sintaxa validă găsită pe $1 sau pagina lipseşte."
            },
            // Russian
            ru: {
                preload: "Готовый шаблон:",
                choose: "(выберите)",
                help: "Выберите подготовленный шаблон, чтобы вставить код в данном месте",
                devWiki: "Посмотреть документацию на Dev Wiki",
                error: "Не найден правильный синтаксис в $1 или страница не существует."
            },
            // Ukrainian
            uk: {
                preload: "Готовий шаблон:",
                choose: "(виберіть)",
                help: "Виберіть підготовлений шаблон, щоб вставити код в даному місці",
                devWiki: "Подивитися документацію на Dev Wiki",
                error: "Не знайдений правильний синтаксис в $1 або сторінка не існує."
            },
            // Valencian
            val: {
                preload: "Precarrega una plantilla:",
                choose: "(tria)",