Mercurial > public > sg101
view core/tasks.py @ 587:7ed2101df789
Add a __future__ import for with for production server.
author | Brian Neal <bgneal@gmail.com> |
---|---|
date | Thu, 10 May 2012 20:26:57 -0500 |
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()