Пример #1
0
 public VCard2()
 {
     _Achternaam  = "Nieuw Contact";
     _Tussen      = string.Empty;
     _Titel       = string.Empty;
     _Organisatie = string.Empty;
     _TelThuis    = string.Empty;
     _Mobiel1     = string.Empty;
     _Mobiel2     = string.Empty;
     _TelWerk     = string.Empty;
     _Email1      = string.Empty;
     _Email2      = string.Empty;
     _Adres       = string.Empty;
     _Postcode    = string.Empty;
     _Woonplaats  = string.Empty;
     _Notitie     = string.Empty;
     _Lid         = false;
     _Tag         = new VCard();
 }
Пример #2
0
        public object Clone()
        {
            VCard copy = new VCard();

            copy._Voornaam      = (string)this._Voornaam.Clone();
            copy._Achternaam    = (string)this._Achternaam.Clone();
            copy._Tussenvoegsel = (string)this._Tussenvoegsel.Clone();

            copy._GeboorteDatum = (string)this._GeboorteDatum.Clone();
            copy._Organisatie   = (string)this._Organisatie.Clone();
            copy._Note          = (string)this._Note.Clone();
            copy._Title         = (string)this.Title.Clone();

            // wordt hieronder daadwerkelijk gecloned?
            copy._adresLijst          = this._adresLijst;
            copy._emailLijst          = this._emailLijst;
            copy._telefoonNummerLijst = this._telefoonNummerLijst;
            copy._Leden = this._Leden;
            return(copy);
        }
Пример #3
0
        private tblVCard Import()
        {
            tblVCard newVCardLijst = new tblVCard();
            int      aantal        = 0;
            string   filename      = Util.Forms.GuiRoutines.GetOpenFileName(openFileDialog1, "vcf");

            if (filename == string.Empty)
            {
                return(null);
            }
            try
            {
                using (StreamReader sr = File.OpenText(filename))
                {
                    string line   = string.Empty;
                    string prefix = string.Empty;
                    VCard  vCard  = null;
                    while (!sr.EndOfStream)
                    {
                        line = sr.ReadLine();

                        prefix = "BEGIN:VCARD";
                        if (line.StartsWith(prefix))
                        {
                            vCard = new VCard();
                            newVCardLijst.Add(vCard);
                            aantal++;
                        }
                        prefix = "N:";
                        if (line.StartsWith(prefix))
                        {
                            line = line.Replace(prefix, string.Empty);
                            string[] naamdelen = line.Split(new char[] { ';' });
                            if (naamdelen[0] != null)
                            {
                                vCard.Achternaam = naamdelen[0];
                            }
                            if (naamdelen[1] != null)
                            {
                                vCard.Voornaam = naamdelen[1];
                            }
                            if (naamdelen[2] != null)
                            {
                                vCard.Tussenvoegsel = naamdelen[2];
                            }
                        }
                        prefix = "N;";
                        if (line.StartsWith(prefix))
                        {
                            vCard.Achternaam = "Onbekend";
                        }

                        //prefix = "FN:";
                        //if (line.StartsWith(prefix))
                        //{
                        //    vCard.NetteNaam = line.Replace(prefix, string.Empty);
                        //}

                        prefix = "ORG:";
                        if (line.StartsWith(prefix))
                        {
                            vCard.Organisatie = line.Replace(prefix, string.Empty);
                        }

                        prefix = "BDAY:";
                        if (line.StartsWith(prefix))
                        {
                            vCard.GeboorteDatum = line.Replace(prefix, string.Empty);
                        }

                        prefix = "NOTE:";
                        if (line.StartsWith(prefix))
                        {
                            vCard.Note = line.Replace(prefix, string.Empty);
                        }

                        prefix = "TITLE:";
                        if (line.StartsWith(prefix))
                        {
                            vCard.Title = line.Replace(prefix, string.Empty);
                        }

                        prefix = "ADR";
                        if (line.StartsWith(prefix))
                        {
                            line = line.Replace(prefix, string.Empty);

                            if (line.StartsWith(";HOME"))
                            {
                                vCard.adresLijst.Add(ExtractAddress("HOME", line));
                            }
                            if (line.StartsWith(";WORK"))
                            {
                                vCard.adresLijst.Add(ExtractAddress("WORK", line));
                            }
                            if (line.StartsWith(";PREF"))
                            {
                                vCard.adresLijst.Add(ExtractAddress("", line));
                            }
                            if (line.StartsWith(":"))
                            {
                                vCard.adresLijst.Add(ExtractAddress("", line));
                            }
                        }

                        prefix = "TEL";
                        if (line.StartsWith(prefix))
                        {
                            //Console.WriteLine(line);
                            line = line.Replace(prefix, string.Empty);

                            if (line.StartsWith(";HOME"))
                            {
                                vCard.telefoonNummerLijst.Add(ExtractTelephoneNumber("HOME", line));
                            }
                            if (line.StartsWith(";WORK"))
                            {
                                vCard.telefoonNummerLijst.Add(ExtractTelephoneNumber("WORK", line));
                            }
                            if (line.StartsWith(";CELL"))
                            {
                                vCard.telefoonNummerLijst.Add(ExtractTelephoneNumber("CELL", line));
                            }
                            if (line.StartsWith(";PREF"))
                            {
                                vCard.telefoonNummerLijst.Add(ExtractTelephoneNumber("", line));
                            }
                            if (line.StartsWith(":"))
                            {
                                vCard.telefoonNummerLijst.Add(ExtractTelephoneNumber("", line));
                            }
                        }

                        prefix = "EMAIL";
                        if (line.StartsWith(prefix))
                        {
                            line = line.Replace(prefix, string.Empty);

                            if (line.StartsWith(";HOME"))
                            {
                                vCard.emailLijst.Add(ExtractEmailAddress("HOME", line));
                            }
                            if (line.StartsWith(";WORK"))
                            {
                                vCard.emailLijst.Add(ExtractEmailAddress("WORK", line));
                            }
                            if (line.StartsWith(":"))
                            {
                                vCard.emailLijst.Add(ExtractEmailAddress("", line));
                            }
                            if (line.StartsWith(";PREF"))
                            {
                                vCard.emailLijst.Add(ExtractEmailAddress("", line));
                            }
                        }
                    }
                }
                toolStripStatusLabel1.Text = "VCards ingelezen (" + aantal.ToString() + ")";
            }
            catch (Exception ex)
            {
                GuiRoutines.ShowMessage(ex);
            }
            return(newVCardLijst);
        }
