6.0.0-git
2019-04-21

[#11993] Enhance default SQL addressbook (localsql) with commonly used fields (better out of the box behaviour with activeSync/iOS)
Summary Enhance default SQL addressbook (localsql) with commonly used fields (better out of the box behaviour with activeSync/iOS)
Queue Turba
Queue Version Git master
Type Enhancement
State Resolved
Priority 1. Low
Owners mrubinsk (at) horde (dot) org
Requester torben (at) dannhauer (dot) info
Created 2013-01-25 (2277 days ago)
Due
Updated 2013-04-29 (2183 days ago)
Assigned 2013-04-26 (2186 days ago)
Resolved 2013-04-29 (2183 days ago)
Milestone 4.1
Patch No

History
2013-04-29 04:41:02 Michael Rubinsky State ⇒ Resolved
 
2013-04-29 04:39:46 Git Commit Comment #8 Reply to this comment
Changes have been made in Git (master):

commit 41b1d5f62a364e5c072a4ff6169cbe7a72b7fe6f
Author: Michael J Rubinsky <mrubinsk@horde.org>
Date:   Mon Apr 29 00:36:35 2013 -0400

     BFN for Request: 11993

  turba/docs/CHANGES |    1 +
  turba/package.xml  |    2 ++
  2 files changed, 3 insertions(+), 0 deletions(-)

http://git.horde.org/horde-git/-/commit/41b1d5f62a364e5c072a4ff6169cbe7a72b7fe6f
2013-04-26 17:18:09 Jan Schneider Comment #7
State ⇒ Assigned
Reply to this comment
Still needs a changelog.
2013-04-08 10:17:43 Git Commit Comment #6 Reply to this comment
Changes have been made in Git (master):

commit 51d72f9275ae385de0d3fb3ae7c424ee703d5be8
Author: Michael J Rubinsky <mrubinsk@horde.org>
Date:   Tue Mar 5 18:32:20 2013 -0500

     Request: 11993 Update default SQL schema

  turba/config/backends.php                          |   25 +++++-
  .../migration/7_turba_upgrade_activesyncschema.php |   99 
++++++++++++++++++++
  2 files changed, 122 insertions(+), 2 deletions(-)

http://git.horde.org/horde-git/-/commit/51d72f9275ae385de0d3fb3ae7c424ee703d5be8
2013-03-05 23:33:28 Michael Rubinsky Comment #5
State ⇒ Resolved
Reply to this comment
Turba 4.1
2013-01-28 18:02:16 Jan Schneider Comment #4 Reply to this comment
We modeled the current default scheme after the default scheme of 
Outlook at that time, to allow for best synchronization.
Since ActiveSync is the main synchronization target these days, it 
makes sense to adapt the default scheme to what's the default in 
ActiveSync. Obviously without dropping existing columns though.
2013-01-28 17:24:25 torben (at) dannhauer (dot) info Comment #3 Reply to this comment
Makes sense to me to add them to the migration (though obviously 
other backends will need to manage this separately), but add them as 
commented out entries in backends.php since most of these would be 
rarely used ("radio phone", anybody?).

Since it's a new set of fields, this will be targeted for Turba 4.1
Yes that makes sense. Turba 4.1 is great!
The deactivated backend is a good solution, so it is possible to 
activate it via backends.local.php without further turba modifications.
Since you resolved my other bugrequest,
I suggest to extend it to cover also yomi and manager:

object_homephone2 character varying(50),
object_carphone character varying(50),
object_workphone2 character varying(50),
object_radiophone character varying(50),
object_companyphone character varying(50),
object_otherstreet character varying(255),
object_otherpob character varying(10),
object_othercity character varying(255),
object_otherprovince character varying(255),
object_otherpostalcode character varying(10),
object_othercountry character varying(255),
object_homeemail character varying(255),
object_workemail character varying(255),
object_yomifirstname character varying(255),
object_yomilastname character varying(255),
object_manager character varying(255),
object_assistant character varying(255),
2013-01-28 17:18:13 Michael Rubinsky Comment #2
Assigned to Michael Rubinsky
State ⇒ Assigned
Priority ⇒ 1. Low
Milestone ⇒ 4.1
Reply to this comment
Makes sense to me to add them to the migration (though obviously other 
backends will need to manage this separately), but add them as 
commented out entries in backends.php since most of these would be 
rarely used ("radio phone", anybody?).

Since it's a new set of fields, this will be targeted for Turba 4.1
2013-01-25 14:27:39 torben (at) dannhauer (dot) info Comment #1
Type ⇒ Enhancement
State ⇒ New
Priority ⇒ 2. Medium
Summary ⇒ Enhance default SQL addressbook (localsql) with commonly used fields (better out of the box behaviour with activeSync/iOS)
Queue ⇒ Turba
Milestone ⇒
Patch ⇒ No
Reply to this comment
Dear Turba team,

While testing Turba with ActiveSync and Apple iOS, I realized that not 
all of the contact details available in the iOS device are stored at 
the server. Adding these fields to the default turba backend 
(localsql) solve the issue.

Since they are not iOS specific but also used in some other devices or 
PIMs, I suggest they should be added to turba_objects and the backend 
definition of the default SQL backend.
That would enhance the out of the box behaviour in Turba w/ ActiveSync 
and the only backside are some more columns in SQL (turba_objects).

Of course the modifications could be placed in the local override 
file, but I think it is better to add it to the defaults since it will 
help a lot of people If it is not added, please considere to prepare 
it as a simple ?iOS enhancementpack?  in backends.php which could be 
activated easily.

All of these added contact fields are already defined in 
attributes.php. They only have to be added to the default backend   
"localsql" in backends.php and the SQL schema of turba_objects 
(additional table columns).

Please find attached the added the backends.php and SQL changes.


The added fields/details are:
-        otherAddress
-        homePhone2
-        workPhone2
-        carPhone
-        radioPhone
-        companyPhone




Additions in backends.php:

$cfgSources['localsql'] = array(
     [?]
     'map' => array(
         '__key' => 'object_id',
        [?]
         /* New: ?other address? and communication entries*/
         'otherStreet' => 'object_otherstreet',
         'otherPOBox' => 'object_otherpob',
         'otherCity' => 'object_othercity',
         'otherProvince' => 'object_otherprovince',
         'otherPostalCode' => 'object_otherpostalcode',
         'otherCountry' => 'object_othercountry',
         'otherAddress' => array('fields' => array('otherStreet', 'otherCity',
                                                  'otherProvince',
                                                  'otherPostalCode'),
                                 'format' => "%s \n %s, %s  %s"),
         'homePhone2' => 'object_homephone2',
         'workPhone2' => 'object_workphone2',
         'carPhone' => 'object_carphone',
         'radioPhone' => 'object_radiophone',
         'companyPhone' => 'object_companyphone',
         [?]
     ),
     'tabs' => array(
                 [?]
         _("Location") => array('homeStreet', 'homePOBox', 'homeCity',
                                'homeProvince', 'homePostalCode', 
'homeCountry',
                                'homeAddress',
                                 'workStreet', 'workPOBox', 'workCity',
                                 'workProvince', 'workPostalCode', 
'workCountry',
                                 'workAddress',
                                 'otherStreet', 'otherPOBox', 'otherCity',
                                 'otherProvince', 'otherPostalCode', 
'otherCountry',
                                 'otherAddress',
                                 'timezone'),

        _("Communications") => array('email', 'homePhone', 
'homePhone2', 'workPhone',
                                      'workPhone2', 'carPhone', 
'radioPhone', 'companyPhone',
                                      'assistPhone', 'homeFax',
                                      'cellPhone', 'fax', 'pager', 'imaddress',
                                      'imaddress2', 'imaddress3'),
                 [?]
     ),
     [?]
);



Additions on SQL schema of turba_objects:

object_homephone2 character varying(50),
object_carphone character varying(50),
object_workphone2 character varying(50),
object_radiophone character varying(50),
object_companyphone character varying(50),
object_otherstreet character varying(255),
object_otherpob character varying(10),
object_othercity character varying(255),
object_otherprovince character varying(255),
object_otherpostalcode character varying(10),
object_othercountry character varying(255),

Many thanks,
Torben

Saved Queries