Metadata-Version: 1.0
Name: django-emailmgr
Version: 0.5
Summary: An email manager for Django user
Home-page: https://github.com/un33k/django-emailmgr
Author: Val L33
Author-email: val@neekware.com
License: UNKNOWN
Description: django-emailmgr
        ================
        
        Django emailmgr is an application that helps with post registration email management".
        ``You can associate multiple email addresses to a single Django User.``
        
        This application comes into the picture only after a user has been created, activated
        and logged in.
        
        If your requirements is for email management prior to user registration please take a 
        look at ``django-registration`` or ``django-email-confirmation``.
        
        This application was inspired by bitbucket.org's email management system as well as 
        the mentioned applications.
        
        
        Current Features:
        _________________
        Assumption:
            * - Django user has been created 
            * - Either via proper registration and activation or via the admin interface or scripts
            * - User has a valid email address
            * - This application first looks for its templates in: EMAIL_MGR_TEMPLATE_PATH, then
                it looks for <template_dir>/emailmgr/
                * - This way, projects can place the required templates at a location of their choice
                    relative to the <tempalate_dir> of course
            * - Three templates are found in the template directory as stated above
                * - email subject template - emailmgr_activation_subject.txt
                    * - extra context: current_site
                * - email message body template - emailmgr_activation_message.txt
                    * - extra context: current_site, activate_url & user
                * - email list & manipulation template - emailmgr_email_list.html
                    * - extra context: emails_list and add_email_form
                        * - email_list includes all emails for this users (primary email first)
                        * - add_email_form is a form for adding a new email address to user
        
        1. Latch on the ``post_save`` signals for (user) and execute the following:
            A. Create an email address object with the following attributes
                * - email = user.email
                * - is_active = True
                * - is_primary = True
                * - identifier = a random string (used for activation)
                * - Note: user login is not required
                * - Note: email is only created if user has a valid email address
                * - Note: this email is automatically considered as primary and activation is skipped
        
        2. Latch on the ``post_delete`` signals on (user) and execute the following:
            A. Delete all email addressed associated with the deleted user
            
        3. Provide URL to:
            A. Add an email address to the logged user's account:
                * - http://example.com/email/add/, 
                * - Email address is created and associated with the logged in user
                * - Email address remains inactive and cannot be made primary
                * - User is redirected to http://example.com/email/list/
                * - ``emails_list`` and ``add_email_form`` are passed into the template
                
            B. Delete an email address from a user account
                * - http://example.com/email/delete/<identifier>/, 
                * - Existing email address with the above identifier is deleted
                * - Primary email address cannot be delete
                * - Once the email is deleted, user is redirected to http://example.com/email/list/
                
            C. Send activation link for a newly added email address to user's primary email address
                * - http://example.com/email/send_activation/<identifier>/, 
                * - An activation email is sent to the logged in user's primary address
                * - Note: all emails remain inactive unless activated
                * - Once the email is sent, user is redirected to http://example.com/email/list/
        
            D. Activate an email address when user clicks on an activation link
                * - http://example.com/email/activate/<identifier>/,
                * - Note: link was emailed to user's primary email address
                * - Matched email will be activated (then eligible to be promoted to primary)
                * - Once the email is activated, user is redirected to http://example.com/email/list/
        
            E. Make an activated email address the primary email
                * - http://example.com/email/make_primary/<identifier>/,
                * - Only activated email addresses can be promoted to be the primary email address
                * - User.email is set to the newly promoted primary email address
                * - Note: Only one email address can be set to primary
                * - Once the email is made primary, user is redirected to http://example.com/email/list/
        
        
        4. More to come ... patches & enhancements are welcomed (http://github.com/un33k/django-emailmgr)
        
        
        Usage
        =====
        
        A. Install django-emailmgr:
            * _ Make sure you have python 2.6+ and can install from pypi
                1. easy_install django-emailmgr
                2. pip install django-emailmgr
                3. git clone http://github.com/un33k/django-emailmgr
                    a. cd django-emailmgr
                    b. run python setup.py
                4. wget https://github.com/un33k/django-emailmgr/zipball/master
                    a. unzip the downloaded file
                    b. cd into django-emailmgr directory
                    c. run python setup.py
        
            * _ Stick ``"emailmgr"`` in ``INSTALLED_APPS``, right after all other Django specific Apps
            * _ Follow the instruction in the ``Current Features`` at the top of this file for usage.
            * _ Run syncdb and enjoy
        
        ToDo
        =====
        clean up README
        add more goodies
        
        
        
        
        
        
        
        
        
        
        
        
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Web Environment
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Topic :: Utilities