Пример #4
0
        private void cmdImportLeden_Click(object sender, EventArgs e)
        {
            bool onlyMarked = false;

            if ((Control.ModifierKeys & Keys.Shift) == Keys.Shift)
            {
                onlyMarked = true;
            }

            int aantal = 0;

            foreach (tblLid lid in leden)
            {
                if (lid.Opgezegd)
                {
                    continue;
                }
                if (onlyMarked && !lid.Gemerkt)
                {
                    continue;
                }
                VCard contact = new VCard();
                vCardLijst.Add(contact);
                aantal++;
                contact.Achternaam    = lid.Achternaam;
                contact.Voornaam      = lid.Voornaam;
                contact.Tussenvoegsel = lid.Tussenvoegsel;
                contact.Leden         = true;

                if (lid.Telefoon.Trim() != string.Empty)
                {
                    contact.telefoonNummerLijst.Add(new TelephoneNumberClass("HOME", lid.Telefoon, false));
                }
                if (lid.Mobiel.Trim() != string.Empty)
                {
                    contact.telefoonNummerLijst.Add(new TelephoneNumberClass("CELL", lid.Mobiel, true));
                }

                if (lid.Email1.Trim() != string.Empty)
                {
                    contact.emailLijst.Add(new EmailAddressClass(lid.Email1));
                }
                if (lid.Email2.Trim() != string.Empty)
                {
                    contact.emailLijst.Add(new EmailAddressClass(lid.Email2));
                }

                contact.adresLijst.Add(new AddressClass(lid.Adres, lid.Postcode, lid.Woonplaats));

                contact.GeboorteDatum = lid.GeboorteDatum.ToString("yyyyMMdd");

                contact.Organisatie = "TTVN";
                if (lid.BondsNr.Trim() != string.Empty)
                {
                    contact.Note = "Bondsnummer: " + lid.BondsNr;
                }

                if (lid.Ouder1_Naam.Trim() != string.Empty || lid.Ouder1_Telefoon.Trim() != string.Empty ||
                    lid.Ouder1_Mobiel.Trim() != string.Empty || lid.Ouder1_Email1.Trim() != string.Empty)
                {
                    contact = new VCard();
                    vCardLijst.Add(contact);
                    aantal++;

                    contact.Achternaam = "- Ouder " + lid.Ouder1_Naam;
                    contact.Voornaam   = lid.NetteNaam;

                    if (lid.Ouder1_Telefoon.Trim() != string.Empty)
                    {
                        contact.telefoonNummerLijst.Add(new TelephoneNumberClass("HOME", lid.Ouder1_Telefoon, false));
                    }
                    if (lid.Ouder1_Mobiel.Trim() != string.Empty)
                    {
                        contact.telefoonNummerLijst.Add(new TelephoneNumberClass("CELL", lid.Ouder1_Mobiel, true));
                    }
                    if (lid.Ouder1_Email1.Trim() != string.Empty)
                    {
                        contact.emailLijst.Add(new EmailAddressClass(lid.Ouder1_Email1));
                    }
                    if (lid.Ouder1_Email2.Trim() != string.Empty)
                    {
                        contact.emailLijst.Add(new EmailAddressClass(lid.Ouder1_Email2));
                    }
                    contact.Organisatie = "TTVN";
                    contact.Note        = contact.NetteNaam;
                    contact.Leden       = true;
                }

                if (lid.Ouder2_Naam.Trim() != string.Empty || lid.Ouder2_Telefoon.Trim() != string.Empty ||
                    lid.Ouder2_Mobiel.Trim() != string.Empty || lid.Ouder2_Email1.Trim() != string.Empty)
                {
                    contact = new VCard();
                    vCardLijst.Add(contact);
                    aantal++;

                    contact.Achternaam = "- Ouder " + lid.Ouder2_Naam;
                    contact.Voornaam   = lid.NetteNaam;

                    if (lid.Ouder2_Telefoon.Trim() != string.Empty)
                    {
                        contact.telefoonNummerLijst.Add(new TelephoneNumberClass("HOME", lid.Ouder2_Telefoon, false));
                    }
                    if (lid.Ouder2_Mobiel.Trim() != string.Empty)
                    {
                        contact.telefoonNummerLijst.Add(new TelephoneNumberClass("CELL", lid.Ouder2_Mobiel, true));
                    }
                    if (lid.Ouder2_Email1.Trim() != string.Empty)
                    {
                        contact.emailLijst.Add(new EmailAddressClass(lid.Ouder2_Email1));
                    }
                    if (lid.Ouder2_Email2.Trim() != string.Empty)
                    {
                        contact.emailLijst.Add(new EmailAddressClass(lid.Ouder2_Email2));
                    }
                    contact.Organisatie = "TTVN";
                }
            }
            OntdubbelvCardLijst();
            objVCardList.Clear();
            CopyVCardListToLocal();
            olvVCard.SetObjects(objVCardList);

            toolStripStatusLabel1.Text = "Ledencontacten toegevoegd (" + aantal.ToString() + ")";
        }
