/*
    PMGrabber.js
    Açıklama:MSN Messenger Live Plus ile kişisel mesajları XML dosyasına kaydeder.
    Yazar: Şevket Umut ÇAKIR
*/

function OnEvent_SigninReady(Email) {
    listedekileriKaydet();
}

function OnEvent_Signin(Email) {
   
    if(Email == "mail@mail.com") //Kendi e-postanız ile değiştirip mesajın gözükmesini sağlayabilirsiniz.
    {
        var Message = "ooooo!!! alemin kralı gelmiş.Buyur patron : " + Messenger.MyName + "!";
        Message = MsgPlus.RemoveFormatCodes(Message);
        MsgPlus.DisplayToast("", Message); }
    }


function OnEvent_ContactPsmChange(email,newpsm)//Kullanıcılar kişisel mesajlarını değiştirince tetiklenen fonksiyon
{
    pmKaydet(newpsm,email);
}


function OnEvent_ContactSignin(email)//Listedeki kullanıcılar oturum açınca tetiklenen fonksiyon
{
    pmKaydet(maildenPMAl(email),email);
}


function listedekileriKaydet()//Listedeki herkesin kişisel mesajlarını kaydeder
{
    Debug.Trace("Listedeki PM leri kaydet...");
    var conts=Messenger.MyContacts;
    var e = new Enumerator(conts);
    for(; !e.atEnd(); e.moveNext())
    {
        var kisi = e.item();
        pmKaydet(kisi.PersonalMessage,kisi.Email);
    }
}

function maildenPMAl(email)//e-posta adresi verilen kişinin kişisel mesajını döndürür
{
    var conts=Messenger.MyContacts;
    var e = new Enumerator(conts);
    for(; !e.atEnd(); e.moveNext())
    {
        var kisi = e.item();
       
        if(kisi.Email==email)
        {
            return kisi.PersonalMessage;
        }
    }
}

function pmKaydet(mesaj,email)//XML dosyasına tekli kişisel mesaj kaydeder
{
if(mesaj!="")
{
    var xmlDosyasi = MsgPlus.ScriptFilesPath + "\\" + "pms.xml";
    var xml = new ActiveXObject("Microsoft.XMLDOM");
    xml.async = "false";
    xml.load(xmlDosyasi);
   
    var anaDugum;
   
    if(xml.documentElement != null){
        anaDugum = xml.documentElement;
    }

   
    if(anaDugum == null){
        anaDugum = xml.createNode("Element", "PMs", "");
    }
   
    var PM=xml.createElement("PM");
    PM.setAttribute("Mesaj",mesaj);
    PM.setAttribute("Email",email);
   
    var mesajlar=anaDugum.getElementsByTagName("PM");
    Debug.Trace(mesajlar.Length);
    var ListedeVar=false;
    for(var i=0;i<mesajlar.length;i++)
    {
        if(mesajlar[i].getAttribute("Mesaj")==mesaj && mesajlar[i].getAttribute("Email")==email)
        {
            ListedeVar=true;
            break;
        }
    }
   
    if(!ListedeVar)
    {
        anaDugum.appendChild(PM);
        MsgPlus.DisplayToast(email, mesaj);

    }
   
    xml.documentElement=anaDugum;
    xml.save(xmlDosyasi);
}
}