Benutzer:Martinnitus/Diskussionsseitenlöscher: Unterschied zwischen den Versionen

Aus Stupidedia, der sinnfreien Enzyklopädie!
Wechseln zu: Navigation, Suche
K
K (SallyCane hat Benutzer:Martinatussi/Diskussionsseitenlöscher nach Benutzerin:Martinnitus/Diskussionsseitenlöscher umgetopft und dabei eine Weiterleitung zerstört: Seite während der Benutzerkontoumbenennung von „[[User:Martinatussi|Martina…)
 
(12 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
 
<html>
 
<html>
<div id="results">Bitte warten... <img src="http://www.stupidedia.org/images/d/de/Ajax-loader.gif"></div>
+
<div id="results"></div>
 +
<div id="waiting">Bitte gedulde dich ca. 3 Minuten. <img src="http://www.stupidedia.org/images/d/de/Ajax-loader.gif"></div>
 +
<div id="success"><ul></ul></div>
 
<script type="text/javascript">
 
<script type="text/javascript">
 
var tpdelete = {
 
var tpdelete = {
Zeile 6: Zeile 8:
 
     api.request( tpdelete.req, tpdelete.continue, [] );
 
     api.request( tpdelete.req, tpdelete.continue, [] );
 
   },
 
   },
 
+
 
 
   req: {
 
   req: {
 
       action: 'query',
 
       action: 'query',
Zeile 17: Zeile 19:
 
     var pages = $.merge( oldpages, api.makeArray( data ) );
 
     var pages = $.merge( oldpages, api.makeArray( data ) );
 
     if( api.makeArray( data ).length > 1 ){
 
     if( api.makeArray( data ).length > 1 ){
         tpdelete.req.apfrom = pages[ pages.length - 1 ].title.replace( /Diskussion:/ , '' );
+
         tpdelete.req.apfrom = pages[ pages.length - 1 ].title.replace( /[^:]*:/, '' );
 
         api.request( tpdelete.req, tpdelete.continue, pages );
 
         api.request( tpdelete.req, tpdelete.continue, pages );
 
     }else{
 
     }else{
 
         var talkpages = [];
 
         var talkpages = [];
 
         $.each( pages, function( i, page ){
 
         $.each( pages, function( i, page ){
           talkpages.push( page.title.replace( /Diskussion:/ , '' ) );
+
           talkpages.push( getSubjectPageName( page.title ) );
 
         });
 
         });
 
         tpdelete.check( talkpages );
 
         tpdelete.check( talkpages );
Zeile 31: Zeile 33:
 
       var ch = {
 
       var ch = {
 
         action: 'parse',
 
         action: 'parse',
         text: '* [[' + pages.join(']]\n* [[') + ']]',
+
         text: '[[' + pages.join(']][[') + ']]',
 
         disablepp: true,
 
         disablepp: true,
 
         pst: true
 
         pst: true
Zeile 39: Zeile 41:
  
 
   parse: function( data ){
 
   parse: function( data ){
 +
      var missingpages = [];
 
       var classnew = $( data.parse.text['*'] ).find( 'a[class="new"]' ).toArray();
 
       var classnew = $( data.parse.text['*'] ).find( 'a[class="new"]' ).toArray();
      var missingpages = [];
 
 
       $.each( classnew, function( i, page ){
 
       $.each( classnew, function( i, page ){
         if( page.innerHTML.match( '/' ) === null )
+
         if( page.innerHTML.match( /\// ) === null )
             missingpages.push( '<input type=checkbox value="' + page.innerHTML + '?redirect=no" /><a href="/stupi/Diskussion:' + page.innerHTML + '" title="Diskussion:' + page.innerHTML + '">Diskussion:' + page.innerHTML + '</a>' );
+
             missingpages.push( '<input type=checkbox disabled="disabled" value="' + getTalkPageName( page.innerHTML ) + '" /><a href="/stupi/' + mw.util.wikiUrlencode( getTalkPageName( page.innerHTML ) ) + '?redirect=no" title="' + getTalkPageName( page.innerHTML ) + '">' + getTalkPageName( page.innerHTML ) + '</a>' );
 
       });
 
       });
       $( '#results' ).html( missingpages.join('\n<br />') + '\n<br /><input type=button value="Ausgewählte Seiten löschen" onclick=tpdelete.delete(); />' );
+
       var allmissingpages = ( missingpages.length ) ? missingpages.join('\n<br />') : 'Keine Seite gefunden.';
 +
      switch( tpdelete.req.apnamespace ){
 +
        case '1':
 +
          tpdelete.newnamespace( '(Artikelnamensraum)', '5', allmissingpages );
 +
        break;
 +
        case '5':
 +
          tpdelete.newnamespace( 'Stupidedia', '7', allmissingpages );
 +
        break;
 +
        case '7':
 +
          tpdelete.newnamespace( 'Datei', '9', allmissingpages );
 +
        break;
 +
        case '9':
 +
          tpdelete.newnamespace( 'MediaWiki', '11', allmissingpages );
 +
        break;
 +
        case '11':
 +
          tpdelete.newnamespace( 'Vorlage', '13', allmissingpages );
 +
        break;
 +
        case '13':
 +
          tpdelete.newnamespace( 'Hilfe', '15', allmissingpages );
 +
        break;
 +
        case '15':
 +
          tpdelete.newnamespace( 'Kategorie', '101', allmissingpages );
 +
        break;
 +
        case '101':
 +
          tpdelete.newnamespace( 'Portal', '103', allmissingpages );
 +
        break;
 +
        case '103':
 +
          tpdelete.newnamespace( 'Diverses', '105', allmissingpages );
 +
        break;
 +
        case '105':
 +
          tpdelete.newnamespace( 'Sub', '107', allmissingpages );
 +
        break;
 +
        case '107':
 +
          tpdelete.newnamespace( 'Spiegelwelten', '109', allmissingpages );
 +
        break;
 +
        case '109':
 +
          tpdelete.newnamespace( 'Frage', '275', allmissingpages );
 +
        break;
 +
        default:
 +
          $( '#results input' ).attr( 'disabled', null );
 +
          $( '#waiting' ).hide();
 +
          $( '#results' ).append( '<h3>Widget</h3>\n' + allmissingpages + '\n<hr /><input type=button value="Ausgewählte Seiten löschen" onclick=tpdelete.delete(); />' );
 +
      }
 
   },
 
   },
 
    
 
    
 +
  newnamespace: function( nsname, nextns, allmissingpages ){
 +
          $( '#results' ).append( '<h3>' + nsname + '</h3>\n' + allmissingpages + '\n' );
 +
          tpdelete.req.apnamespace = nextns;
 +
          delete tpdelete.req.apfrom;
 +
          api.request( tpdelete.req, tpdelete.continue, [] );
 +
  },
 +
 
   delete: function(){
 
   delete: function(){
 
       var checkedpages = $( '#results' ).find( 'input[type="checkbox"]:checked' ).toArray();
 
       var checkedpages = $( '#results' ).find( 'input[type="checkbox"]:checked' ).toArray();
 +
      if( !checkedpages.length )
 +
        return;
 +
      $( '#results input' ).attr( 'disabled', 'disabled' );
 
       $.each( checkedpages, function( i, page ){
 
       $.each( checkedpages, function( i, page ){
         api.deletePage( 'Diskussion:' + page.value , 'Lösche Diskussionsseiten ohne zugehörige Inhaltsseite', function ( data ) {
+
         api.deletePage( page.value, 'Lösche Diskussionsseiten ohne zugehörige Inhaltsseite', function ( data ) {
 
             if (data.error !== undefined) {
 
             if (data.error !== undefined) {
               alert( 'Fehler beim Löschen: ' + data.error.code + ', Info: ' + data.error.info );
+
               $( '#success ul' ).append( '<li style="color: red;">Fehler beim Löschen der Seite <b>' + page.value + '</b>: ' + data.error.code + ', Info: ' + data.error.info + '</span></li>' );
 +
            }else{
 +
              $( '#success ul' ).append( '<li style="color: green;">Seite <b>' + page.value + '</b> wurde erfolgreich gelöscht.</span></li>' );
 
             }
 
             }
 
           });
 
           });
Zeile 60: Zeile 116:
  
 
};
 
};
tpdelete.init();
+
execute( 'tpdelete.init' );
//execute( 'tpdelete.init' );
 
 
</script>
 
</script>
 
</html>
 
</html>

Aktuelle Version vom 3. April 2015, 23:45 Uhr

Bitte gedulde dich ca. 3 Minuten.


    Linktipps: Faditiva und 3DPresso