Wikipedia:Personliga stilmallar och skript/Statusvisare
Utseende
| Det här är ett personligt Javascript som kan användas för att anpassa Wikipedia utöver alternativen under "Inställningar". För användning, kopiera nedanstående kod och klistra in den på sidan Special:Min sida/common.js (eller motsvarande sida för andra skinn). Observera att du måste vara inloggad för att det ska fungera. |
Detta javaskript visar din status; inloggad, upptagen eller utloggad. Tre nya knappar skapas vid din utloggningslänk där du kan ändra statusen så att andra kan se den. Skriptet fungerar inte i Internet Explorer 7 och/eller Windows Vista.
Skriptet är hämtat från en:User:Misza13/Scripts/Status switcher.
Du skapar funktionen i två steg:
- Skapa en undersida till din användarsida som heter StatusTemplate
- Lägg javaskriptet i monobook.js
När du har gjort detta lägger du in {{DinAnvändarsida/Status}} där du vill att din status ska visas.
StatusTemplate
[redigera | redigera wikitext]Lägg in denna kod i DinAnvändarsida/StatusTemplate:
'''<div style="border: 1px solid black; background: white; float: right; position: relative; top: -30px; padding: 5px">Example's status: {{ #switch: {{{1}}}
| in=<span style="color: green;">IN</span>
| busy=<span style="color: #FFAA00;">BUSY</span>
| out=<span style="color: red;">OUT</span>
}}
</div>'''
Du kan själv ändra utseendet som du vill ha det. IN, BUSY och OUT kan du ändra till svensk text.
Monobook.js
[redigera | redigera wikitext]Lägg in denna kod i din din monobook.js:
// STATUS CHANGER
// http://en.wikipedia.org/wiki/User:Misza13/Scripts/Status_switcher
addOnloadHook(function (){
var subpage = "/Status";
var scheme = "/StatusTemplate";
var subpagelink = wgServer + "/w/index.php?title=User:" + encodeURIComponent(wgUserName + subpage);
var logout = document.getElementById( 'pt-logout' );
//Add the links
addPortletLink("p-personal", subpagelink + "&action=edit&newstatus=in", "In", "pt-status-in", "I'm in!", "", logout);
addPortletLink("p-personal", subpagelink + "&action=edit&newstatus=busy", "Busy", "pt-status-busy", "I'm busy!", "", logout);
addPortletLink("p-personal", subpagelink + "&action=edit&newstatus=out", "Out", "pt-status-out", "I'm out!", "", logout);
if (location.href.indexOf("&action=edit&newstatus=") == -1) return; //Are we here to auto-edit the status?
//Get new status
var statusRegExp = /&action=edit&newstatus=(.*)/;
var status = statusRegExp.exec(location.href)[1];
//Modify the form
document.getElementById('wpTextbox1').value = "{{User:"+wgUserName+scheme+"|"+status+"}}";
document.getElementById('wpSummary').value = "Status: "+status;
document.getElementById('wpMinoredit').checked = 'checked';
//Submit it!
document.getElementById('editform').submit();
});
//