Bruger:Dipsacus fullonum/velkomst.js

Fra Wikipedia, den frie encyklopædi
/* Velkomstscript ver. 1.2 - Se [[Brugerdiskussion:Morten LJ/velkomst.js]] for mere info */

 // Load settings, hvis de forskellige optioner ikke er sat, sæt dem til standard-værdien
 if ((typeof welcome_msg) == "undefined") {
         welcome_msg = 'Hjertelig velkommen til Wikipedia!';
 }
 if ((typeof welcomeIP_msg) == "undefined") {
         welcomeIP_msg = 'Hjertelig velkommen til Wikipedia!';
 }
 if ((typeof welcometest_msg) == "undefined") {
         welcometest_msg = 'Velkommen til Wikipedia!';
 }
 if ((typeof welcometest2_msg) == "undefined") {
         welcometest2_msg = 'Jeg har opdaget, at dine redigeringer er i strid med vores politikker og normer';
 }
 if ((typeof welcometest3_msg) == "undefined") {
         welcometest3_msg = 'Stop med at vandalisere!';
 }
 if ((typeof welcomeminorchange) == "undefined") {
         welcomeminorchange = false;
 }
 
 // Support funktion, redigerer vi en IP?
 function EditingIP(sText)
 {
    var validnumbers = "0123456789";
    var validdots = '.';
    var IsIP = true;
    var Char;
    var dots = 0;
    var numbers = 0;
 
    // Gennemgå titlen char for char, start med at hoppe forbi "Redigerer Brugerdiskussion:"
    for (i = 27; i < sText.length; i++) 
    { 
       Char = sText.charAt(i); 
       if (validdots.indexOf(Char) != -1)
       {
          if (numbers == 0)
          {
              IsIP = false;
              break;
          }
          dots++;
          numbers = 0;
       } 
       else if (validnumbers.indexOf(Char) != -1) 
       {
          numbers++
       } 
       else
       {
          if (dots != 3)
          {
              IsIP = false;
          }
          break;
       }
    }
    return IsIP;  
 } 
 
 // Wrapper-funktioner til hver knap
 function welcome() { insert_overskrift_og_skabelon('velkommen', welcome_msg) }
 function welcomeIP() { insert_overskrift_og_skabelon('velkommenIP', welcomeIP_msg) }
 function welcometest() { insert_overskrift_og_skabelon('test', welcometest_msg) }
 function welcometest2() { insert_overskrift_og_skabelon('test2', welcometest2_msg) }
 function welcometest3() { insert_overskrift_og_skabelon('test3', welcometest3_msg) }

 //
 function insert_overskrift_og_skabelon(skabelon, overskrift)
 {
     var txt = document.editform.wpTextbox1;
     txt.value = txt.value + '\n== ' + overskrift + '==\n{{' + skabelon + '|~~' + '~~}}\n';
     document.editform.wpSummary.value = overskrift + ' (Skabelon {{' + skabelon + '}})';
     document.editform.wpMinoredit.checked = welcomeminorchange;
     document.editform.submit();     
 }

 // Wrapper-funktioner til hver knap (det er vigtigt at dele strings op med skabeloner for at "snyde" wiki-softwaren)
// function welcome() { insertsubmit('{{'+'velkommen|~~'+'~~}}', welcome_msg + ' (skabelon:velkommen)') }
// function welcomeIP() { insertsubmit('{{'+'velkommenIP|~~'+'~~}}', welcomeIP_msg + ' (skabelon:velkommenIP)') }
// function welcometest() { insertsubmit('{{'+'test|~~'+'~~}}', welcometest_msg + ' (skabelon:test)') }
// function welcometest2() { insertsubmit('{{'+'test2|~~'+'~~}}', welcometest2_msg + ' (skabelon:test2)') }
// function welcometest3() { insertsubmit('{{'+'test3|~~'+'~~}}', welcometest3_msg + ' (skabelon:test3)') }
 
 //
 function insertsubmit(text, description)
 {
     var txt = document.editform.wpTextbox1;
     txt.value = txt.value + text;
     document.editform.wpSummary.value = description;
     document.editform.wpMinoredit.checked = welcomeminorchange;
     document.editform.submit();     
 }
  
 //Lav den tab der kalder welcome() når der bliver trykket på den
 $(function () 
 {
     if (document.title.indexOf("Redigerer Brugerdiskussion:") == 0 || document.title.indexOf("Opretter Brugerdiskussion:") == 0)  {
         // mw.util.addPortletLink(where, url, name, id, title, key, after);
         if (EditingIP(document.title))
         {
             mw.util.addPortletLink('p-cactions', 'javascript:welcomeIP()', 'velkommenip', 'ca-welcome-IP', 'Tilføj velkommenIP-skabelon og gem', 'a',  '');
         }
         else
         {
        	mw.util.addPortletLink('p-cactions', 'javascript:welcome()', 'velkommen', 'ca-welcome', 'Tilføj velkommen-skabelon og gem', 'a',  '');
         }
         mw.util.addPortletLink('p-cactions', 'javascript:welcometest()', 'test', 'ca-welcome-test', 'Tilføj test-skabelon og gem', '',  '');
         mw.util.addPortletLink('p-cactions', 'javascript:welcometest2()', 'test2', 'ca-welcome-test2', 'Tilføj test2-skabelon og gem', '',  '');
         mw.util.addPortletLink('p-cactions', 'javascript:welcometest3()', 'test3', 'ca-welcome-test3', 'Tilføj test3-skabelon og gem', '',  '');
     }
 });