*******************************************
** CPSDirectory V1.8.0 [R1 build 2004/02/25-08:47 by ben]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
- ZODBDirectory must inherit correctly PropertiesPostProcessor
  (ACL, when changed, were not correctly post-processed thus not used).
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- Entry local roles are now usable for all directory ACLs.
- In entry local roles namespace, all schema-defined fields are available
  (may be None if not present in the given entry).
- MultiEntriesWidget enable customization of view separator
- MultiEntriesWidget sort entries by default
- field can be processed for display in the search result list
  see getCustomDirectoryResultList for more information

*******************************************
** CPSDirectory V1.7.0 [R1 build 2004/02/19-15:54 by ben]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
- search result list can be sorted (cf getDirectoryResultFields)
Bug fixes:
~~~~~~~~~~
- no widget help available on creation form
- Better error message in LocalDirectory if the home folder is missing.
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- _getDataModel and _getAdapters always propagate **kw arguments to
  the underlying storage adapter.
- When querying a directory vocabulary, only the title field is retrived
  from an entry.

*******************************************
** CPSDirectory V1.6.5 [R1 build 2004/02/11-14:33 by ben]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
- default for the fullname computation doesn't takes care of spaces.
- widget contextual help is not nice
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
-

*******************************************
** CPSDirectory V1.6.4 [R1 build 2004/02/10-13:29 by regebro]

Bug fixes:
~~~~~~~~~~
- missing directory icon UserFolder_icon.gif
- The Roles Directory didn't implement deleteEntry.
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- getEntry now has a default parameter, to prevent a raise of KeyError
  if the entry does not exist.
- userFolderDelRoles implemented in the userfolder patch.

*******************************************
** CPSDirectory V1.6.3 [R1 build 2004/02/08-07:39 by fermigier]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
-
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- getEntry now has a default parameter, to prevent a raise of KeyError
  if the entry does not exist.

*******************************************
** CPSDirectory V1.6.2 [R1 build 2004/02/03-15:13 by regebro]

Bug fixes:
~~~~~~~~~~
- LDAP multivalue search is done using substring match
- LocalDirectory "Recursion Depth Exceeded" bug fixed.
- The tests if there is a local directory is no longer necessary.
- LDAPDirectory didn't work with IntegerFields.

*******************************************
** CPSDirectory V1.6.1 [R1 build 2004/02/03-10:31 by regebro]

New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- BaseDirectories __init__ now sets properties with the passed kw dictionary.
- LocalDirectory now creates the directory if it does not exist.

*******************************************
** CPSDirectory V1.6.0 [R1 build 2004/02/02-16:26 by regebro]

Requires:
~~~~~~~~~
- i18n: require cpsdefault i18n into default mcat
New features:
~~~~~~~~~~~~~
- Directories can now specify which fields are searched with a substring
  search (the rest are searched with exact matches). Implemented for
  all directories.
- Enable tooltip help in creation and edition using widget/help property.
- Implemented ZODB Directory.
- New navigation using action
- Valid breadcrumbs
- improve Members layout
- Implemented getting and setting properties on the member when the user
  folder supports it.
- Enable empty search using '*' on field referenced in search_substring_fields
- #289: Finish implementing searchEntries, with return_fields support.
- New directory type LocalDirectory, is used to redirect directory queries to
  a directory located in the users home folder.
Bug fixes:
~~~~~~~~~~
- Correctly fail when trying to create an already existing member.
- Correctly remove attributes from LDAP when they are empty.
- Fix Roles directory when using LDAPUserGroupsFolder
- Fix fetching return_fields in the members directory.
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- Search result fields can be customized using getCustomDirectoryResultFields
- Filter out invalid LDAP attribute names (containing '_') for the filter.
- Raise KeyError instead of ValueError when it makes sense.
- popup for Directory Entry Widget has a search mode in addition to the navigation mode.
- fullname returns id if givenName and sn are both empty.
- Title for a member entry is now the full name.
- use cpsdefault.pot as blacklist_pot 
- Added LDAPUserGroupsFolder as a folder having subgroups support.
- Implemented group deletion by calling userFolderDelGroups.
- Role directory is hidden by default
- Implemented updateMemberDataFromSchema as found in NuxMetaDirectories.

*******************************************
** CPSDirectory V1.5.0 [R1 build 2004/01/21-10:40 by ben]

ZODB Requires:
~~~~~~~~~~~~~~
- widgets DirectoryEntry and MultiEntries require CPSNavigation
  to install CPSNavigation just add the skin CPSNavigation/skins
New features:
~~~~~~~~~~~~~
- Password widget uses a confirmation widget in edit mode.
- New DirectoryEntry and DirectoryMultiEntries widgets
- Directory vocabularies can now have an additional empty key.
Bug fixes:
~~~~~~~~~~
-
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
-

