--- /srv/rebuilderd/tmp/rebuilderdOxfRMv/inputs/libsyncevolution0_2.0.0-4_ppc64el.deb +++ /srv/rebuilderd/tmp/rebuilderdOxfRMv/out/libsyncevolution0_2.0.0-4_ppc64el.deb ├── file list │ @@ -1,3 +1,3 @@ │ -rw-r--r-- 0 0 0 4 2026-08-06 14:29:33.000000 debian-binary │ --rw-r--r-- 0 0 0 1128 2026-08-06 14:29:33.000000 control.tar.xz │ --rw-r--r-- 0 0 0 872424 2026-08-06 14:29:33.000000 data.tar.xz │ +-rw-r--r-- 0 0 0 1124 2026-08-06 14:29:33.000000 control.tar.xz │ +-rw-r--r-- 0 0 0 872532 2026-08-06 14:29:33.000000 data.tar.xz ├── control.tar.xz │ ├── control.tar │ │ ├── ./md5sums │ │ │ ├── ./md5sums │ │ │ │┄ Files differ ├── data.tar.xz │ ├── data.tar │ │ ├── ./usr/lib/powerpc64le-linux-gnu/libsyncevolution.so.0.0.0 │ │ │┄ File has been modified after NT_GNU_BUILD_ID has been applied. │ │ │ ├── readelf --wide --notes {} │ │ │ │ @@ -1,4 +1,4 @@ │ │ │ │ │ │ │ │ Displaying notes found in: .note.gnu.build-id │ │ │ │ Owner Data size Description │ │ │ │ - GNU 0x00000014 NT_GNU_BUILD_ID (unique build ID bitstring) Build ID: 2b8b5d346508b6ee5ed06a1a9e5544b737280195 │ │ │ │ + GNU 0x00000014 NT_GNU_BUILD_ID (unique build ID bitstring) Build ID: fad91a91f9fbb76c6f2443c4796b1eca6b8f3c82 │ │ │ ├── strings --all --bytes=8 {} │ │ │ │ @@ -10442,235 +10442,15 @@ │ │ │ │ } │ │ │ │ ]]> │ │ │ │ │ │ │ │ - │ │ │ │ - │ │ │ │ - │ │ │ │ - │ │ │ │ - │ │ │ │ - │ │ │ │ - X-ANNIVERSARY. │ │ │ │ - i = SIZE(XDATE) - 1; │ │ │ │ - while (i >= 0) { │ │ │ │ - if (GROUP_TAG[i] != EMPTY && │ │ │ │ - XDATE[i] != UNASSIGNED && │ │ │ │ - LABEL[i] == "Anniversary") { │ │ │ │ - SWAP(ANNIVERSARY, XDATE[i]); │ │ │ │ - // XDATE[i] = UNASSIGNED; │ │ │ │ - break; │ │ │ │ - } │ │ │ │ - i = i - 1; │ │ │ │ - } │ │ │ │ - // Special X-ABRELATEDNAMES -> X-SPOUSE/MANAGER/ASSISTANT │ │ │ │ - i = SIZE(RELATEDNAMES) - 1; │ │ │ │ - while (i >= 0) { │ │ │ │ - if (GROUP_TAG[i] != EMPTY && │ │ │ │ - RELATEDNAMES[i] != UNASSIGNED) { │ │ │ │ - s = LABEL[i]; │ │ │ │ - if (s == "Spouse") { │ │ │ │ - if (SPOUSE == EMPTY) { │ │ │ │ - SWAP(SPOUSE, RELATEDNAMES[i]); │ │ │ │ - // RELATEDNAMES[i] = UNASSIGNED; │ │ │ │ - } │ │ │ │ - } else if (s == "Manager") { │ │ │ │ - if (MANAGER == EMPTY) { │ │ │ │ - SWAP(MANAGER, RELATEDNAMES[i]); │ │ │ │ - // RELATEDNAMES[i] = UNASSIGNED; │ │ │ │ - } │ │ │ │ - } else if (s == "Assistant") { │ │ │ │ - if (ASSISTANT == EMPTY) { │ │ │ │ - SWAP(ASSISTANT, RELATEDNAMES[i]); │ │ │ │ - // RELATEDNAMES[i] = UNASSIGNED; │ │ │ │ - } │ │ │ │ - } │ │ │ │ - } │ │ │ │ - i = i - 1; │ │ │ │ - } │ │ │ │ - // IMPP -> X-JABBER/AIM/... depending on service type. Protocol must match. │ │ │ │ - i = SIZE(IMPP) - 1; │ │ │ │ - INTEGER offset; │ │ │ │ - STRING service; │ │ │ │ - STRING protocol; │ │ │ │ - STRING value; │ │ │ │ - while (i >= 0) { │ │ │ │ - service = IMPP_SERVICE[i]; │ │ │ │ - if (service != UNASSIGNED) { │ │ │ │ - offset = FIND(IMPP[i], ":"); │ │ │ │ - if (offset != UNASSIGNED) { │ │ │ │ - protocol = SUBSTR(IMPP[i], 0, offset); │ │ │ │ - value = URLDECODE(SUBSTR(IMPP[i], offset + 1)); │ │ │ │ - if (service == "AIM" && protocol == "aim") { │ │ │ │ - $VCARD_MODERN_TO_LEGACY_IMPP(value, AIM_HANDLE, AIM_SLOT, i); │ │ │ │ - } else if (service == "Gadugadu") { │ │ │ │ - $VCARD_MODERN_TO_LEGACY_IMPP(value, GADUGADU_HANDLE, GADUGADU_SLOT, i); │ │ │ │ - } else if (service == "Groupwise") { │ │ │ │ - $VCARD_MODERN_TO_LEGACY_IMPP(value, GROUPWISE_HANDLE, GROUPWISE_SLOT, i); │ │ │ │ - } else if (service == "ICQ" && protocol == "aim") { │ │ │ │ - $VCARD_MODERN_TO_LEGACY_IMPP(value, ICQ_HANDLE, ICQ_SLOT, i); │ │ │ │ - } else if (service == "Jabber" && protocol == "xmpp") { │ │ │ │ - $VCARD_MODERN_TO_LEGACY_IMPP(value, JABBER_HANDLE, JABBER_SLOT, i); │ │ │ │ - } else if (service == "MSN" && protocol == "msnim") { │ │ │ │ - $VCARD_MODERN_TO_LEGACY_IMPP(value, MSN_HANDLE, MSN_SLOT, i); │ │ │ │ - } else if (service == "Yahoo" && protocol == "ymsgr") { │ │ │ │ - $VCARD_MODERN_TO_LEGACY_IMPP(value, YAHOO_HANDLE, YAHOO_SLOT, i); │ │ │ │ - } else if (service == "Skype" && protocol == "skype") { │ │ │ │ - $VCARD_MODERN_TO_LEGACY_IMPP(value, SKYPE_HANDLE, SKYPE_SLOT, i); │ │ │ │ - } else if (service == "Sip") { │ │ │ │ - $VCARD_MODERN_TO_LEGACY_IMPP(value, SIP_HANDLE, SIP_SLOT, i); │ │ │ │ - } │ │ │ │ - } │ │ │ │ - } │ │ │ │ - i = i - 1; │ │ │ │ - } │ │ │ │ - // Remove labels which are no longer needed (valued moved above, │ │ │ │ - // stored for a group which has no other properties (Google │ │ │ │ - // CardDAV server sometimes sends that, editing in Evolution │ │ │ │ - // might cause it, etc.) or provide no information ("Other"). │ │ │ │ - i = SIZE(LABEL) - 1; │ │ │ │ - while (i >= 0) { │ │ │ │ - if (LABEL[i] == "Other" || │ │ │ │ - LABEL[i] != UNASSIGNED && │ │ │ │ - (GROUP_TAG[i] == EMPTY || │ │ │ │ - RELATEDNAMES[i] == UNASSIGNED && │ │ │ │ - XDATE[i] == UNASSIGNED && │ │ │ │ - TEL[i] == UNASSIGNED && │ │ │ │ - EMAIL[i] == UNASSIGNED && │ │ │ │ - WEB[i] == UNASSIGNED && │ │ │ │ - XDATE[i] == UNASSIGNED && │ │ │ │ - IMPP[i] == UNASSIGNED && │ │ │ │ - ADR_POBOX[i] == UNASSIGNED && │ │ │ │ - ADR_ADDTL[i] == UNASSIGNED && │ │ │ │ - ADR_STREET[i] == UNASSIGNED && │ │ │ │ - ADR_CITY[i] == UNASSIGNED && │ │ │ │ - ADR_REG[i] == UNASSIGNED && │ │ │ │ - ADR_ZIP[i] == UNASSIGNED && │ │ │ │ - ADR_COUNTRY[i] == UNASSIGNED && │ │ │ │ - ADR_STREET_FLAGS[i] == UNASSIGNED)) { │ │ │ │ - LABEL[i] = UNASSIGNED; │ │ │ │ - } │ │ │ │ - i = i - 1; │ │ │ │ - } │ │ │ │ - // Remove all group tags. Not used for legacy formats. │ │ │ │ - GROUP_TAG = UNASSIGNED; │ │ │ │ - ]]> │ │ │ │ - │ │ │ │ - │ │ │ │ - │ │ │ │ - = 0) { │ │ │ │ - if ($3[impp_index] != EMPTY) { │ │ │ │ - INTEGER num; │ │ │ │ - num = SIZE(LABEL); │ │ │ │ - IMPP[num] = $2 + ":" + URLENCODE($3[impp_index]); │ │ │ │ - $3[impp_index] = UNASSIGNED; │ │ │ │ - SWAP($4[impp_index], IMPP_SLOT[num]); │ │ │ │ - IMPP_SERVICE[num] = $1; │ │ │ │ - LABEL[num] = "Other"; │ │ │ │ - } │ │ │ │ - impp_index = impp_index - 1; │ │ │ │ - } │ │ │ │ - ]]> │ │ │ │ - │ │ │ │ - = 0) { │ │ │ │ - if (LABEL[i] != EMPTY) { │ │ │ │ - GROUP_TAG[i] = "item" + tagnum; │ │ │ │ - tagnum = tagnum + 1; │ │ │ │ - } │ │ │ │ - i = i - 1; │ │ │ │ - } │ │ │ │ - ]]> │ │ │ │ - │ │ │ │ - │ │ │ │ + │ │ │ │ │ │ │ │ + │ │ │ │ + │ │ │ │ + │ │ │ │ + │ │ │ │ + │ │ │ │ + │ │ │ │ + X-ANNIVERSARY. │ │ │ │ + i = SIZE(XDATE) - 1; │ │ │ │ + while (i >= 0) { │ │ │ │ + if (GROUP_TAG[i] != EMPTY && │ │ │ │ + XDATE[i] != UNASSIGNED && │ │ │ │ + LABEL[i] == "Anniversary") { │ │ │ │ + SWAP(ANNIVERSARY, XDATE[i]); │ │ │ │ + // XDATE[i] = UNASSIGNED; │ │ │ │ + break; │ │ │ │ + } │ │ │ │ + i = i - 1; │ │ │ │ + } │ │ │ │ + // Special X-ABRELATEDNAMES -> X-SPOUSE/MANAGER/ASSISTANT │ │ │ │ + i = SIZE(RELATEDNAMES) - 1; │ │ │ │ + while (i >= 0) { │ │ │ │ + if (GROUP_TAG[i] != EMPTY && │ │ │ │ + RELATEDNAMES[i] != UNASSIGNED) { │ │ │ │ + s = LABEL[i]; │ │ │ │ + if (s == "Spouse") { │ │ │ │ + if (SPOUSE == EMPTY) { │ │ │ │ + SWAP(SPOUSE, RELATEDNAMES[i]); │ │ │ │ + // RELATEDNAMES[i] = UNASSIGNED; │ │ │ │ + } │ │ │ │ + } else if (s == "Manager") { │ │ │ │ + if (MANAGER == EMPTY) { │ │ │ │ + SWAP(MANAGER, RELATEDNAMES[i]); │ │ │ │ + // RELATEDNAMES[i] = UNASSIGNED; │ │ │ │ + } │ │ │ │ + } else if (s == "Assistant") { │ │ │ │ + if (ASSISTANT == EMPTY) { │ │ │ │ + SWAP(ASSISTANT, RELATEDNAMES[i]); │ │ │ │ + // RELATEDNAMES[i] = UNASSIGNED; │ │ │ │ + } │ │ │ │ + } │ │ │ │ + } │ │ │ │ + i = i - 1; │ │ │ │ + } │ │ │ │ + // IMPP -> X-JABBER/AIM/... depending on service type. Protocol must match. │ │ │ │ + i = SIZE(IMPP) - 1; │ │ │ │ + INTEGER offset; │ │ │ │ + STRING service; │ │ │ │ + STRING protocol; │ │ │ │ + STRING value; │ │ │ │ + while (i >= 0) { │ │ │ │ + service = IMPP_SERVICE[i]; │ │ │ │ + if (service != UNASSIGNED) { │ │ │ │ + offset = FIND(IMPP[i], ":"); │ │ │ │ + if (offset != UNASSIGNED) { │ │ │ │ + protocol = SUBSTR(IMPP[i], 0, offset); │ │ │ │ + value = URLDECODE(SUBSTR(IMPP[i], offset + 1)); │ │ │ │ + if (service == "AIM" && protocol == "aim") { │ │ │ │ + $VCARD_MODERN_TO_LEGACY_IMPP(value, AIM_HANDLE, AIM_SLOT, i); │ │ │ │ + } else if (service == "Gadugadu") { │ │ │ │ + $VCARD_MODERN_TO_LEGACY_IMPP(value, GADUGADU_HANDLE, GADUGADU_SLOT, i); │ │ │ │ + } else if (service == "Groupwise") { │ │ │ │ + $VCARD_MODERN_TO_LEGACY_IMPP(value, GROUPWISE_HANDLE, GROUPWISE_SLOT, i); │ │ │ │ + } else if (service == "ICQ" && protocol == "aim") { │ │ │ │ + $VCARD_MODERN_TO_LEGACY_IMPP(value, ICQ_HANDLE, ICQ_SLOT, i); │ │ │ │ + } else if (service == "Jabber" && protocol == "xmpp") { │ │ │ │ + $VCARD_MODERN_TO_LEGACY_IMPP(value, JABBER_HANDLE, JABBER_SLOT, i); │ │ │ │ + } else if (service == "MSN" && protocol == "msnim") { │ │ │ │ + $VCARD_MODERN_TO_LEGACY_IMPP(value, MSN_HANDLE, MSN_SLOT, i); │ │ │ │ + } else if (service == "Yahoo" && protocol == "ymsgr") { │ │ │ │ + $VCARD_MODERN_TO_LEGACY_IMPP(value, YAHOO_HANDLE, YAHOO_SLOT, i); │ │ │ │ + } else if (service == "Skype" && protocol == "skype") { │ │ │ │ + $VCARD_MODERN_TO_LEGACY_IMPP(value, SKYPE_HANDLE, SKYPE_SLOT, i); │ │ │ │ + } else if (service == "Sip") { │ │ │ │ + $VCARD_MODERN_TO_LEGACY_IMPP(value, SIP_HANDLE, SIP_SLOT, i); │ │ │ │ + } │ │ │ │ + } │ │ │ │ + } │ │ │ │ + i = i - 1; │ │ │ │ + } │ │ │ │ + // Remove labels which are no longer needed (valued moved above, │ │ │ │ + // stored for a group which has no other properties (Google │ │ │ │ + // CardDAV server sometimes sends that, editing in Evolution │ │ │ │ + // might cause it, etc.) or provide no information ("Other"). │ │ │ │ + i = SIZE(LABEL) - 1; │ │ │ │ + while (i >= 0) { │ │ │ │ + if (LABEL[i] == "Other" || │ │ │ │ + LABEL[i] != UNASSIGNED && │ │ │ │ + (GROUP_TAG[i] == EMPTY || │ │ │ │ + RELATEDNAMES[i] == UNASSIGNED && │ │ │ │ + XDATE[i] == UNASSIGNED && │ │ │ │ + TEL[i] == UNASSIGNED && │ │ │ │ + EMAIL[i] == UNASSIGNED && │ │ │ │ + WEB[i] == UNASSIGNED && │ │ │ │ + XDATE[i] == UNASSIGNED && │ │ │ │ + IMPP[i] == UNASSIGNED && │ │ │ │ + ADR_POBOX[i] == UNASSIGNED && │ │ │ │ + ADR_ADDTL[i] == UNASSIGNED && │ │ │ │ + ADR_STREET[i] == UNASSIGNED && │ │ │ │ + ADR_CITY[i] == UNASSIGNED && │ │ │ │ + ADR_REG[i] == UNASSIGNED && │ │ │ │ + ADR_ZIP[i] == UNASSIGNED && │ │ │ │ + ADR_COUNTRY[i] == UNASSIGNED && │ │ │ │ + ADR_STREET_FLAGS[i] == UNASSIGNED)) { │ │ │ │ + LABEL[i] = UNASSIGNED; │ │ │ │ + } │ │ │ │ + i = i - 1; │ │ │ │ + } │ │ │ │ + // Remove all group tags. Not used for legacy formats. │ │ │ │ + GROUP_TAG = UNASSIGNED; │ │ │ │ + ]]> │ │ │ │ + │ │ │ │ + │ │ │ │ + │ │ │ │ + = 0) { │ │ │ │ + if ($3[impp_index] != EMPTY) { │ │ │ │ + INTEGER num; │ │ │ │ + num = SIZE(LABEL); │ │ │ │ + IMPP[num] = $2 + ":" + URLENCODE($3[impp_index]); │ │ │ │ + $3[impp_index] = UNASSIGNED; │ │ │ │ + SWAP($4[impp_index], IMPP_SLOT[num]); │ │ │ │ + IMPP_SERVICE[num] = $1; │ │ │ │ + LABEL[num] = "Other"; │ │ │ │ + } │ │ │ │ + impp_index = impp_index - 1; │ │ │ │ + } │ │ │ │ + ]]> │ │ │ │ + │ │ │ │ + = 0) { │ │ │ │ + if (LABEL[i] != EMPTY) { │ │ │ │ + GROUP_TAG[i] = "item" + tagnum; │ │ │ │ + tagnum = tagnum + 1; │ │ │ │ + } │ │ │ │ + i = i - 1; │ │ │ │ + } │ │ │ │ + ]]> │ │ │ │ + │ │ │ │ + │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ . │ │ │ │ - 0x00433b30 20202020 3c6d6163 726f206e 616d653d .. │ │ │ │ - 0x00433c20 203c212d 2d20636f 6e766572 74206672 . X-ANNI │ │ │ │ - 0x00433ce0 56455253 4152592e 0a202020 20202020 VERSARY.. │ │ │ │ - 0x00433cf0 69203d20 53495a45 28584441 54452920 i = SIZE(XDATE) │ │ │ │ - 0x00433d00 2d20313b 0a202020 20202020 7768696c - 1;. whil │ │ │ │ - 0x00433d10 65202869 203e3d20 3029207b 0a202020 e (i >= 0) {. │ │ │ │ - 0x00433d20 20202020 20202069 66202847 524f5550 if (GROUP │ │ │ │ - 0x00433d30 5f544147 5b695d20 213d2045 4d505459 _TAG[i] != EMPTY │ │ │ │ - 0x00433d40 2026260a 20202020 20202020 20202020 &&. │ │ │ │ - 0x00433d50 20205844 4154455b 695d2021 3d20554e XDATE[i] != UN │ │ │ │ - 0x00433d60 41535349 474e4544 2026260a 20202020 ASSIGNED &&. │ │ │ │ - 0x00433d70 20202020 20202020 20204c41 42454c5b LABEL[ │ │ │ │ - 0x00433d80 695d203d 3d202241 6e6e6976 65727361 i] == "Anniversa │ │ │ │ - 0x00433d90 72792229 207b0a20 20202020 20202020 ry") {. │ │ │ │ - 0x00433da0 20202020 20535741 5028414e 4e495645 SWAP(ANNIVE │ │ │ │ - 0x00433db0 52534152 592c2058 44415445 5b695d29 RSARY, XDATE[i]) │ │ │ │ - 0x00433dc0 3b0a0a20 20202020 20202020 20202020 ;.. │ │ │ │ - 0x00433dd0 202f2f20 58444154 455b695d 203d2055 // XDATE[i] = U │ │ │ │ - 0x00433de0 4e415353 49474e45 443b0a20 20202020 NASSIGNED;. │ │ │ │ - 0x00433df0 20202020 20202020 20627265 616b3b0a break;. │ │ │ │ - 0x00433e00 20202020 20202020 20207d0a 20202020 }. │ │ │ │ - 0x00433e10 20202020 20206920 3d206920 2d20313b i = i - 1; │ │ │ │ - 0x00433e20 0a202020 20202020 7d0a0a20 20202020 . }.. │ │ │ │ - 0x00433e30 20202f2f 20537065 6369616c 20582d41 // Special X-A │ │ │ │ - 0x00433e40 4252454c 41544544 4e414d45 53202d3e BRELATEDNAMES -> │ │ │ │ - 0x00433e50 20582d53 504f5553 452f4d41 4e414745 X-SPOUSE/MANAGE │ │ │ │ - 0x00433e60 522f4153 53495354 414e540a 20202020 R/ASSISTANT. │ │ │ │ - 0x00433e70 20202069 203d2053 495a4528 52454c41 i = SIZE(RELA │ │ │ │ - 0x00433e80 5445444e 414d4553 29202d20 313b0a20 TEDNAMES) - 1;. │ │ │ │ - 0x00433e90 20202020 20207768 696c6520 2869203e while (i > │ │ │ │ - 0x00433ea0 3d203029 207b0a20 20202020 20202020 = 0) {. │ │ │ │ - 0x00433eb0 20696620 2847524f 55505f54 41475b69 if (GROUP_TAG[i │ │ │ │ - 0x00433ec0 5d20213d 20454d50 54592026 260a2020 ] != EMPTY &&. │ │ │ │ - 0x00433ed0 20202020 20202020 20202020 52454c41 RELA │ │ │ │ - 0x00433ee0 5445444e 414d4553 5b695d20 213d2055 TEDNAMES[i] != U │ │ │ │ - 0x00433ef0 4e415353 49474e45 4429207b 0a202020 NASSIGNED) {. │ │ │ │ - 0x00433f00 20202020 20202020 20207320 3d204c41 s = LA │ │ │ │ - 0x00433f10 42454c5b 695d3b0a 20202020 20202020 BEL[i];. │ │ │ │ - 0x00433f20 20202020 20696620 2873203d 3d202253 if (s == "S │ │ │ │ - 0x00433f30 706f7573 65222920 7b0a2020 20202020 pouse") {. │ │ │ │ - 0x00433f40 20202020 20202020 20206966 20285350 if (SP │ │ │ │ - 0x00433f50 4f555345 203d3d20 454d5054 5929207b OUSE == EMPTY) { │ │ │ │ - 0x00433f60 0a202020 20202020 20202020 20202020 . │ │ │ │ - 0x00433f70 20202020 53574150 2853504f 5553452c SWAP(SPOUSE, │ │ │ │ - 0x00433f80 2052454c 41544544 4e414d45 535b695d RELATEDNAMES[i] │ │ │ │ - 0x00433f90 293b0a20 20202020 20202020 20202020 );. │ │ │ │ - 0x00433fa0 20202020 20202f2f 2052454c 41544544 // RELATED │ │ │ │ - 0x00433fb0 4e414d45 535b695d 203d2055 4e415353 NAMES[i] = UNASS │ │ │ │ - 0x00433fc0 49474e45 443b0a20 20202020 20202020 IGNED;. │ │ │ │ - 0x00433fd0 20202020 2020207d 0a202020 20202020 }. │ │ │ │ - 0x00433fe0 20202020 20207d20 656c7365 20696620 } else if │ │ │ │ - 0x00433ff0 2873203d 3d20224d 616e6167 65722229 (s == "Manager") │ │ │ │ - 0x00434000 207b0a20 20202020 20202020 20202020 {. │ │ │ │ - 0x00434010 20202069 6620284d 414e4147 4552203d if (MANAGER = │ │ │ │ - 0x00434020 3d20454d 50545929 207b0a20 20202020 = EMPTY) {. │ │ │ │ - 0x00434030 20202020 20202020 20202020 20205357 SW │ │ │ │ - 0x00434040 4150284d 414e4147 45522c20 52454c41 AP(MANAGER, RELA │ │ │ │ - 0x00434050 5445444e 414d4553 5b695d29 3b0a2020 TEDNAMES[i]);. │ │ │ │ - 0x00434060 20202020 20202020 20202020 20202020 │ │ │ │ - 0x00434070 202f2f20 52454c41 5445444e 414d4553 // RELATEDNAMES │ │ │ │ - 0x00434080 5b695d20 3d20554e 41535349 474e4544 [i] = UNASSIGNED │ │ │ │ - 0x00434090 3b0a2020 20202020 20202020 20202020 ;. │ │ │ │ - 0x004340a0 20207d0a 20202020 20202020 20202020 }. │ │ │ │ - 0x004340b0 207d2065 6c736520 69662028 73203d3d } else if (s == │ │ │ │ - 0x004340c0 20224173 73697374 616e7422 29207b0a "Assistant") {. │ │ │ │ - 0x004340d0 20202020 20202020 20202020 20202020 │ │ │ │ - 0x004340e0 69662028 41535349 5354414e 54203d3d if (ASSISTANT == │ │ │ │ - 0x004340f0 20454d50 54592920 7b0a2020 20202020 EMPTY) {. │ │ │ │ - 0x00434100 20202020 20202020 20202020 20535741 SWA │ │ │ │ - 0x00434110 50284153 53495354 414e542c 2052454c P(ASSISTANT, REL │ │ │ │ - 0x00434120 41544544 4e414d45 535b695d 293b0a20 ATEDNAMES[i]);. │ │ │ │ - 0x00434130 20202020 20202020 20202020 20202020 │ │ │ │ - 0x00434140 20202f2f 2052454c 41544544 4e414d45 // RELATEDNAME │ │ │ │ - 0x00434150 535b695d 203d2055 4e415353 49474e45 S[i] = UNASSIGNE │ │ │ │ - 0x00434160 443b0a20 20202020 20202020 20202020 D;. │ │ │ │ - 0x00434170 2020207d 0a202020 20202020 20202020 }. │ │ │ │ - 0x00434180 20207d0a 20202020 20202020 20207d0a }. }. │ │ │ │ - 0x00434190 20202020 20202020 20206920 3d206920 i = i │ │ │ │ - 0x004341a0 2d20313b 0a202020 20202020 7d0a0a20 - 1;. }.. │ │ │ │ - 0x004341b0 20202020 20202f2f 20494d50 50202d3e // IMPP -> │ │ │ │ - 0x004341c0 20582d4a 41424245 522f4149 4d2f2e2e X-JABBER/AIM/.. │ │ │ │ - 0x004341d0 2e206465 70656e64 696e6720 6f6e2073 . depending on s │ │ │ │ - 0x004341e0 65727669 63652074 7970652e 2050726f ervice type. Pro │ │ │ │ - 0x004341f0 746f636f 6c206d75 7374206d 61746368 tocol must match │ │ │ │ - 0x00434200 2e0a2020 20202020 2069203d 2053495a .. i = SIZ │ │ │ │ - 0x00434210 4528494d 50502920 2d20313b 0a202020 E(IMPP) - 1;. │ │ │ │ - 0x00434220 20202020 494e5445 47455220 6f666673 INTEGER offs │ │ │ │ - 0x00434230 65743b0a 20202020 20202053 5452494e et;. STRIN │ │ │ │ - 0x00434240 47207365 72766963 653b0a20 20202020 G service;. │ │ │ │ - 0x00434250 20205354 52494e47 2070726f 746f636f STRING protoco │ │ │ │ - 0x00434260 6c3b0a20 20202020 20205354 52494e47 l;. STRING │ │ │ │ - 0x00434270 2076616c 75653b0a 20202020 20202077 value;. w │ │ │ │ - 0x00434280 68696c65 20286920 3e3d2030 29207b0a hile (i >= 0) {. │ │ │ │ - 0x00434290 20202020 20202020 20207365 72766963 servic │ │ │ │ - 0x004342a0 65203d20 494d5050 5f534552 56494345 e = IMPP_SERVICE │ │ │ │ - 0x004342b0 5b695d3b 0a202020 20202020 20202069 [i];. i │ │ │ │ - 0x004342c0 66202873 65727669 63652021 3d20554e f (service != UN │ │ │ │ - 0x004342d0 41535349 474e4544 29207b0a 20202020 ASSIGNED) {. │ │ │ │ - 0x004342e0 20202020 20202020 206f6666 73657420 offset │ │ │ │ - 0x004342f0 3d204649 4e442849 4d50505b 695d2c20 = FIND(IMPP[i], │ │ │ │ - 0x00434300 223a2229 3b0a2020 20202020 20202020 ":");. │ │ │ │ - 0x00434310 20202069 6620286f 66667365 7420213d if (offset != │ │ │ │ - 0x00434320 20554e41 53534947 4e454429 207b0a20 UNASSIGNED) {. │ │ │ │ - 0x00434330 20202020 20202020 20202020 20202070 p │ │ │ │ - 0x00434340 726f746f 636f6c20 3d205355 42535452 rotocol = SUBSTR │ │ │ │ - 0x00434350 28494d50 505b695d 2c20302c 206f6666 (IMPP[i], 0, off │ │ │ │ - 0x00434360 73657429 3b0a2020 20202020 20202020 set);. │ │ │ │ - 0x00434370 20202020 20207661 6c756520 3d205552 value = UR │ │ │ │ - 0x00434380 4c444543 4f444528 53554253 54522849 LDECODE(SUBSTR(I │ │ │ │ - 0x00434390 4d50505b 695d2c20 6f666673 6574202b MPP[i], offset + │ │ │ │ - 0x004343a0 20312929 3b0a2020 20202020 20202020 1));. │ │ │ │ - 0x004343b0 20202020 20206966 20287365 72766963 if (servic │ │ │ │ - 0x004343c0 65203d3d 20224149 4d222026 26207072 e == "AIM" && pr │ │ │ │ - 0x004343d0 6f746f63 6f6c203d 3d202261 696d2229 otocol == "aim") │ │ │ │ - 0x004343e0 207b0a20 20202020 20202020 20202020 {. │ │ │ │ - 0x004343f0 20202020 20202456 43415244 5f4d4f44 $VCARD_MOD │ │ │ │ - 0x00434400 45524e5f 544f5f4c 45474143 595f494d ERN_TO_LEGACY_IM │ │ │ │ - 0x00434410 50502876 616c7565 2c204149 4d5f4841 PP(value, AIM_HA │ │ │ │ - 0x00434420 4e444c45 2c204149 4d5f534c 4f542c20 NDLE, AIM_SLOT, │ │ │ │ - 0x00434430 69293b0a 20202020 20202020 20202020 i);. │ │ │ │ - 0x00434440 20202020 7d20656c 73652069 66202873 } else if (s │ │ │ │ - 0x00434450 65727669 6365203d 3d202247 61647567 ervice == "Gadug │ │ │ │ - 0x00434460 61647522 29207b0a 20202020 20202020 adu") {. │ │ │ │ - 0x00434470 20202020 20202020 20202024 56434152 $VCAR │ │ │ │ - 0x00434480 445f4d4f 4445524e 5f544f5f 4c454741 D_MODERN_TO_LEGA │ │ │ │ - 0x00434490 43595f49 4d505028 76616c75 652c2047 CY_IMPP(value, G │ │ │ │ - 0x004344a0 41445547 4144555f 48414e44 4c452c20 ADUGADU_HANDLE, │ │ │ │ - 0x004344b0 47414455 47414455 5f534c4f 542c2069 GADUGADU_SLOT, i │ │ │ │ - 0x004344c0 293b0a20 20202020 20202020 20202020 );. │ │ │ │ - 0x004344d0 2020207d 20656c73 65206966 20287365 } else if (se │ │ │ │ - 0x004344e0 72766963 65203d3d 20224772 6f757077 rvice == "Groupw │ │ │ │ - 0x004344f0 69736522 29207b0a 20202020 20202020 ise") {. │ │ │ │ - 0x00434500 20202020 20202020 20202024 56434152 $VCAR │ │ │ │ - 0x00434510 445f4d4f 4445524e 5f544f5f 4c454741 D_MODERN_TO_LEGA │ │ │ │ - 0x00434520 43595f49 4d505028 76616c75 652c2047 CY_IMPP(value, G │ │ │ │ - 0x00434530 524f5550 57495345 5f48414e 444c452c ROUPWISE_HANDLE, │ │ │ │ - 0x00434540 2047524f 55505749 53455f53 4c4f542c GROUPWISE_SLOT, │ │ │ │ - 0x00434550 2069293b 0a202020 20202020 20202020 i);. │ │ │ │ - 0x00434560 20202020 207d2065 6c736520 69662028 } else if ( │ │ │ │ - 0x00434570 73657276 69636520 3d3d2022 49435122 service == "ICQ" │ │ │ │ - 0x00434580 20262620 70726f74 6f636f6c 203d3d20 && protocol == │ │ │ │ - 0x00434590 2261696d 2229207b 0a202020 20202020 "aim") {. │ │ │ │ - 0x004345a0 20202020 20202020 20202020 24564341 $VCA │ │ │ │ - 0x004345b0 52445f4d 4f444552 4e5f544f 5f4c4547 RD_MODERN_TO_LEG │ │ │ │ - 0x004345c0 4143595f 494d5050 2876616c 75652c20 ACY_IMPP(value, │ │ │ │ - 0x004345d0 4943515f 48414e44 4c452c20 4943515f ICQ_HANDLE, ICQ_ │ │ │ │ - 0x004345e0 534c4f54 2c206929 3b0a2020 20202020 SLOT, i);. │ │ │ │ - 0x004345f0 20202020 20202020 20207d20 656c7365 } else │ │ │ │ - 0x00434600 20696620 28736572 76696365 203d3d20 if (service == │ │ │ │ - 0x00434610 224a6162 62657222 20262620 70726f74 "Jabber" && prot │ │ │ │ - 0x00434620 6f636f6c 203d3d20 22786d70 70222920 ocol == "xmpp") │ │ │ │ - 0x00434630 7b0a2020 20202020 20202020 20202020 {. │ │ │ │ - 0x00434640 20202020 20245643 4152445f 4d4f4445 $VCARD_MODE │ │ │ │ - 0x00434650 524e5f54 4f5f4c45 47414359 5f494d50 RN_TO_LEGACY_IMP │ │ │ │ - 0x00434660 50287661 6c75652c 204a4142 4245525f P(value, JABBER_ │ │ │ │ - 0x00434670 48414e44 4c452c20 4a414242 45525f53 HANDLE, JABBER_S │ │ │ │ - 0x00434680 4c4f542c 2069293b 0a202020 20202020 LOT, i);. │ │ │ │ - 0x00434690 20202020 20202020 207d2065 6c736520 } else │ │ │ │ - 0x004346a0 69662028 73657276 69636520 3d3d2022 if (service == " │ │ │ │ - 0x004346b0 4d534e22 20262620 70726f74 6f636f6c MSN" && protocol │ │ │ │ - 0x004346c0 203d3d20 226d736e 696d2229 207b0a20 == "msnim") {. │ │ │ │ - 0x004346d0 20202020 20202020 20202020 20202020 │ │ │ │ - 0x004346e0 20202456 43415244 5f4d4f44 45524e5f $VCARD_MODERN_ │ │ │ │ - 0x004346f0 544f5f4c 45474143 595f494d 50502876 TO_LEGACY_IMPP(v │ │ │ │ - 0x00434700 616c7565 2c204d53 4e5f4841 4e444c45 alue, MSN_HANDLE │ │ │ │ - 0x00434710 2c204d53 4e5f534c 4f542c20 69293b0a , MSN_SLOT, i);. │ │ │ │ - 0x00434720 20202020 20202020 20202020 20202020 │ │ │ │ - 0x00434730 7d20656c 73652069 66202873 65727669 } else if (servi │ │ │ │ - 0x00434740 6365203d 3d202259 61686f6f 22202626 ce == "Yahoo" && │ │ │ │ - 0x00434750 2070726f 746f636f 6c203d3d 2022796d protocol == "ym │ │ │ │ - 0x00434760 73677222 29207b0a 20202020 20202020 sgr") {. │ │ │ │ - 0x00434770 20202020 20202020 20202024 56434152 $VCAR │ │ │ │ - 0x00434780 445f4d4f 4445524e 5f544f5f 4c454741 D_MODERN_TO_LEGA │ │ │ │ - 0x00434790 43595f49 4d505028 76616c75 652c2059 CY_IMPP(value, Y │ │ │ │ - 0x004347a0 41484f4f 5f48414e 444c452c 20594148 AHOO_HANDLE, YAH │ │ │ │ - 0x004347b0 4f4f5f53 4c4f542c 2069293b 0a202020 OO_SLOT, i);. │ │ │ │ - 0x004347c0 20202020 20202020 20202020 207d2065 } e │ │ │ │ - 0x004347d0 6c736520 69662028 73657276 69636520 lse if (service │ │ │ │ - 0x004347e0 3d3d2022 536b7970 65222026 26207072 == "Skype" && pr │ │ │ │ - 0x004347f0 6f746f63 6f6c203d 3d202273 6b797065 otocol == "skype │ │ │ │ - 0x00434800 2229207b 0a202020 20202020 20202020 ") {. │ │ │ │ - 0x00434810 20202020 20202020 24564341 52445f4d $VCARD_M │ │ │ │ - 0x00434820 4f444552 4e5f544f 5f4c4547 4143595f ODERN_TO_LEGACY_ │ │ │ │ - 0x00434830 494d5050 2876616c 75652c20 534b5950 IMPP(value, SKYP │ │ │ │ - 0x00434840 455f4841 4e444c45 2c20534b 5950455f E_HANDLE, SKYPE_ │ │ │ │ - 0x00434850 534c4f54 2c206929 3b0a2020 20202020 SLOT, i);. │ │ │ │ - 0x00434860 20202020 20202020 20207d20 656c7365 } else │ │ │ │ - 0x00434870 20696620 28736572 76696365 203d3d20 if (service == │ │ │ │ - 0x00434880 22536970 2229207b 0a202020 20202020 "Sip") {. │ │ │ │ - 0x00434890 20202020 20202020 20202020 24564341 $VCA │ │ │ │ - 0x004348a0 52445f4d 4f444552 4e5f544f 5f4c4547 RD_MODERN_TO_LEG │ │ │ │ - 0x004348b0 4143595f 494d5050 2876616c 75652c20 ACY_IMPP(value, │ │ │ │ - 0x004348c0 5349505f 48414e44 4c452c20 5349505f SIP_HANDLE, SIP_ │ │ │ │ - 0x004348d0 534c4f54 2c206929 3b0a2020 20202020 SLOT, i);. │ │ │ │ - 0x004348e0 20202020 20202020 20207d0a 20202020 }. │ │ │ │ - 0x004348f0 20202020 20202020 207d0a20 20202020 }. │ │ │ │ - 0x00434900 20202020 207d0a20 20202020 20202020 }. │ │ │ │ - 0x00434910 2069203d 2069202d 20313b0a 20202020 i = i - 1;. │ │ │ │ - 0x00434920 2020207d 0a0a0a20 20202020 20202f2f }... // │ │ │ │ - 0x00434930 2052656d 6f766520 6c616265 6c732077 Remove labels w │ │ │ │ - 0x00434940 68696368 20617265 206e6f20 6c6f6e67 hich are no long │ │ │ │ - 0x00434950 6572206e 65656465 64202876 616c7565 er needed (value │ │ │ │ - 0x00434960 64206d6f 76656420 61626f76 652c0a20 d moved above,. │ │ │ │ - 0x00434970 20202020 20202f2f 2073746f 72656420 // stored │ │ │ │ - 0x00434980 666f7220 61206772 6f757020 77686963 for a group whic │ │ │ │ - 0x00434990 68206861 73206e6f 206f7468 65722070 h has no other p │ │ │ │ - 0x004349a0 726f7065 72746965 73202847 6f6f676c roperties (Googl │ │ │ │ - 0x004349b0 650a2020 20202020 202f2f20 43617264 e. // Card │ │ │ │ - 0x004349c0 44415620 73657276 65722073 6f6d6574 DAV server somet │ │ │ │ - 0x004349d0 696d6573 2073656e 64732074 6861742c imes sends that, │ │ │ │ - 0x004349e0 20656469 74696e67 20696e20 45766f6c editing in Evol │ │ │ │ - 0x004349f0 7574696f 6e0a2020 20202020 202f2f20 ution. // │ │ │ │ - 0x00434a00 6d696768 74206361 75736520 69742c20 might cause it, │ │ │ │ - 0x00434a10 6574632e 29206f72 2070726f 76696465 etc.) or provide │ │ │ │ - 0x00434a20 206e6f20 696e666f 726d6174 696f6e20 no information │ │ │ │ - 0x00434a30 28224f74 68657222 292e0a20 20202020 ("Other").. │ │ │ │ - 0x00434a40 20206920 3d205349 5a45284c 4142454c i = SIZE(LABEL │ │ │ │ - 0x00434a50 29202d20 313b0a20 20202020 20207768 ) - 1;. wh │ │ │ │ - 0x00434a60 696c6520 2869203e 3d203029 207b0a20 ile (i >= 0) {. │ │ │ │ - 0x00434a70 20202020 20202020 20696620 284c4142 if (LAB │ │ │ │ - 0x00434a80 454c5b69 5d203d3d 20224f74 68657222 EL[i] == "Other" │ │ │ │ - 0x00434a90 207c7c0a 20202020 20202020 20202020 ||. │ │ │ │ - 0x00434aa0 20204c41 42454c5b 695d2021 3d20554e LABEL[i] != UN │ │ │ │ - 0x00434ab0 41535349 474e4544 2026260a 20202020 ASSIGNED &&. │ │ │ │ - 0x00434ac0 20202020 20202020 20202847 524f5550 (GROUP │ │ │ │ - 0x00434ad0 5f544147 5b695d20 3d3d2045 4d505459 _TAG[i] == EMPTY │ │ │ │ - 0x00434ae0 207c7c0a 20202020 20202020 20202020 ||. │ │ │ │ - 0x00434af0 20202052 454c4154 45444e41 4d45535b RELATEDNAMES[ │ │ │ │ - 0x00434b00 695d203d 3d20554e 41535349 474e4544 i] == UNASSIGNED │ │ │ │ - 0x00434b10 2026260a 20202020 20202020 20202020 &&. │ │ │ │ - 0x00434b20 20202058 44415445 5b695d20 3d3d2055 XDATE[i] == U │ │ │ │ - 0x00434b30 4e415353 49474e45 44202626 0a202020 NASSIGNED &&. │ │ │ │ - 0x00434b40 20202020 20202020 20202020 54454c5b TEL[ │ │ │ │ - 0x00434b50 695d203d 3d20554e 41535349 474e4544 i] == UNASSIGNED │ │ │ │ - 0x00434b60 2026260a 20202020 20202020 20202020 &&. │ │ │ │ - 0x00434b70 20202045 4d41494c 5b695d20 3d3d2055 EMAIL[i] == U │ │ │ │ - 0x00434b80 4e415353 49474e45 44202626 0a202020 NASSIGNED &&. │ │ │ │ - 0x00434b90 20202020 20202020 20202020 5745425b WEB[ │ │ │ │ - 0x00434ba0 695d203d 3d20554e 41535349 474e4544 i] == UNASSIGNED │ │ │ │ - 0x00434bb0 2026260a 20202020 20202020 20202020 &&. │ │ │ │ - 0x00434bc0 20202058 44415445 5b695d20 3d3d2055 XDATE[i] == U │ │ │ │ - 0x00434bd0 4e415353 49474e45 44202626 0a202020 NASSIGNED &&. │ │ │ │ - 0x00434be0 20202020 20202020 20202020 494d5050 IMPP │ │ │ │ - 0x00434bf0 5b695d20 3d3d2055 4e415353 49474e45 [i] == UNASSIGNE │ │ │ │ - 0x00434c00 44202626 0a202020 20202020 20202020 D &&. │ │ │ │ - 0x00434c10 20202020 4144525f 504f424f 585b695d ADR_POBOX[i] │ │ │ │ - 0x00434c20 203d3d20 554e4153 5349474e 45442026 == UNASSIGNED & │ │ │ │ - 0x00434c30 260a2020 20202020 20202020 20202020 &. │ │ │ │ - 0x00434c40 20414452 5f414444 544c5b69 5d203d3d ADR_ADDTL[i] == │ │ │ │ - 0x00434c50 20554e41 53534947 4e454420 26260a20 UNASSIGNED &&. │ │ │ │ - 0x00434c60 20202020 20202020 20202020 20204144 AD │ │ │ │ - 0x00434c70 525f5354 52454554 5b695d20 3d3d2055 R_STREET[i] == U │ │ │ │ - 0x00434c80 4e415353 49474e45 44202626 0a202020 NASSIGNED &&. │ │ │ │ - 0x00434c90 20202020 20202020 20202020 4144525f ADR_ │ │ │ │ - 0x00434ca0 43495459 5b695d20 3d3d2055 4e415353 CITY[i] == UNASS │ │ │ │ - 0x00434cb0 49474e45 44202626 0a202020 20202020 IGNED &&. │ │ │ │ - 0x00434cc0 20202020 20202020 4144525f 5245475b ADR_REG[ │ │ │ │ - 0x00434cd0 695d203d 3d20554e 41535349 474e4544 i] == UNASSIGNED │ │ │ │ - 0x00434ce0 2026260a 20202020 20202020 20202020 &&. │ │ │ │ - 0x00434cf0 20202041 44525f5a 49505b69 5d203d3d ADR_ZIP[i] == │ │ │ │ - 0x00434d00 20554e41 53534947 4e454420 26260a20 UNASSIGNED &&. │ │ │ │ - 0x00434d10 20202020 20202020 20202020 20204144 AD │ │ │ │ - 0x00434d20 525f434f 554e5452 595b695d 203d3d20 R_COUNTRY[i] == │ │ │ │ - 0x00434d30 554e4153 5349474e 45442026 260a2020 UNASSIGNED &&. │ │ │ │ - 0x00434d40 20202020 20202020 20202020 20414452 ADR │ │ │ │ - 0x00434d50 5f535452 4545545f 464c4147 535b695d _STREET_FLAGS[i] │ │ │ │ - 0x00434d60 203d3d20 554e4153 5349474e 45442929 == UNASSIGNED)) │ │ │ │ - 0x00434d70 207b0a20 20202020 20202020 20202020 {. │ │ │ │ - 0x00434d80 20204c41 42454c5b 695d203d 20554e41 LABEL[i] = UNA │ │ │ │ - 0x00434d90 53534947 4e45443b 0a202020 20202020 SSIGNED;. │ │ │ │ - 0x00434da0 2020207d 0a202020 20202020 20202069 }. i │ │ │ │ - 0x00434db0 203d2069 202d2031 3b0a2020 20202020 = i - 1;. │ │ │ │ - 0x00434dc0 207d0a0a 20202020 2020202f 2f205265 }.. // Re │ │ │ │ - 0x00434dd0 6d6f7665 20616c6c 2067726f 75702074 move all group t │ │ │ │ - 0x00434de0 6167732e 204e6f74 20757365 6420666f ags. Not used fo │ │ │ │ - 0x00434df0 72206c65 67616379 20666f72 6d617473 r legacy formats │ │ │ │ - 0x00434e00 2e0a2020 20202020 2047524f 55505f54 .. GROUP_T │ │ │ │ - 0x00434e10 4147203d 20554e41 53534947 4e45443b AG = UNASSIGNED; │ │ │ │ - 0x00434e20 0a202020 205d5d3e 3c2f6d61 63726f3e . ]]> │ │ │ │ - 0x00434e30 0a0a2020 20203c21 2d2d2054 6865206c .. .. . < │ │ │ │ - 0x00434fa0 215b4344 4154415b 0a202020 20202020 ![CDATA[. │ │ │ │ - 0x00434fb0 69662028 24312021 3d20454d 50545929 if ($1 != EMPTY) │ │ │ │ - 0x00434fc0 207b0a20 20202020 20202020 202f2f20 {. // │ │ │ │ - 0x00434fd0 53545249 4e472074 61673b0a 20202020 STRING tag;. │ │ │ │ - 0x00434fe0 20202020 2020494e 54454745 52206e75 INTEGER nu │ │ │ │ - 0x00434ff0 6d3b0a20 20202020 20202020 206e756d m;. num │ │ │ │ - 0x00435000 203d2053 495a4528 4c414245 4c293b0a = SIZE(LABEL);. │ │ │ │ - 0x00435010 20202020 20202020 20202f2f 20244e45 // $NE │ │ │ │ - 0x00435020 57544147 28746167 2c204752 4f55505f WTAG(tag, GROUP_ │ │ │ │ - 0x00435030 54414729 3b0a2020 20202020 20202020 TAG);. │ │ │ │ - 0x00435040 53574150 2852454c 41544544 4e414d45 SWAP(RELATEDNAME │ │ │ │ - 0x00435050 535b6e75 6d5d2c20 2431293b 0a202020 S[num], $1);. │ │ │ │ - 0x00435060 20202020 2020204c 4142454c 5b6e756d LABEL[num │ │ │ │ - 0x00435070 5d203d20 24323b0a 20202020 20202020 ] = $2;. │ │ │ │ - 0x00435080 20202f2f 2047524f 55505f54 41475b6e // GROUP_TAG[n │ │ │ │ - 0x00435090 756d5d20 3d207461 673b0a20 20202020 um] = tag;. │ │ │ │ - 0x004350a0 20202020 202f2f20 2431203d 20554e41 // $1 = UNA │ │ │ │ - 0x004350b0 53534947 4e45443b 0a202020 20202020 SSIGNED;. │ │ │ │ - 0x004350c0 7d0a2020 20205d5d 3e3c2f6d 6163726f }. ]]>.. . = 0) {. │ │ │ │ - 0x00435190 20202020 20202020 20696620 2824335b if ($3[ │ │ │ │ - 0x004351a0 696d7070 5f696e64 65785d20 213d2045 impp_index] != E │ │ │ │ - 0x004351b0 4d505459 29207b0a 20202020 20202020 MPTY) {. │ │ │ │ - 0x004351c0 20202020 20494e54 45474552 206e756d INTEGER num │ │ │ │ - 0x004351d0 3b0a2020 20202020 20202020 2020206e ;. n │ │ │ │ - 0x004351e0 756d203d 2053495a 45284c41 42454c29 um = SIZE(LABEL) │ │ │ │ - 0x004351f0 3b0a2020 20202020 20202020 20202049 ;. I │ │ │ │ - 0x00435200 4d50505b 6e756d5d 203d2024 32202b20 MPP[num] = $2 + │ │ │ │ - 0x00435210 223a2220 2b205552 4c454e43 4f444528 ":" + URLENCODE( │ │ │ │ - 0x00435220 24335b69 6d70705f 696e6465 785d293b $3[impp_index]); │ │ │ │ - 0x00435230 0a202020 20202020 20202020 20202433 . $3 │ │ │ │ - 0x00435240 5b696d70 705f696e 6465785d 203d2055 [impp_index] = U │ │ │ │ - 0x00435250 4e415353 49474e45 443b0a20 20202020 NASSIGNED;. │ │ │ │ - 0x00435260 20202020 20202020 53574150 2824345b SWAP($4[ │ │ │ │ - 0x00435270 696d7070 5f696e64 65785d2c 20494d50 impp_index], IMP │ │ │ │ - 0x00435280 505f534c 4f545b6e 756d5d29 3b0a2020 P_SLOT[num]);. │ │ │ │ - 0x00435290 20202020 20202020 20202049 4d50505f IMPP_ │ │ │ │ - 0x004352a0 53455256 4943455b 6e756d5d 203d2024 SERVICE[num] = $ │ │ │ │ - 0x004352b0 313b0a20 20202020 20202020 20202020 1;. │ │ │ │ - 0x004352c0 4c414245 4c5b6e75 6d5d203d 20224f74 LABEL[num] = "Ot │ │ │ │ - 0x004352d0 68657222 3b0a2020 20202020 20202020 her";. │ │ │ │ - 0x004352e0 7d0a2020 20202020 20202020 696d7070 }. impp │ │ │ │ - 0x004352f0 5f696e64 6578203d 20696d70 705f696e _index = impp_in │ │ │ │ - 0x00435300 64657820 2d20313b 0a202020 20202020 dex - 1;. │ │ │ │ - 0x00435310 7d0a2020 20205d5d 3e3c2f6d 6163726f }. ]]>.. . = │ │ │ │ - 0x00435b40 20302920 7b0a2020 20202020 20202020 0) {. │ │ │ │ - 0x00435b50 69662028 4c414245 4c5b695d 20213d20 if (LABEL[i] != │ │ │ │ - 0x00435b60 454d5054 5929207b 0a202020 20202020 EMPTY) {. │ │ │ │ - 0x00435b70 20202020 20204752 4f55505f 5441475b GROUP_TAG[ │ │ │ │ - 0x00435b80 695d203d 20226974 656d2220 2b207461 i] = "item" + ta │ │ │ │ - 0x00435b90 676e756d 3b0a2020 20202020 20202020 gnum;. │ │ │ │ - 0x00435ba0 20202074 61676e75 6d203d20 7461676e tagnum = tagn │ │ │ │ - 0x00435bb0 756d202b 20313b0a 20202020 20202020 um + 1;. │ │ │ │ - 0x00435bc0 20207d0a 20202020 20202020 20206920 }. i │ │ │ │ - 0x00435bd0 3d206920 2d20313b 0a202020 20202020 = i - 1;. │ │ │ │ - 0x00435be0 7d0a2020 20205d5d 3e3c2f6d 6163726f }. ]]>.. .. │ │ │ │ - 0x00435c80 20202020 3c6d6163 726f206e 616d653d │ │ │ │ - 0x00435cb0 3c215b43 44415441 5b0a2020 20202020 < │ │ │ │ - 0x00435d00 2f6d6163 726f3e20 2020203c 212d2d20 /macro> .. │ │ │ │ - 0x00435d70 3c6d6163 726f206e 616d653d 22564341 0) {. │ │ │ │ - 0x004361c0 20202020 2020202f 2f204454 53544152 // DTSTAR │ │ │ │ - 0x004361d0 5420616e 64204454 454e4420 72657072 T and DTEND repr │ │ │ │ - 0x004361e0 6573656e 7420616c 6c646179 20657665 esent allday eve │ │ │ │ - 0x004361f0 6e742c20 6d616b65 20746865 6d206461 nt, make them da │ │ │ │ - 0x00436200 74652d6f 6e6c7920 76616c75 65730a20 te-only values. │ │ │ │ - 0x00436210 20202020 20202020 202f2f20 2d20636f // - co │ │ │ │ - 0x00436220 6e766572 74207374 61727420 746f2075 nvert start to u │ │ │ │ - 0x00436230 73657220 7a6f6e65 20286f72 20666c6f ser zone (or flo │ │ │ │ - 0x00436240 6174696e 67292073 6f206974 20726570 ating) so it rep │ │ │ │ - 0x00436250 72657365 6e747320 6d69646e 69676874 resents midnight │ │ │ │ - 0x00436260 0a202020 20202020 20202044 54535441 . DTSTA │ │ │ │ - 0x00436270 5254203d 20434f4e 56455254 544f5553 RT = CONVERTTOUS │ │ │ │ - 0x00436280 45525a4f 4e452844 54535441 5254293b ERZONE(DTSTART); │ │ │ │ - 0x00436290 0a202020 20202020 2020204d 414b4541 . MAKEA │ │ │ │ - 0x004362a0 4c4c4441 59284454 53544152 542c4454 LLDAY(DTSTART,DT │ │ │ │ - 0x004362b0 454e442c 69293b0a 20202020 20202020 END,i);. │ │ │ │ - 0x004362c0 20206966 20285252 5f454e44 20213d20 if (RR_END != │ │ │ │ - 0x004362d0 454d5054 5929207b 0a202020 20202020 EMPTY) {. │ │ │ │ - 0x004362e0 20202020 20205252 5f454e44 203d2044 RR_END = D │ │ │ │ - 0x004362f0 4154454f 4e4c5928 434f4e56 45525454 ATEONLY(CONVERTT │ │ │ │ - 0x00436300 4f555345 525a4f4e 45285252 5f454e44 OUSERZONE(RR_END │ │ │ │ - 0x00436310 29293b0a 20202020 20202020 20207d0a ));. }. │ │ │ │ - 0x00436320 20202020 20202020 7d0a2020 20202020 }. │ │ │ │ - 0x00436330 2020656c 7365207b 0a202020 20202020 else {. │ │ │ │ - 0x00436340 2020202f 2f206943 616c656e 64617220 // iCalendar │ │ │ │ - 0x00436350 322e3020 2d206f6e 6c792069 66204454 2.0 - only if DT │ │ │ │ - 0x00436360 53544152 54206973 20612064 6174652d START is a date- │ │ │ │ - 0x00436370 6f6e6c79 2076616c 75652074 68697320 only value this │ │ │ │ - 0x00436380 7265616c 6c792069 7320616e 20616c6c really is an all │ │ │ │ - 0x00436390 6461790a 20202020 20202020 20206966 day. if │ │ │ │ - 0x004363a0 20284953 44415445 4f4e4c59 28445453 (ISDATEONLY(DTS │ │ │ │ - 0x004363b0 54415254 2929207b 0a202020 20202020 TART)) {. │ │ │ │ - 0x004363c0 20202020 202f2f20 72657368 61706520 // reshape │ │ │ │ - 0x004363d0 746f206d 616b6520 73757265 20776520 to make sure we │ │ │ │ - 0x004363e0 646f6e27 74206861 76652069 6e76616c don't have inval │ │ │ │ - 0x004363f0 6964207a 65726f2d 64757261 74696f6e id zero-duration │ │ │ │ - 0x00436400 20616c6c 64617973 20286f6c 64204f43 alldays (old OC │ │ │ │ - 0x00436410 53203920 73657276 65727329 0a202020 S 9 servers). │ │ │ │ - 0x00436420 20202020 20202020 204d414b 45414c4c MAKEALL │ │ │ │ - 0x00436430 44415928 44545354 4152542c 4454454e DAY(DTSTART,DTEN │ │ │ │ - 0x00436440 442c6929 3b0a2020 20202020 20202020 D,i);. │ │ │ │ - 0x00436450 7d0a2020 20202020 20207d0a 0a202020 }. }.. │ │ │ │ - 0x00436460 20202020 202f2f20 4d616b65 20737572 // Make sur │ │ │ │ - 0x00436470 65207468 61742061 6c6c2045 58444154 e that all EXDAT │ │ │ │ - 0x00436480 45207469 6d657320 61726520 696e2074 E times are in t │ │ │ │ - 0x00436490 68652073 616d6520 74696d65 7a6f6e65 he same timezone │ │ │ │ - 0x004364a0 20617320 74686520 73746172 740a2020 as the start. │ │ │ │ - 0x004364b0 20202020 20202f2f 2074696d 652e2053 // time. S │ │ │ │ - 0x004364c0 6f6d6520 73657276 65727320 73656e64 ome servers send │ │ │ │ - 0x004364d0 20746865 6d206173 20555443 2c207768 them as UTC, wh │ │ │ │ - 0x004364e0 69636820 69732061 6c6c2066 696e6520 ich is all fine │ │ │ │ - 0x004364f0 616e6420 77656c6c 2c206275 740a2020 and well, but. │ │ │ │ - 0x00436500 20202020 20202f2f 206f6e6c 79206966 // only if │ │ │ │ - 0x00436510 20746865 2074696d 657a6f6e 65206465 the timezone de │ │ │ │ - 0x00436520 66696e69 74696f6e 20646f65 736e2774 finition doesn't │ │ │ │ - 0x00436530 20636861 6e67652e 20416c73 6f2c206c change. Also, l │ │ │ │ - 0x00436540 69626963 616c2064 6f657320 6e6f740a ibical does not. │ │ │ │ - 0x00436550 20202020 20202020 2f2f2068 616e646c // handl │ │ │ │ - 0x00436560 65207375 63682055 54432045 58444154 e such UTC EXDAT │ │ │ │ - 0x00436570 45732c20 736f206c 65742773 20636f6e Es, so let's con │ │ │ │ - 0x00436580 76657274 20697420 7768696c 65207468 vert it while th │ │ │ │ - 0x00436590 65205554 4320616e 640a2020 20202020 e UTC and. │ │ │ │ - 0x004365a0 20202f2f 2074696d 65207a6f 6e652064 // time zone d │ │ │ │ - 0x004365b0 6566696e 6974696f 6e202868 6f706566 efinition (hopef │ │ │ │ - 0x004365c0 756c6c79 29206172 6520696e 2073796e ully) are in syn │ │ │ │ - 0x004365d0 632e0a20 20202020 20202069 66202854 c.. if (T │ │ │ │ - 0x004365e0 494d455a 4f4e4528 44545354 41525429 IMEZONE(DTSTART) │ │ │ │ - 0x004365f0 20213d20 22555443 22202626 20214953 != "UTC" && !IS │ │ │ │ - 0x00436600 464c4f41 54494e47 28445453 54415254 FLOATING(DTSTART │ │ │ │ - 0x00436610 2929207b 0a202020 20202020 20202069 )) {. i │ │ │ │ - 0x00436620 203d2030 3b0a2020 20202020 20202020 = 0;. │ │ │ │ - 0x00436630 74696d65 7374616d 70206578 64617465 timestamp exdate │ │ │ │ - 0x00436640 3b0a2020 20202020 20202020 7768696c ;. whil │ │ │ │ - 0x00436650 65202869 3c53495a 45284558 44415445 e (i0) {. │ │ │ │ - 0x004371a0 20202020 20445545 203d2043 4f4e5645 DUE = CONVE │ │ │ │ - 0x004371b0 5254544f 55534552 5a4f4e45 28445545 RTTOUSERZONE(DUE │ │ │ │ - 0x004371c0 293b0a20 20202020 20202020 20445545 );. DUE │ │ │ │ - 0x004371d0 203d2044 4154454f 4e4c5928 44554529 = DATEONLY(DUE) │ │ │ │ - 0x004371e0 3b0a2020 20202020 20207d0a 20202020 ;. }. │ │ │ │ - 0x004371f0 20202020 69662028 4954454d 44415441 if (ITEMDATA │ │ │ │ - 0x00437200 54595045 28293d3d 22764361 6c656e64 TYPE()=="vCalend │ │ │ │ - 0x00437210 61723130 2229207b 0a202020 20202020 ar10") {. │ │ │ │ - 0x00437220 20202024 5643414c 454e4441 525f3130 $VCALENDAR_10 │ │ │ │ - 0x00437230 544f3230 5f505249 4f524954 595f434f TO20_PRIORITY_CO │ │ │ │ - 0x00437240 4e564552 53494f4e 3b0a2020 20202020 NVERSION;. │ │ │ │ - 0x00437250 20207d0a 20202020 20207d0a 20202020 }. }. │ │ │ │ - 0x00437260 20202f2f 20612077 6f726b61 726f756e // a workaroun │ │ │ │ - 0x00437270 6420666f 72206675 6e616d62 6f6c3a20 d for funambol: │ │ │ │ - 0x00437280 61646469 6e672027 61637469 6f6e2720 adding 'action' │ │ │ │ - 0x00437290 666f7220 27616c61 726d270a 20202020 for 'alarm'. │ │ │ │ - 0x004372a0 20202f2f 20696620 6974656d 20646174 // if item dat │ │ │ │ - 0x004372b0 61207479 70652069 73207643 616c656e a type is vCalen │ │ │ │ - 0x004372c0 64617231 2e302c20 616c736f 20616464 dar1.0, also add │ │ │ │ - 0x004372d0 20276163 74696f6e 2720666f 72202761 'action' for 'a │ │ │ │ - 0x004372e0 6c61726d 272e0a20 20202020 202f2f20 larm'.. // │ │ │ │ - 0x004372f0 54686973 20697320 6120776f 726b6172 This is a workar │ │ │ │ - 0x00437300 6f756e64 20666f72 204d6f62 6963616c ound for Mobical │ │ │ │ - 0x00437310 2e6e6574 2c207768 69636820 75736573 .net, which uses │ │ │ │ - 0x00437320 20764361 6c656e64 6172312e 302e0a20 vCalendar1.0.. │ │ │ │ - 0x00437330 20202020 20696620 28414c41 524d5f54 if (ALARM_T │ │ │ │ - 0x00437340 494d4521 3d454d50 54592026 2620414c IME!=EMPTY && AL │ │ │ │ - 0x00437350 41524d5f 41435449 4f4e3d3d 454d5054 ARM_ACTION==EMPT │ │ │ │ - 0x00437360 5929207b 0a202020 20202020 20202041 Y) {. A │ │ │ │ - 0x00437370 4c41524d 5f414354 494f4e20 3d202244 LARM_ACTION = "D │ │ │ │ - 0x00437380 4953504c 4159223b 0a202020 2020207d ISPLAY";. } │ │ │ │ - 0x00437390 0a202020 205d5d3e 3c2f6d61 63726f3e . ]]> │ │ │ │ - 0x004373a0 0a0a0a20 2020203c 6d616372 6f206e61 ... < │ │ │ │ - 0x004373d0 215b4344 4154415b 0a202020 2020202f ![CDATA[. / │ │ │ │ - 0x004373e0 2f207365 74205554 43207469 6d65206f / set UTC time o │ │ │ │ - 0x004373f0 66206765 6e657261 74696f6e 20666f72 f generation for │ │ │ │ - 0x00437400 20694361 6c656e64 61722032 2e302044 iCalendar 2.0 D │ │ │ │ - 0x00437410 54535441 4d500a20 20202020 20444745 TSTAMP. DGE │ │ │ │ - 0x00437420 4e455241 54454420 3d204e4f 5728293b NERATED = NOW(); │ │ │ │ - 0x00437430 0a202020 2020202f 2f206d61 6b652073 . // make s │ │ │ │ - 0x00437440 75726520 77652068 61766520 616c6c20 ure we have all │ │ │ │ - 0x00437450 74726169 6c696e67 20616e64 206c6561 trailing and lea │ │ │ │ - 0x00437460 64696e67 20737061 63657320 656c696d ding spaces elim │ │ │ │ - 0x00437470 696e6174 65640a20 20202020 20444553 inated. DES │ │ │ │ - 0x00437480 43524950 54494f4e 3d4e4f52 4d414c49 CRIPTION=NORMALI │ │ │ │ - 0x00437490 5a454428 44455343 52495054 494f4e29 ZED(DESCRIPTION) │ │ │ │ - 0x004374a0 3b0a2020 20202020 53554d4d 4152593d ;. SUMMARY= │ │ │ │ - 0x004374b0 4e4f524d 414c495a 45442853 554d4d41 NORMALIZED(SUMMA │ │ │ │ - 0x004374c0 5259293b 0a202020 20202069 66202849 RY);. if (I │ │ │ │ - 0x004374d0 53455645 4e542920 7b0a2020 20202020 SEVENT) {. │ │ │ │ - 0x004374e0 20202f2f 20564556 454e540a 20202020 // VEVENT. │ │ │ │ - 0x004374f0 20202020 2f2f202d 20636f6d 62696e65 // - combine │ │ │ │ - 0x00437500 20617474 656e6465 6520656d 61696c20 attendee email │ │ │ │ - 0x00437510 61646472 65737320 616e6420 636f6d6d address and comm │ │ │ │ - 0x00437520 6f6e206e 616d6520 696e746f 2073696e on name into sin │ │ │ │ - 0x00437530 676c6520 73747269 6e672066 6f722076 gle string for v │ │ │ │ - 0x00437540 43616c65 6e646172 20312e30 0a202020 Calendar 1.0. │ │ │ │ - 0x00437550 20202020 20696620 28495445 4d444154 if (ITEMDAT │ │ │ │ - 0x00437560 41545950 4528293d 3d227643 616c656e ATYPE()=="vCalen │ │ │ │ - 0x00437570 64617231 30222920 7b0a2020 20202020 dar10") {. │ │ │ │ - 0x00437580 20202020 693d303b 0a202020 20202020 i=0;. │ │ │ │ - 0x00437590 20202077 68696c65 28693c53 495a4528 while(i │ │ │ │ - 0x00437e70 3c2f6d61 63726f3e 0a0a2020 20203c6d .. .. . │ │ │ │ - 0x00438410 0a0a2020 20203c21 2d2d2069 6e766f6b .. . < │ │ │ │ - 0x00438490 215b4344 4154415b 0a202020 20495345 ![CDATA[. ISE │ │ │ │ - 0x004384a0 56454e54 203d2032 3b0a0a20 2020202f VENT = 2;.. / │ │ │ │ - 0x004384b0 2f20436f 70792073 756d6d61 72792069 / Copy summary i │ │ │ │ - 0x004384c0 6e746f20 64657363 72697074 696f6e2e nto description. │ │ │ │ - 0x004384d0 20497420 6973206e 6f742031 30302520 It is not 100% │ │ │ │ - 0x004384e0 63657274 61696e20 77686574 68657220 certain whether │ │ │ │ - 0x004384f0 74686174 2069730a 20202020 2f2f206e that is. // n │ │ │ │ - 0x00438500 65636573 73617279 20287468 65207375 ecessary (the su │ │ │ │ - 0x00438510 6d6d6172 79206d69 67687420 62652063 mmary might be c │ │ │ │ - 0x00438520 6f6d706c 6574656c 7920756e 72656c61 ompletely unrela │ │ │ │ - 0x00438530 74656420 746f2074 68652064 65736372 ted to the descr │ │ │ │ - 0x00438540 69707469 6f6e2074 65787429 2c0a2020 iption text),. │ │ │ │ - 0x00438550 20202f2f 20627574 20746869 73207761 // but this wa │ │ │ │ - 0x00438560 79206974 20697320 636f6e73 69737465 y it is consiste │ │ │ │ - 0x00438570 6e742077 69746820 74686520 77617920 nt with the way │ │ │ │ - 0x00438580 686f7720 74686520 45445320 6261636b how the EDS back │ │ │ │ - 0x00438590 656e6420 75736564 20746f20 68616e64 end used to hand │ │ │ │ - 0x004385a0 6c650a20 2020202f 2f206974 20616e64 le. // it and │ │ │ │ - 0x004385b0 2073796d 6d657472 69632077 69746820 symmetric with │ │ │ │ - 0x004385c0 4d454d4f 5f4f5554 474f494e 475f5343 MEMO_OUTGOING_SC │ │ │ │ - 0x004385d0 52495054 2e0a2020 20206966 20285355 RIPT.. if (SU │ │ │ │ - 0x004385e0 4d4d4152 5920213d 20454d50 54592026 MMARY != EMPTY & │ │ │ │ - 0x004385f0 26204445 53435249 5054494f 4e20213d & DESCRIPTION != │ │ │ │ - 0x00438600 20454d50 54592920 7b0a2020 20202020 EMPTY) {. │ │ │ │ - 0x00438610 20204445 53435249 5054494f 4e203d20 DESCRIPTION = │ │ │ │ - 0x00438620 53554d4d 41525920 2b20225c 6e22202b SUMMARY + "\n" + │ │ │ │ - 0x00438630 20444553 43524950 54494f4e 3b0a2020 DESCRIPTION;. │ │ │ │ - 0x00438640 20207d0a 20202020 5d5d3e3c 2f6d6163 }. ]]>.. . │ │ │ │ - 0x004386d0 3c215b43 44415441 5b0a2020 20202f2f = lensummar │ │ │ │ - 0x004387f0 79202626 0a202020 20202020 20535542 y &&. SUB │ │ │ │ - 0x00438800 53545228 44455343 52495054 494f4e2c STR(DESCRIPTION, │ │ │ │ - 0x00438810 20302c20 6c656e73 756d6d61 72792920 0, lensummary) │ │ │ │ - 0x00438820 3d3d2053 554d4d41 52592026 260a2020 == SUMMARY &&. │ │ │ │ - 0x00438830 20202020 2020286c 656e7375 6d6d6172 (lensummar │ │ │ │ - 0x00438840 79203d3d 206c656e 64657363 72207c7c y == lendescr || │ │ │ │ - 0x00438850 20535542 53545228 44455343 52495054 SUBSTR(DESCRIPT │ │ │ │ - 0x00438860 494f4e2c 206c656e 73756d6d 6172792c ION, lensummary, │ │ │ │ - 0x00438870 20312920 3d3d2022 5c6e2229 29207b0a 1) == "\n")) {. │ │ │ │ - 0x00438880 20202020 20202020 44455343 52495054 DESCRIPT │ │ │ │ - 0x00438890 494f4e20 3d205355 42535452 28444553 ION = SUBSTR(DES │ │ │ │ - 0x004388a0 43524950 54494f4e 2c206c65 6e73756d CRIPTION, lensum │ │ │ │ - 0x004388b0 6d617279 202b2031 2c206c65 6e646573 mary + 1, lendes │ │ │ │ - 0x004388c0 6372202d 206c656e 73756d6d 61727920 cr - lensummary │ │ │ │ - 0x004388d0 2d203129 3b0a2020 20207d0a 20202020 - 1);. }. │ │ │ │ - 0x004388e0 5d5d3e3c 2f6d6163 726f3e0a 0a202020 ]]>.. │ │ │ │ - 0x004388f0 203c6d61 63726f20 6e616d65 3d224341 . │ │ │ │ + 0x004338f0 3e0a0a0a 20202020 3c212d2d 20646566 >... .. 0) {. │ │ │ │ + 0x00433db0 20202020 2f2f2044 54535441 52542061 // DTSTART a │ │ │ │ + 0x00433dc0 6e642044 54454e44 20726570 72657365 nd DTEND represe │ │ │ │ + 0x00433dd0 6e742061 6c6c6461 79206576 656e742c nt allday event, │ │ │ │ + 0x00433de0 206d616b 65207468 656d2064 6174652d make them date- │ │ │ │ + 0x00433df0 6f6e6c79 2076616c 7565730a 20202020 only values. │ │ │ │ + 0x00433e00 20202020 20202f2f 202d2063 6f6e7665 // - conve │ │ │ │ + 0x00433e10 72742073 74617274 20746f20 75736572 rt start to user │ │ │ │ + 0x00433e20 207a6f6e 6520286f 7220666c 6f617469 zone (or floati │ │ │ │ + 0x00433e30 6e672920 736f2069 74207265 70726573 ng) so it repres │ │ │ │ + 0x00433e40 656e7473 206d6964 6e696768 740a2020 ents midnight. │ │ │ │ + 0x00433e50 20202020 20202020 44545354 41525420 DTSTART │ │ │ │ + 0x00433e60 3d20434f 4e564552 54544f55 5345525a = CONVERTTOUSERZ │ │ │ │ + 0x00433e70 4f4e4528 44545354 41525429 3b0a2020 ONE(DTSTART);. │ │ │ │ + 0x00433e80 20202020 20202020 4d414b45 414c4c44 MAKEALLD │ │ │ │ + 0x00433e90 41592844 54535441 52542c44 54454e44 AY(DTSTART,DTEND │ │ │ │ + 0x00433ea0 2c69293b 0a202020 20202020 20202069 ,i);. i │ │ │ │ + 0x00433eb0 66202852 525f454e 4420213d 20454d50 f (RR_END != EMP │ │ │ │ + 0x00433ec0 54592920 7b0a2020 20202020 20202020 TY) {. │ │ │ │ + 0x00433ed0 20202052 525f454e 44203d20 44415445 RR_END = DATE │ │ │ │ + 0x00433ee0 4f4e4c59 28434f4e 56455254 544f5553 ONLY(CONVERTTOUS │ │ │ │ + 0x00433ef0 45525a4f 4e452852 525f454e 4429293b ERZONE(RR_END)); │ │ │ │ + 0x00433f00 0a202020 20202020 2020207d 0a202020 . }. │ │ │ │ + 0x00433f10 20202020 207d0a20 20202020 20202065 }. e │ │ │ │ + 0x00433f20 6c736520 7b0a2020 20202020 20202020 lse {. │ │ │ │ + 0x00433f30 2f2f2069 43616c65 6e646172 20322e30 // iCalendar 2.0 │ │ │ │ + 0x00433f40 202d206f 6e6c7920 69662044 54535441 - only if DTSTA │ │ │ │ + 0x00433f50 52542069 73206120 64617465 2d6f6e6c RT is a date-onl │ │ │ │ + 0x00433f60 79207661 6c756520 74686973 20726561 y value this rea │ │ │ │ + 0x00433f70 6c6c7920 69732061 6e20616c 6c646179 lly is an allday │ │ │ │ + 0x00433f80 0a202020 20202020 20202069 66202849 . if (I │ │ │ │ + 0x00433f90 53444154 454f4e4c 59284454 53544152 SDATEONLY(DTSTAR │ │ │ │ + 0x00433fa0 54292920 7b0a2020 20202020 20202020 T)) {. │ │ │ │ + 0x00433fb0 20202f2f 20726573 68617065 20746f20 // reshape to │ │ │ │ + 0x00433fc0 6d616b65 20737572 65207765 20646f6e make sure we don │ │ │ │ + 0x00433fd0 27742068 61766520 696e7661 6c696420 't have invalid │ │ │ │ + 0x00433fe0 7a65726f 2d647572 6174696f 6e20616c zero-duration al │ │ │ │ + 0x00433ff0 6c646179 7320286f 6c64204f 43532039 ldays (old OCS 9 │ │ │ │ + 0x00434000 20736572 76657273 290a2020 20202020 servers). │ │ │ │ + 0x00434010 20202020 20204d41 4b45414c 4c444159 MAKEALLDAY │ │ │ │ + 0x00434020 28445453 54415254 2c445445 4e442c69 (DTSTART,DTEND,i │ │ │ │ + 0x00434030 293b0a20 20202020 20202020 207d0a20 );. }. │ │ │ │ + 0x00434040 20202020 2020207d 0a0a2020 20202020 }.. │ │ │ │ + 0x00434050 20202f2f 204d616b 65207375 72652074 // Make sure t │ │ │ │ + 0x00434060 68617420 616c6c20 45584441 54452074 hat all EXDATE t │ │ │ │ + 0x00434070 696d6573 20617265 20696e20 74686520 imes are in the │ │ │ │ + 0x00434080 73616d65 2074696d 657a6f6e 65206173 same timezone as │ │ │ │ + 0x00434090 20746865 20737461 72740a20 20202020 the start. │ │ │ │ + 0x004340a0 2020202f 2f207469 6d652e20 536f6d65 // time. Some │ │ │ │ + 0x004340b0 20736572 76657273 2073656e 64207468 servers send th │ │ │ │ + 0x004340c0 656d2061 73205554 432c2077 68696368 em as UTC, which │ │ │ │ + 0x004340d0 20697320 616c6c20 66696e65 20616e64 is all fine and │ │ │ │ + 0x004340e0 2077656c 6c2c2062 75740a20 20202020 well, but. │ │ │ │ + 0x004340f0 2020202f 2f206f6e 6c792069 66207468 // only if th │ │ │ │ + 0x00434100 65207469 6d657a6f 6e652064 6566696e e timezone defin │ │ │ │ + 0x00434110 6974696f 6e20646f 65736e27 74206368 ition doesn't ch │ │ │ │ + 0x00434120 616e6765 2e20416c 736f2c20 6c696269 ange. Also, libi │ │ │ │ + 0x00434130 63616c20 646f6573 206e6f74 0a202020 cal does not. │ │ │ │ + 0x00434140 20202020 202f2f20 68616e64 6c652073 // handle s │ │ │ │ + 0x00434150 75636820 55544320 45584441 5445732c uch UTC EXDATEs, │ │ │ │ + 0x00434160 20736f20 6c657427 7320636f 6e766572 so let's conver │ │ │ │ + 0x00434170 74206974 20776869 6c652074 68652055 t it while the U │ │ │ │ + 0x00434180 54432061 6e640a20 20202020 2020202f TC and. / │ │ │ │ + 0x00434190 2f207469 6d65207a 6f6e6520 64656669 / time zone defi │ │ │ │ + 0x004341a0 6e697469 6f6e2028 686f7065 66756c6c nition (hopefull │ │ │ │ + 0x004341b0 79292061 72652069 6e207379 6e632e0a y) are in sync.. │ │ │ │ + 0x004341c0 20202020 20202020 69662028 54494d45 if (TIME │ │ │ │ + 0x004341d0 5a4f4e45 28445453 54415254 2920213d ZONE(DTSTART) != │ │ │ │ + 0x004341e0 20225554 43222026 26202149 53464c4f "UTC" && !ISFLO │ │ │ │ + 0x004341f0 4154494e 47284454 53544152 54292920 ATING(DTSTART)) │ │ │ │ + 0x00434200 7b0a2020 20202020 20202020 69203d20 {. i = │ │ │ │ + 0x00434210 303b0a20 20202020 20202020 2074696d 0;. tim │ │ │ │ + 0x00434220 65737461 6d702065 78646174 653b0a20 estamp exdate;. │ │ │ │ + 0x00434230 20202020 20202020 20776869 6c652028 while ( │ │ │ │ + 0x00434240 693c5349 5a452845 58444154 45532929 i0) {. │ │ │ │ + 0x00434d90 20204455 45203d20 434f4e56 45525454 DUE = CONVERTT │ │ │ │ + 0x00434da0 4f555345 525a4f4e 45284455 45293b0a OUSERZONE(DUE);. │ │ │ │ + 0x00434db0 20202020 20202020 20204455 45203d20 DUE = │ │ │ │ + 0x00434dc0 44415445 4f4e4c59 28445545 293b0a20 DATEONLY(DUE);. │ │ │ │ + 0x00434dd0 20202020 2020207d 0a202020 20202020 }. │ │ │ │ + 0x00434de0 20696620 28495445 4d444154 41545950 if (ITEMDATATYP │ │ │ │ + 0x00434df0 4528293d 3d227643 616c656e 64617231 E()=="vCalendar1 │ │ │ │ + 0x00434e00 30222920 7b0a2020 20202020 20202020 0") {. │ │ │ │ + 0x00434e10 24564341 4c454e44 41525f31 30544f32 $VCALENDAR_10TO2 │ │ │ │ + 0x00434e20 305f5052 494f5249 54595f43 4f4e5645 0_PRIORITY_CONVE │ │ │ │ + 0x00434e30 5253494f 4e3b0a20 20202020 2020207d RSION;. } │ │ │ │ + 0x00434e40 0a202020 2020207d 0a202020 2020202f . }. / │ │ │ │ + 0x00434e50 2f206120 776f726b 61726f75 6e642066 / a workaround f │ │ │ │ + 0x00434e60 6f722066 756e616d 626f6c3a 20616464 or funambol: add │ │ │ │ + 0x00434e70 696e6720 27616374 696f6e27 20666f72 ing 'action' for │ │ │ │ + 0x00434e80 2027616c 61726d27 0a202020 2020202f 'alarm'. / │ │ │ │ + 0x00434e90 2f206966 20697465 6d206461 74612074 / if item data t │ │ │ │ + 0x00434ea0 79706520 69732076 43616c65 6e646172 ype is vCalendar │ │ │ │ + 0x00434eb0 312e302c 20616c73 6f206164 64202761 1.0, also add 'a │ │ │ │ + 0x00434ec0 6374696f 6e272066 6f722027 616c6172 ction' for 'alar │ │ │ │ + 0x00434ed0 6d272e0a 20202020 20202f2f 20546869 m'.. // Thi │ │ │ │ + 0x00434ee0 73206973 20612077 6f726b61 726f756e s is a workaroun │ │ │ │ + 0x00434ef0 6420666f 72204d6f 62696361 6c2e6e65 d for Mobical.ne │ │ │ │ + 0x00434f00 742c2077 68696368 20757365 73207643 t, which uses vC │ │ │ │ + 0x00434f10 616c656e 64617231 2e302e0a 20202020 alendar1.0.. │ │ │ │ + 0x00434f20 20206966 2028414c 41524d5f 54494d45 if (ALARM_TIME │ │ │ │ + 0x00434f30 213d454d 50545920 26262041 4c41524d !=EMPTY && ALARM │ │ │ │ + 0x00434f40 5f414354 494f4e3d 3d454d50 54592920 _ACTION==EMPTY) │ │ │ │ + 0x00434f50 7b0a2020 20202020 20202020 414c4152 {. ALAR │ │ │ │ + 0x00434f60 4d5f4143 54494f4e 203d2022 44495350 M_ACTION = "DISP │ │ │ │ + 0x00434f70 4c415922 3b0a2020 20202020 7d0a2020 LAY";. }. │ │ │ │ + 0x00434f80 20205d5d 3e3c2f6d 6163726f 3e0a0a0a ]]>... │ │ │ │ + 0x00434f90 20202020 3c6d6163 726f206e 616d653d .. .. . < │ │ │ │ + 0x00435ea0 215b4344 4154415b 0a202020 20494e54 ![CDATA[. INT │ │ │ │ + 0x00435eb0 45474552 20524553 3b0a2020 20206966 EGER RES;. if │ │ │ │ + 0x00435ec0 2028434f 4d504152 49534f4e 4d4f4445 (COMPARISONMODE │ │ │ │ + 0x00435ed0 28292021 3d202261 67652220 26262053 () != "age" && S │ │ │ │ + 0x00435ee0 594e434d 4f444553 5550504f 52544544 YNCMODESUPPORTED │ │ │ │ + 0x00435ef0 28223131 32323538 33303030 22292920 ("1122583000")) │ │ │ │ + 0x00435f00 7b0a2020 20202020 20206966 20285441 {. if (TA │ │ │ │ + 0x00435f10 52474554 2e554944 203d3d20 52454645 RGET.UID == REFE │ │ │ │ + 0x00435f20 52454e43 452e5549 44202626 0a202020 RENCE.UID &&. │ │ │ │ + 0x00435f30 20202020 20202020 20544152 4745542e TARGET. │ │ │ │ + 0x00435f40 4f524947 53544152 54203d3d 20524546 ORIGSTART == REF │ │ │ │ + 0x00435f50 4552454e 43452e4f 52494753 54415254 ERENCE.ORIGSTART │ │ │ │ + 0x00435f60 29207b0a 20202020 20202020 20202020 ) {. │ │ │ │ + 0x00435f70 52455320 3d20303b 0a202020 20202020 RES = 0;. │ │ │ │ + 0x00435f80 207d2065 6c736520 7b0a2020 20202020 } else {. │ │ │ │ + 0x00435f90 20202020 20205245 53203d20 2d393939 RES = -999 │ │ │ │ + 0x00435fa0 3b0a2020 20202020 20207d0a 20202020 ;. }. │ │ │ │ + 0x00435fb0 7d20656c 7365207b 0a202020 20202020 } else {. │ │ │ │ + 0x00435fc0 20524553 203d2043 4f4d5041 52454649 RES = COMPAREFI │ │ │ │ + 0x00435fd0 454c4453 28293b0a 20202020 7d0a2020 ELDS();. }. │ │ │ │ + 0x00435fe0 20207265 7475726e 20524553 3b0a2020 return RES;. │ │ │ │ + 0x00435ff0 20205d5d 3e3c2f6d 6163726f 3e0a0a20 ]]>.. │ │ │ │ + 0x00436000 2020203c 212d2d20 696e766f 6b656420 . │ │ │ │ + 0x00436240 0a0a2020 20203c21 2d2d2069 6e766f6b .. . = lensummary & │ │ │ │ + 0x004363e0 260a2020 20202020 20205355 42535452 &. SUBSTR │ │ │ │ + 0x004363f0 28444553 43524950 54494f4e 2c20302c (DESCRIPTION, 0, │ │ │ │ + 0x00436400 206c656e 73756d6d 61727929 203d3d20 lensummary) == │ │ │ │ + 0x00436410 53554d4d 41525920 26260a20 20202020 SUMMARY &&. │ │ │ │ + 0x00436420 20202028 6c656e73 756d6d61 7279203d (lensummary = │ │ │ │ + 0x00436430 3d206c65 6e646573 6372207c 7c205355 = lendescr || SU │ │ │ │ + 0x00436440 42535452 28444553 43524950 54494f4e BSTR(DESCRIPTION │ │ │ │ + 0x00436450 2c206c65 6e73756d 6d617279 2c203129 , lensummary, 1) │ │ │ │ + 0x00436460 203d3d20 225c6e22 2929207b 0a202020 == "\n")) {. │ │ │ │ + 0x00436470 20202020 20444553 43524950 54494f4e DESCRIPTION │ │ │ │ + 0x00436480 203d2053 55425354 52284445 53435249 = SUBSTR(DESCRI │ │ │ │ + 0x00436490 5054494f 4e2c206c 656e7375 6d6d6172 PTION, lensummar │ │ │ │ + 0x004364a0 79202b20 312c206c 656e6465 73637220 y + 1, lendescr │ │ │ │ + 0x004364b0 2d206c65 6e73756d 6d617279 202d2031 - lensummary - 1 │ │ │ │ + 0x004364c0 293b0a20 2020207d 0a202020 205d5d3e );. }. ]]> │ │ │ │ + 0x004364d0 3c2f6d61 63726f3e 0a0a2020 20203c6d .. . │ │ │ │ + 0x00436650 203c6d61 63726f20 6e616d65 3d225643 < │ │ │ │ + 0x004366e0 2f6d6163 726f3e0a 0a202020 203c6d61 /macro>.. .. │ │ │ │ + 0x004367e0 2020203c 6d616372 6f206e61 6d653d22 .. │ │ │ │ + 0x00436850 203c212d 2d206d6f 76657320 616e2049 . .. . │ │ │ │ + 0x004369c0 20203c6d 6163726f 206e616d 653d2256 X-ANNIVERSARY │ │ │ │ + 0x00436a40 2e0a2020 20202020 2069203d 2053495a .. i = SIZ │ │ │ │ + 0x00436a50 45285844 41544529 202d2031 3b0a2020 E(XDATE) - 1;. │ │ │ │ + 0x00436a60 20202020 20776869 6c652028 69203e3d while (i >= │ │ │ │ + 0x00436a70 20302920 7b0a2020 20202020 20202020 0) {. │ │ │ │ + 0x00436a80 69662028 47524f55 505f5441 475b695d if (GROUP_TAG[i] │ │ │ │ + 0x00436a90 20213d20 454d5054 59202626 0a202020 != EMPTY &&. │ │ │ │ + 0x00436aa0 20202020 20202020 20202058 44415445 XDATE │ │ │ │ + 0x00436ab0 5b695d20 213d2055 4e415353 49474e45 [i] != UNASSIGNE │ │ │ │ + 0x00436ac0 44202626 0a202020 20202020 20202020 D &&. │ │ │ │ + 0x00436ad0 2020204c 4142454c 5b695d20 3d3d2022 LABEL[i] == " │ │ │ │ + 0x00436ae0 416e6e69 76657273 61727922 29207b0a Anniversary") {. │ │ │ │ + 0x00436af0 20202020 20202020 20202020 20205357 SW │ │ │ │ + 0x00436b00 41502841 4e4e4956 45525341 52592c20 AP(ANNIVERSARY, │ │ │ │ + 0x00436b10 58444154 455b695d 293b0a0a 20202020 XDATE[i]);.. │ │ │ │ + 0x00436b20 20202020 20202020 20202f2f 20584441 // XDA │ │ │ │ + 0x00436b30 54455b69 5d203d20 554e4153 5349474e TE[i] = UNASSIGN │ │ │ │ + 0x00436b40 45443b0a 20202020 20202020 20202020 ED;. │ │ │ │ + 0x00436b50 20206272 65616b3b 0a202020 20202020 break;. │ │ │ │ + 0x00436b60 2020207d 0a202020 20202020 20202069 }. i │ │ │ │ + 0x00436b70 203d2069 202d2031 3b0a2020 20202020 = i - 1;. │ │ │ │ + 0x00436b80 207d0a0a 20202020 2020202f 2f205370 }.. // Sp │ │ │ │ + 0x00436b90 65636961 6c20582d 41425245 4c415445 ecial X-ABRELATE │ │ │ │ + 0x00436ba0 444e414d 4553202d 3e20582d 53504f55 DNAMES -> X-SPOU │ │ │ │ + 0x00436bb0 53452f4d 414e4147 45522f41 53534953 SE/MANAGER/ASSIS │ │ │ │ + 0x00436bc0 54414e54 0a202020 20202020 69203d20 TANT. i = │ │ │ │ + 0x00436bd0 53495a45 2852454c 41544544 4e414d45 SIZE(RELATEDNAME │ │ │ │ + 0x00436be0 5329202d 20313b0a 20202020 20202077 S) - 1;. w │ │ │ │ + 0x00436bf0 68696c65 20286920 3e3d2030 29207b0a hile (i >= 0) {. │ │ │ │ + 0x00436c00 20202020 20202020 20206966 20284752 if (GR │ │ │ │ + 0x00436c10 4f55505f 5441475b 695d2021 3d20454d OUP_TAG[i] != EM │ │ │ │ + 0x00436c20 50545920 26260a20 20202020 20202020 PTY &&. │ │ │ │ + 0x00436c30 20202020 2052454c 41544544 4e414d45 RELATEDNAME │ │ │ │ + 0x00436c40 535b695d 20213d20 554e4153 5349474e S[i] != UNASSIGN │ │ │ │ + 0x00436c50 45442920 7b0a2020 20202020 20202020 ED) {. │ │ │ │ + 0x00436c60 20202073 203d204c 4142454c 5b695d3b s = LABEL[i]; │ │ │ │ + 0x00436c70 0a202020 20202020 20202020 20206966 . if │ │ │ │ + 0x00436c80 20287320 3d3d2022 53706f75 73652229 (s == "Spouse") │ │ │ │ + 0x00436c90 207b0a20 20202020 20202020 20202020 {. │ │ │ │ + 0x00436ca0 20202069 66202853 504f5553 45203d3d if (SPOUSE == │ │ │ │ + 0x00436cb0 20454d50 54592920 7b0a2020 20202020 EMPTY) {. │ │ │ │ + 0x00436cc0 20202020 20202020 20202020 20535741 SWA │ │ │ │ + 0x00436cd0 50285350 4f555345 2c205245 4c415445 P(SPOUSE, RELATE │ │ │ │ + 0x00436ce0 444e414d 45535b69 5d293b0a 20202020 DNAMES[i]);. │ │ │ │ + 0x00436cf0 20202020 20202020 20202020 2020202f / │ │ │ │ + 0x00436d00 2f205245 4c415445 444e414d 45535b69 / RELATEDNAMES[i │ │ │ │ + 0x00436d10 5d203d20 554e4153 5349474e 45443b0a ] = UNASSIGNED;. │ │ │ │ + 0x00436d20 20202020 20202020 20202020 20202020 │ │ │ │ + 0x00436d30 7d0a2020 20202020 20202020 2020207d }. } │ │ │ │ + 0x00436d40 20656c73 65206966 20287320 3d3d2022 else if (s == " │ │ │ │ + 0x00436d50 4d616e61 67657222 29207b0a 20202020 Manager") {. │ │ │ │ + 0x00436d60 20202020 20202020 20202020 69662028 if ( │ │ │ │ + 0x00436d70 4d414e41 47455220 3d3d2045 4d505459 MANAGER == EMPTY │ │ │ │ + 0x00436d80 29207b0a 20202020 20202020 20202020 ) {. │ │ │ │ + 0x00436d90 20202020 20202053 57415028 4d414e41 SWAP(MANA │ │ │ │ + 0x00436da0 4745522c 2052454c 41544544 4e414d45 GER, RELATEDNAME │ │ │ │ + 0x00436db0 535b695d 293b0a20 20202020 20202020 S[i]);. │ │ │ │ + 0x00436dc0 20202020 20202020 20202f2f 2052454c // REL │ │ │ │ + 0x00436dd0 41544544 4e414d45 535b695d 203d2055 ATEDNAMES[i] = U │ │ │ │ + 0x00436de0 4e415353 49474e45 443b0a20 20202020 NASSIGNED;. │ │ │ │ + 0x00436df0 20202020 20202020 2020207d 0a202020 }. │ │ │ │ + 0x00436e00 20202020 20202020 20207d20 656c7365 } else │ │ │ │ + 0x00436e10 20696620 2873203d 3d202241 73736973 if (s == "Assis │ │ │ │ + 0x00436e20 74616e74 2229207b 0a202020 20202020 tant") {. │ │ │ │ + 0x00436e30 20202020 20202020 20696620 28415353 if (ASS │ │ │ │ + 0x00436e40 49535441 4e54203d 3d20454d 50545929 ISTANT == EMPTY) │ │ │ │ + 0x00436e50 207b0a20 20202020 20202020 20202020 {. │ │ │ │ + 0x00436e60 20202020 20205357 41502841 53534953 SWAP(ASSIS │ │ │ │ + 0x00436e70 54414e54 2c205245 4c415445 444e414d TANT, RELATEDNAM │ │ │ │ + 0x00436e80 45535b69 5d293b0a 20202020 20202020 ES[i]);. │ │ │ │ + 0x00436e90 20202020 20202020 2020202f 2f205245 // RE │ │ │ │ + 0x00436ea0 4c415445 444e414d 45535b69 5d203d20 LATEDNAMES[i] = │ │ │ │ + 0x00436eb0 554e4153 5349474e 45443b0a 20202020 UNASSIGNED;. │ │ │ │ + 0x00436ec0 20202020 20202020 20202020 7d0a2020 }. │ │ │ │ + 0x00436ed0 20202020 20202020 2020207d 0a202020 }. │ │ │ │ + 0x00436ee0 20202020 2020207d 0a202020 20202020 }. │ │ │ │ + 0x00436ef0 20202069 203d2069 202d2031 3b0a2020 i = i - 1;. │ │ │ │ + 0x00436f00 20202020 207d0a0a 20202020 2020202f }.. / │ │ │ │ + 0x00436f10 2f20494d 5050202d 3e20582d 4a414242 / IMPP -> X-JABB │ │ │ │ + 0x00436f20 45522f41 494d2f2e 2e2e2064 6570656e ER/AIM/... depen │ │ │ │ + 0x00436f30 64696e67 206f6e20 73657276 69636520 ding on service │ │ │ │ + 0x00436f40 74797065 2e205072 6f746f63 6f6c206d type. Protocol m │ │ │ │ + 0x00436f50 75737420 6d617463 682e0a20 20202020 ust match.. │ │ │ │ + 0x00436f60 20206920 3d205349 5a452849 4d505029 i = SIZE(IMPP) │ │ │ │ + 0x00436f70 202d2031 3b0a2020 20202020 20494e54 - 1;. INT │ │ │ │ + 0x00436f80 45474552 206f6666 7365743b 0a202020 EGER offset;. │ │ │ │ + 0x00436f90 20202020 53545249 4e472073 65727669 STRING servi │ │ │ │ + 0x00436fa0 63653b0a 20202020 20202053 5452494e ce;. STRIN │ │ │ │ + 0x00436fb0 47207072 6f746f63 6f6c3b0a 20202020 G protocol;. │ │ │ │ + 0x00436fc0 20202053 5452494e 47207661 6c75653b STRING value; │ │ │ │ + 0x00436fd0 0a202020 20202020 7768696c 65202869 . while (i │ │ │ │ + 0x00436fe0 203e3d20 3029207b 0a202020 20202020 >= 0) {. │ │ │ │ + 0x00436ff0 20202073 65727669 6365203d 20494d50 service = IMP │ │ │ │ + 0x00437000 505f5345 52564943 455b695d 3b0a2020 P_SERVICE[i];. │ │ │ │ + 0x00437010 20202020 20202020 69662028 73657276 if (serv │ │ │ │ + 0x00437020 69636520 213d2055 4e415353 49474e45 ice != UNASSIGNE │ │ │ │ + 0x00437030 4429207b 0a202020 20202020 20202020 D) {. │ │ │ │ + 0x00437040 20206f66 66736574 203d2046 494e4428 offset = FIND( │ │ │ │ + 0x00437050 494d5050 5b695d2c 20223a22 293b0a20 IMPP[i], ":");. │ │ │ │ + 0x00437060 20202020 20202020 20202020 69662028 if ( │ │ │ │ + 0x00437070 6f666673 65742021 3d20554e 41535349 offset != UNASSI │ │ │ │ + 0x00437080 474e4544 29207b0a 20202020 20202020 GNED) {. │ │ │ │ + 0x00437090 20202020 20202020 70726f74 6f636f6c protocol │ │ │ │ + 0x004370a0 203d2053 55425354 5228494d 50505b69 = SUBSTR(IMPP[i │ │ │ │ + 0x004370b0 5d2c2030 2c206f66 66736574 293b0a20 ], 0, offset);. │ │ │ │ + 0x004370c0 20202020 20202020 20202020 20202076 v │ │ │ │ + 0x004370d0 616c7565 203d2055 524c4445 434f4445 alue = URLDECODE │ │ │ │ + 0x004370e0 28535542 53545228 494d5050 5b695d2c (SUBSTR(IMPP[i], │ │ │ │ + 0x004370f0 206f6666 73657420 2b203129 293b0a20 offset + 1));. │ │ │ │ + 0x00437100 20202020 20202020 20202020 20202069 i │ │ │ │ + 0x00437110 66202873 65727669 6365203d 3d202241 f (service == "A │ │ │ │ + 0x00437120 494d2220 26262070 726f746f 636f6c20 IM" && protocol │ │ │ │ + 0x00437130 3d3d2022 61696d22 29207b0a 20202020 == "aim") {. │ │ │ │ + 0x00437140 20202020 20202020 20202020 20202024 $ │ │ │ │ + 0x00437150 56434152 445f4d4f 4445524e 5f544f5f VCARD_MODERN_TO_ │ │ │ │ + 0x00437160 4c454741 43595f49 4d505028 76616c75 LEGACY_IMPP(valu │ │ │ │ + 0x00437170 652c2041 494d5f48 414e444c 452c2041 e, AIM_HANDLE, A │ │ │ │ + 0x00437180 494d5f53 4c4f542c 2069293b 0a202020 IM_SLOT, i);. │ │ │ │ + 0x00437190 20202020 20202020 20202020 207d2065 } e │ │ │ │ + 0x004371a0 6c736520 69662028 73657276 69636520 lse if (service │ │ │ │ + 0x004371b0 3d3d2022 47616475 67616475 2229207b == "Gadugadu") { │ │ │ │ + 0x004371c0 0a202020 20202020 20202020 20202020 . │ │ │ │ + 0x004371d0 20202020 24564341 52445f4d 4f444552 $VCARD_MODER │ │ │ │ + 0x004371e0 4e5f544f 5f4c4547 4143595f 494d5050 N_TO_LEGACY_IMPP │ │ │ │ + 0x004371f0 2876616c 75652c20 47414455 47414455 (value, GADUGADU │ │ │ │ + 0x00437200 5f48414e 444c452c 20474144 55474144 _HANDLE, GADUGAD │ │ │ │ + 0x00437210 555f534c 4f542c20 69293b0a 20202020 U_SLOT, i);. │ │ │ │ + 0x00437220 20202020 20202020 20202020 7d20656c } el │ │ │ │ + 0x00437230 73652069 66202873 65727669 6365203d se if (service = │ │ │ │ + 0x00437240 3d202247 726f7570 77697365 2229207b = "Groupwise") { │ │ │ │ + 0x00437250 0a202020 20202020 20202020 20202020 . │ │ │ │ + 0x00437260 20202020 24564341 52445f4d 4f444552 $VCARD_MODER │ │ │ │ + 0x00437270 4e5f544f 5f4c4547 4143595f 494d5050 N_TO_LEGACY_IMPP │ │ │ │ + 0x00437280 2876616c 75652c20 47524f55 50574953 (value, GROUPWIS │ │ │ │ + 0x00437290 455f4841 4e444c45 2c204752 4f555057 E_HANDLE, GROUPW │ │ │ │ + 0x004372a0 4953455f 534c4f54 2c206929 3b0a2020 ISE_SLOT, i);. │ │ │ │ + 0x004372b0 20202020 20202020 20202020 20207d20 } │ │ │ │ + 0x004372c0 656c7365 20696620 28736572 76696365 else if (service │ │ │ │ + 0x004372d0 203d3d20 22494351 22202626 2070726f == "ICQ" && pro │ │ │ │ + 0x004372e0 746f636f 6c203d3d 20226169 6d222920 tocol == "aim") │ │ │ │ + 0x004372f0 7b0a2020 20202020 20202020 20202020 {. │ │ │ │ + 0x00437300 20202020 20245643 4152445f 4d4f4445 $VCARD_MODE │ │ │ │ + 0x00437310 524e5f54 4f5f4c45 47414359 5f494d50 RN_TO_LEGACY_IMP │ │ │ │ + 0x00437320 50287661 6c75652c 20494351 5f48414e P(value, ICQ_HAN │ │ │ │ + 0x00437330 444c452c 20494351 5f534c4f 542c2069 DLE, ICQ_SLOT, i │ │ │ │ + 0x00437340 293b0a20 20202020 20202020 20202020 );. │ │ │ │ + 0x00437350 2020207d 20656c73 65206966 20287365 } else if (se │ │ │ │ + 0x00437360 72766963 65203d3d 20224a61 62626572 rvice == "Jabber │ │ │ │ + 0x00437370 22202626 2070726f 746f636f 6c203d3d " && protocol == │ │ │ │ + 0x00437380 2022786d 70702229 207b0a20 20202020 "xmpp") {. │ │ │ │ + 0x00437390 20202020 20202020 20202020 20202456 $V │ │ │ │ + 0x004373a0 43415244 5f4d4f44 45524e5f 544f5f4c CARD_MODERN_TO_L │ │ │ │ + 0x004373b0 45474143 595f494d 50502876 616c7565 EGACY_IMPP(value │ │ │ │ + 0x004373c0 2c204a41 42424552 5f48414e 444c452c , JABBER_HANDLE, │ │ │ │ + 0x004373d0 204a4142 4245525f 534c4f54 2c206929 JABBER_SLOT, i) │ │ │ │ + 0x004373e0 3b0a2020 20202020 20202020 20202020 ;. │ │ │ │ + 0x004373f0 20207d20 656c7365 20696620 28736572 } else if (ser │ │ │ │ + 0x00437400 76696365 203d3d20 224d534e 22202626 vice == "MSN" && │ │ │ │ + 0x00437410 2070726f 746f636f 6c203d3d 20226d73 protocol == "ms │ │ │ │ + 0x00437420 6e696d22 29207b0a 20202020 20202020 nim") {. │ │ │ │ + 0x00437430 20202020 20202020 20202024 56434152 $VCAR │ │ │ │ + 0x00437440 445f4d4f 4445524e 5f544f5f 4c454741 D_MODERN_TO_LEGA │ │ │ │ + 0x00437450 43595f49 4d505028 76616c75 652c204d CY_IMPP(value, M │ │ │ │ + 0x00437460 534e5f48 414e444c 452c204d 534e5f53 SN_HANDLE, MSN_S │ │ │ │ + 0x00437470 4c4f542c 2069293b 0a202020 20202020 LOT, i);. │ │ │ │ + 0x00437480 20202020 20202020 207d2065 6c736520 } else │ │ │ │ + 0x00437490 69662028 73657276 69636520 3d3d2022 if (service == " │ │ │ │ + 0x004374a0 5961686f 6f222026 26207072 6f746f63 Yahoo" && protoc │ │ │ │ + 0x004374b0 6f6c203d 3d202279 6d736772 2229207b ol == "ymsgr") { │ │ │ │ + 0x004374c0 0a202020 20202020 20202020 20202020 . │ │ │ │ + 0x004374d0 20202020 24564341 52445f4d 4f444552 $VCARD_MODER │ │ │ │ + 0x004374e0 4e5f544f 5f4c4547 4143595f 494d5050 N_TO_LEGACY_IMPP │ │ │ │ + 0x004374f0 2876616c 75652c20 5941484f 4f5f4841 (value, YAHOO_HA │ │ │ │ + 0x00437500 4e444c45 2c205941 484f4f5f 534c4f54 NDLE, YAHOO_SLOT │ │ │ │ + 0x00437510 2c206929 3b0a2020 20202020 20202020 , i);. │ │ │ │ + 0x00437520 20202020 20207d20 656c7365 20696620 } else if │ │ │ │ + 0x00437530 28736572 76696365 203d3d20 22536b79 (service == "Sky │ │ │ │ + 0x00437540 70652220 26262070 726f746f 636f6c20 pe" && protocol │ │ │ │ + 0x00437550 3d3d2022 736b7970 65222920 7b0a2020 == "skype") {. │ │ │ │ + 0x00437560 20202020 20202020 20202020 20202020 │ │ │ │ + 0x00437570 20245643 4152445f 4d4f4445 524e5f54 $VCARD_MODERN_T │ │ │ │ + 0x00437580 4f5f4c45 47414359 5f494d50 50287661 O_LEGACY_IMPP(va │ │ │ │ + 0x00437590 6c75652c 20534b59 50455f48 414e444c lue, SKYPE_HANDL │ │ │ │ + 0x004375a0 452c2053 4b595045 5f534c4f 542c2069 E, SKYPE_SLOT, i │ │ │ │ + 0x004375b0 293b0a20 20202020 20202020 20202020 );. │ │ │ │ + 0x004375c0 2020207d 20656c73 65206966 20287365 } else if (se │ │ │ │ + 0x004375d0 72766963 65203d3d 20225369 70222920 rvice == "Sip") │ │ │ │ + 0x004375e0 7b0a2020 20202020 20202020 20202020 {. │ │ │ │ + 0x004375f0 20202020 20245643 4152445f 4d4f4445 $VCARD_MODE │ │ │ │ + 0x00437600 524e5f54 4f5f4c45 47414359 5f494d50 RN_TO_LEGACY_IMP │ │ │ │ + 0x00437610 50287661 6c75652c 20534950 5f48414e P(value, SIP_HAN │ │ │ │ + 0x00437620 444c452c 20534950 5f534c4f 542c2069 DLE, SIP_SLOT, i │ │ │ │ + 0x00437630 293b0a20 20202020 20202020 20202020 );. │ │ │ │ + 0x00437640 2020207d 0a202020 20202020 20202020 }. │ │ │ │ + 0x00437650 20207d0a 20202020 20202020 20207d0a }. }. │ │ │ │ + 0x00437660 20202020 20202020 20206920 3d206920 i = i │ │ │ │ + 0x00437670 2d20313b 0a202020 20202020 7d0a0a0a - 1;. }... │ │ │ │ + 0x00437680 20202020 2020202f 2f205265 6d6f7665 // Remove │ │ │ │ + 0x00437690 206c6162 656c7320 77686963 68206172 labels which ar │ │ │ │ + 0x004376a0 65206e6f 206c6f6e 67657220 6e656564 e no longer need │ │ │ │ + 0x004376b0 65642028 76616c75 6564206d 6f766564 ed (valued moved │ │ │ │ + 0x004376c0 2061626f 76652c0a 20202020 2020202f above,. / │ │ │ │ + 0x004376d0 2f207374 6f726564 20666f72 20612067 / stored for a g │ │ │ │ + 0x004376e0 726f7570 20776869 63682068 6173206e roup which has n │ │ │ │ + 0x004376f0 6f206f74 68657220 70726f70 65727469 o other properti │ │ │ │ + 0x00437700 65732028 476f6f67 6c650a20 20202020 es (Google. │ │ │ │ + 0x00437710 20202f2f 20436172 64444156 20736572 // CardDAV ser │ │ │ │ + 0x00437720 76657220 736f6d65 74696d65 73207365 ver sometimes se │ │ │ │ + 0x00437730 6e647320 74686174 2c206564 6974696e nds that, editin │ │ │ │ + 0x00437740 6720696e 2045766f 6c757469 6f6e0a20 g in Evolution. │ │ │ │ + 0x00437750 20202020 20202f2f 206d6967 68742063 // might c │ │ │ │ + 0x00437760 61757365 2069742c 20657463 2e29206f ause it, etc.) o │ │ │ │ + 0x00437770 72207072 6f766964 65206e6f 20696e66 r provide no inf │ │ │ │ + 0x00437780 6f726d61 74696f6e 2028224f 74686572 ormation ("Other │ │ │ │ + 0x00437790 22292e0a 20202020 20202069 203d2053 ").. i = S │ │ │ │ + 0x004377a0 495a4528 4c414245 4c29202d 20313b0a IZE(LABEL) - 1;. │ │ │ │ + 0x004377b0 20202020 20202077 68696c65 20286920 while (i │ │ │ │ + 0x004377c0 3e3d2030 29207b0a 20202020 20202020 >= 0) {. │ │ │ │ + 0x004377d0 20206966 20284c41 42454c5b 695d203d if (LABEL[i] = │ │ │ │ + 0x004377e0 3d20224f 74686572 22207c7c 0a202020 = "Other" ||. │ │ │ │ + 0x004377f0 20202020 20202020 2020204c 4142454c LABEL │ │ │ │ + 0x00437800 5b695d20 213d2055 4e415353 49474e45 [i] != UNASSIGNE │ │ │ │ + 0x00437810 44202626 0a202020 20202020 20202020 D &&. │ │ │ │ + 0x00437820 20202028 47524f55 505f5441 475b695d (GROUP_TAG[i] │ │ │ │ + 0x00437830 203d3d20 454d5054 59207c7c 0a202020 == EMPTY ||. │ │ │ │ + 0x00437840 20202020 20202020 20202020 52454c41 RELA │ │ │ │ + 0x00437850 5445444e 414d4553 5b695d20 3d3d2055 TEDNAMES[i] == U │ │ │ │ + 0x00437860 4e415353 49474e45 44202626 0a202020 NASSIGNED &&. │ │ │ │ + 0x00437870 20202020 20202020 20202020 58444154 XDAT │ │ │ │ + 0x00437880 455b695d 203d3d20 554e4153 5349474e E[i] == UNASSIGN │ │ │ │ + 0x00437890 45442026 260a2020 20202020 20202020 ED &&. │ │ │ │ + 0x004378a0 20202020 2054454c 5b695d20 3d3d2055 TEL[i] == U │ │ │ │ + 0x004378b0 4e415353 49474e45 44202626 0a202020 NASSIGNED &&. │ │ │ │ + 0x004378c0 20202020 20202020 20202020 454d4149 EMAI │ │ │ │ + 0x004378d0 4c5b695d 203d3d20 554e4153 5349474e L[i] == UNASSIGN │ │ │ │ + 0x004378e0 45442026 260a2020 20202020 20202020 ED &&. │ │ │ │ + 0x004378f0 20202020 20574542 5b695d20 3d3d2055 WEB[i] == U │ │ │ │ + 0x00437900 4e415353 49474e45 44202626 0a202020 NASSIGNED &&. │ │ │ │ + 0x00437910 20202020 20202020 20202020 58444154 XDAT │ │ │ │ + 0x00437920 455b695d 203d3d20 554e4153 5349474e E[i] == UNASSIGN │ │ │ │ + 0x00437930 45442026 260a2020 20202020 20202020 ED &&. │ │ │ │ + 0x00437940 20202020 20494d50 505b695d 203d3d20 IMPP[i] == │ │ │ │ + 0x00437950 554e4153 5349474e 45442026 260a2020 UNASSIGNED &&. │ │ │ │ + 0x00437960 20202020 20202020 20202020 20414452 ADR │ │ │ │ + 0x00437970 5f504f42 4f585b69 5d203d3d 20554e41 _POBOX[i] == UNA │ │ │ │ + 0x00437980 53534947 4e454420 26260a20 20202020 SSIGNED &&. │ │ │ │ + 0x00437990 20202020 20202020 20204144 525f4144 ADR_AD │ │ │ │ + 0x004379a0 44544c5b 695d203d 3d20554e 41535349 DTL[i] == UNASSI │ │ │ │ + 0x004379b0 474e4544 2026260a 20202020 20202020 GNED &&. │ │ │ │ + 0x004379c0 20202020 20202041 44525f53 54524545 ADR_STREE │ │ │ │ + 0x004379d0 545b695d 203d3d20 554e4153 5349474e T[i] == UNASSIGN │ │ │ │ + 0x004379e0 45442026 260a2020 20202020 20202020 ED &&. │ │ │ │ + 0x004379f0 20202020 20414452 5f434954 595b695d ADR_CITY[i] │ │ │ │ + 0x00437a00 203d3d20 554e4153 5349474e 45442026 == UNASSIGNED & │ │ │ │ + 0x00437a10 260a2020 20202020 20202020 20202020 &. │ │ │ │ + 0x00437a20 20414452 5f524547 5b695d20 3d3d2055 ADR_REG[i] == U │ │ │ │ + 0x00437a30 4e415353 49474e45 44202626 0a202020 NASSIGNED &&. │ │ │ │ + 0x00437a40 20202020 20202020 20202020 4144525f ADR_ │ │ │ │ + 0x00437a50 5a49505b 695d203d 3d20554e 41535349 ZIP[i] == UNASSI │ │ │ │ + 0x00437a60 474e4544 2026260a 20202020 20202020 GNED &&. │ │ │ │ + 0x00437a70 20202020 20202041 44525f43 4f554e54 ADR_COUNT │ │ │ │ + 0x00437a80 52595b69 5d203d3d 20554e41 53534947 RY[i] == UNASSIG │ │ │ │ + 0x00437a90 4e454420 26260a20 20202020 20202020 NED &&. │ │ │ │ + 0x00437aa0 20202020 20204144 525f5354 52454554 ADR_STREET │ │ │ │ + 0x00437ab0 5f464c41 47535b69 5d203d3d 20554e41 _FLAGS[i] == UNA │ │ │ │ + 0x00437ac0 53534947 4e454429 29207b0a 20202020 SSIGNED)) {. │ │ │ │ + 0x00437ad0 20202020 20202020 2020204c 4142454c LABEL │ │ │ │ + 0x00437ae0 5b695d20 3d20554e 41535349 474e4544 [i] = UNASSIGNED │ │ │ │ + 0x00437af0 3b0a2020 20202020 20202020 7d0a2020 ;. }. │ │ │ │ + 0x00437b00 20202020 20202020 69203d20 69202d20 i = i - │ │ │ │ + 0x00437b10 313b0a20 20202020 20207d0a 0a202020 1;. }.. │ │ │ │ + 0x00437b20 20202020 2f2f2052 656d6f76 6520616c // Remove al │ │ │ │ + 0x00437b30 6c206772 6f757020 74616773 2e204e6f l group tags. No │ │ │ │ + 0x00437b40 74207573 65642066 6f72206c 65676163 t used for legac │ │ │ │ + 0x00437b50 7920666f 726d6174 732e0a20 20202020 y formats.. │ │ │ │ + 0x00437b60 20204752 4f55505f 54414720 3d20554e GROUP_TAG = UN │ │ │ │ + 0x00437b70 41535349 474e4544 3b0a2020 20205d5d ASSIGNED;. ]] │ │ │ │ + 0x00437b80 3e3c2f6d 6163726f 3e0a0a20 2020203c >.. < │ │ │ │ + 0x00437b90 212d2d20 54686520 6c656761 63792d3e !-- The legacy-> │ │ │ │ + 0x00437ba0 6d6f6465 726e2063 6f6e7665 7273696f modern conversio │ │ │ │ + 0x00437bb0 6e206967 6e6f7265 7320656d 70747920 n ignores empty │ │ │ │ + 0x00437bc0 70726f70 65727479 2076616c 7565730a property values. │ │ │ │ + 0x00437bd0 20202020 62656361 75736520 77652077 because we w │ │ │ │ + 0x00437be0 6f756c64 206e6f74 20656e63 6f646520 ould not encode │ │ │ │ + 0x00437bf0 7468656d 20617320 656d7074 790a2020 them as empty. │ │ │ │ + 0x00437c00 2020494d 50502f58 2d414244 4154452f IMPP/X-ABDATE/ │ │ │ │ + 0x00437c10 582d4142 52454c41 5445444e 414d4553 X-ABRELATEDNAMES │ │ │ │ + 0x00437c20 2076616c 75657320 616e7977 61790a20 values anyway. │ │ │ │ + 0x00437c30 20202028 3c6e6f65 6d707479 70726f70 (), leavin │ │ │ │ + 0x00437c50 67207573 20776974 68206a75 73742074 g us with just t │ │ │ │ + 0x00437c60 68652072 6564756e 64616e74 206c6162 he redundant lab │ │ │ │ + 0x00437c70 656c732e 0a202020 202d2d3e 0a0a2020 els.. -->.. │ │ │ │ + 0x00437c80 20203c21 2d2d2058 2d53504f 5553452f . │ │ │ │ 0x00438ac0 3c666965 6c646c69 7374206e 616d653d