Revision 1fcf4a99
b/snf-astakos-app/Changelog | ||
---|---|---|
3 | 3 |
|
4 | 4 |
v0.7.4 |
5 | 5 |
^^^^^^ |
6 |
- Use https for google webfonts |
|
6 |
- Configurable subjects for all emails send by astakos app. Introduced settings |
|
7 |
* ASTAKOS_INVITATION_EMAIL_SUBJECT |
|
8 |
* ASTAKOS_GREETING_EMAIL_SUBJECT |
|
9 |
* ASTAKOS_FEEDBACK_EMAIL_SUBJECT |
|
10 |
* ASTAKOS_VERIFICATION_EMAIL_SUBJECT |
|
11 |
* ASTAKOS_ADMIN_NOTIFICATION_EMAIL_SUBJECT |
|
12 |
* ASTAKOS_HELPDESK_NOTIFICATION_EMAIL_SUBJECT |
|
13 |
* ASTAKOS_EMAIL_CHANGE_EMAIL_SUBJECT |
|
14 |
* ASTAKOS_PASSWORD_RESET_EMAIL_SUBJECT |
|
7 | 15 |
|
8 | 16 |
|
9 | 17 |
v0.7.3 |
10 | 18 |
^^^^^^ |
19 |
- Use https for google webfonts |
|
11 | 20 |
- Fix anonymoususer logout |
12 | 21 |
|
13 | 22 |
v0.7.1 |
b/snf-astakos-app/astakos/im/forms.py | ||
---|---|---|
50 | 50 |
from astakos.im.models import AstakosUser, Invitation, get_latest_terms, EmailChange |
51 | 51 |
from astakos.im.settings import INVITATIONS_PER_LEVEL, DEFAULT_FROM_EMAIL, \ |
52 | 52 |
BASEURL, SITENAME, RECAPTCHA_PRIVATE_KEY, DEFAULT_CONTACT_EMAIL, \ |
53 |
RECAPTCHA_ENABLED, LOGGING_LEVEL |
|
53 |
RECAPTCHA_ENABLED, LOGGING_LEVEL, PASSWORD_RESET_EMAIL_SUBJECT
|
|
54 | 54 |
from astakos.im.widgets import DummyWidget, RecaptchaWidget |
55 | 55 |
from astakos.im.functions import send_change_email |
56 | 56 |
|
... | ... | |
413 | 413 |
'support': DEFAULT_CONTACT_EMAIL |
414 | 414 |
} |
415 | 415 |
from_email = DEFAULT_FROM_EMAIL |
416 |
send_mail(_("Password reset on %s alpha2 testing") % SITENAME,
|
|
416 |
send_mail(_(PASSWORD_RESET_EMAIL_SUBJECT),
|
|
417 | 417 |
t.render(Context(c)), from_email, [user.email]) |
418 | 418 |
|
419 | 419 |
class EmailChangeForm(forms.ModelForm): |
b/snf-astakos-app/astakos/im/functions.py | ||
---|---|---|
50 | 50 |
from functools import wraps |
51 | 51 |
|
52 | 52 |
from astakos.im.settings import DEFAULT_CONTACT_EMAIL, DEFAULT_FROM_EMAIL, \ |
53 |
SITENAME, BASEURL, DEFAULT_ADMIN_EMAIL, LOGGING_LEVEL |
|
53 |
SITENAME, BASEURL, DEFAULT_ADMIN_EMAIL, LOGGING_LEVEL, \ |
|
54 |
VERIFICATION_EMAIL_SUBJECT, ADMIN_NOTIFICATION_EMAIL_SUBJECT, \ |
|
55 |
HELPDESK_NOTIFICATION_EMAIL_SUBJECT, INVITATION_EMAIL_SUBJECT, \ |
|
56 |
GREETING_EMAIL_SUBJECT, FEEDBACK_EMAIL_SUBJECT, EMAIL_CHANGE_EMAIL_SUBJECT |
|
54 | 57 |
from astakos.im.models import Invitation, AstakosUser |
55 | 58 |
|
56 | 59 |
logger = logging.getLogger(__name__) |
... | ... | |
92 | 95 |
'support': DEFAULT_CONTACT_EMAIL}) |
93 | 96 |
sender = DEFAULT_FROM_EMAIL |
94 | 97 |
try: |
95 |
send_mail('%s alpha2 testing account activation is needed' % SITENAME, message, sender, [user.email])
|
|
98 |
send_mail(_(VERIFICATION_EMAIL_SUBJECT), message, sender, [user.email])
|
|
96 | 99 |
except (SMTPException, socket.error) as e: |
97 | 100 |
logger.exception(e) |
98 | 101 |
raise SendVerificationError() |
... | ... | |
120 | 123 |
'support': DEFAULT_CONTACT_EMAIL}) |
121 | 124 |
sender = DEFAULT_FROM_EMAIL |
122 | 125 |
try: |
123 |
send_mail('%s alpha2 testing account notification' % SITENAME, message, sender, [DEFAULT_ADMIN_EMAIL])
|
|
126 |
send_mail(_(ADMIN_NOTIFICATION_EMAIL_SUBJECT), message, sender, [DEFAULT_ADMIN_EMAIL])
|
|
124 | 127 |
except (SMTPException, socket.error) as e: |
125 | 128 |
logger.exception(e) |
126 | 129 |
raise SendNotificationError() |
... | ... | |
143 | 146 |
'support': DEFAULT_ADMIN_EMAIL}) |
144 | 147 |
sender = DEFAULT_FROM_EMAIL |
145 | 148 |
try: |
146 |
send_mail('%s alpha2 testing account notification' % SITENAME, message, sender, [DEFAULT_CONTACT_EMAIL])
|
|
149 |
send_mail(_(HELPDESK_NOTIFICATION_EMAIL_SUBJECT), message, sender, [DEFAULT_CONTACT_EMAIL])
|
|
147 | 150 |
except (SMTPException, socket.error) as e: |
148 | 151 |
logger.exception(e) |
149 | 152 |
raise SendNotificationError() |
... | ... | |
157 | 160 |
|
158 | 161 |
Raises SendInvitationError |
159 | 162 |
""" |
160 |
subject = _('Invitation to %s alpha2 testing' % SITENAME)
|
|
163 |
subject = _(INVITATION_EMAIL_SUBJECT)
|
|
161 | 164 |
url = '%s?code=%d' % (urljoin(BASEURL, reverse('astakos.im.views.index')), invitation.code) |
162 | 165 |
message = render_to_string('im/invitation.txt', { |
163 | 166 |
'invitation': invitation, |
... | ... | |
181 | 184 |
|
182 | 185 |
Raises SMTPException, socket.error |
183 | 186 |
""" |
184 |
subject = _('Welcome to %s alpha2 testing' % SITENAME)
|
|
187 |
subject = _(GREETING_EMAIL_SUBJECT)
|
|
185 | 188 |
message = render_to_string(email_template_name, { |
186 | 189 |
'user': user, |
187 | 190 |
'url': urljoin(BASEURL, reverse('astakos.im.views.index')), |
... | ... | |
199 | 202 |
logger._log(LOGGING_LEVEL, msg, []) |
200 | 203 |
|
201 | 204 |
def send_feedback(msg, data, user, email_template_name='im/feedback_mail.txt'): |
202 |
subject = _("Feedback from %s alpha2 testing" % SITENAME)
|
|
205 |
subject = _(FEEDBACK_EMAIL_SUBJECT)
|
|
203 | 206 |
from_email = user.email |
204 | 207 |
recipient_list = [DEFAULT_CONTACT_EMAIL] |
205 | 208 |
content = render_to_string(email_template_name, { |
... | ... | |
223 | 226 |
t = loader.get_template(email_template_name) |
224 | 227 |
c = {'url': url, 'site_name': SITENAME} |
225 | 228 |
from_email = DEFAULT_FROM_EMAIL |
226 |
send_mail(_("Email change on %s alpha2 testing") % SITENAME,
|
|
229 |
send_mail(_(EMAIL_CHANGE_EMAIL_SUBJECT),
|
|
227 | 230 |
t.render(Context(c)), from_email, [ec.new_email_address]) |
228 | 231 |
except (SMTPException, socket.error) as e: |
229 | 232 |
logger.exception(e) |
b/snf-astakos-app/astakos/im/settings.py | ||
---|---|---|
99 | 99 |
# Set the astakos main functions logging severity (None to disable) |
100 | 100 |
from logging import INFO |
101 | 101 |
LOGGING_LEVEL = getattr(settings, 'ASTAKOS_LOGGING_LEVEL', INFO) |
102 |
|
|
103 |
# Configurable email subjects |
|
104 |
INVITATION_EMAIL_SUBJECT = getattr(settings, 'ASTAKOS_INVITATION_EMAIL_SUBJECT', |
|
105 |
'Invitation to %s alpha2 testing' % SITENAME) |
|
106 |
GREETING_EMAIL_SUBJECT = getattr(settings, 'ASTAKOS_GREETING_EMAIL_SUBJECT', |
|
107 |
'Welcome to %s alpha2 testing' % SITENAME) |
|
108 |
FEEDBACK_EMAIL_SUBJECT = getattr(settings, 'ASTAKOS_FEEDBACK_EMAIL_SUBJECT', |
|
109 |
'Feedback from %s alpha2 testing' % SITENAME) |
|
110 |
VERIFICATION_EMAIL_SUBJECT = getattr(settings, 'ASTAKOS_VERIFICATION_EMAIL_SUBJECT', |
|
111 |
'%s alpha2 testing account activation is needed' % SITENAME) |
|
112 |
ADMIN_NOTIFICATION_EMAIL_SUBJECT = getattr(settings, 'ASTAKOS_ADMIN_NOTIFICATION_EMAIL_SUBJECT', |
|
113 |
'%s alpha2 testing account notification' % SITENAME) |
|
114 |
HELPDESK_NOTIFICATION_EMAIL_SUBJECT = getattr(settings, 'ASTAKOS_HELPDESK_NOTIFICATION_EMAIL_SUBJECT', |
|
115 |
'%s alpha2 testing account notification' % SITENAME) |
|
116 |
EMAIL_CHANGE_EMAIL_SUBJECT = getattr(settings, 'ASTAKOS_EMAIL_CHANGE_EMAIL_SUBJECT', |
|
117 |
'Email change on %s alpha2 testing' % SITENAME) |
|
118 |
PASSWORD_RESET_EMAIL_SUBJECT = getattr(settings, 'ASTAKOS_PASSWORD_RESET_EMAIL_SUBJECT', |
|
119 |
'Password reset on %s alpha2 testing' % SITENAME) |
|
120 |
|
b/snf-astakos-app/conf/20-snf-astakos-app-settings.conf | ||
---|---|---|
99 | 99 |
# Set the astakos main functions logging severity (None to disable) |
100 | 100 |
#from logging import INFO |
101 | 101 |
#ASTAKOS_LOGGING_LEVEL = INFO |
102 |
|
|
103 |
#ASTAKOS_INVITATION_EMAIL_SUBJECT = 'Invitation to %s alpha2 testing' % SITENAME |
|
104 |
#ASTAKOS_GREETING_EMAIL_SUBJECT = 'Welcome to %s alpha2 testing' % SITENAME |
|
105 |
#ASTAKOS_FEEDBACK_EMAIL_SUBJECT = 'Feedback from %s alpha2 testing' % SITENAME |
|
106 |
#ASTAKOS_VERIFICATION_EMAIL_SUBJECT = '%s alpha2 testing account activation is needed' % SITENAME |
|
107 |
#ASTAKOS_ADMIN_NOTIFICATION_EMAIL_SUBJECT = '%s alpha2 testing account notification' % SITENAME |
|
108 |
#ASTAKOS_HELPDESK_NOTIFICATION_EMAIL_SUBJECT = '%s alpha2 testing account notification' % SITENAME |
|
109 |
#ASTAKOS_EMAIL_CHANGE_EMAIL_SUBJECT = 'Email change on %s alpha2 testing' % SITENAME |
|
110 |
#ASTAKOS_PASSWORD_RESET_EMAIL_SUBJECT = 'Password reset on %s alpha2 testing' % SITENAME |
Also available in: Unified diff