Benutzer:$traight-$hoota/js/sla.js

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen

Hinweis: Leere nach dem Veröffentlichen den Browser-Cache, um die Änderungen sehen zu können.

  • Firefox/Safari: Umschalttaste drücken und gleichzeitig Aktualisieren anklicken oder entweder Strg+F5 oder Strg+R (⌘+R auf dem Mac) drücken
  • Google Chrome: Umschalttaste+Strg+R (⌘+Umschalttaste+R auf dem Mac) drücken
  • Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
( function ( window, document, $, undefined ) { // Wrap with anonymous function

mw.loader.load("//de.wikipedia.org/w/index.php?title=Benutzer:$traight-$hoota/morebits.css&action=raw&ctype=text/css",
               "text/css");
mw.loader.load("//de.wikipedia.org/w/index.php?title=Benutzer:$traight-$hoota/morebits.js&action=raw&ctype=text/javascript",
               "text/javascript");
mw.loader.load(['jquery.ui']);

// Disable on:
// * special pages
// * non-existent pages
// * files on Commons, whether there is a local page or not (unneeded local pages of files on Commons are eligible for CSD F2)
// * file pages without actual files (these are eligible for CSD G8)
if ( mw.config.get('wgNamespaceNumber') < 0 || !mw.config.get('wgArticleId') || (mw.config.get('wgNamespaceNumber') === 6 && (document.getElementById('mw-sharedupload') || (!document.getElementById('mw-imagepage-section-filehistory') && !Morebits.wiki.isPageRedirect()))) ) {
  return;
}

var SLA = {
  init: function(){
    var link = mw.util.addPortletLink('p-cactions', '#', 'Schnelllöschantrag', 'ca-sla');
    $(link).click(function(event){
      event.preventDefault();
      SLA.action();
    });
  },
  action: function(){
    var win = new Morebits.simpleWindow( 600, 350 );
    win.setTitle( "Schnelllöschantrag" );
    win.setScriptName( "SLA" );
    win.addFooterLink( "Schnelllöschanträge", "WP:SLA" );
    var form = new Morebits.quickForm(SLA.evaluate);

    var defaultValue = '';
    if(mw.config.get('wgNamespaceNumber') == 14) { // Kategorie
      defaultValue = 'Nicht mehr benötigte Kategorie.';
    }
    form.append({
      type: 'input',
      name: 'reason',
      label: 'Begründung:',
      value: defaultValue,
      size: 60
    } );
    form.append( { type:'submit' } );

    var result = form.render();
    win.setContent( result );
    win.display();
  },
  evaluate: function(e) {
    var form = e.target;
    var reason = form.reason.value;

    Morebits.simpleWindow.setButtonsEnabled( false );
    Morebits.status.init( form );

    var page = new Morebits.wiki.page(mw.config.get('wgPageName'), "Schnelllöschantrag einstellen");
    page.setFollowRedirect(false);

    page.setPrependText("<noinclude>{" + "{löschen}} " + reason + " --~" + "~" + "~" + "~</noinclude>\n\n");

    page.setEditSummary("+SLA: " + reason + "");
    page.prepend(SLA.finish);
  },
  finish: function(){
    location.reload();
  }
}

$(document).ready(SLA.init);

} ( window, document, jQuery )); // End wrap with anonymous function