13 requiredgroups=('managers',)) |
13 requiredgroups=('managers',)) |
14 add_transition(_('activate'), 'CWUser', |
14 add_transition(_('activate'), 'CWUser', |
15 (deactivatedeid,), activatedeid, |
15 (deactivatedeid,), activatedeid, |
16 requiredgroups=('managers',)) |
16 requiredgroups=('managers',)) |
17 |
17 |
18 # need this since we already have at least one user in the database (the default admin) |
|
19 rql('SET X in_state S WHERE X is CWUser, S eid %s' % activatedeid) |
|
20 |
|
21 # create anonymous user if all-in-one config and anonymous user has been specified |
18 # create anonymous user if all-in-one config and anonymous user has been specified |
22 if hasattr(config, 'anonymous_user'): |
19 if hasattr(config, 'anonymous_user'): |
23 anonlogin, anonpwd = config.anonymous_user() |
20 anonlogin, anonpwd = config.anonymous_user() |
24 if anonlogin: |
21 if anonlogin: |
25 rql('INSERT CWUser X: X login %(login)s, X upassword %(pwd)s,' |
22 rql('INSERT CWUser X: X login %(login)s, X upassword %(pwd)s,' |
26 'X in_state S, X in_group G WHERE G name "guests", S name "activated"', |
23 'X in_group G WHERE G name "guests"', |
27 {'login': unicode(anonlogin), 'pwd': anonpwd}) |
24 {'login': unicode(anonlogin), 'pwd': anonpwd}) |
|
25 |
|
26 # need this since we already have at least one user in the database (the default admin) |
|
27 for user in rql('Any X WHERE X is CWUser').entities(): |
|
28 session.unsafe_execute('SET X in_state S WHERE X eid %(x)s, S eid %(s)s', |
|
29 {'x': user.eid, 's': activatedeid}, 'x') |
28 |
30 |
29 cfg = config.persistent_options_configuration() |
31 cfg = config.persistent_options_configuration() |
30 if interactive_mode: |
32 if interactive_mode: |
31 cfg.input_config(inputlevel=0) |
33 cfg.input_config(inputlevel=0) |
32 |
34 |