<?xml version="1.0" encoding="UTF-8"?> 
<?xml-stylesheet href="https://dev.horde.org/themes/horde//default/feed-rss.xsl" type="text/xsl"?> 
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"> 
 <channel> 
  <title>Only one e-Mail Address is synced with SIF-C (Funambol)</title> 
  <pubDate>Fri, 10 Apr 2026 13:09:15 +0000</pubDate> 
  <link>https://bugs.horde.org/ticket/8571</link> 
  <atom:link rel="self" type="application/rss+xml" title="Only one e-Mail Address is synced with SIF-C (Funambol)" href="https://bugs.horde.org/ticket/8571/rss" /> 
  <description>Only one e-Mail Address is synced with SIF-C (Funambol)</description> 
 
   
   
  <item> 
   <title>Outlook has 3 mail addresses and these are translatet to Ema</title> 
   <description>Outlook has 3 mail addresses and these are translatet to Email1Address, Email2Address, Email3Address in SIF-C. Newer Funambol clients map these to

EMAIL

EMAIL:HOME

EMAIL:WORK

The patch does this for vacrd-&gt;SIF and the otherway around to sync more than one address.



--- lib/SyncML/Device/Sync4j.php.orig        2009-08-14 17:01:24.000000000 +0200

+++ lib/SyncML/Device/Sync4j.php.patch        2009-09-11 09:10:36.000000000 +0200

@@ -253,8 +253,8 @@

             &#039;OtherTelephoneNumber&#039; =&gt; array(&#039;TEL&#039;),

             &#039;OtherFaxNumber&#039; =&gt; array(&#039;TEL&#039;),

             &#039;Email1Address&#039; =&gt; array(&#039;EMAIL&#039;),

-            &#039;Email2Address&#039; =&gt; array(&#039;EMAIL&#039;),

-            &#039;Email3Address&#039; =&gt; array(&#039;EMAIL&#039;),

+            &#039;Email2Address&#039; =&gt; array(&#039;EMAIL&#039;, array(&#039;TYPE&#039; =&gt; &#039;HOME&#039;)),

+            &#039;Email3Address&#039; =&gt; array(&#039;EMAIL&#039;, array(&#039;TYPE&#039; =&gt; &#039;WORK&#039;)),

             &#039;HomeLabel&#039; =&gt; array(&#039;LABEL&#039;, array(&#039;TYPE&#039; =&gt; &#039;HOME&#039;)),

             &#039;BusinessLabel&#039; =&gt; array(&#039;LABEL&#039;, array(&#039;TYPE&#039; =&gt; &#039;WORK&#039;)),

             &#039;OtherLabel&#039; =&gt; array(&#039;LABEL&#039;),

@@ -729,9 +729,34 @@

                 break;

 

             case &#039;EMAIL&#039;:

-                if (isset($item[&#039;params&#039;][&#039;PREF&#039;]) || !isset($hash[&#039;email&#039;])) {

-                    $hash[&#039;Email1Address&#039;] = Horde_iCalendar_vcard::getBareEmail($item[&#039;value&#039;]);

-                    $hash[&#039;Email1AddressType&#039;] = &#039;SMTP&#039;;

+                if (isset($item[&#039;params&#039;][&#039;TYPE&#039;])) {

+                    if (!is_array($item[&#039;params&#039;][&#039;TYPE&#039;])) {

+                        $item[&#039;params&#039;][&#039;TYPE&#039;] = array($item[&#039;params&#039;][&#039;TYPE&#039;]);

+                    }

+                    // For vCard 3.0.

+                    foreach ($item[&#039;params&#039;][&#039;TYPE&#039;] as $mail) {

+                        if (String::upper($mail) == &#039;WORK&#039;) {

+                            $hash[&#039;Email3Address&#039;] = Horde_iCalendar_vcard::getBareEmail($item[&#039;value&#039;]);

+                            $hash[&#039;Email3AddressType&#039;] = &#039;SMTP&#039;;

+                        } elseif (String::upper($mail) == &#039;HOME&#039;) {

+                            $hash[&#039;Email2Address&#039;] = Horde_iCalendar_vcard::getBareEmail($item[&#039;value&#039;]);

+                            $hash[&#039;Email2AddressType&#039;] = &#039;SMTP&#039;;

+                        } else {

+                            $hash[&#039;Email1Address&#039;] = Horde_iCalendar_vcard::getBareEmail($item[&#039;value&#039;]);

+                            $hash[&#039;Email1AddressType&#039;] = &#039;SMTP&#039;;

+                        }

+                    }

+                } else {

+                    if (isset($item[&#039;params&#039;][&#039;HOME&#039;])) {

+                        $hash[&#039;Email2Address&#039;] = Horde_iCalendar_vcard::getBareEmail($item[&#039;value&#039;]);

+                        $hash[&#039;Email2AddressType&#039;] = &#039;SMTP&#039;;

+                    } elseif (isset($item[&#039;params&#039;][&#039;WORK&#039;])) {

+                        $hash[&#039;Email3Address&#039;] = Horde_iCalendar_vcard::getBareEmail($item[&#039;value&#039;]);

+                        $hash[&#039;Email3AddressType&#039;] = &#039;SMTP&#039;;

+                    } else {

+                        $hash[&#039;Email1Address&#039;] = Horde_iCalendar_vcard::getBareEmail($item[&#039;value&#039;]);

+                        $hash[&#039;Email1AddressType&#039;] = &#039;SMTP&#039;;

+                    }

                 }

                 break; </description> 
   <pubDate>Fri, 11 Sep 2009 07:22:10 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/8571#t55731</link> 
  </item> 
   
  <item> 
   <title>Can you please upload the patch as an attachment? And while </title> 
   <description>Can you please upload the patch as an attachment? And while you&#039;re at it, please add &quot;break;&quot; statements to the vCard 3.0 section, so that an address is not accidentally mapped to several fields. Finally, please re-add the PREF/!isset() logic from the original code, so that either the first matching address, or the preferred address wins.</description> 
   <pubDate>Fri, 18 Sep 2009 15:55:01 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/8571#t55841</link> 
  </item> 
   
  <item> 
   <title>The original code doesn&#039;t work well either because the last </title> 
   <description>The original code doesn&#039;t work well either because the last mailaddress wins. I suggest to use the code from Turba::Driver toHash as it was originally done (see comment at top of function) and modify it to match SIF.

I don&#039;t want to spent to much work on it because SIF is phasing out anyway but we urgently need more than one mailadress until then.

Would this be acceptable??</description> 
   <pubDate>Mon, 21 Sep 2009 15:20:44 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/8571#t55861</link> 
  </item> 
   
  <item> 
   <title>&gt; The original code doesn&#039;t work well either because the las</title> 
   <description>&gt; The original code doesn&#039;t work well either because the last 

&gt; mailaddress wins.



This is only because of a typo. The if-test should check $hash[&#039;Email1Address&#039;] instead of $hash[&#039;email&#039;].



&gt; I suggest to use the code from Turba::Driver toHash 

&gt; as it was originally done (see comment at top of function) and modify 

&gt; it to match SIF.



That makes a lot of sense.</description> 
   <pubDate>Mon, 21 Sep 2009 15:30:01 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/8571#t55862</link> 
  </item> 
   
  <item> 
   <title>Here is the patch against Horde 3.3.5 which uses the Turba D</title> 
   <description>Here is the patch against Horde 3.3.5 which uses the Turba Driver.php Code with SIF-C Labels. It works as expected on my Test-Install.</description> 
   <pubDate>Tue, 22 Sep 2009 13:39:23 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/8571#t55881</link> 
  </item> 
   
  <item> 
   <title>Changes have been made in CVS for this ticket:

Map all emai</title> 
   <description>Changes have been made in CVS for this ticket:

Map all email addresses to SIF-C (Request #8571).
http://cvs.horde.org/diff.php/framework/SyncML/SyncML/Device/Sync4j.php?rt=horde&amp;r1=1.70&amp;r2=1.71&amp;ty=u</description> 
   <pubDate>Thu, 01 Oct 2009 10:14:49 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/8571#t56073</link> 
  </item> 
   
  <item> 
   <title>Committed, thanks!</title> 
   <description>Committed, thanks!</description> 
   <pubDate>Thu, 01 Oct 2009 10:16:12 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/8571#t56074</link> 
  </item> 
   
  <item> 
   <title>Changes have been made in CVS for this ticket:

MFH: Map all</title> 
   <description>Changes have been made in CVS for this ticket:

MFH: Map all email addresses to SIF-C (Request #8571).
http://cvs.horde.org/diff.php/framework/SyncML/SyncML/Device/Sync4j.php?rt=horde&amp;r1=1.8.2.32&amp;r2=1.8.2.33&amp;ty=u</description> 
   <pubDate>Thu, 01 Oct 2009 10:26:34 +0000</pubDate> 
   <link>https://bugs.horde.org/ticket/8571#t56076</link> 
  </item> 
   
   
 
 </channel> 
</rss> 
