X-Git-Url: http://Server1/repobrowser/?a=blobdiff_plain;f=source%2Fvcard%2Fvcard34conv-v3conv.cpp;h=948649c6f62b0d3a8ddc688c01ca44c370d417a0;hb=8aa0ad46d043c17642b0064b26770d98d2c37898;hp=8610fd7697c2d4764e93257c049626ee74b1bffe;hpb=fb95962b20989702f8d689875a977d150c087660;p=xestiaab%2F.git diff --git a/source/vcard/vcard34conv-v3conv.cpp b/source/vcard/vcard34conv-v3conv.cpp index 8610fd7..948649c 100644 --- a/source/vcard/vcard34conv-v3conv.cpp +++ b/source/vcard/vcard34conv-v3conv.cpp @@ -1,3 +1,21 @@ +// vcard34conv-v3conv.cpp - vCard34Conv Object vCard3 conversion subroutines. +// +// (c) 2012-2015 Xestia Software Development. +// +// This file is part of Xestia Address Book. +// +// Xestia Address Book is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by the +// Free Software Foundation, version 3 of the license. +// +// Xestia Address Book is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License along +// with Xestia Address Book. If not, see + #include "vcard34conv.h" #include "vcard.h" #include "../version.h" @@ -656,23 +674,23 @@ bool vCard34Conv::ConvertToV3(wxString Filename, wxString *wxSData){ intPrevValue = 6; - // TODO: Check in value for X-ABLabel and use it if it is there. + // TODO: Check in value for X-ABLabel and use it if it is there. - if (((QuoteBreakPoint + 1) - intPrevValue) <= 0){ + if (((QuoteBreakPoint + 1) - intPrevValue) <= 0){ - ContactDatav3.AddRaw(wxT("item") + wxString::Format(wxT("%i"), ItemSeek) + wxT(".EMAIL"), wxSPropertySeg2); - ContactDatav3.AddRaw(wxT("item") + wxString::Format(wxT("%i"), ItemSeek) + wxT(".X-ABLabel"), _("E-mail Address")); - ContactDatav3.AddRaw(wxT("item") + wxString::Format(wxT("%i"), ItemSeek) + wxT(".X-VCARD4-EMAIL"), wxSPropertySeg2); + ContactDatav3.AddRaw(wxT("item") + wxString::Format(wxT("%i"), ItemSeek) + wxT(".EMAIL"), wxSPropertySeg2); + ContactDatav3.AddRaw(wxT("item") + wxString::Format(wxT("%i"), ItemSeek) + wxT(".X-ABLabel"), _("E-mail Address")); + ContactDatav3.AddRaw(wxT("item") + wxString::Format(wxT("%i"), ItemSeek) + wxT(".X-VCARD4-EMAIL"), wxSPropertySeg2); - } else { + } else { - ContactDatav3.AddRaw(wxT("item") + wxString::Format(wxT("%i"), ItemSeek) + wxT(".EMAIL"), wxSPropertySeg2); - ContactDatav3.AddRaw(wxT("item") + wxString::Format(wxT("%i"), ItemSeek) + wxT(".X-ABLabel"), _("E-mail Address")); - ContactDatav3.AddRaw(wxT("item") + wxString::Format(wxT("%i"), ItemSeek) + wxT(".X-VCARD4-EMAIL;") + ContactLine.Mid(intPrevValue, ((QuoteBreakPoint + 1) - (intPrevValue + 1))), wxSPropertySeg2); + ContactDatav3.AddRaw(wxT("item") + wxString::Format(wxT("%i"), ItemSeek) + wxT(".EMAIL"), wxSPropertySeg2); + ContactDatav3.AddRaw(wxT("item") + wxString::Format(wxT("%i"), ItemSeek) + wxT(".X-ABLabel"), _("E-mail Address")); + ContactDatav3.AddRaw(wxT("item") + wxString::Format(wxT("%i"), ItemSeek) + wxT(".X-VCARD4-EMAIL;") + ContactLine.Mid(intPrevValue, ((QuoteBreakPoint + 1) - (intPrevValue + 1))), wxSPropertySeg2); - } + } - ItemSeek++; + ItemSeek++; } else if (wxSProperty == wxT("IMPP")){ @@ -708,7 +726,7 @@ bool vCard34Conv::ConvertToV3(wxString Filename, wxString *wxSData){ } - ItemSeek++; + ItemSeek++; } else if (wxSProperty == wxT("TEL")){ @@ -958,15 +976,15 @@ bool vCard34Conv::ConvertToV3(wxString Filename, wxString *wxSData){ intPrevValue = 5; - if (((QuoteBreakPoint + 1) - intPrevValue) <= 0){ + if (((QuoteBreakPoint + 1) - intPrevValue) <= 0){ - ContactDatav3.AddRaw(wxT("X-VCARD4-LANG"), wxSPropertySeg2); + ContactDatav3.AddRaw(wxT("X-VCARD4-LANG"), wxSPropertySeg2); - } else { + } else { - ContactDatav3.AddRaw(wxT("X-VCARD4-LANG;") + ContactLine.Mid(intPrevValue, ((QuoteBreakPoint + 1) - (intPrevValue + 1))), wxSPropertySeg2); + ContactDatav3.AddRaw(wxT("X-VCARD4-LANG;") + ContactLine.Mid(intPrevValue, ((QuoteBreakPoint + 1) - (intPrevValue + 1))), wxSPropertySeg2); - } + } } else if (wxSProperty == wxT("GEO")){ @@ -1001,15 +1019,15 @@ bool vCard34Conv::ConvertToV3(wxString Filename, wxString *wxSData){ } - if (((QuoteBreakPoint + 1) - intPrevValue) <= 0){ + if (((QuoteBreakPoint + 1) - intPrevValue) <= 0){ - ContactDatav3.AddRaw(wxT("X-VCARD4-GEO;X-GEOTYPE=") + strFinalType, wxSPropertySeg2); + ContactDatav3.AddRaw(wxT("X-VCARD4-GEO;X-GEOTYPE=") + strFinalType, wxSPropertySeg2); - } else { + } else { - ContactDatav3.AddRaw(wxT("X-VCARD4-GEO;X-GEOTYPE=") + strFinalType + wxT(";") + ContactLine.Mid(intPrevValue, ((QuoteBreakPoint + 1) - (intPrevValue + 1))), wxSPropertySeg2); + ContactDatav3.AddRaw(wxT("X-VCARD4-GEO;X-GEOTYPE=") + strFinalType + wxT(";") + ContactLine.Mid(intPrevValue, ((QuoteBreakPoint + 1) - (intPrevValue + 1))), wxSPropertySeg2); - } + } } else if (wxSProperty == wxT("RELATED")){ @@ -1358,15 +1376,15 @@ bool vCard34Conv::ConvertToV3(wxString Filename, wxString *wxSData){ intPrevValue = 11; - if (((QuoteBreakPoint + 1) - intPrevValue) <= 0){ + if (((QuoteBreakPoint + 1) - intPrevValue) <= 0){ - ContactDatav3.AddRaw(wxT("X-VCARD4-CATEGORIES"), wxSPropertySeg2); + ContactDatav3.AddRaw(wxT("X-VCARD4-CATEGORIES"), wxSPropertySeg2); - } else { + } else { - ContactDatav3.AddRaw(wxT("X-VCARD4-CATEGORIES;") + ContactLine.Mid(intPrevValue, ((QuoteBreakPoint + 1) - (intPrevValue + 1))), wxSPropertySeg2); + ContactDatav3.AddRaw(wxT("X-VCARD4-CATEGORIES;") + ContactLine.Mid(intPrevValue, ((QuoteBreakPoint + 1) - (intPrevValue + 1))), wxSPropertySeg2); - } + } } else if (wxSProperty == wxT("PHOTO")) { @@ -1568,15 +1586,15 @@ bool vCard34Conv::ConvertToV3(wxString Filename, wxString *wxSData){ intPrevValue = 7; - if (((QuoteBreakPoint + 1) - intPrevValue) <= 0){ + if (((QuoteBreakPoint + 1) - intPrevValue) <= 0){ - ContactDatav3.AddRaw(wxT("X-VCARD4-CALURI"), wxSPropertySeg2); + ContactDatav3.AddRaw(wxT("X-VCARD4-CALURI"), wxSPropertySeg2); - } else { + } else { - ContactDatav3.AddRaw(wxT("X-VCARD4-CALURI;") + ContactLine.Mid(intPrevValue, ((QuoteBreakPoint + 1) - (intPrevValue + 1))), wxSPropertySeg2); + ContactDatav3.AddRaw(wxT("X-VCARD4-CALURI;") + ContactLine.Mid(intPrevValue, ((QuoteBreakPoint + 1) - (intPrevValue + 1))), wxSPropertySeg2); - } + } } else if (wxSProperty == wxT("CALADRURI")){ @@ -1591,15 +1609,15 @@ bool vCard34Conv::ConvertToV3(wxString Filename, wxString *wxSData){ intPrevValue = 10; - if (((QuoteBreakPoint + 1) - intPrevValue) <= 0){ + if (((QuoteBreakPoint + 1) - intPrevValue) <= 0){ - ContactDatav3.AddRaw(wxT("X-VCARD4-CALADRURI"), wxSPropertySeg2); + ContactDatav3.AddRaw(wxT("X-VCARD4-CALADRURI"), wxSPropertySeg2); - } else { + } else { - ContactDatav3.AddRaw(wxT("X-VCARD4-CALADRURI;") + ContactLine.Mid(intPrevValue, ((QuoteBreakPoint + 1) - (intPrevValue + 1))), wxSPropertySeg2); + ContactDatav3.AddRaw(wxT("X-VCARD4-CALADRURI;") + ContactLine.Mid(intPrevValue, ((QuoteBreakPoint + 1) - (intPrevValue + 1))), wxSPropertySeg2); - } + } } else if (wxSProperty == wxT("FBURL")){ @@ -1614,15 +1632,15 @@ bool vCard34Conv::ConvertToV3(wxString Filename, wxString *wxSData){ intPrevValue = 6; - if (((QuoteBreakPoint + 1) - intPrevValue) <= 0){ + if (((QuoteBreakPoint + 1) - intPrevValue) <= 0){ - ContactDatav3.AddRaw(wxT("X-VCARD4-FBURL"), wxSPropertySeg2); + ContactDatav3.AddRaw(wxT("X-VCARD4-FBURL"), wxSPropertySeg2); - } else { + } else { - ContactDatav3.AddRaw(wxT("X-VCARD4-FBURL;") + ContactLine.Mid(intPrevValue, ((QuoteBreakPoint + 1) - (intPrevValue + 1))), wxSPropertySeg2); + ContactDatav3.AddRaw(wxT("X-VCARD4-FBURL;") + ContactLine.Mid(intPrevValue, ((QuoteBreakPoint + 1) - (intPrevValue + 1))), wxSPropertySeg2); - } + } } else if (wxSProperty == wxT("KEY")){ @@ -1637,15 +1655,15 @@ bool vCard34Conv::ConvertToV3(wxString Filename, wxString *wxSData){ intPrevValue = 4; - if (((QuoteBreakPoint + 1) - intPrevValue) <= 0){ + if (((QuoteBreakPoint + 1) - intPrevValue) <= 0){ - ContactDatav3.AddRaw(wxT("X-VCARD4-KEY"), wxSPropertySeg2); + ContactDatav3.AddRaw(wxT("X-VCARD4-KEY"), wxSPropertySeg2); - } else { + } else { - ContactDatav3.AddRaw(wxT("X-VCARD4-KEY;") + ContactLine.Mid(intPrevValue, ((QuoteBreakPoint + 1) - (intPrevValue + 1))), wxSPropertySeg2); + ContactDatav3.AddRaw(wxT("X-VCARD4-KEY;") + ContactLine.Mid(intPrevValue, ((QuoteBreakPoint + 1) - (intPrevValue + 1))), wxSPropertySeg2); - } + } } else if (wxSProperty == wxT("UID")){ @@ -1671,29 +1689,29 @@ bool vCard34Conv::ConvertToV3(wxString Filename, wxString *wxSData){ } - if (((QuoteBreakPoint + 1) - intPrevValue) <= 0){ + if (((QuoteBreakPoint + 1) - intPrevValue) <= 0){ - ContactDatav3.AddRaw(wxT("X-VCARD4-") + wxSProperty, wxSPropertySeg2); + ContactDatav3.AddRaw(wxT("X-VCARD4-") + wxSProperty, wxSPropertySeg2); - } else { + } else { - ContactDatav3.AddRaw(wxT("X-VCARD4-") + wxSProperty + wxT(";") + ContactLine.Mid(intPrevValue, ((QuoteBreakPoint + 1) - (intPrevValue + 1))), wxSPropertySeg2); + ContactDatav3.AddRaw(wxT("X-VCARD4-") + wxSProperty + wxT(";") + ContactLine.Mid(intPrevValue, ((QuoteBreakPoint + 1) - (intPrevValue + 1))), wxSPropertySeg2); - } + } } else if (wxSProperty.Mid(0, 2) == wxT("X-")){ size_t intPrevValue = (wxSProperty.Len() + 1); - if (((QuoteBreakPoint + 1) - intPrevValue) <= 0){ + if (((QuoteBreakPoint + 1) - intPrevValue) <= 0){ - ContactDatav3.AddRaw(wxSProperty, wxSPropertySeg2); + ContactDatav3.AddRaw(wxSProperty, wxSPropertySeg2); - } else { + } else { - ContactDatav3.AddRaw(wxSProperty + wxT(";") + ContactLine.Mid(intPrevValue, ((QuoteBreakPoint + 1) - (intPrevValue + 1))), wxSPropertySeg2); + ContactDatav3.AddRaw(wxSProperty + wxT(";") + ContactLine.Mid(intPrevValue, ((QuoteBreakPoint + 1) - (intPrevValue + 1))), wxSPropertySeg2); - } + } }