Metadata-Version: 1.1
Name: icemac.addressbook
Version: 2.0.0
Summary: Multi user address book application
Home-page: http://pypi.python.org/pypi/icemac.addressbook
Author: Michael Howitz
Author-email: icemac@gmx.net
License: ZPL 2.1
Description: ==================
        icemac.addressbook
        ==================
        
        *Purpose:* Store, search and export addresses and phone numbers using
        a web application.
        
        *Status:* stable version, used in production; some features might be added in
        future (See `To do`_)
        
        .. contents::
        
        ========
        Features
        ========
        
        General
        =======
        
        - multi-client capability
        
        - user and role management
        
        - Completely translated into German, and easily translateable into
          other languages.
        
        - Optimized for the following browsers: Firefox, Safari. IE works but might
          look ugly. (Mobile version of Safari has some glitches.)
        
        Data
        ====
        
        - store data of persons including postal address, e-mail address,
          home page address, phone number and files
        
        - add data fields to persons and addresses using the user interface
        
        - ability to change the oder of the fields of persons and adresses
        
        - assign keywords to persons
        
        - import data from XLS (Excel) or CSV files
        
        Search & Export
        ===============
        
        - search for persons by keywords and names
        
        - export persons found using a search as XLS file
        
        - update a single field of multiple persons as returned by a search
          (multi-update)
        
        Technical
        =========
        
        - really good test coverage of program code (> 98 %)
        
        - data storage is an object database (ZODB) so no additional database is
          required
        
        ===========
        Screenshots
        ===========
        
        See SourceForge_.
        
        .. _SourceForge : https://sourceforge.net/projects/icemac/#screenshots
        
        =======
        Hacking
        =======
        
        Fork me on: https://bitbucket.org/icemac/icemac.addressbook
        
        .. image:: https://secure.travis-ci.org/icemac/icemac.addressbook.png
           :target: https://travis-ci.org/icemac/icemac.addressbook
        
        See `Source installation`_, too.
        
        ==============
         Installation
        ==============
        
        Prerequisites
        =============
        
        * You only need Python 2.7.x.
        
          * Other Python versions are currently not supported.
        
          * For a smooth installation ensure your Python installation is clean by
        
            * either compiling your own Python 2.7 from the `source code`_
        
            * or by creating a `virtualenv`_.
        
        .. _`source code` : http://www.python.org/download/releases/
        
        .. _`virtualenv` : https://pypi.python.org/pypi/virtualenv
        
        There are two variants for installation:
        
          * Package installation (to be preferred)
        
          * Source installation (for development)
        
        Package installation
        ====================
        
        Follow these steps if you want to install the pre-packaged address book
        (preferred way):
        
        First installation
        ------------------
        
        CAUTION: icemac.addressbook can't be installed using ``easy_install`` or
        ``pip``, you have to follow these simple steps.
        
        Neither you need any root privileges nor it installs anything outside
        its directory.
        
        1. Download the source distribution (see Download_).
        
        2. Extract the downloaded file.
        
        3. Run ``install.py`` using your desired python, e. g.::
        
           $ python2.7 install.py
        
        4. Answer the questions about admin user name, password and so on.
        
        5. Run the tests. See `Run the tests`_
        
        6. Start the application. See `Run the application`_
        
        Update
        ------
        
        - If you are updating from version 0.x get the latest 1.x version from
          `PyPI`_ and follow the update procedure described there in INSTALL.rst.
        
        - If you are updating from version 1.x or newer follow these steps:
        
           1. Download and extract the source distribution (see Download_) to a
           new a directory.
        
           2. Run ``install.py`` using your desired python added by the path
           to the previous installation. This way values you entered
           previously are used as defaults instead of the application
           defaults.  Example::
        
             $ python2.7 install.py ../icemac.addressbook-1.10.6
        
           3. Answer the questions about admin user name, password and so on.
        
           4. Start the new instance of the application.
        
        .. _`PyPI` : https://pypi.python.org/simple/icemac.addressbook
        
        Source installation
        ===================
        
        1. Get the source code::
        
           $ hg clone https://bitbucket.org/icemac/icemac.addressbook
        
        2. Install the sources::
        
           $ cd icemac.addressbook
           $ printf "[buildout]\nextends = profiles/%s\n" dev.cfg > buildout.cfg
           $ python2.7 bootstrap.py
           $ bin/buildout
        
        
        Run the tests
        =============
        
        Running the tests is independent from your choosen installation kind.
        
        Unit tests and functional tests
        -------------------------------
        
        Run the unit tests and functional tests using::
        
          $ bin/test
        
        Selenium tests
        --------------
        
        To run the Selenium tests you additionally need:
        
        * Selenium Server from SeleniumHQ_
        
        * Firefox with a version between 7 and 17 (newer versions lead to test
          errors!)
        
        Run the tests following these steps:
        
        * set the variable `GOCEPT_SELENIUM_BROWSER` like this::
        
          $ export GOCEPT_SELENIUM_BROWSER='*firefox <Path to Firefox binary>'
        
        * start the server::
        
          $ java -jar <Path to Selenium Server jar>
        
        * run all tests using::
        
          $ bin/test --all
        
        .. _SeleniumHQ: http://seleniumhq.org/download/
        
        Run the application
        ===================
        
        Running the application is independent from your choosen installation kind.
        
        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
        
        To log-in at this URL you need a username and password.
        
         * If you installed via package installation you had to chose them when
           running ``install.py``. They are stored in ``admin.zcml``.
        
         * If you installed the sources you find username and password in
           ``dev_admin_user.zcml``.
        
        Create a new address book using the `add address book` link on the
        right. How to create new users inside this address book is described
        in `Create new users`_.
        
        
        Change configuration of the installation
        ========================================
        
        This section is only valid if you chose package installation.
        
        The values you entered during installation resp. update are stored in
        a file named `install.user.ini` in the address book directory.
        
        To change the configuration values call `install.py` using python and
        enter a `.` as parameter like this::
        
          $ python2.7 install.py .
        
        The configuration questions get presented to you with your previously
        entered values as default.
        
        To remove additional packages you have to edit the ``[package]``
        section of `install.user.ini`. There is currently no other way for
        removal.
        
        To remove the user name which should own the process you have to edit the
        ``[server]`` section of `install.user.ini`. Remove the value from the
        ``user`` line.
        
        =================
         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 address book augmented by log-in
        information.
        
        To create the first new user inside an address book the adminstrator
        (who was created in `First installation`_) 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 --> Users --> Add user`.
        
        The newly created user has now a log-in (e-mail address) for the
        address book the person belonges to.
        
        =======
         To do
        =======
        
        Next major version
        ==================
        
        - Probably: Full text search.
        
        Longer term
        ===========
        
        The following features might be implemented over the next months:
        
        - person data
        
          * store picture per person
        
        - company as entity
        
        - import
        
          * vCard
        
          * SQLite (Apple's Addressbook.app)
        
        - export
        
          * custom XLS export
        
          * LDAP export
        
        - more search abilities
        
          * full text search
        
          * combined search
        
          * wildcard search
        
        
        ==========
        Change log
        ==========
        
        2.0.0 (2013-11-09)
        ==================
        
        Features
        --------
        
        - Put focus on first input field of form after loading the form.
        
        - FavIcon can now be selected in address book section of master data.
        
        - Add confirmation before cloning a person.
        
        Bugfixes
        --------
        
        - The year in dates now have to be entered with 4 digits allowing to enter
          birthdates before 1930. (Merge from 1.10 branch.)
        
        - Show metadata for entity field order list.
        
        - Show only most common time zones in prefereces for select.
        
        Other
        -----
        
        - Changed required Python to version 2.7.x, no longer supporting Python 2.6.
        
        - Updated most other packages (outside ZTK) needed for address book to
          newest versions.
        
        
        1.10.2 (2013-07-06)
        ===================
        
        - Update to `zc.buildout` 1.7.1.
        
        - Downgrade ``bootstrap.py`` to the version of `zc.buildout` 1.7.1 so
          initial bootstrap does not fail. This problem was introduced in version 1.10.1.
        
        
        1.10.1 (2013-06-25)
        ===================
        
        - Update ``bootstrap.py`` to current version so updating an older instance
          does not fail.
        
        
        1.10.0 (2013-06-21)
        ===================
        
        Features
        --------
        
        - Added welcome page displayed after login. So additional packages might
          provide roles which do not allow to access the persons in the address
          book.
        
        - Added ability in user preferences to set current time zone. Datetimes,
          e. g. creation date, modification date and user defined fields of type
          datetime, are converted to the selected time zone. Default is UTC.
        
        - Added JavaScript calendar widget to datetime fields.
        
        - Added number of displayed persons in search result handler which displays
          the names of the selected persons (new in 1.9.0).
        
        - Now displays the name of the address book in HTML title tag and as
          headline inside the application.
        
        - Moved link to edit form of address book from tabs to master data.
        
        - Added checkbox in search result table to deselect all entries.
        
        Other
        -----
        
        - Moved source code to: https://bitbucket.org/icemac/icemac.addressbook
        
        - Updated to run on `Zope Toolkit 1.1.5`_.
        
        - Updated most other packages (outside ZTK) needed for address book to
          newest versions.
        
        - Simplified and streamlined test layers.
        
        .. _`Zope Toolkit 1.1.5`: http://docs.zope.org/zopetoolkit/releases/overview-1.1.5.html
        
        
        1.9.0 (2012-12-29)
        ==================
        
        Features
        --------
        
        - Added search result handler which prints the names of the selected persons
          als comma separated list.
        
        
        Bugfixes
        --------
        
        - Login in a virtual hosting environment might have led to not accessible
          URLs. This was fixed by using the whole URL in the `camefrom` parameter.
        
        Other
        -----
        
        - Updated to `Zope Toolkit 1.1.4`_ for dependent packages.
        
        - Updated other dependent packages (outside ZTK) to newest versions.
        
        - Moved `chameleon-cache` into `var` directory.
        
        .. _`Zope Toolkit 1.1.4`: http://docs.zope.org/zopetoolkit/releases/overview-1.1.4.html
        
        
        
        Previous Versions
        =================
        
        See ``OLD_CHANGES.rst`` inside the package.
        
        ==========
         Download
        ==========
        
        
        
Keywords: python address book addressbook zope3 zope application web phone number e-mail email home page homepage wsgi
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Web Environment
Classifier: Framework :: Paste
Classifier: Framework :: Zope3
Classifier: Intended Audience :: End Users/Desktop
Classifier: Intended Audience :: Information Technology
Classifier: Intended Audience :: Other Audience
Classifier: Intended Audience :: Religion
Classifier: Intended Audience :: Telecommunications Industry
Classifier: License :: OSI Approved
Classifier: License :: OSI Approved :: Zope Public License
Classifier: Natural Language :: English
Classifier: Natural Language :: German
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2 :: Only
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: Implementation
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Topic :: Communications
Classifier: Topic :: Communications :: Email
Classifier: Topic :: Communications :: Email :: Address Book
Classifier: Topic :: Communications :: Telephony
Classifier: Topic :: Internet
Classifier: Topic :: Internet :: WWW/HTTP
Classifier: Topic :: Internet :: WWW/HTTP :: WSGI
Classifier: Topic :: Internet :: WWW/HTTP :: WSGI :: Application
Classifier: Topic :: Office/Business
Classifier: Topic :: Office/Business :: Groupware
Classifier: Topic :: Religion
