Capitalize day names.
Don't repeat the month unless necessary and the year at all of
the meeting dates.
Still missing: group type (e.g., "WG" or "BOF")
- Legacy-Id: 522
- SQLLogMiddleware. This logs any INSERT or UPDATE performed by
a request.
- SMTPExceptionMiddleware. This renders a "please try again"
(template email_failed.html) message when an attempt to send
email failed. This uses a bit of a hack, in that the middleware
looks explicitly for smtplib.SMTPException, and smtplib can
raise other exceptions (particularly socket errors). utils/mail/send_smtp
catches all exceptions and reraises non-smtplib exceptions as
fake smtplib exceptions, and the middleware undoes the wrapping.
- Legacy-Id: 224
committed file named 'testurl.list' in any directory in the ietf/ tree.
There is also a test for URL coverage -- if there isn't declared test
URLs for all the url patterns in ietf/urls.py this coverage test will
fail.
- Legacy-Id: 215
bits of configuration (e.g., mail server, any authentication required,
etc.) It has different behavior based on the setting of the
SERVER_MODE setting:
- 'development' or 'test': the message will be sent as an attachment
to ietf.tracker.archive+SERVER_MODE@gmail.com; the actual destination
supplied won't be used.
- 'production': the message will be sent to the addressees and a
copy sent to ietf.tracker.archive+production@gmail.com .
There are several functions to call, depending on what you want
to pass:
- send_mail_text() takes a request, "To:" list, From header (or None
to default), Subject text, Body text, an optional Cc: list, and
an optional dict with extra headers.
- send_mail() takes a template and a context instead of the body text,
and renders the template with the given context.
- send_mail_subj() takes a template for the subject as well as for the
body. It uses the same context to render both templates.
- Legacy-Id: 159
couple of aspects:
- ietfauth.auth.EmailBackEnd is a django.contrib.auth backend to allow
two modified authentication methods:
- using email address (stored in django user table) as login username
- using htpasswd-style "crypt" passwords (for compatability with
existing user database). On the first successful login, the
password will be re-hashed to the django-hash style password.
- ietfauth.models.UserMap: a mapping from django user to IETF
person. This is configured as the profile table, meaning
that if you have a django user (e.g., from the RequestContext),
you can use user.get_profile.person to get to the IETF person.
- ietfauth.models has models for the "legacy" username/person mapping
tables (LiaisonUser aka "users" and WgPassword aka "wg_password").
This is to allow mapping of legacy permissions to django permissions
by walking these tables and applying permissions to users. The plan
is to discard these tables eventually.
- Legacy-Id: 155
* Moved RFCs model into idtracker
* Switched idtracker querys to use idinternal
* Created idinternal.document which returns either an InternetDraft or
an Rfc depending on the value of rfc_flag
* Create compatability methods in InternetDraft and Rfc models
to be able to use certain attributes in the template without
worring about where they come from.
Ticket #59 has a list of remaining bits.
- Legacy-Id: 98