Hej.
I update the number of open windows with af function, wich means that it allways minus one.
This is my code (with danish comments):
code:
var Status = "fra"; // SÆTTER STATUS TIL/FRA
var oprindeligPB = Messenger.MyPersonalMessage; // GEMMER OPRINDELIGE PERSONLIGE BESKED
function OpdaterPB()
{
if (Status == "til")
{
var online = 0;
var offline = 0;
var kontakter = Messenger.MyContacts;
var e = new Enumerator(kontakter);
for(; !e.atEnd(); e.moveNext()) {
var kontakt = e.item();
if(kontakt.Status == "1") {
offline++;
} else {
online++;
}
}
var alle = (online + offline);
var igang = Messenger.CurrentChats.Count - 1;
Messenger.MyPersonalMessage = "Online: " + online + " | Offline: " + offline + " | I alt: " + alle + " | Åbne vinduer: " + igang;
}
}
// NÅR DU LOGGER PÅ : START
function OnEvent_Initialize(MessengerStart)
{
opdaterPB();
}
// NÅR DU LOGGER PÅ : SLUT
// NÅR DU LOGGER AF : START
function OnEvent_Uninitialize(MessengerExit)
{
Messenger.MyPersonalMessage = oprindeligPB;
}
// NÅR DU LOGGER AF : SLUT
// NÅR EN KONTAKTER LOGGER PÅ : START
function OnEvent_ContactSignin()
{
opdaterPB();
}
// NÅR EN KONTAKTER LOGGER PÅ : SLUT
// NÅR EN KONTAKTER LOGGER AF : START
function OnEvent_ContactSignout()
{
opdaterPB();
}
// NÅR EN KONTAKTER LOGGER AF : SLUT
// NÅR ET VINDUE ÅBNES : START
function OnEvent_ChatWndCreated()
{
OpdaterPB();
}
// NÅR ET VINDUE ÅBNES : SLUT
// NÅR ET VINDUE LUKKES : START
function OnEvent_ChatWndDestroyed()
{
OpdaterPB();
}
// NÅR ET VINDUE LUKKES : SLUT
// LAVER MENU : START
function OnGetScriptMenu(Location)
{
ScriptMenu = "<ScriptMenu>";
ScriptMenu += "<MenuEntry Id=\"tilfra\">";
if (Status == "fra")
{
ScriptMenu += "Slå til";
} else {
ScriptMenu += "Slå fra";
}
ScriptMenu += "</MenuEntry>";
ScriptMenu += "</ScriptMenu>";
return ScriptMenu;
}
// LAVER MENU : SLUT
// VALGT MENU : START
function OnEvent_MenuClicked(MenuItemId,Location,OriginWnd)
{
switch(MenuItemId)
{
case "tilfra":
if (Status == "fra")
{
Status = "til";
MsgPlus.DisplayToast("Kontakt tæller", "Kontakt tæller er slået til.");
opdaterPB();
} else {
Status = "fra";
MsgPlus.DisplayToast("Kontakt tæller", "Kontakt tæller er slået fra.");
}
break;
}
}
// VALGT MENU : SLUT