=== ABOUT === ConTagged is a webbased address book for small companies. It features a public address book which is writable for all company staff and a personal address book for each staff member. ConTagged requires an already setup LDAP server to authenticate users and store it's data. === REQUIREMENTS === You need to have a running LDAP Server with some users (objectClass=posixUser) in it. It is important that you already have these users because LDAPab uses them to authenticate. You need a webserver (peferable Apache) with PHP (4.3 or higher). PHP needs to be compiled with LDAP support (compiled in or as extension) === SETUP ConTagged === Copy the contents of the .tgz file to a directory below your webserver document root. Make sure the webserver is able to write to the cache directory which is used for the template engine's cache files. A 'chmod 777 cache' will do. Copy the inc/config.phpi.dist file to inc/config.php file and open it in your favourite editor and edit the options according to your needs. Some knowlege about LDAP may come in handy. If HTTP auth is wanted have a look at the provided _htaccess file, edit it as needed and rename it back to .htaccess === SETUP THE LDAP SERVER === The following only describes what to do for open-ldap 2.0! If you use any other LDAP server you're left to our own. You need to include the inetOrgPerson schema in you slapd.conf: include /etc/ldap/schema/inetorgperson.schema If you want to use the extended schema (needed for tagging) you need to copy the ldapab.schema file to /etc/ldap/schema/ and include it, too. include /etc/ldap/schema/ldapab.schema If you don't use the extended schema, remove the contactPerson from the object classes array in the config. To setup the access rights add the following statement to your slapd.conf. Of course you have to replace "o=cosmocode,c=de" with your own root DN. The first entry may have to adjusted also if your users aren't stored in a ou=people entry. Make sure you include these lines before other access control lists that match these parts of the ldap tree. If you are unsure have a look at the included slapd.example file access to dn.regex="(.*,)?ou=contacts,cn=([^,]+),ou=people,(.*)$" by dn.regex="cn=$2,ou=people,$3" write by * none access to dn.subtree="ou=contacts,o=cosmocode,c=de" by users write by * read After this modifications you have to restart the slapd server. The last thing is to add the contacts leafs to your LDAP tree. You'll need to add a global contacts leaf at top. eg: 'ou=contacts,o=cosmocode,c=de' And a contacts leaf for every user. eg: 'ou=contacts,cn=Joe Schmoe,ou=people,o=cosmocode,c=de' If you made everything correct you can point your webbrowser to the newly installed ConTagged and use it :-) If you encounter problems try to enable logging in your LDAP server to see what the problem is. === USING DIFFERENT OBJECTCLASSES === This new version of ConTagged is very flexible in how your contacts should be stored in your LDAP directory. ConTagged uses internal field names which can be mapped to arbitrary LDAP attributes. By default, all contacts are stored with the inetOrgPerson and contactPerson object classes. If you want to use different classes and attributes, you can add objectClasses in the 'oclasses' config option and custom fields in the 'customFields' option. Also have a look at the inc/fields.php file to understand what additional mappings are available. Note: your contacts should *always* use the inetOrgPerson objectclass at minimum, but you can add any other objectclasses. OXUserObject from OpenExchange and evolutionPerson from the Evolution software are set up in already and can simply be enabled by using the right config class in config.php. If you want to add new internal field names, you need to adjust the templates accordingly. If you add support for new schemas, please send your changes to us for inclusion in a next release. === FEEDBACK, PATCHES, SUPPORT === This software was developed to satisfy a need in our company. We give it to the public because it may be helpful to other companies with the same needs. However this is not a supported product. We like to get feedback and patches but we can't promise to answer, to fix bugs or include feature wishes. However don't hesitate to contact us but understand that our core business has priority over this project. We prefer to receive bug reports and features wishes through the issue tracker at http://github.com/cosmocode/contagged/issues. If you want to otherwise contact us, send a mail to ldapab@cosmocode.de or visit our homepage at http://www.cosmocode.de === KNOWN BUGS === ConTagged was only tested with open-ldap 2.1 - there may be problems with other LDAP Servers. === LICENSE === ConTagged - An LDAP based Company Address Book Copyright 2004 - 2014 - CosmoCode GmbH This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. See COPYING for details