Mercurial > public > sg101
view gpp/messages/utils.py @ 479:32cec6cd8808
Refactor RateLimiter so that if Redis is not running, everything still runs normally (minus the rate limiting protection). My assumption that creating a Redis connection would throw an exception if Redis wasn't running was wrong. The exceptions actually occur when you issue a command. This is for #224.
author | Brian Neal <bgneal@gmail.com> |
---|---|
date | Sun, 25 Sep 2011 00:49:05 +0000 |
parents | 538a1bd2f1f4 |
children | 4b9970ad0edb |
line wrap: on
line source
""" This file contains various helper utility functions for the messages application. """ from django.utils.text import wrap def reply_subject(subject): """ Builds a subject line for a reply. If the subject already starts with Re: then return the subject. Otherwise, prepend Re: to the subject and return it. """ if subject.startswith('Re: '): return subject return 'Re: ' + subject def quote_message(who, date, message): """ Builds a message reply by quoting the existing message in a typical email-like fashion. The quoting is compatible with Markdown. """ header = '> On %s, %s wrote:\n>\n' % (date.strftime('%a, %b %d %Y, %I:%M %p'), who) lines = wrap(message, 55).split('\n') for i, line in enumerate(lines): lines[i] = '> ' + line return header + '\n'.join(lines) + '\n\n'