<?xml version="1.0" encoding="UTF-8" ?>
<rdf:RDF xmlns="http://usefulinc.com/ns/doap#" xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"><Project><name>icemac.addressbook</name>
<shortdesc>Multi user address book application</shortdesc>
<description>==================
icemac.addressbook
==================

*Purpose:* Store, search and export addresses and phone numbers using
a web application.

*Status:* working prototype (preview of the real application)

.. contents::

Features
========

- store data of persons including (postal address, e-mail address,
  home page address, phone number and files)

- assign keywords to persons

- search for persons by keyword

- export persons found using a search as XLS file

- multi-client capability

- user and role management

- really good test coverage (&gt; 98 %)

User management
===============

Roles
-----

Access to the address book is only granted after authentication. There
are three roles to authorize a user:

- visitor: visit all person's data, search and export, change own
  password

- editor: permissions of visitor + edit all person's data, change own
  log-in name

- administrator: permissions of editor + create and change address
  book and users

Create new users
----------------

Users are persons from the addressbook augmented by log-in
information.

To create the first new user inside an addressbook the adminstrator
(who was created in Install_) has to log-in and then do the following:

  1. create a new person with an e-mail address using `Add person`.

  2. create a new user using `Master data --&gt; Users --&gt; Add user`.

The newly created user has now a log-in (e-mail address) for the
addressbook the person belonges to.

==============
 Installation
==============

Prerequisites
=============

You only need Python 2.5. (Other python versions are currently not
supported.)

Install
=======

CAUTION: icemac.addressbook can't be installed using ``easy_install``,
you have to follow these simple steps:

1. Download the source distribution (see Download_).

2. Extract the downloaded file.

3. Run ``install.py`` using your desired python, e. g.::

   $ python2.5 install.py

4. Answer the questions about admin user name, password and so on.

Neither you need any root privileges nor it installs anything outside
its directory.

Run the tests
=============

Run the unit tests and functional tests using::

  $ bin/test

Run the application
===================

To run the application instance in foreground start using::

  $ bin/addressbook fg

To run it as a demon process start using::

  $ bin/addressbook start

To stop the demon process call::

  $ bin/addressbook stop

The default URL is to access the application is::

  http://127.0.0.1:8080

The hostname and port for this URL are stored in ``deploy.ini``.

To log-in at this URL you need the username and password you chose
when running ``install.py``. The are stored in ``admin.zcml``.

Update
======

- Do the steps described in Install_ (use a separate directory).

- If you want to restore the previous admin password copy ``admin.zcml``
  from the old instance to the new one.

- Stop the old instance of the application.

- Create a backup of the ZODB using::

  $ bin/backup

- Copy the backup directory (``var/backups``) to the new instance.

- Restore the backup using::

  $ bin/restore

- Start the new instance of the application.


=======
 To do
=======

Next version
============

- import of XLS files

Longer term
===========

The following features should be implemented over the next months:

- person data

  * store picture per person

  * add customizable free text fields

- company as entity

- import

  * vCard

  * XLS

  * SQLite (Apple's Addressbook.app)

- export

  * custom XLS export

  * LDAP export

- translation of user interface into German

- more search abilities

  * full text search

  * combined search

  * wildcard search



============
 Change log
============

0.4 (2009-05-15)
================

Features
--------

- Files can be uploaded and added to persons. (Files are stored as
  ZODB-Blob-Objects.)

- Added logging of page accesses to `access.log`.

- ``install.py`` now asks for hostname and portnumber and logging
  configuration, so changing ``deploy.ini`` is no longer necessary.


0.3.3 (2009-04-05)
==================

- Added two package dependencies which are necessary to convert an
  existing ZODB of a previous addressbook version.


0.3.2 (2009-04-03)
==================

- Fixed the sort order of the links in the master data section.


0.3.1 (2009-03-31)
==================

- Fixed wrong recipe version.


0.3 (2009-03-31)
================

Features
--------

- Added user management. There is now only one administrative user
  created during installation. This user can log-in using basic
  auth. He can create new users from existing persons inside the
  address books (See `Master data --&gt; Users`.)


Bug fixes
---------

- Made the AddressBook skin the default skin.


Other changes
-------------

- Dropped support for Python 2.4.

- Renamed role `icemac.addressbook.administrator` to
  `icemac.addressbook.global.administrator` so all global roles have
  the same naming scheme.

- Removed ZMI (Zope Management Interface) from skins in production
  environment. There is a buildout config in ``profiles/zmi.cfg``
  which enables ZMI.


0.2 (2009-01-02)
================

Features
--------

- Multiple postal addresses, e-mail addresses, phone numbers and home
  page addresses per person are now possible.

- Added XLS export for all stored data (not only the default
  addresses).

- Added new attribute `kind` to postal address. Split `street` into
  `address prefix` and `street`.

- Overview page of all address books now shows number of entries in
  each address book.

Bug fixes
---------

- E-Mail adresses with hyphen in host name where not enterable due to
  a picky constraint.

- After changing a keyword title, persons using this keyword where no
  longer found in the keyword search because the index was not
  updated.

- Changed sort order on person edit form: phone number is now
  displayed before e-mail address. Changed XLS export accordingly.

Previous Versions
=================

See ``OLD_CHANGES.txt`` inside the package.

==========
 Download
==========</description>
<homepage rdf:resource="http://pypi.python.org/pypi/icemac.addressbook" />
<maintainer><foaf:Person><foaf:name>Michael Howitz</foaf:name>
<foaf:mbox_sha1sum>2a306cbebb905d71a2bdfa6402ea75eda69f459e</foaf:mbox_sha1sum></foaf:Person></maintainer>
<release><Version><revision>0.4</revision></Version></release>
</Project></rdf:RDF>