Gebruiker:TahR/Scripting: verschil tussen versies

Uit Wikikids
Naar navigatie springen Naar zoeken springen
Regel 162: Regel 162:
 
==Scripts: KinderWiki/Wikikids==
 
==Scripts: KinderWiki/Wikikids==
 
<b>1 - On Wiki (met dank aan Wikipedia - voor iedereen - redirects herkennen) </b><br/>
 
<b>1 - On Wiki (met dank aan Wikipedia - voor iedereen - redirects herkennen) </b><br/>
''Zet dit in Gebruiker:<jenaam>/Redirect.css en verwijs vanaf jouw skin daarnaartoe.''
+
''Zet dit in Gebruiker:<jenaam>/Redirect.css en verwijs vanaf jouw skin daarnaartoe. Daarna je cache legen! (F5)''
   
 
<pre>
 
<pre>
Regel 169: Regel 169:
 
.mw-redirect:visited { color:darkorange; }
 
.mw-redirect:visited { color:darkorange; }
 
</pre>
 
</pre>
  +
----
  +
<b>2 - On Wiki (met dank aan Wikipedia en Apoo - voor iedereen - automatisch ondertekenen) </b><br/>
  +
''Zet dit in Gebruiker:<jenaam>/Sign.js en verwijs vanaf jouw skin daarnaartoe. Daarna je cache legen! (F5)''
  +
  +
<pre>
  +
// CHECK THAT I'VE REMEMBERED TO SIGN TALK PAGES AND IF SURE DO IT AUTOMATIC:
  +
// *** aut. signing / (automatische Unterschrift) *** [[User:Olliminatore/signing.js]]
  +
// created 23.04.2006 by [[User:Olliminatore]]
  +
// updated 23.04.2006 by [[:en:User:Ilmari Karonen]]
  +
// current version 1.56 13.03.2007
  +
// Interwiki <noinclude>[[de:User:Olliminatore/signing.js]]</noinclude>
  +
//<pre><nowiki>
  +
  +
String.prototype.trim = function(){return this.replace(/^\s*|\s*$/g,"")};
  +
  +
if (typeof usersignature == 'undefined') usersignature = ' --\~\~\~\~\n';
  +
  +
if (typeof regpages == 'undefined') { // list of all none talk pages
  +
var regpages = [
  +
':Village pump',
  +
':Articles for deletion',
  +
':Requests for ',
  +
':Reference desk',
  +
':Deletion review',
  +
':Templates for deletion',
  +
'.*noticeboard.*',
  +
':checkuser',
  +
':arbitration',
  +
':feedback',
  +
':page protection',
  +
'mediation)',
  +
':Bot requests',
  +
':Help desk',
  +
':Editor review',
  +
':Adminship survey',
  +
':Cleanup',
  +
':Miscellany for deletion',
  +
':New contributors\' help page',
  +
':Media copyright questions'
  +
];
  +
}
  +
  +
// regarded pages type encoded
  +
if (wgCanonicalNamespace.match(/talk$/i)) var regpages = "";
  +
for (p in regpages) if (wgPageName.indexOf(regpages[p]) != -1){regpages=false; break}
  +
  +
if (!regpages)
  +
