[turba] Updating the Turba Schema
Simon Brereton
simon.brereton at dada.net
Tue Sep 14 17:56:29 UTC 2010
> -----Original Message-----
> From: turba-bounces at lists.horde.org [mailto:turba-
> > And if a future version of Turba supported multiple email addresses
> > for a contact (I'm using H3 (2.3.4)) what would happen to my
> changes
> > (I'd presume there'd be an updates .sql to run and that could
> > effectively complicate the DB if not exactly breaking it)?
> >
> > Ideally you'll tell me there's a new version of Turba that supports
> it
> > (and therefore sync is supported as well) and I'll wait and just
> > install that.
> >
> > Any information gratefully received.
>
> Maybe I misunderstand what you are asking, but Turba, itself, can
> support as many email address fields as you want. You can configure
> Turba to contain *any* field you want. What you need to do, as the
> blog entry you linked to shows, is to add the field to your storage
> backend e.g., create a database field named something like
> object_homeemail, object_workemail. Then make sure the field has an
> attribute entry in config/attributes.php. Turba ships with the
> definitions already there for homeEmail and workEmail. Then, add
> those two fields to the entry in config/backends.php (formally called
> sources.php).
>
> Now, what the sync client sends is a different story. Looking at the
> code in Turba_Driver#toHash, it looks like Turba expects the client
> to send either a HOME or WORK type, then maps that to homeEmail and
> workEmail. If neither of those get set, it then then looks for a
> plain email value. So, if your client doesn't send the desired,
> multiple emails as HOME and WORK, then we might have to look at
> tweaking the code.
Mike - I'll take another look at it. I meant to add the third option, that Turba already supported this and I hadn't seen it.
However, I'm not sure I can agree that it does :) if I go into the DB Structure, turba_objects, there are:
object_id owner_id object_type object_uid object_members object_firstname object_lastname object_middlenames object_nameprefix object_namesuffix object_alias object_photo object_phototype object_bday object_homestreet object_homepob object_homecity object_homeprovince object_homepostalcode object_homecountry object_workstreet object_workpob object_workcity object_workprovince object_workpostalcode object_workcountry object_tz object_geo object_email object_homephone object_workphone object_cellphone object_fax object_pager object_title object_role object_logo object_logotype object_company object_category object_notes object_url object_freebusyurl object_pgppublickey object_smimepublickey
only one email. And indeed this is what is displayed for all my contacts - system wide. So it looks like I have to go down the hack route (unless there's a simple .sql I can run?). So, I'm a little perplexed, because I feel you should be right (searching on the topic didn't bring up a wealth of previous posts, so either this isn't a feature no one else needed *or* there's something not right with my set up. This, however, is a fresh install and not an upgrade - so I'm confused as to how I've ended up with only one email field.
In the meantime I'll give your instructions a shot.
Thanks.
Simon
More information about the turba
mailing list