[Tickets #10373] Re: Enhance Turba ActiveSync capability for iOS

bugs at horde.org bugs at horde.org
Sun Jul 24 16:11:11 UTC 2011


DO NOT REPLY TO THIS MESSAGE. THIS EMAIL ADDRESS IS NOT MONITORED.

Ticket URL: http://bugs.horde.org/ticket/10373
------------------------------------------------------------------------------
  Ticket             | 10373
  Updated By         | Michael Rubinsky <mrubinsk at horde.org>
  Summary            | Enhance Turba ActiveSync capability for iOS
  Queue              | Turba
-Version            | 3.0.4
+Version            | Git master
  Type               | Enhancement
-State              | New
+State              | Assigned
  Priority           | 1. Low
  Milestone          |
  Patch              | 1
-Owners             |
+Owners             | Michael Rubinsky
------------------------------------------------------------------------------


Michael Rubinsky <mrubinsk at horde.org> (2011-07-24 16:11) wrote:

> I would have added further capability, but it appears that the Horde  
> Activesync library does not support the CONTACTS2 schema, so I  
> cannot map the following:

 From what I understood, that schema is only available in ActiveSync  
version 12.0 and above.  They are defined in  
Horde_ActiveSync_Message_Contact.  You can try moving the definitions  
out of the conditional that tests for the AS version:

diff --git  
a/framework/ActiveSync/lib/Horde/ActiveSync/Message/Contact.php  
b/framework/ActiveSync/lib/Horde/ActiveSync/Message/Contact.php
index 303b6bf..676ba85 100644
--- a/framework/ActiveSync/lib/Horde/ActiveSync/Message/Contact.php
+++ b/framework/ActiveSync/lib/Horde/ActiveSync/Message/Contact.php
@@ -210,34 +210,31 @@ class Horde_ActiveSync_Message_Contact extends  
Horde_ActiveSync_Message_Base
              'categories' => false,
          );

-        /* Additional mappings for AS versions >= 2.5 */
-        if (isset($params['protocolversion']) &&  
$params['protocolversion'] >= 2.5) {
-            $this->_mapping += array(
-                self::CUSTOMERID => array(self::KEY_ATTRIBUTE =>  
'customerid'),
-                self::GOVERNMENTID => array(self::KEY_ATTRIBUTE =>  
'governmentid'),
-                self::IMADDRESS => array(self::KEY_ATTRIBUTE => 'imaddress'),
-                self::IMADDRESS2 => array(self::KEY_ATTRIBUTE =>  
'imaddress2'),
-                self::IMADDRESS3 => array(self::KEY_ATTRIBUTE =>  
'imaddress3'),
-                self::MANAGERNAME => array(self::KEY_ATTRIBUTE =>  
'managername'),
-                self::COMPANYMAINPHONE => array(self::KEY_ATTRIBUTE  
=> 'companymainphone'),
-                self::ACCOUNTNAME => array(self::KEY_ATTRIBUTE =>  
'accountname'),
-                self::NICKNAME => array(self::KEY_ATTRIBUTE => 'nickname'),
-                self::MMS => array(self::KEY_ATTRIBUTE => 'mms'),
-            );
+        $this->_mapping += array(
+            self::CUSTOMERID => array(self::KEY_ATTRIBUTE => 'customerid'),
+            self::GOVERNMENTID => array(self::KEY_ATTRIBUTE =>  
'governmentid'),
+            self::IMADDRESS => array(self::KEY_ATTRIBUTE => 'imaddress'),
+            self::IMADDRESS2 => array(self::KEY_ATTRIBUTE => 'imaddress2'),
+            self::IMADDRESS3 => array(self::KEY_ATTRIBUTE => 'imaddress3'),
+            self::MANAGERNAME => array(self::KEY_ATTRIBUTE => 'managername'),
+            self::COMPANYMAINPHONE => array(self::KEY_ATTRIBUTE =>  
'companymainphone'),
+            self::ACCOUNTNAME => array(self::KEY_ATTRIBUTE => 'accountname'),
+            self::NICKNAME => array(self::KEY_ATTRIBUTE => 'nickname'),
+            self::MMS => array(self::KEY_ATTRIBUTE => 'mms'),
+        );

-            $this->_properties += array(
-                'customerid' => false,
-                'governmentid' => false,
-                'imaddress' => false,
-                'imaddress2' => false,
-                'imaddress3' => false,
-                'managername' => false,
-                'companymainphone' => false,
-                'accountname' => false,
-                'nickname' => false,
-                'mms' => false,
-            );
-        }
+        $this->_properties += array(
+            'customerid' => false,
+            'governmentid' => false,
+            'imaddress' => false,
+            'imaddress2' => false,
+            'imaddress3' => false,
+            'managername' => false,
+            'companymainphone' => false,
+            'accountname' => false,
+            'nickname' => false,
+            'mms' => false,
+        );


Let me know if this enables these fields for you on your iOS device,  
then I'll test to be sure it doesn't break anything else for other  
devices that do not support them.






More information about the bugs mailing list