Mercurial > public > sg101
view core/tasks.py @ 631:f36d1a168be7
For issue 27, disable login dialog button during POST.
This seems to prevent multiple logins most of the time. You can
still bang on the enter key and sometimes get more through.
author | Brian Neal <bgneal@gmail.com> |
---|---|
date | Wed, 14 Nov 2012 20:57:05 -0600 |
parents | ee87ea74d46b |
children | 53a56d19568c |
line wrap: on
line source
""" Celery tasks for the core application. """ from celery.task import task import django.core.mail import core.whos_online @task def add(x, y): """ It is useful to have a test task laying around. This is it. """ return x + y @task def send_mail(subject, message, from_email, recipient_list, **kwargs): """ A task to send mail via Django. """ django.core.mail.send_mail(subject, message, from_email, recipient_list, **kwargs) @task def cleanup(): """ A task to perform site-wide cleanup actions. """ # These imports, when placed at the top of the module, caused all kinds of # import problems when running on the production server (Python 2.5 and # mod_wsgi). Moving them here worked around that problem. from django.core.management.commands.cleanup import Command as CleanupCommand from forums.management.commands.forum_cleanup import Command as ForumCleanup # Execute Django's cleanup command (deletes old sessions). command = CleanupCommand() command.execute() # Execute our forum cleanup command to delete old last visit records. command = ForumCleanup() command.execute() @task def max_users(): """ Run the periodic task to calculate the who's online max users/visitors statistics. """ core.whos_online.max_users()