Benutzer:DerHexer/massenmail.js

In diesem Artikel werden wir die Auswirkungen untersuchen, die Benutzer:DerHexer/massenmail.js auf verschiedene Aspekte der heutigen Gesellschaft hatte. Von seinem Einfluss auf zwischenmenschliche Beziehungen bis hin zu seiner Bedeutung in der Weltwirtschaft hat Benutzer:DerHexer/massenmail.js die moderne Welt maßgeblich geprägt. Durch die Analyse verschiedener Studien und Forschungen werden wir untersuchen, wie Benutzer:DerHexer/massenmail.js die Art und Weise geprägt hat, wie wir leben, arbeiten und mit anderen umgehen. Darüber hinaus werden wir darüber nachdenken, welche Rolle Benutzer:DerHexer/massenmail.js in Zukunft spielt und wie seine Präsenz weiterhin verschiedene Bereiche unseres täglichen Lebens neu erfinden und verändern wird.
 // <nowiki>

 switch (mw.config.get('wgUserLanguage')){
   case 'de':
   case 'de-at':
   case 'de-ch':
   case 'de-formal':
 
   var configmassenmail = new Array('Bitte hier die anzuschreibenden Personen mit Semikola aufzählen (bspw.: DerHexer;TheWizard).', 
                                        'Bitte hier die Betreffszeile für alle Wikimails nennen.',
                                        'Bitte hier den zu verschickenden Text mit allen Formatierungen hineinkopieren und anstelle der anzuschreibenden Person jeweils $$$ setzen. Bspw. „Hallo $$$! Schau mal auf deine Disku unter ].“ ergäbe „Hallo DerHexer! Schau mal auf deine Disku unter ].“.',
                                        'Möchte ich für jede verschickte E-Mail eine Kopie an mich gesendet haben? (Antwortmöglichkeiten: Ja, Nein)',
                                        'Versand erfolgreich.',
                                        'Versand teilweise erfolgreich. Folgende Personen haben die Wikimail-Funktion nicht aktiviert: ',
                                        'Massenmail',
                                        'Mails an diverse Personen verschicken',
                                        'Ja',
                                        'Nein'); // 10
   break;

   default:
 
   var configmassenmail = new Array('Please enter the people to be contacted separated by semicolon, e.g.: TheWizard;DerHexer', 
                                        'Please enter the subject for all wikimails.',
                                        'Please paste the fully formatted text. You can replace the person to contact with $$$, e.g. “Hi $$$, have a look at your ].” becomes “Hi TheWizard, have a look at your ].”, etc.',
                                        'Send me a copy of each wikimail. (choices: Yes, No)',
                                        'Emailing successful.',
                                        'Emailing partly successful. Following users do not have activated their wikimail function: ',
                                        'massmail',
                                        'Send wikimails to several users',
                                        'Yes',
                                        'No'); // 10
 }

   function newRequest()
   {
     try {
       if (window.XMLHttpRequest) {
         return new XMLHttpRequest();
       } else {
         return new ActiveXObject("MSXML2.XMLHTTP");
       }
     } catch (e) {
       return false;
     }
   }
   
 function addmails() {
   var users_nomail = new Array();
   var counter_users_nomail = 0;
   var users = prompt(configmassenmail, "");
   if(users){
   var subject = prompt(configmassenmail, "");
   if(subject){
   var texttoadd = prompt(configmassenmail, "");
   if(texttoadd){
   var copymyself = prompt(configmassenmail, configmassenmail);
   if(copymyself){
   var array_users = users.split(/\;\s{0,}/);
   
   var req = newRequest();
   if (req) {
     var text = mw.config.get('wgServer') + mw.config.get('wgScriptPath') + '/api.php?format=xml&action=query&meta=tokens';
     req.open("GET", text, false);
     req.send("");
 
     var getrequest = req.responseXML.getElementsByTagName('tokens');
     if (getrequest) {
       var gettoken = getrequest.getAttribute('csrftoken');
       if (gettoken) {

         for (i=0;i<array_users.length;i++){

           var req3 = newRequest();
           if (req3) {
             var text = mw.config.get('wgServer') + mw.config.get('wgScriptPath') + '/api.php?format=xml&action=query&list=users&ususers=' + array_users + '&usprop=emailable';
             req3.open("GET", text, false);
             req3.send("");
 
             var getreq3 = req3.responseXML.getElementsByTagName('user');
             if(getreq3.getAttribute('emailable') == null) {
               users_nomail = array_users;
               counter_users_nomail++;
             }
           }

           var req2 = newRequest();
           if (req2) {
             var texttoadd2 = texttoadd.replace(/\$\$\$/g, array_users).replace(/\\n/g, "%0A").replace(/\s\s/g, "%0A%0A").replace(/\&/g, "%26");
             var text = mw.config.get('wgServer') + mw.config.get('wgScriptPath') + "/api.php?action=emailuser&target=" + array_users  + "&text=" + texttoadd2 + "&subject=" + subject;
             if(copymyself.toLowerCase() == configmassenmail.toLowerCase()) text = text + "&ccme=1";
             req2.open("POST", text, true);
             req2.setRequestHeader('Content-type','application/x-www-form-urlencoded');
             req2.send(text + "&token=" + encodeURIComponent(gettoken));
           }
          }
         }
       }
     }
   if(counter_users_nomail == 0) {
     alert(configmassenmail);
   } else {
     alert(configmassenmail + users_nomail);
   }
   }
   }
   }
   }
 }
 
 if((mw.config.get('wgNamespaceNumber')==2) || (mw.config.get('wgNamespaceNumber')==3))
 {
  $(function() 
  { 
    mediaWiki.util.addPortletLink('p-tb', "javascript:addmails();", configmassenmail, 't-massmail', configmassenmail, '', '');
  });
 }
 // </nowiki>