Summary | users' kolab addressbook entries not editable |
Queue | Kolab |
Type | Bug |
State | Resolved |
Priority | 1. Low |
Owners | wrobel (at) horde (dot) org |
Requester | m.gabriel (at) das-netzwerkteam (dot) de |
Created | 12/24/2007 (6425 days ago) |
Due | |
Updated | 03/20/2008 (6338 days ago) |
Assigned | 12/26/2007 (6423 days ago) |
Resolved | 03/20/2008 (6338 days ago) |
Github Issue Link | |
Github Pull Request | |
Milestone | |
Patch | No |
Assigned to Gunnar Wrobel
State ⇒ Resolved
State ⇒ No Feedback
in Object.php, and then put a var_dump($this) inside getName() in
Driver.php. See if the two objects match.
If you're posting object dumps please try to be selective as there are
some recursive references that make things a bit repetitive. Also,
please post them as text attachments to the ticket instead of mailing
them to someone privately.
Thanks!
testing/unstable). i have sent a phpinfo page link to chuck directly
for further reference...
a table row for my kolab user default abook (INBOX/Kontakte) in html
looks like this:
<tr class="">
<td><label for="INBOX/Kontakte:ed447a863b47cbf07628091605afb456"
class="hidden">Kontakt auswählen</label><input class="checkbox"
name="objectkeys[]"
id="INBOX/Kontakte:ed447a863b47cbf07628091605afb456"
value="INBOX/Kontakte:ed447a863b47cbf07628091605afb456"
type="checkbox"></td>
<td><a nicetitle="Bearbeiten"
href="/mailxchange/turba/contact.php?view=EditContact&source=INBOX%2FKontakte&key=ed447a863b47cbf07628091605afb456&url=%2Fmailxchange%2Fturba%2Fbrowse.php"><img src="/mailxchange/themes/graphics/edit.png" alt="Bearbeiten"
title=""></a></td>
<td><a nicetitle="vCard herunterladen"
href="/mailxchange/turba/vcard.php?source=INBOX%2FKontakte&key=ed447a863b47cbf07628091605afb456"><img src="/mailxchange/themes/graphics/mime/vcard.png" alt="vCard herunterladen"
title=""></a></td>
<td> </td>
<td class="linedRowSelectedCol"><a
href="/mailxchange/turba/contact.php?source=user%40mailserver.dom&key=ed447a863b47cbf07628091605afb456">Test
Abookuser</a></td></tr>
in the several hrefs the option "source" is passed to the contact.php
script. once it says
source=user%40mailserver.dom
which works fine (renderer by ob::url() in row.inc).
the other times it says
source=INBOX%2FKontakte
which breaks kolab/cyrus (rendered by ob::getSource() in row.inc).
for more information on the related turba object i have sent a
Var_Dump() of one $ob in row.inc to chuck directly.
thanks,
mike
State ⇒ Feedback
this patch to make sense. What PHP version are you running? Have you
tried using debug_backtrace() and var_dump() on the objects involved
to see why the $name property seems to differ?
New Attachment: Object.php.patch
the problem is that with kolab the source of kolab's default user
contact folder is equal to the user's email adress. other non-default
contact folders have the name of the cyrus path, e.g.
INBOX/Contacts_private.
So address book entries in non-default contact folders are
modifiable... but not so the kolab user default contact folder...
the issue originates in turba/lib/ListView.php and goes further down
into turba/lib/Object.php. Everything rendered in ListView.php is
passed on to further pages (view.php, edit.php, etc. by
Variables::getDefaultVariables())
when rendering a table row (row.inc) in ListView.php, the method
ob->getSource() (row.inc) returns INBOX/Contacts for the kolab user
default contact folder, but should return user@domain.
looking closely at the Turba_Driver::getSource() method in
turba/lib/Object.php:
<quoting>
function getSource() {
return $this->driver->getName()
}
</quoting>
this should call the Turba_Driver::getName() method in
turba/lib/Driver.php, which then - in a proper object oriented
environment - should return
function getName() {
return $this->driver->name;
}
but it does not... or it does, but we have two different values for
the same expression ($this->driver->name).
anyway, find a patch attached, that works well with kolab, not sure
about other backends...
Priority ⇒ 3. High
State ⇒ Unconfirmed
Queue ⇒ Kolab
Summary ⇒ users' kolab addressbook entries not editable
Type ⇒ Bug
horde-webmail-edition-1.1-rc1.
with turba i can add entries to "My Contacts" (kolab-cyrus addressbook
in user/<mailaddress>/Contacts), i can view them, i can even delete
them.
but: any modification of a contact item (adding mail address, phone
number, etc.) is not stored in kolab-cyrus.
works fine when editing contacts with kaddressbook... changes
performed from kaddressbook are also immediately present in turba.
best & merry x-mas,
mike