addOnloadHook(function(){
  +
if (!(window.editform = document.forms['editform'])) return;
  +
// Add a new checkbox to the Wiki editOptions.
  +
sigBox = document.createElement("input");
  +
sigBox.setAttribute('type','checkbox');
  +
sigBox.setAttribute('name','wpSigning');
  +
sigBox.setAttribute('id','wpSigning');
  +
sigBox.setAttribute('checked','checked');
  +
sigBox.defaultChecked=true;
  +
neuB = document.createElement("label");
  +
neuB.appendChild(sigBox);
  +
neuB.appendChild(document.createTextNode("Sign"));
  +
neuB.setAttribute('for','wpSigning');
  +
neuB.setAttribute('title','Sign this edit automatic.');
  +
  +
function setSigBox() { // switch enable box
  +
if (editform.wpMinoredit.checked) sigBox.setAttribute('disabled','disabled');
  +
else sigBox.removeAttribute('disabled');
  +
};
  +
  +
var txtarea=editform.elements['wpTextbox1'];
  +
var txtOld=txtarea.value.trim();
  +
// txtOld_l=txtOld.length
  +
var txtOldEnd=txtOld.slice(-24);
  +
var sig = /~{3}/g;
  +
  +
if (!tNode){
  +
//editform.insertBefore(neuB, editform.elements['wpWatchthis']); // maybe FIXME: raised an NS_DOM_ERR!
  +
var tNode = editform.elements['wpMinoredit'].parentNode; // DOM workaround!?
  +
tNode.divs = tNode.getElementsByTagName("DIV");
  +
tNode.divs = tNode.divs.item(tNode.divs.length-1); // last div
  +
tNode.insertBefore(neuB, tNode.divs);
  +
setSigBox();
  +
}
  +
  +
function doSign(event){
  +
if(editform.onsubmit==''){ // only once!
  +
removeEvent(editform.wpSave,"click",doSign);
  +
removeEvent(editform.wpPreview,"click",doSign);
  +
}
  +
if(editform.onsubmit=='') removeEvent(editform.wpSave,"click",doSign); // only once!
  +
if(editform.wpMinoredit.checked || !sigBox.checked) return;
  +
txtarea.focus();
  +
var cOld = txtOld.match(/<nowiki>.*?~{3}.*?<\/nowiki>/g); // exception for nowiki
  +
if (cOld) cOld = cOld.length;
  +
cNew = txtarea.value.match(sig); if (cNew) cNew = cNew.length;
  +
if (cNew > cOld){ // if there are a sign, check for true
  +
var cNew2 = txtarea.value.match(/\{\{subst\:unsig.*?~{3}\}\}/); // exception for Template:unsigned
  +
cNew -= (cNew2)?cNew2.length:0;
  +
}
  +
if(cNew <= cOld){ // if nothing then search a set position
  +
txt=txtarea.value.trim();
  +
txtEnd=txt.slice(-24);
  +
if(txtOldEnd!=txtEnd) return txtarea.value = txt + usersignature; // aut. underwrite
  +
else { // post between
  +
pos = getCaretPos(txtarea);
  +
pos = txt.indexOf('\n', pos); // go to the post-end
  +
txtEnds = txt.substr(pos,24).replace(/(^\s*)/,""); // after
  +
txtpEnds = txt.slice(pos-18,pos); // before
  +
oldp = txtOld.indexOf(txtEnds);
  +
if(oldp!=-1 && oldp < pos - 3 && txtOld.indexOf(txtpEnds+RegExp.$1+txtEnds)==-1) // if some added
  +
return txtarea.value = txt.slice(0,pos).trim() + usersignature + txt.slice(pos+1);
  +
}
  +
// FIXME: then the edit-end is not found!?
  +
}
  +
else if(!sig.test(txtOld) || cOld < cNew) return;
  +
if (event) event=(window.Event)? event.target: event.srcElement;
  +
if (event.name == 'wpPreview') return; // not for preview
  +
return editform.onsubmit=new Function("editform.onsubmit='';"
  +
+"return confirm('No signing was found. Continue anyway?')"); //warn if saving without signature
  +
};
  +
addEvent(editform.wpSave,"click", doSign);
  +
addEvent(editform.wpPreview,"click", doSign);
  +
addEvent(editform.wpMinoredit,"click", setSigBox);
  +
});
  +
  +
function getCaretPos(txtObj){
  +
if (txtObj.setSelectionRange) return txtObj.selectionStart; // NS like
  +
else if(!document.selection) return 0; // not IE like
  +
var c="\001", pos=0;
  +
var range=document.selection.createRange();
  +
var txt=range.text, dul=range.duplicate();
  +
dul.moveToElementText(txtObj);
  +
range.text=txt+c;
  +
pos=(dul.text.indexOf(c));
  +
range.moveStart('character',-1);
  +
range.text="";
  +
return pos;
  +
};
  +
  +
/* add/removeEvent Original idea by John Resig
  +
Tweaked by Scott Andrew LePera, Dean Edwards and Peter-Paul Koch
  +
Fixed for IE by Tino Zijdel (crisp) @date 2005-10 */
  +