Пример #5
0
        private string WriteLid(VCard vCard)
        {
            StringBuilder lidregel = new StringBuilder();

            lidregel.AppendLine("BEGIN:VCARD");
            lidregel.AppendLine("VERSION:2.1");
            lidregel.AppendLine("N:" + vCard.Achternaam + ";" + vCard.Voornaam + ";" + vCard.Tussenvoegsel + ";;");
            lidregel.AppendLine("FN:" + vCard.NetteNaam);

            foreach (AddressClass adres in vCard.adresLijst)
            {
                if (adres.Adres.Trim() == string.Empty)
                {
                    continue;
                }
                lidregel.AppendLine("ADR;HOME:;;" + adres.Adres + ";" + adres.Woonplaats + ";;" + adres.Postcode + ";");
            }
            foreach (TelephoneNumberClass telefoon in vCard.telefoonNummerLijst)
            {
                if (telefoon.TelephoneNumber.Trim() == string.Empty)
                {
                    continue;
                }
                lidregel.Append("TEL");
                if (telefoon.Type.Trim() != string.Empty)
                {
                    lidregel.Append(";" + telefoon.Type);
                }
                if (telefoon.Preference)
                {
                    lidregel.Append(";PREF");
                }
                lidregel.AppendLine(":" + telefoon.TelephoneNumber.Replace("-", ""));
            }

            foreach (EmailAddressClass email in vCard.emailLijst)
            {
                if (email.EmailAddress.Trim() == string.Empty)
                {
                    continue;
                }
                lidregel.Append("EMAIL");
                if (email.Type.Trim() != string.Empty)
                {
                    lidregel.Append(";" + email.Type);
                }
                if (email.Preference)
                {
                    lidregel.Append(";PREF");
                }
                lidregel.AppendLine(":" + email.EmailAddress);
            }

            if (vCard.GeboorteDatum.Trim() != string.Empty)
            {
                lidregel.AppendLine("BDAY:" + vCard.GeboorteDatum);
            }
            if (vCard.Organisatie.Trim() != string.Empty)
            {
                lidregel.AppendLine("ORG: " + vCard.Organisatie);
            }
            if (vCard.Note.Trim() != string.Empty)
            {
                lidregel.AppendLine("NOTE: " + vCard.Note);
            }
            if (vCard.Title.Trim() != string.Empty)
            {
                lidregel.AppendLine("TITLE: " + vCard.Title);
            }
            lidregel.Append("END:VCARD");

            return(lidregel.ToString());
        }
