Revision 3a9f4931 snf-astakos-app/astakos/im/views.py
b/snf-astakos-app/astakos/im/views.py | ||
---|---|---|
55 | 55 |
from astakos.im.backends import get_backend |
56 | 56 |
from astakos.im.util import get_context, prepare_response, set_cookie |
57 | 57 |
from astakos.im.forms import * |
58 |
from astakos.im.settings import DEFAULT_CONTACT_EMAIL, DEFAULT_FROM_EMAIL, COOKIE_NAME, COOKIE_DOMAIN, IM_MODULES, SITENAME, BASEURL |
|
58 |
from astakos.im.settings import DEFAULT_CONTACT_EMAIL, DEFAULT_FROM_EMAIL, COOKIE_NAME, COOKIE_DOMAIN, IM_MODULES, SITENAME, BASEURL, LOGOUT_NEXT
|
|
59 | 59 |
from astakos.im.functions import invite as invite_func |
60 | 60 |
|
61 | 61 |
logger = logging.getLogger(__name__) |
... | ... | |
246 | 246 |
context_instance = get_context(request, |
247 | 247 |
extra_context)) |
248 | 248 |
|
249 |
@requires_anonymous |
|
250 | 249 |
def signup(request, on_failure='im/signup.html', on_success='im/signup_complete.html', extra_context={}, backend=None): |
251 | 250 |
""" |
252 | 251 |
Allows a user to create a local account. |
... | ... | |
283 | 282 |
im/signup.html or ``on_failure`` keyword argument. |
284 | 283 |
im/signup_complete.html or ``on_success`` keyword argument. |
285 | 284 |
""" |
285 |
if request.user.is_authenticated(): |
|
286 |
return HttpResponseRedirect(reverse('astakos.im.views.index')) |
|
286 | 287 |
try: |
287 | 288 |
if not backend: |
288 | 289 |
backend = get_backend(request) |
... | ... | |
305 | 306 |
return prepare_response(request, user, next=next) |
306 | 307 |
messages.add_message(request, status, message) |
307 | 308 |
return render_response(on_success, |
308 |
context_instance=get_context(request, extra_context)) |
|
309 |
context_instance=get_context(request, extra_context))
|
|
309 | 310 |
except (Invitation.DoesNotExist, ValueError), e: |
310 | 311 |
messages.add_message(request, messages.ERROR, e) |
311 | 312 |
for provider in IM_MODULES: |
... | ... | |
383 | 384 |
response['Location'] = next |
384 | 385 |
response.status_code = 302 |
385 | 386 |
return response |
387 |
elif LOGOUT_NEXT: |
|
388 |
response['Location'] = LOGOUT_NEXT |
|
389 |
response.status_code = 301 |
|
390 |
return response |
|
391 |
messages.add_message(request, messages.SUCCESS, _('You have successfully logged out.')) |
|
386 | 392 |
context = get_context(request, extra_context) |
387 | 393 |
response.write(render_to_string(template, context_instance=context)) |
388 | 394 |
return response |
Also available in: Unified diff