*******************************************
** CPSDirectory V1.4.1 [R1 build 2004/01/15-14:33 by regebro]

ZODB Requires:
~~~~~~~~~~~~~~
-

New features:
~~~~~~~~~~~~~
- Italian translation.
- LDAPDirectoryVocabulary, referencing an LDAP directory by DN.

Bug fixes:
~~~~~~~~~~
- Correctly do field processing for computed fields in MembersDirectory,
  RolesDirectory and GroupsDirectory. Was already correct in LDAP.
- Group and Role directories now uses partial matching for ID.

New internal features:
~~~~~~~~~~~~~~~~~~~~~~
-

*******************************************
** CPSDirectory V1.4.0 [R1 build 2004-01/06-15:09 by anguenot]

ZODB Requires:
~~~~~~~~~~~~~~
-

New features:
~~~~~~~~~~~~~
- A Directory Vocabulary backed by LDAP can now be used with the DN as the
  key instead of the default Vocabulary's id field.

Bug fixes:
~~~~~~~~~~
-

New internal features:
~~~~~~~~~~~~~~~~~~~~~~
-
*******************************************
** CPSDirectory V1.3.0 [R1 build 2003/12/23-15:18 by ben]

ZODB Requires:
~~~~~~~~~~~~~~
- Re-enter all properties whose names used to be *_str.

New features:
~~~~~~~~~~~~~
- Added isEditEntryAllowed to check for entry edit permission.
- Added Entry Local Roles, a way for ACLs to get additional computed roles.
- Added a 'base_dn' field to the LDAP directory that can be used during
  creation to specify a subbranch.

Bug fixes:
~~~~~~~~~~
- LDAPDirectory now converts date fields between the LDAP time strings
  and DateTime objects.

New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- Renamed writeEntry to editEntry.
- renaming properties '*_str' and used '*_c' for computed attribute
  foo_expression_str -> foo_expr, foo_expression -> foo_expr_c
  foo_str -> foo, foo -> foo_c

*******************************************
** CPSDirectory V1.2.0 [R1 build 2003/12/10-18:17 by ben]

ZODB Requires:
~~~~~~~~~~~~~~
-

New features:
~~~~~~~~~~~~~
- The default schema now has a 'fullname' computed field.
- Separation of entry creation and deletion roles.

Bug fixes:
~~~~~~~~~~
- listEntryIds() returned all objects in the LDAP regardless of objectClass.
- LDAPDirectory now converts Files, Images and 'None' to strings for
  LDAP Storage.
  
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- first step of cps default integration

*******************************************
** CPSDirectory V1.1.0 [R1 build 2003/11/26-16:08 by regebro]

New features:
~~~~~~~~~~~~~
- Translatability in skins. Translations for English and French (incomplete).

Bug fixes:
~~~~~~~~~~
- It was not possible to change the groups on members with 
  UserFolderWithGroups or PluggableUserFolder.
- Only Managers could check if they had edit rights on an Entry.
- LDAPDirectory did not use ObjectClass settings when searching.
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- Added unit tests for members, groups, roles
- Allow restriction of LDAP searches to specific objectClasses.

*******************************************
** CPSDirectory V1.0.0 [R1 build 2003/11/19-20:55 by guillaum]

ZODB Requires:
~~~~~~~~~~~~~~
- Add specific schema and layout for search if needed.

New features:
~~~~~~~~~~~~~
- Search for groups and roles.
- Split search schemas and layouts so they can be customized independently.
- Group and role creation work.
- Display save button only if at least one widget is in edit mode.
- Default schema/layout have first and last name.
- LDAPDirectory allows entry creation and modification.

Bug fixes:
~~~~~~~~~~
- Misc.

New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- Efficient search done on user folders that know about searchUsers().
- New API on MemberDataTool to search members: searchForMembers().

*******************************************
** CPSDirectory V0.0.1 [R1 build 2003/11/10-18:19 by guillaum]

ZODB Requires:
~~~~~~~~~~~~~~
- Install the default setup using the external method CPSDirectory.install
- NuxUserGroups
- LDAPUserGroupsFolder-2.3.0
- CPSSchemas-0.6.0

New features:
~~~~~~~~~~~~~
- First packaged release.
- Allows view, edit and search of members / roles / groups / ldap
  directories. Allows creation of entry in members directory. Works well
  with UserFolderWithGroups, untested with LDAPUserGroupsFolder.
- No i18n.

Bug fixes:
~~~~~~~~~~
-

New internal features:
~~~~~~~~~~~~~~~~~~~~~~
-