function addEvent(obj,type,fn){if(obj.addEventListener){obj.addEventListener(type,fn,false)}else if(obj.attachEvent){var eProp=type+fn;obj["e"+eProp]=fn;obj[eProp]=function(){obj["e"+eProp](window.event)};obj.attachEvent("on"+type,obj[eProp])}else{obj['on'+type]=fn}};
  +
function removeEvent(obj,type,fn){if(obj.removeEventListener){obj.removeEventListener(type,fn,false)}else if(obj.detachEvent){var eProp=type+fn;obj.detachEvent("on"+type,obj[eProp]);obj['e'+eProp]=null;obj[eProp]=null}else{obj['on'+type]=null}};
  +
  +
// *** end *** </nowiki></pre>

Versie van 24 jun 2009 18:31


Gtk-dialog-info.svg
Er zijn 2 meldingen beschikbaar.
Nuvola apps important.svg

GYMNASIUM! PROEFCITO SCORE: 546! :D

Nuvola apps important.svg

2, 3 en 4 februari 2010: Citotoets! Ik zal meer afwezig zijn, ivm uitrusten, vroeger naar bed en dat soort dingen.

Hier vind je handige scripts voor mIRC, KinderWiki/Wikikids en anders. Apoo en TahR78 werken aan dit soort scripts. Ook de afgehandelde MIRC Scripts van Apoo komen hier.

Scripts: MIRC

Mededeling: Zet op plekken van eventuele vraagtekens CTRL+K. Dit geldt voor alle scripts.


1 - MIRC (met dank aan Apoo - voor operators - handige antivandalenset)
Kopieer dit in je mIRC Remote - als je op F11 of F12 drukt komt er een kick, ban, F10 een waarschuwing, F6 een voice, noem maar op. Voor sommige dingen moet je wel operator zijn!

