__pkginfo__.py 2.62 KB
Newer Older
Charles Hebert's avatar
0.1.0  
Charles Hebert committed
1
2
3
4
5
6
# pylint: disable-msg=W0622
"""cubicweb-forgotpwd application packaging information"""

modname = 'forgotpwd'
distname = 'cubicweb-forgotpwd'

Nicolas Chauvat's avatar
Nicolas Chauvat committed
7
numversion = (0, 3, 1)
Charles Hebert's avatar
0.1.0  
Charles Hebert committed
8
9
version = '.'.join(str(num) for num in numversion)

Sylvain Thénault's avatar
Sylvain Thénault committed
10
license = 'LGPL'
Nicolas Chauvat's avatar
Nicolas Chauvat committed
11
copyright = '''Copyright (c) 2010 LOGILAB S.A. (Paris, FRANCE), all rights reserved.
Charles Hebert's avatar
0.1.0  
Charles Hebert committed
12
13
14
15
16
http://www.logilab.fr -- mailto:contact@logilab.fr'''

author = 'LOGILAB S.A. (Paris, FRANCE)'
author_email = 'contact@logilab.fr'

Nicolas Chauvat's avatar
Nicolas Chauvat committed
17
18
description = 'password recovery component for the CubicWeb framework'
short_desc = description
Sylvain Thénault's avatar
Sylvain Thénault committed
19
20
21
22
long_desc = """\
Summary
-------

Sylvain Thénault's avatar
fix doc    
Sylvain Thénault committed
23
24
The `forgotpwd` cube provides an easy way to generate a new password for an
user, eg the common"I forgot my password" functionnality.
Sylvain Thénault's avatar
Sylvain Thénault committed
25

Sylvain Thénault's avatar
fix doc    
Sylvain Thénault committed
26
It is non-obstrusive and easy to plug.
Sylvain Thénault's avatar
Sylvain Thénault committed
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54

Usage
-----

This cube creates a new entity called `Fpasswd`. This is an internal
entity: managers and users can't read/delete or modify this kink of
entity.

The workflow of password recovery is defined below :

1. ask for a new password, the user must have a valid primary email
   associated to his account.

2. An email has been sent. This email contains a generated url associated to an
   user. This link is valid during a short period. This time limit can be
   configured in the all-in-one.conf file:

   .. sourcecode:: ini

      [FORGOTPWD]
      revocation-limit=30 # minutes

3. If the link is valid, the user can change his password in a new form.

There is an automatic task that delete periodically all old Fpasswd which are
stored in the database. This task is started at the launching of the
application.
"""
Charles Hebert's avatar
0.1.0  
Charles Hebert committed
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75

web = 'http://www.cubicweb.org/project/%s' % distname


from os import listdir as _listdir
from os.path import join, isdir, exists
from glob import glob

THIS_CUBE_DIR = join('share', 'cubicweb', 'cubes', modname)

def listdir(dirpath):
    return [join(dirpath, fname) for fname in _listdir(dirpath)
            if fname[0] != '.' and not fname.endswith('.pyc')
            and not fname.endswith('~')
            and not isdir(join(dirpath, fname))]

data_files = [
    # common files
    [THIS_CUBE_DIR, [fname for fname in glob('*.py') if fname != 'setup.py']],
    ]
# check for possible extended cube layout
Sylvain Thénault's avatar
Sylvain Thénault committed
76
for dname in ('entities', 'views', 'sobjects', 'hooks', 'schema', 'data', 'wdoc', 'i18n', 'migration'):
Charles Hebert's avatar
0.1.0  
Charles Hebert committed
77
78
79
80
81
    if isdir(dname):
        data_files.append([join(THIS_CUBE_DIR, dname), listdir(dname)])
# Note: here, you'll need to add subdirectories if you want
# them to be included in the debian package

82
__depends_cubes__ = {}
83
__depends__ = {'cubicweb': '>= 3.9.0',
84
85
86
               'python-crypto': None,
               'PIL': None,
               }
Charles Hebert's avatar
Charles Hebert committed
87
__use__ = tuple(__depends_cubes__)
Charles Hebert's avatar
0.1.0  
Charles Hebert committed
88