private void PublishVcard(object sender)
{
bool isVCardChange = false;
VcardIq viq = new VcardIq(IqType.set);
packetId = viq.Id;
viq.From = _connection.MyJID;
# region Check isVCardChange
if (PSNickName != personalTextBox_NickName.Text)
isVCardChange = true;
if (PSFullName != personalTextBoxFullName.Text)
isVCardChange = true;
if (PSBirthDay != personalTextBoxBirthYYYY.Text)
isVCardChange = true;
//viq.Vcard.Birthday = personalTextBoxBirthYYYY.Text;
if (PSFamilyName != personalTextBoxFamilyName.Text)
isVCardChange = true;
if (PSGivenName != personalTextBoxGivenName.Text)
isVCardChange = true;
if (PSMiddleName != personalTextBoxMiddleName.Text)
isVCardChange = true;
if (PSAddr1 != personalTextBoxAddr1.Text || PSAddr2 != personalTextBoxAddr2.Text || PSCity != personalTextBoxCity.Text ||
PSState != personalTextBoxState.Text || PSZip != personalTextBoxZip.Text || PSCountry != personalTextBoxCountry.Text)
isVCardChange = true;
if (PSHomePage != personalTextBoxHomePage.Text)
isVCardChange = true;
if (PSEmail != personalTextBoxEmail.Text)
isVCardChange = true;
if (PSVoiceTel != personalTextBoxVoiceTel.Text)
isVCardChange = true;
if (PSFaxTel != personalTextBoxFaxTel.Text)
isVCardChange = true;
if (PSMobileTel != personalTextBoxMobileTel.Text)
isVCardChange = true;
if (WKCompanyName != workTextBoxCompanyName.Text)
isVCardChange = true;
if (WKOrgUnit != workTextBoxOrgUnit.Text)
isVCardChange = true;
if (WKTitle != workTextBoxTitle.Text)
isVCardChange = true;
if (WKVoiceTel != workTextBoxVoiceTel.Text)
isVCardChange = true;
if (WKFaxTel != workTextBoxFaxTel.Text)
isVCardChange = true;
if (WKMobileTel != workTextBoxMobileTel.Text)
isVCardChange = true;
if (WKAddr1 != workTextBoxAddr1.Text || WKAddr2 != workTextBoxAddr2.Text || WKCity != workTextBoxCity.Text
|| WKState != workTextBoxState.Text || WKZip != workTextBoxZip.Text || WKCountry != workTextBoxCountry.Text)
isVCardChange = true;
if (PSAbout != personalTextBoxAbout.Text)
isVCardChange = true;
# endregion
if (isVCardChange)
{
viq.Vcard.Nickname = personalTextBox_NickName.Text;
viq.Vcard.Fullname = personalTextBoxFullName.Text;
Name name
= new Name(personalTextBoxFamilyName.
Text, personalTextBoxGivenName.
Text, personalTextBoxMiddleName.
Text);
Address psaddr = new Address(AddressLocation.HOME, personalTextBoxAddr1.Text, personalTextBoxAddr2.Text,
personalTextBoxCity.Text, personalTextBoxState.Text, personalTextBoxZip.Text,
personalTextBoxCountry.Text, false);
viq.Vcard.AddAddress(psaddr);
viq.Vcard.Url = personalTextBoxHomePage.Text;
Email email = new Email(EmailType.HOME, personalTextBoxEmail.Text, false);
viq.Vcard.AddEmailAddress(email);
Telephone pstelvoice = new Telephone(TelephoneLocation.HOME, TelephoneType.VOICE, personalTextBoxVoiceTel.Text);
viq.Vcard.AddTelephoneNumber(pstelvoice);
Telephone pstelfax = new Telephone(TelephoneLocation.HOME, TelephoneType.FAX, personalTextBoxFaxTel.Text);
viq.Vcard.AddTelephoneNumber(pstelfax);
Telephone pstelcell = new Telephone(TelephoneLocation.HOME, TelephoneType.CELL, personalTextBoxMobileTel.Text);
viq.Vcard.AddTelephoneNumber(pstelcell);
Organization myOrg = new Organization(workTextBoxCompanyName.Text, workTextBoxOrgUnit.Text);
viq.Vcard.Organization = myOrg;
viq.Vcard.Title = workTextBoxTitle.Text;
Telephone wktelvoice = new Telephone(TelephoneLocation.WORK, TelephoneType.VOICE, workTextBoxVoiceTel.Text);
viq.Vcard.AddTelephoneNumber(wktelvoice);
Telephone wktelfax = new Telephone(TelephoneLocation.WORK, TelephoneType.FAX, workTextBoxFaxTel.Text);
viq.Vcard.AddTelephoneNumber(wktelfax);
Telephone wktelcell = new Telephone(TelephoneLocation.WORK, TelephoneType.CELL, workTextBoxMobileTel.Text);
viq.Vcard.AddTelephoneNumber(wktelcell);
Address wkaddr = new Address(AddressLocation.WORK, workTextBoxAddr1.Text, workTextBoxAddr2.Text, workTextBoxCity.Text,
workTextBoxState.Text, workTextBoxZip.Text, workTextBoxCountry.Text, false);
viq.Vcard.AddAddress(wkaddr);
viq.Vcard.Description = personalTextBoxAbout.Text;
_connection.Send(viq);
# region Writing VCard Info into XML file
UserSettings.setAttributes(UserSettings.VCARD_SECTION, UserSettings.PERSONALNICKNAME, personalTextBox_NickName.Text);
UserSettings.setAttributes(UserSettings.VCARD_SECTION, UserSettings.PERSONALFULLNAME, personalTextBoxFullName.Text);
UserSettings.setAttributes(UserSettings.VCARD_SECTION, UserSettings.PERSONALFAMILYNAME, personalTextBoxFamilyName.Text);
UserSettings.setAttributes(UserSettings.VCARD_SECTION, UserSettings.PERSONALGIVENNAME, personalTextBoxGivenName.Text);
UserSettings.setAttributes(UserSettings.VCARD_SECTION, UserSettings.PERSONALMIDDLENAME, personalTextBoxMiddleName.Text);
UserSettings.setAttributes(UserSettings.VCARD_SECTION, UserSettings.PERSONALADDR1, personalTextBoxAddr1.Text);
UserSettings.setAttributes(UserSettings.VCARD_SECTION, UserSettings.PERSONALADDR2, personalTextBoxAddr2.Text);
UserSettings.setAttributes(UserSettings.VCARD_SECTION, UserSettings.PERSONALCITY, personalTextBoxCity.Text);
UserSettings.setAttributes(UserSettings.VCARD_SECTION, UserSettings.PERSONALSTATE, personalTextBoxState.Text);
UserSettings.setAttributes(UserSettings.VCARD_SECTION, UserSettings.PERSONALZIP, personalTextBoxZip.Text);
UserSettings.setAttributes(UserSettings.VCARD_SECTION, UserSettings.PERSONALCOUNTRY, personalTextBoxCountry.Text);
UserSettings.setAttributes(UserSettings.VCARD_SECTION, UserSettings.PERSONALHOMEPAGE, personalTextBoxHomePage.Text);
UserSettings.setAttributes(UserSettings.VCARD_SECTION, UserSettings.PERSONALEMAIL, personalTextBoxEmail.Text);
UserSettings.setAttributes(UserSettings.VCARD_SECTION, UserSettings.PERSONALVOICETEL, personalTextBoxVoiceTel.Text);
UserSettings.setAttributes(UserSettings.VCARD_SECTION, UserSettings.PERSONALFAXTEL, personalTextBoxFaxTel.Text);
UserSettings.setAttributes(UserSettings.VCARD_SECTION, UserSettings.PERSONALMOBILETEL, personalTextBoxMobileTel.Text);
UserSettings.setAttributes(UserSettings.VCARD_SECTION, UserSettings.WORKCOMPANYNAME, workTextBoxCompanyName.Text);
UserSettings.setAttributes(UserSettings.VCARD_SECTION, UserSettings.WORKORGUNIT, workTextBoxOrgUnit.Text);
UserSettings.setAttributes(UserSettings.VCARD_SECTION, UserSettings.WORKTITLE, workTextBoxTitle.Text);
UserSettings.setAttributes(UserSettings.VCARD_SECTION, UserSettings.WORKVOICETEL, workTextBoxVoiceTel.Text);
UserSettings.setAttributes(UserSettings.VCARD_SECTION, UserSettings.WORKFAXTEL, workTextBoxFaxTel.Text);
UserSettings.setAttributes(UserSettings.VCARD_SECTION, UserSettings.WORKMOBILETEL, workTextBoxMobileTel.Text);
UserSettings.setAttributes(UserSettings.VCARD_SECTION, UserSettings.WORKADDR1, workTextBoxAddr1.Text);
UserSettings.setAttributes(UserSettings.VCARD_SECTION, UserSettings.WORKADDR2, workTextBoxAddr2.Text);
UserSettings.setAttributes(UserSettings.VCARD_SECTION, UserSettings.WORKCITY, workTextBoxCity.Text);
UserSettings.setAttributes(UserSettings.VCARD_SECTION, UserSettings.WORKSTATE, workTextBoxState.Text);
UserSettings.setAttributes(UserSettings.VCARD_SECTION, UserSettings.WORKZIP, workTextBoxZip.Text);
UserSettings.setAttributes(UserSettings.VCARD_SECTION, UserSettings.WORKCOUNTRY, workTextBoxCountry.Text);
UserSettings.setAttributes(UserSettings.VCARD_SECTION, UserSettings.PERSONALABOUT, personalTextBoxAbout.Text);
#endregion
}
}