Merged in [9608] from rjsparks@nostrum.com:
Show leadership when and where mail was sent at the time it is sent.
- Legacy-Id: 9612
Note: SVN reference [9608] has been migrated to Git commit 85cfe0ed8a
This commit is contained in:
commit
e34cbcc9b0
47
changelog
47
changelog
|
@ -1,3 +1,50 @@
|
||||||
|
ietfdb (6.0.3) ietf; urgency=medium
|
||||||
|
|
||||||
|
This this release provides the capaability to manage and graphically
|
||||||
|
schedule additional meeting types, including leadership meetings. It
|
||||||
|
also fixes a number of issues, mostly related to the recent facelift.
|
||||||
|
|
||||||
|
Details:
|
||||||
|
|
||||||
|
* Merged in [9604] from rcross@amsl.com:
|
||||||
|
Update IAOC email in Announcement app.
|
||||||
|
|
||||||
|
* Merged in [9603] from rjsparks@nostrum.com:
|
||||||
|
|
||||||
|
- Added functionality which allows the secretariat to manage more meeting
|
||||||
|
types, including leadership meetings.
|
||||||
|
- Backfilled those types of meetings from IETF91 and IETF92.
|
||||||
|
- Addressed several facelift issues in the meeting application.
|
||||||
|
|
||||||
|
* Merged in [9595] from rcross@amsl.com:
|
||||||
|
Fixed an issue where an authorized individual was unable to add an
|
||||||
|
incoming liaison. Fixed a problem with the incoming liaison form
|
||||||
|
requiring a deadline date for information only statements.
|
||||||
|
|
||||||
|
* Fixed an issue where the https: schema inadvertently had been included in
|
||||||
|
RFCDIFF_PREFIX, causing duplicate schema specifications in some places.
|
||||||
|
Changed name to RFCDIFF_BASE_URL and cleaned out the duplicate schema
|
||||||
|
specifiers.
|
||||||
|
|
||||||
|
* Added a check for model changes which haven't been captured in migrations
|
||||||
|
to the release script.
|
||||||
|
|
||||||
|
* Added 5 migrations for changes in model field help-text strings which
|
||||||
|
changed in the facelift. Also fixed the expression of the help text for
|
||||||
|
NomCom.reminder_interval so the text itself doesn't contain quite as much
|
||||||
|
whitespace.
|
||||||
|
|
||||||
|
* Aligned the table header fields with the table columns in the doc history
|
||||||
|
page. Marked the action text safe so as to make embedded links show up as
|
||||||
|
links.
|
||||||
|
|
||||||
|
* Reduce the max height of submenus to avoid them extending below the screen
|
||||||
|
bottom edge when used from the top navbar (which won't scroll). The new
|
||||||
|
value works on 1024x768 screens for the current areas.
|
||||||
|
|
||||||
|
-- Henrik Levkowetz <henrik@levkowetz.com> 06 May 2015 11:23:56 -0700
|
||||||
|
|
||||||
|
|
||||||
ietfdb (6.0.2) ietf; urgency=medium
|
ietfdb (6.0.2) ietf; urgency=medium
|
||||||
|
|
||||||
This is a minor release, containing a few new development support features,
|
This is a minor release, containing a few new development support features,
|
||||||
|
|
|
@ -435,8 +435,8 @@ class RescheduleOnAgendaTests(TestCase):
|
||||||
r = self.client.get(url)
|
r = self.client.get(url)
|
||||||
self.assertEqual(r.status_code, 200)
|
self.assertEqual(r.status_code, 200)
|
||||||
d_header_pos = r.content.find("IESG telechat %s" % d.isoformat())
|
d_header_pos = r.content.find("IESG telechat %s" % d.isoformat())
|
||||||
draft_pos = r.content.find(draft.name)
|
draft_pos = r.content[d_header_pos:].find(draft.name)
|
||||||
self.assertTrue(d_header_pos < draft_pos)
|
self.assertTrue(draft_pos>0)
|
||||||
|
|
||||||
self.assertTrue(draft.latest_event(TelechatDocEvent, "scheduled_for_telechat"))
|
self.assertTrue(draft.latest_event(TelechatDocEvent, "scheduled_for_telechat"))
|
||||||
self.assertEqual(draft.latest_event(TelechatDocEvent, "scheduled_for_telechat").telechat_date, d)
|
self.assertEqual(draft.latest_event(TelechatDocEvent, "scheduled_for_telechat").telechat_date, d)
|
||||||
|
|
|
@ -21,6 +21,7 @@ import time
|
||||||
import copy
|
import copy
|
||||||
import textwrap
|
import textwrap
|
||||||
import traceback
|
import traceback
|
||||||
|
import datetime
|
||||||
|
|
||||||
# Testing mode:
|
# Testing mode:
|
||||||
# import ietf.utils.mail
|
# import ietf.utils.mail
|
||||||
|
@ -228,6 +229,19 @@ def condition_message(to, frm, subject, msg, cc, extra):
|
||||||
if v:
|
if v:
|
||||||
msg[k] = v
|
msg[k] = v
|
||||||
|
|
||||||
|
def show_that_mail_was_sent(request,leadline,msg,bcc):
|
||||||
|
if request and request.user:
|
||||||
|
from ietf.ietfauth.utils import has_role
|
||||||
|
if has_role(request.user,['Area Director','Secretariat','IANA','RFC Editor','ISE','IAD','IRTF Chair','WG Chair','RG Chair','WG Secretary','RG Secretary']):
|
||||||
|
info = "%s at %s %s\n" % (leadline,datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S"),settings.TIME_ZONE)
|
||||||
|
info += "Subject: %s\n" % msg.get('Subject','[no subject]')
|
||||||
|
info += "To: %s\n" % msg.get('To','[no to]')
|
||||||
|
if msg.get('Cc'):
|
||||||
|
info += "Cc: %s\n" % msg.get('Cc')
|
||||||
|
if bcc:
|
||||||
|
info += "Bcc: %s\n" % bcc
|
||||||
|
messages.info(request,info,extra_tags='preformatted',fail_silently=True)
|
||||||
|
|
||||||
def send_mail_mime(request, to, frm, subject, msg, cc=None, extra=None, toUser=False, bcc=None):
|
def send_mail_mime(request, to, frm, subject, msg, cc=None, extra=None, toUser=False, bcc=None):
|
||||||
"""Send MIME message with content already filled in."""
|
"""Send MIME message with content already filled in."""
|
||||||
|
|
||||||
|
@ -238,6 +252,9 @@ def send_mail_mime(request, to, frm, subject, msg, cc=None, extra=None, toUser=F
|
||||||
# and EMAIL_PORT=2025 in settings_local.py
|
# and EMAIL_PORT=2025 in settings_local.py
|
||||||
debugging = getattr(settings, "USING_DEBUG_EMAIL_SERVER", False) and settings.EMAIL_HOST == 'localhost' and settings.EMAIL_PORT == 2025
|
debugging = getattr(settings, "USING_DEBUG_EMAIL_SERVER", False) and settings.EMAIL_HOST == 'localhost' and settings.EMAIL_PORT == 2025
|
||||||
|
|
||||||
|
if settings.SERVER_MODE == 'development':
|
||||||
|
show_that_mail_was_sent(request,'In production, email would have been sent',msg,bcc)
|
||||||
|
|
||||||
if test_mode or debugging or settings.SERVER_MODE == 'production':
|
if test_mode or debugging or settings.SERVER_MODE == 'production':
|
||||||
try:
|
try:
|
||||||
send_smtp(msg,bcc)
|
send_smtp(msg,bcc)
|
||||||
|
@ -245,6 +262,8 @@ def send_mail_mime(request, to, frm, subject, msg, cc=None, extra=None, toUser=F
|
||||||
log_smtp_exception(e)
|
log_smtp_exception(e)
|
||||||
build_warning_message(request, e)
|
build_warning_message(request, e)
|
||||||
send_error_email(e)
|
send_error_email(e)
|
||||||
|
|
||||||
|
show_that_mail_was_sent(request,'Email was sent',msg,bcc)
|
||||||
|
|
||||||
elif settings.SERVER_MODE == 'test':
|
elif settings.SERVER_MODE == 'test':
|
||||||
if toUser:
|
if toUser:
|
||||||
|
|
|
@ -180,6 +180,10 @@ pre {
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.preformatted {
|
||||||
|
white-space: pre;
|
||||||
|
}
|
||||||
|
|
||||||
/* Make ampersands pretty */
|
/* Make ampersands pretty */
|
||||||
/* This sets ampersand in a different font than the rest of the text. Fancy, but it's
|
/* This sets ampersand in a different font than the rest of the text. Fancy, but it's
|
||||||
really better to select a pretty font in the first place. Additionally, _which_ 'pretty'
|
really better to select a pretty font in the first place. Additionally, _which_ 'pretty'
|
||||||
|
|
Loading…
Reference in a new issue