Wikiversity:Hochladen mit Informationsbaustein

Aus Wikiversity

Wenn Du beim Hochladen von Dateien auch schon mal die gewünschten Angaben vergessen hast oder Dich geärgert hast, dass Du immer erst den Baustein Vorlage:Information in das Beschreibungsfeld hineinkopieren musstest, dann kannst Du auch den automatisierten Weg einschlagen. Bereite dazu Deine Javascriptdatei entsprechend vor.

Danach sollte beim Aufruf des "Hochladens" der Text des Bausteins bereits im Beschreibungsfeld drinstehen.

Kopiere Dir von Benutzer:Javascript/monobook.js folgende Abschnitte in Deine Javascriptdatei (oder kopiere Dir den Quelltext von hier, allerdings befindet sich der jeweils aktuelle Quellcode immer in der Javascriptdatei von Benutzer:Javascript):

Die "Funktion zum Setzen von Lizenzinfos beim Upload"[Bearbeiten]

 /**************************************************
 * Funktion zum Setzen von Lizenzinfos beim Upload *
 **************************************************/
 function myUploadInfo(){
   if (wgPageName != 'Spezial:Upload'){ return; }
   var upLoad = document.getElementById('wpUploadDescription');
   if(!upLoad){return;}
   if (upLoad.length){upLoad = upLoad[0];}
   var datum = new Date();
   if (!upLoad.nodeValue){
    upLoad.appendChild(
      document.createTextNode(
 	"{{Information\n"+
 	"|Beschreibung=\n"+
 	"|Quelle=selbst erstellt\n"+
 	"|Urheber=[[Benutzer:"+wgUserName+"]]\n"+
 	"|Datum="+datum.getFullYear()+"\n"+
 	"|Genehmigung=\n"+
 	"|Andere Versionen=\n"+
 	"|Anmerkungen=\n"+
 	"}}\n"+
 	"{{Bild-GFDL}}"
      )
    );
   }
 } 

Die folgende "Funktion, die nach dem vollständigen Laden des HTML-Dokuments aufgerufen wird"[Bearbeiten]

Hinweis: In dieser „Init“-Funktion können auch andere Zeilen enthalten sein. Zum Beispiel die Zeilen aus dem Tipp zum Erzeugen von Betreffzeilen als Linkgallerie in Archiven.

Wenn diese „Init“-Funktion schon vorhanden ist, bitte nicht doppelt eintragen!

 /**************************************************
 * Funktion, die nach dem vollständigen Laden      *
 * des HTML-Dokuments aufgerufen wird              *
 **************************************************/
 function Init() {
 
 /* Zum Tipp: [[Wikiversity:Hochladen mit Informationsbaustein]] */
 if (isMyUpload){myUploadInfo();}  
 
 }

Die "allgemeinen Variablen" und den gemeinsamen Restteil[Bearbeiten]

Auch hier gilt:

Wenn diese Zeilen schon vorhanden sind, bitte nicht doppelt eintragen!

 /**************************************************
 * allgemeine Variable                             *
 **************************************************/
 var isMyUpload = (wgPageName == "Spezial:Upload");
 var isMyArchiv = (document.URL.indexOf('/Archiv/')>0 && document.URL.indexOf('action=')>0);
  
 /**************************************************
 * Verknüpfen der Init-Funktion mit dem "onload"-  *
 * Attribut des HTML-Dokuments für diverse Browser *
 **************************************************/
 if (window.addEventListener) {
   window.addEventListener("load", Init, false);
 } else if (window.attachEvent) {
   window.attachEvent("onload", Init);
 } else {
   if ( window.onload != null ) {
     var oldOnload = window.onload;
     window.onload = function(args) {
        oldOnload(args);
        window[Init]();
     };
   } else {
     window.onload = Init;
   }
 }