alias f4 {
  echo -a ?6 Let op!�7 Deze toets is niet in gebruik! Gebruik F6 t/m F12
}
alias f5 {
  echo -a ?6 Let op!�7 Deze toets is niet in gebruik! Gebruik F6 t/m F12
}
alias f6 {
  /mode # -v $$1
}
alias f7 {
  /mode # +v $$1 
}
alias f8 {
  /mode # -o $$1 
}
alias f9 {
  /mode # +o $$1 
}
alias f10 {
  /notice $$1 �0,4 Dit is een waarschuwing! Hierna volgt er een kick.
}
alias f11 {
  inc %kick | kick # $$1 You Were �Kicked� By TahR7�
}
alias f12 {
  inc %kick | ban # $$1 You Were �Banned� By TahR78
  inc %kick | kick # $$1 You Were �Banned� By TahR78

2 - MIRC (met dank aan Apoo - voor operators - "Dum Tek Tek" (V1.7!), drievoudige kik met voice als beloning)
Kopieer dit in je mIRC Remote - met F4 kan je iemand drievoudig kikken, en krijgt die voice ook! Enkel operator.

alias f4 {
// Versie 1.7 //
  .timer 1 1 notice $$1  �0,8 Je Dum Tek Tek gaat nu beginnen in $chan
  .timer 1 2 notice $$1  �0,8 LET OP: Doe je autojoin aan!
  .timer 1 3 notice $$1  �0,4 Nog 5 seconden...
  .timer 1 8 kick # $$1 Can you feel the rhytym in my heart, the beat is like DUM Tek Tek 
  .timer 1 11 kick # $$1 Can you feel the rhytym in my heart, the beat is like Dum TEK Tek 
  .timer 1 14 kick # $$1 Can you feel the rhytym in my heart, the beat is like Dum Tek TEK
  .timer 1 17 notice $$1 �0,8 Ik hoop dat je hebt genoten van de Dum Tek Tek! Je krijgt nu als beloning een voice. Hiermee kan je altijd praten in het kanaal $chan (althans, zolang je nu in het kanaal blijft).
  .timer 1 18 mode # +v $$1
}

3 - MIRC (met dank aan TahR78 - voor iedereen - urgente tekst)
Zet je tekst op de plaats <tekst>, dit zal dan in het rood verschijnen in de chat, voor urgente teksten dus. Let op: doe op de plaats van het vraagteken CTRL+K. Zet dit gewoon in je typbalk.

?0,8 <tekst>

0,8 kan ook een andere kleur worden. Voorbeeld:

��0,8 EBU-UER Eurovision (NL) ��0,11 Song Contest Moscow 2009 ��0,13 FINAL ��0,15 Countdown
�0,8L�0,11O�0,13L�0,15!

4 - MIRC (met dank aan Apoo - voor iedereen + fun - recente wiki wijzigingen)
Gebruik met /edit Naamartikel Aantalletterserbij/af Gebruiker Samenvatting - Zet in Aliasses. Let op: doe op de plaats van het vraagteken CTRL+K.

edit {
  /msg # * (�12wijz�1) (�12gesch�1) �4 !�1Nk �12 $$1 �1 $time �1(�15 $$2 �1) �12 $$3 �1(�12Overleg�1|�12Bijdragen�1) (�15 $$4 �1)
}

5 - MIRC (met dank aan Apoo - voor iedereen - huidige tijd)
Zet in aliasses. Typ /time om te activeren.

time {
  //say Het is nu �0,8 $date $time � op het kanaal �0,8 $chan � en ik ben blij! (Meestal dan x))
}

6 - MIRC (met dank aan TahR78 - voor iedereen + fun - een drankje aanbieden)
Zet in aliasses. Typ /drink <naam van de persoon aan wie je drinken wil aanbieden> om te activeren.

drink {
  /notice $$1 $1, na zo een lange dag, zin in een drankje? Ik heb �0,9 7UP �0,8 FANTA �0,11 SPA �0,4 COCACOLA �.
  /notice $$1 Maar �0,11 BAR LE DUC � hebben we nie.
}

Voeg deze rij teksten ook toe in je aliasses. Als iemand 7UP vroeg, dan typ je /7up <naam van de persoon> om te geven.

7up {
  /me gooit blikje �0,9 7UP � naar $1
}

cola {
  /me gooit blikje �0,4 COCACOLA � naar $1
}

fanta {
  /me gooit blikje �0,8 FANTA � naar $1
}

spa {
  /me gooit flesje �0,11 SPA � naar $1
}

barleduc {
  /me geeft een klap aan $1 namens de violist
}

7 - MIRC (met dank aan TahR78 - voor iedereen - stilte svp!)
Zet in aliasses. Laat een melding zien dat het wat rustiger moet en welke tijd het is. Typ /silence <naam van kanaal>.

silence {
  /notice $chan Kan het een beetje stiller/rustiger S.V.P.?
  /notice $chan Het is nu �0,8 $date $time � op het kanaal �0,8 $chan �.
}

8 - MIRC (met dank aan Apoo - voor iedereen - begroeting)
Zet in je remote op de plek van alias f5. Begroet de gebruiker! Klik op zijn naam in de namenlijst en dan f5. Let op: doe op de plaats van het vraagteken CTRL+K.

alias f5 {
  /msg # * (�12wijz�1) (�12gesch�1) �4 !�1N �12 KinderWiki:Nu in de Chat �1 $time �1(�15 0 �1) �12 $$1 �1(�12Overleg�1|�12Bijdragen�1) (�15 + $$1, welkom! �1)
  /msg # Het is nu �0,8 $date $time � op het kanaal �0,8 $chan �.
}

9 - MIRC (met dank aan TahR78 - voor iedereen - welverdiende dreun)
Zet dit in je aliasses. Geef iemand een welverdiende harde dreun! Activeer met /dreun <naam van persoon>. Let op: doe op de plaats van het vraagteken CTRL+K.

dreun {
  /me geeft $1 een �0,7 KEIHARDE WELVERDIENDE hou-toch-eens-even-je-mond �0,4 beenbrekende armsleutelende dumtektek mondophoudende �0,8 bokitovergelijkbare oprottende DREUN!�
}

10 - MIRC (met dank aan TahR78 - voor iedereen - slap and hit)
Zet dit in je aliasses. Geef iemand ns een paar klappen zodat hij naar Rusland vliegt! Of.. toch naar Suriname? Activeer met /slap <naam persoon> <met wat je wilt slaan>.

slap {
  /me slaps $1 with a $2 around a bit to Russia 
  /me hits $1 with the $2 when he was flying to Suriname
}

Scripts: KinderWiki/Wikikids

1 - On Wiki (met dank aan Wikipedia - voor iedereen - redirects herkennen)
Zet dit in Gebruiker:<jenaam>/Redirect.css en verwijs vanaf jouw skin daarnaartoe. Daarna je cache legen! (F5)

/* Redirects in afwijkende kleur */
.mw-redirect         { color:orange;     }
.mw-redirect:visited { color:darkorange; }

2 - On Wiki (met dank aan Wikipedia en Apoo - voor iedereen - automatisch ondertekenen)
Zet dit in Gebruiker:<jenaam>/Sign.js en verwijs vanaf jouw skin daarnaartoe. Daarna je cache legen! (F5)

// CHECK THAT I'VE REMEMBERED TO SIGN TALK PAGES AND IF SURE DO IT AUTOMATIC:
// *** aut. signing / (automatische Unterschrift) *** [[User:Olliminatore/signing.js]]
// created 23.04.2006 by [[User:Olliminatore]]
// updated 23.04.2006 by [[:en:User:Ilmari Karonen]]
// current version 1.56 13.03.2007
// Interwiki <noinclude>[[de:User:Olliminatore/signing.js]]</noinclude>
//<pre>
 
String.prototype.trim = function(){return this.replace(/^\s*|\s*$/g,"")};
 
if (typeof usersignature == 'undefined') usersignature = ' --\~\~\~\~\n';
 
if (typeof regpages == 'undefined') { // list of all none talk pages
    var regpages = [
    ':Village pump',
    ':Articles for deletion',
    ':Requests for ',
    ':Reference desk',
    ':Deletion review',
    ':Templates for deletion',
    '.*noticeboard.*',
    ':checkuser',
    ':arbitration',
    ':feedback',
    ':page protection',
    'mediation)',
    ':Bot requests',
    ':Help desk',
    ':Editor review',
    ':Adminship survey',
    ':Cleanup',
    ':Miscellany for deletion',
    ':New contributors\' help page',
    ':Media copyright questions'
    ];
} 
 
    // regarded pages type encoded
if (wgCanonicalNamespace.match(/talk$/i)) var regpages = "";
for (p in regpages) if (wgPageName.indexOf(regpages[p]) != -1){regpages=false; break}
 
if (!regpages) 
addOnloadHook(function(){
    if (!(window.editform = document.forms['editform'])) return;
    // Add a new checkbox to the Wiki editOptions.
    sigBox = document.createElement("input");
    sigBox.setAttribute('type','checkbox');
    sigBox.setAttribute('name','wpSigning');
    sigBox.setAttribute('id','wpSigning');
    sigBox.setAttribute('checked','checked');
    sigBox.defaultChecked=true;
    neuB = document.createElement("label");
    neuB.appendChild(sigBox);
    neuB.appendChild(document.createTextNode("Sign"));
    neuB.setAttribute('for','wpSigning');
    neuB.setAttribute('title','Sign this edit automatic.');
 
    function setSigBox() { // switch enable box
        if (editform.wpMinoredit.checked) sigBox.setAttribute('disabled','disabled');
        else sigBox.removeAttribute('disabled');
    };
 
    var txtarea=editform.elements['wpTextbox1'];
    var txtOld=txtarea.value.trim();
    // txtOld_l=txtOld.length
    var txtOldEnd=txtOld.slice(-24);
    var sig = /~{3}/g;
 
    if (!tNode){
        //editform.insertBefore(neuB, editform.elements['wpWatchthis']); // maybe FIXME: raised an NS_DOM_ERR!
        var tNode = editform.elements['wpMinoredit'].parentNode;  // DOM workaround!?
        tNode.divs = tNode.getElementsByTagName("DIV");
        tNode.divs = tNode.divs.item(tNode.divs.length-1); // last div
        tNode.insertBefore(neuB, tNode.divs);
        setSigBox();
    }
 
    function doSign(event){
        if(editform.onsubmit==''){ // only once!
            removeEvent(editform.wpSave,"click",doSign);
            removeEvent(editform.wpPreview,"click",doSign);
        }
        if(editform.onsubmit=='') removeEvent(editform.wpSave,"click",doSign); // only once!
        if(editform.wpMinoredit.checked || !sigBox.checked) return;
        txtarea.focus();
        var cOld = txtOld.match(/<nowiki>.*?~{3}.*?<\/nowiki>/g); // exception for nowiki
        if (cOld) cOld = cOld.length;
        cNew = txtarea.value.match(sig); if (cNew) cNew = cNew.length;
        if (cNew > cOld){ // if there are a sign, check for true
            var cNew2 = txtarea.value.match(/\{\{subst\:unsig.*?~{3}\}\}/); // exception for Template:unsigned
            cNew -= (cNew2)?cNew2.length:0;
        }
        if(cNew <= cOld){ // if nothing then search a set position
            txt=txtarea.value.trim();
            txtEnd=txt.slice(-24);
            if(txtOldEnd!=txtEnd) return txtarea.value = txt + usersignature;  // aut. underwrite
            else { // post between
                pos = getCaretPos(txtarea);
                pos = txt.indexOf('\n', pos); // go to the post-end
                txtEnds = txt.substr(pos,24).replace(/(^\s*)/,""); // after
                txtpEnds = txt.slice(pos-18,pos); // before
                oldp = txtOld.indexOf(txtEnds);
                if(oldp!=-1 && oldp < pos - 3 && txtOld.indexOf(txtpEnds+RegExp.$1+txtEnds)==-1) // if some added
                    return txtarea.value = txt.slice(0,pos).trim() + usersignature + txt.slice(pos+1);
            }
         // FIXME: then the edit-end is not found!?
        }
        else if(!sig.test(txtOld) || cOld < cNew) return;
        if (event) event=(window.Event)? event.target: event.srcElement;
        if (event.name == 'wpPreview') return; // not for preview
        return editform.onsubmit=new Function("editform.onsubmit='';"
          +"return confirm('No signing was found. Continue anyway?')"); //warn if saving without signature
    };
    addEvent(editform.wpSave,"click", doSign);
    addEvent(editform.wpPreview,"click", doSign);
    addEvent(editform.wpMinoredit,"click", setSigBox);
});
 
function getCaretPos(txtObj){
    if (txtObj.setSelectionRange) return txtObj.selectionStart; // NS like
    else if(!document.selection) return 0;  // not IE like
    var c="\001", pos=0;
    var range=document.selection.createRange();
    var txt=range.text, dul=range.duplicate();
    dul.moveToElementText(txtObj);
    range.text=txt+c;
    pos=(dul.text.indexOf(c));
    range.moveStart('character',-1);
    range.text="";
    return pos;
};
 
/* add/removeEvent Original idea by John Resig
 Tweaked by Scott Andrew LePera, Dean Edwards and Peter-Paul Koch
 Fixed for IE by Tino Zijdel (crisp) @date 2005-10 */
function addEvent(obj,type,fn){if(obj.addEventListener){obj.addEventListener(type,fn,false)}else if(obj.attachEvent){var eProp=type+fn;obj["e"+eProp]=fn;obj[eProp]=function(){obj["e"+eProp](window.event)};obj.attachEvent("on"+type,obj[eProp])}else{obj['on'+type]=fn}};
function removeEvent(obj,type,fn){if(obj.removeEventListener){obj.removeEventListener(type,fn,false)}else if(obj.detachEvent){var eProp=type+fn;obj.detachEvent("on"+type,obj[eProp]);obj['e'+eProp]=null;obj[eProp]=null}else{obj['on'+type]=null}};
 
// *** end *** 
Afkomstig van Wikikids , de interactieve Nederlandstalige Internet-encyclopedie voor en door kinderen. "https://wikikids.nl/index.php?title=Gebruiker:TahR/Scripting&oldid=98196"