Пример #6
0
        private VCard2 CopyVCard(VCard vCard)
        {
            VCard2 vc2 = new VCard2();

            vc2.Achternaam  = vCard.Achternaam;
            vc2.Voornaam    = vCard.Voornaam;
            vc2.Tussen      = vCard.Tussenvoegsel;
            vc2.Titel       = vCard.Title;
            vc2.Organisatie = vCard.Organisatie;
            vc2.Lid         = vCard.Leden;

            if (vCard.adresLijst.Count > 0)
            {
                vc2.Adres      = vCard.adresLijst[0].Adres;
                vc2.Woonplaats = vCard.adresLijst[0].Woonplaats;
                vc2.Postcode   = vCard.adresLijst[0].Postcode;
            }
            else
            {
                vc2.Adres      = string.Empty;
                vc2.Woonplaats = string.Empty;
                vc2.Postcode   = string.Empty;
            }

            vc2.Notitie = vCard.Note;


            bool[] bezet = new bool[4];
            for (int i = 0; i <= 3; i++)
            {
                bezet[i] = false;
            }

            foreach (TelephoneNumberClass telefoon in vCard.telefoonNummerLijst)
            {
                if (telefoon.Type == "HOME" && bezet[0] == false)
                {
                    vc2.TelThuis = telefoon.TelephoneNumber;
                    bezet[0]     = true;
                    continue;
                }
                if (telefoon.Type == "CELL")
                {
                    if (bezet[1] == false)
                    {
                        vc2.Mobiel1 = telefoon.TelephoneNumber;
                        bezet[1]    = true;
                        continue;
                    }
                    else
                    if (bezet[2] == false)
                    {
                        vc2.Mobiel2 = telefoon.TelephoneNumber;
                        bezet[2]    = true;
                        continue;
                    }
                    else
                    if (bezet[3] == false)
                    {
                        vc2.TelWerk = telefoon.TelephoneNumber;
                        bezet[3]    = true;
                        continue;
                    }
                }
                if (telefoon.Type == "WORK" && bezet[3] == false)
                {
                    vc2.TelWerk = telefoon.TelephoneNumber;
                    bezet[3]    = true;
                    continue;
                }

                if (bezet[0] == false)
                {
                    vc2.TelThuis = telefoon.TelephoneNumber;
                    bezet[0]     = true;
                    continue;
                }
                else
                {
                    if (bezet[1] == false)
                    {
                        vc2.Mobiel1 = telefoon.TelephoneNumber;
                        bezet[1]    = true;
                        continue;
                    }
                    else
                    {
                        if (bezet[2] == false)
                        {
                            vc2.Mobiel2 = telefoon.TelephoneNumber;
                            bezet[2]    = true;
                            continue;
                        }
                        else
                        {
                            if (bezet[3] == false)
                            {
                                vc2.TelWerk = telefoon.TelephoneNumber;
                                bezet[3]    = true;
                                continue;
                            }
                        }
                    }
                }
            }

            for (int i = 0; i <= 3; i++)
            {
                bezet[i] = false;
            }

            foreach (EmailAddressClass email in vCard.emailLijst)
            {
                if (bezet[0] == false)
                {
                    vc2.Email1 = email.EmailAddress;
                    bezet[0]   = true;
                    continue;
                }
                if (bezet[1] == false)
                {
                    vc2.Email2 = email.EmailAddress;
                    bezet[1]   = true;
                    continue;
                }
            }
            vc2.Tag = vCard;
            return(vc2);
        }