Hello list (and first post):
I followed the excellent tutorial http://trac.roundcube.net/wiki/Howto_Ldap to successfully implement successfully public and private address books: importing (via abxldap), searching and browsing works "as advertised".
Thank you for a great job so far :-)
Next task was to use RC to edit the entries in both public and private directories. Permissions are set accordingly in slapd.conf, and editing works fine with iOS 5.0 and 5.1, and jxplorer.
I enclose 5 specific (verbose) experiences with both 0.7.2 and 0.8-beta that I would like to help address:
fields works and updates the contact as expected: the new input is updated on the server, and existing data are preserved. However, an "Object class violation" is raised:
[07-Apr-2012 03:59:37 +0200]: C: Replace [dn: cn=John Doe,ou=public,ou=rcabook,dc=hostname,dc=tld]: Array ( [cn] => John Doe [sn] => Doe [givenname] => John Doe [o] => ORIG )
[07-Apr-2012 03:59:37 +0200]: S: OK [07-Apr-2012 03:59:37 +0200]: C: Rename [dn: cn=John Doe,ou=public,ou=rcabook,dc=hostname,dc=tld] [dn: mail=john@acme.com] [07-Apr-2012 03:59:37 +0200]: S: Object class violation [07-Apr-2012 03:59:37 +0200]: C: Read [dn: cn=John Doe,ou=public,ou=rcabook,dc=hostname,dc=tld] [(objectclass=*)] [07-Apr-2012 03:59:37 +0200]: S: OK [07-Apr-2012 03:59:37 +0200]: C: Search [(objectClass=groupOfNames)][dn: ou=public,ou=rcabook,dc=hostname,dc=tld] [07-Apr-2012 03:59:37 +0200]: S: 0 record(s) [07-Apr-2012 03:59:37 +0200]: C: Close
RESULT: Works OK, but we get a red error message "An error occured while saving." on top of the web page.
[07-Apr-2012 16:45:59 +0200]: C: Connect [calendarserver:389] [Public] [07-Apr-2012 16:46:00 +0200]: S: OK [07-Apr-2012 16:46:00 +0200]: C: Bind [dn: cn=user@hostname.net,ou=private,ou=rcabook,dc=hostname,dc=tld] [pass: XXXXXXXXXXXXX] [07-Apr-2012 16:46:00 +0200]: S: OK [07-Apr-2012 16:46:00 +0200]: C: Search [(&(objectClass=inetOrgPerson)(|(mail=new_contact@example.com)))][dn: ou=public,ou=rcabook,dc=hostname,dc=tld] [07-Apr-2012 16:46:00 +0200]: S: 0 record(s) [07-Apr-2012 16:46:00 +0200]: C: Add [dn: mail=new_contact@example.com,ou=public,ou=rcabook,dc=hostname,dc=tld]: Array ( [cn] => Last, First [sn] => First [givenname] => Last [mail] => new_contact@example.com [objectClass] => Array ( [0] => top [1] => inetOrgPerson )
)
[07-Apr-2012 16:46:00 +0200]: S: OK [07-Apr-2012 16:46:00 +0200]: C: Close
[07-Apr-2012 21:29:43 +0200]: C: Replace [dn: mail=new_contact@example.com,ou=public,ou=rcabook,dc=hostname,dc=tld]: Array ( [cn] => Last, First [sn] => First [givenname] => Last [mail] => new_contact@example.com )
[07-Apr-2012 21:29:43 +0200]: S: OK [07-Apr-2012 21:29:43 +0200]: C: Add [dn: mail=new_contact@example.com,ou=public,ou=rcabook,dc=hostname,dc=tld]: Array ( [street] => Array ( [0] => street )
[postalcode] => Array
(
[0] => zip
)
[l] => Array
(
[0] => place
)
[c] => Array
(
[0] => country
)
)
[07-Apr-2012 21:29:43 +0200]: S: Object class violation [07-Apr-2012 21:29:43 +0200]: C: Read [dn: mail=new_contact@example.com,ou=public,ou=rcabook,dc=hostname,dc=tld] [(objectclass=*)] [07-Apr-2012 21:29:43 +0200]: S: OK [07-Apr-2012 21:29:43 +0200]: C: Search [(objectClass=groupOfNames)][dn: ou=public,ou=rcabook,dc=hostname,dc=tld] [07-Apr-2012 21:29:43 +0200]: S: 0 record(s) [07-Apr-2012 21:29:43 +0200]: C: Close
In addition, I can see the following PHP error again:
Warning: ldap_mod_add(): Modify: Object class violation in program/include/rcube_ldap.php on line 1116
RESULT: Does NOT work, and we get a red error message "An error occured while saving." on top of the web page.
[07-Apr-2012 22:40:47 +0200]: C: Connect [calendarserver:389] [Private] [07-Apr-2012 22:40:47 +0200]: S: OK [07-Apr-2012 22:40:47 +0200]: C: Bind [dn: cn=user@hostname.net,ou=private,ou=rcabook,dc=hostname,dc=tld] [pass: XXXXXXXXXXXXX] [07-Apr-2012 22:40:47 +0200]: S: OK [07-Apr-2012 22:40:47 +0200]: C: Add [dn: cn=Testgroup,cn=user@hostname.net,ou=private,ou=rcabook,dc=hostname,dc=tld]: Array ( [objectClass] => Array ( [0] => top [1] => groupOfNames )
[cn] => Testgroup
[] =>
)
[07-Apr-2012 22:40:47 +0200]: S: Undefined attribute type [07-Apr-2012 22:40:47 +0200]: C: Close
RESULT: Does NOT work, and we get a red error message "An error occured while saving." on top of the web page.
In addition, the input mask for "Adress" shows 4 text boxes (street, postal, l, c fields), but the one for Region (st field) only shows a placeholder string "{region}" (no text box, just the text).
in the web UI. No need to be able to update the photo here, but showing the already existing contact photo would be awesome ;-)
Could you please indicate whether these are know issues, and what to do about them? Again, editing etc. in iOS and jxplorer on the same LDAP directory with the same credentials works correctly in all of the above cases.
Thank you in advance, Achim