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