Statistics
| Branch: | Tag: | Revision:

root / snf-astakos-app / astakos / im / messages.py @ cbc7a32c

History | View | Annotate | Download (20.3 kB)

1
# Copyright 2011-2012 GRNET S.A. All rights reserved.
2
#
3
# Redistribution and use in source and binary forms, with or
4
# without modification, are permitted provided that the following
5
# conditions are met:
6
#
7
#   1. Redistributions of source code must retain the above
8
#      copyright notice, this list of conditions and the following
9
#      disclaimer.
10
#
11
#   2. Redistributions in binary form must reproduce the above
12
#      copyright notice, this list of conditions and the following
13
#      disclaimer in the documentation and/or other materials
14
#      provided with the distribution.
15
#
16
# THIS SOFTWARE IS PROVIDED BY GRNET S.A. ``AS IS'' AND ANY EXPRESS
17
# OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
19
# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GRNET S.A OR
20
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
21
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
22
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
23
# USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION HOWEVER CAUSED
24
# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
25
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE ARISING IN
26
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
27
# POSSIBILITY OF SUCH DAMAGE.
28
#
29
# The views and conclusions contained in the software and
30
# documentation are those of the authors and should not be
31
# interpreted as representing official policies, either expressed
32
# or implied, of GRNET S.A.
33

    
34
from django.conf import settings
35
import astakos.im.settings as astakos_settings
36

    
37

    
38
LOGGED_IN_WARNING                       =   'It seems that you are already logged in.'
39
ACCOUNT_ALREADY_VERIFIED                =   'This account is already verified.'
40
ACCOUNT_ALREADY_MODERATED               =   'This account is already moderated.'
41
ACCOUNT_ALREADY_ACTIVE                  =   'This account is already active.'
42
ACCOUNT_REJECTED                        =   'This account has been rejected.'
43
ACCOUNT_NOT_ACTIVE                      =   'User account is not active.'
44
ACCOUNT_NOT_MODERATED                   =   'User account is not moderated.'
45
ACCOUNT_NOT_VERIFIED                    =   'User account does not have a verified email address.'
46
ACCOUNT_RESEND_ACTIVATION               =   'It seems that an activation email has been sent to you, but you have not followed the activation link. <a href="%(send_activation_url)s">Resend activation email.</a>'
47
INACTIVE_ACCOUNT_CHANGE_EMAIL           =   ''.join([ACCOUNT_RESEND_ACTIVATION, ' Or <a href="%(signup_url)s">Send activation to a new email.</a>'])
48

    
49
ACCOUNT_PENDING_ACTIVATION_HELP         =   'An activation email has been sent to you. Make sure you check your spam folder, too.'
50

    
51
ACCOUNT_ACTIVATED                       =   'Congratulations. Your account has' + \
52
                                            ' been activated. You are now logged in.'
53
ACCOUNT_DEACTIVATED                     =   'Your account is inactive'
54
PASSWORD_RESET_DONE                     =   'An email with details on how to change your password has been sent. Please check your Inbox.'
55
PASSWORD_RESET_CONFIRM_DONE             =   'Your password has changed successfully. You can now login using your new password.'
56
PASSWORD_CHANGED                        =   'Your new password was set successfully.'
57

    
58
ACCOUNT_RESEND_ACTIVATION               =   'Resend activation email'
59
ACCOUNT_USER_ACTIVATION_PENDING         =   'You have not followed the activation link'
60

    
61
ACCOUNT_UNKNOWN                         =   'There is no such account.'
62
TOKEN_UNKNOWN                           =   'There is no user matching this authentication token.'
63
TOKEN_UPDATED                           =   'Your authentication token has been updated successfully.'
64

    
65
PROFILE_UPDATED                         =   'Your profile has been updated successfully.'
66
FEEDBACK_SENT                           =   'Thank you for contacting us. We will process your message carefully and get back to you.'
67
EMAIL_CHANGED                           =   'The email of your account changed successfully.'
68
EMAIL_CHANGE_REGISTERED                 =   'Your request for changing your email has been registered successfully. \
69
                                               A verification email will be sent to your new address.'
70

    
71
OBJECT_CREATED                          =   'The %(verbose_name)s was created successfully.'
72
USER_MEMBERSHIP_REJECTED                =   'Request by %s to join the project has been rejected.'
73
BILLING_ERROR                           =   'Service response status: %(status)d'
74

    
75
GENERIC_ERROR                           =   'Hmm... It seems something bad has happened, and we don\'t know the details right now. \
76
                                               Please contact the administrators by email for more details.'
77

    
78
MAX_INVITATION_NUMBER_REACHED   =           'You have reached the maximum amount of invitations for your account. No invitations left.'
79
GROUP_MAX_PARTICIPANT_NUMBER_REACHED    =   'This Group reached its maximum number of members. No other member can be added.'
80
PROJECT_MAX_PARTICIPANT_NUMBER_REACHED  =   'This Project reached its maximum number of members. No other member can be added.'
81
NO_APPROVAL_TERMS                       =   'There are no terms of service to approve.'
82
PENDING_EMAIL_CHANGE_REQUEST            =   'It seems there is already a pending request for an email change. ' + \
83
                                            'Submitting a new request to change your email will cancel all previous requests.'
84
OBJECT_CREATED_FAILED                   =   'The %(verbose_name)s creation failed: %(reason)s.'
85
GROUP_JOIN_FAILURE                      =   'Failed to join this Group.'
86
PROJECT_JOIN_FAILURE                    =   'Failed to join this Project.'
87
GROUPKIND_UNKNOWN                       =   'The kind of Project you specified does not exist.'
88
NOT_MEMBER                              =   'User is not a member of the Project.'
89
NOT_OWNER                               =   'User is not the Project\'s owner.'
90
OWNER_CANNOT_LEAVE_GROUP                =   'You are the owner of this Project. Owners can not leave their Projects.'
91

    
92
# Field validation fields
93
REQUIRED_FIELD                          =   'This field is required.'
94
EMAIL_USED                              =   'There is already an account with this email address.'
95
SHIBBOLETH_EMAIL_USED                   =   'This email is already associated with another shibboleth account.'
96
SHIBBOLETH_INACTIVE_ACC                 =   'This email is already associated with an account that is not yet activated. \
97
                                               If that is your account, you need to activate it before being able to \
98
                                               associate it with this shibboleth account.'
99
SHIBBOLETH_MISSING_EPPN                 =   'Your request is missing a unique ' + \
100
                                            'token. This means your academic ' + \
101
                                            'institution does not yet allow its users to log ' + \
102
                                            'into %(domain)s with their academic ' + \
103
                                            'account. Please contact %(contact_email)s' + \
104
                                            ' for more information.'
105
SHIBBOLETH_MISSING_NAME                 =   'This request is missing the user name.'
106

    
107
SIGN_TERMS                              =   'Please, you need to \'Agree with the terms\' before proceeding.'
108
CAPTCHA_VALIDATION_ERR                  =   'You have not entered the correct words. Please try again.'
109
SUSPENDED_LOCAL_ACC                     =   'This account does not have a local password. \
110
                                               Please try logging in using an external login provider (e.g.: twitter)'
111
EMAIL_UNKNOWN                           =   'This email address doesn\'t have an associated user account. \
112
                                               Please make sure you have registered, before proceeding.'
113
INVITATION_EMAIL_EXISTS                 =   'An invitation has already been sent to this email.'
114
INVITATION_CONSUMED_ERR                 =   'Invitation is used.'
115
UNKNOWN_USERS                           =   'Unknown users: %s'
116
UNIQUE_EMAIL_IS_ACTIVE_CONSTRAIN_ERR    =   'More than one account with the same email & \'is_active\' field. Error.'
117
INVALID_ACTIVATION_KEY                  =   'Invalid activation key.'
118
NEW_EMAIL_ADDR_RESERVED                 =   'The new email address you requested is already used by another account. Please provide a different one.'
119
EMAIL_RESERVED                          =   'Email: %(email)s is already reserved.'
120
NO_LOCAL_AUTH                           =   'Only external login providers are enabled for this account. You can not login with a local password.'
121
SWITCH_ACCOUNT_FAILURE                  =   'Account failed to switch. Invalid parameters.'
122
SWITCH_ACCOUNT_SUCCESS_WITH_PROVIDER    =   'Account failed to switch to %(provider)s.'
123
SWITCH_ACCOUNT_SUCCESS                  =   'Account successfully switched to %(provider)s.'
124

    
125
# Field help text
126
ADD_GROUP_MEMBERS_Q_HELP                =   'Add a comma separated list of user emails, eg. user1@user.com, user2@user.com'
127
ASTAKOSUSER_GROUPS_HELP                 =   'In addition to the permissions assigned manually, \
128
                                               this user will also get all permissions coming from his/her groups.'
129

    
130
EMAIL_SEND_ERR                          =   'Failed to send %s.'
131
ADMIN_NOTIFICATION_SEND_ERR             =   EMAIL_SEND_ERR % 'admin notification'
132
VERIFICATION_SEND_ERR                   =   EMAIL_SEND_ERR % 'verification'
133
INVITATION_SEND_ERR                     =   EMAIL_SEND_ERR % 'invitation'
134
GREETING_SEND_ERR                       =   EMAIL_SEND_ERR % 'greeting'
135
FEEDBACK_SEND_ERR                       =   EMAIL_SEND_ERR % 'feedback'
136
CHANGE_EMAIL_SEND_ERR                   =   EMAIL_SEND_ERR % 'email change'
137
NOTIFICATION_SEND_ERR                   =   EMAIL_SEND_ERR % 'notification'
138
DETAILED_NOTIFICATION_SEND_ERR          =   'Failed to send %(subject)s notification to %(recipients)s.'
139

    
140
MISSING_NEXT_PARAMETER                  =   'The next parameter is missing.'
141

    
142
INVITATION_SENT                         =   'Invitation sent to %(email)s.'
143
VERIFICATION_SENT                       =   'Your information has been submitted successfully. A verification email, with an activation link \
144
                                               has been sent to the email address you provided. Please follow the activation link on this \
145
                                               email to complete the registration process.'
146
VERIFICATION_FAILED                     =   'Email verification process failed.'
147
SWITCH_ACCOUNT_LINK_SENT                =   'This email is already associated with a local account, and a verification email has been sent \
148
                                             to %(email)s. To complete the association process, go back to your Inbox and follow the link \
149
                                             inside the verification email.'
150
NOTIFICATION_SENT                       =   'Your request for an account has been submitted successfully, and is now pending approval. \
151
                                               You will be notified by email in the next few days. \
152
                                               Thanks for your interest!'
153
ACTIVATION_SENT                         =   'An email containing your activation link has been sent to your email address.'
154

    
155
REGISTRATION_COMPLETED                  =   'Your registration completed successfully. You can now login to your new account!'
156

    
157
NO_RESPONSE                             =   'There is no response.'
158
NOT_ALLOWED_NEXT_PARAM                  =   'Not allowed next parameter.'
159
MISSING_KEY_PARAMETER                   =   'Missing key parameter.'
160
INVALID_KEY_PARAMETER                   =   'Invalid key.'
161
DOMAIN_VALUE_ERR                        =   'Enter a valid domain.'
162
QH_SYNC_ERROR                           =   'Failed to get synchronized with quotaholder.'
163
UNIQUE_PROJECT_NAME_CONSTRAIN_ERR       =   'The project name (as specified in its application\'s definition) must be unique among all active projects.'
164
INVALID_PROJECT                         =   'Project %(id)s is invalid.'
165
NOT_ALIVE_PROJECT                       =   'Project %(id)s is not alive.'
166
NOT_SUSPENDED_PROJECT                   =   'Project %(id)s is not suspended.'
167
NOT_ALLOWED                             =   'You do not have the permissions to perform this action.'
168
MEMBER_NUMBER_LIMIT_REACHED             =   'You have reached the maximum number of members for this Project.'
169
MEMBER_JOIN_POLICY_CLOSED               =   'The Project\'s member join policy is closed.'
170
MEMBER_LEAVE_POLICY_CLOSED              =   'The project\'s member leave policy is closed.'
171
NOT_MEMBERSHIP_REQUEST                  =   'This is not a valid membership request.'
172
NOT_ACCEPTED_MEMBERSHIP                 =   'This is not an accepted membership.'
173
MEMBERSHIP_REQUEST_EXISTS               =   'The membership request already exists.'
174
NO_APPLICANT                            =   'Project application requires at least one applicant. None found.'
175
INVALID_PROJECT_START_DATE              =   'Project start date should be equal or greater than the current date.'
176
INVALID_PROJECT_END_DATE                =   'Project end date should be equal or greater than than the current date.'
177
INCONSISTENT_PROJECT_DATES              =   'Project end date should be greater than the project start date.'
178
ADD_PROJECT_MEMBERS_Q_HELP              =   'Add a comma separated list of user emails, eg. user1@user.com, user2@user.com'
179
ADD_PROJECT_MEMBERS_Q_PLACEHOLDER       =   'user1@user.com, user2@user.com'
180
MISSING_IDENTIFIER                      =   'Missing identifier.'
181
UNKNOWN_USER_ID                         =   'There is no user identified by %s.'
182
UNKNOWN_PROJECT_APPLICATION_ID          =   'There is no project application identified by %s.'
183
UNKNOWN_PROJECT_ID                      =   'There is no project identified by %s.'
184
UNKNOWN_IDENTIFIER                      =   'Unknown identifier.'
185
PENDING_MEMBERSHIP_LEAVE                =   'Your request is pending moderation by the Project owner.'
186
USER_MEMBERSHIP_ACCEPTED                =   '%s has been accepted in the project.'
187
USER_MEMBERSHIP_REMOVED                 =   '%s has been removed from the project.'
188
USER_LEFT_PROJECT                       =   'You have left the project.'
189
USER_LEAVE_REQUEST_SUBMITTED            =   'Your request to leave the project has been submitted successfully.'
190
USER_JOIN_REQUEST_SUBMITTED             =   'Your request to join the project has been submitted successfully.'
191
USER_JOINED_PROJECT                     =   'You have joined the project.'
192
USER_REQUEST_CANCELLED                  =   'Your request to join the project has been cancelled.'
193
APPLICATION_CANNOT_APPROVE              =   "Cannot approve application %s in state '%s'"
194
APPLICATION_CANNOT_DENY                 =   "Cannot deny application %s in state '%s'"
195
APPLICATION_CANNOT_DISMISS              =   "Cannot dismiss application %s in state '%s'"
196
APPLICATION_CANNOT_CANCEL               =   "Cannot cancel application %s in state '%s'"
197
APPLICATION_CANCELLED                   =   "Your project application has been cancelled."
198

    
199
REACHED_PENDING_APPLICATION_LIMIT = ("You have reached the maximum number "
200
                                     "of pending project applications: %s.")
201

    
202
PENDING_APPLICATION_LIMIT_ADD = \
203
    ("You are not allowed to create a new project "
204
     "because you have reached the maximum [%s] for "
205
     "pending project applications. "
206
     "Consider cancelling any unnecessary ones.")
207

    
208
PENDING_APPLICATION_LIMIT_MODIFY = \
209
    ("You are not allowed to modify this project "
210
     "because you have reached the maximum [%s] for "
211
     "pending project applications. "
212
     "Consider cancelling any unnecessary ones.")
213

    
214
# Auth providers messages
215
AUTH_PROVIDER_LOGIN_SUCCESS                  =   "Logged in successfully, using {method_prompt}."
216
AUTH_PROVIDER_LOGOUT_SUCCESS                 =   "Logged out successfully from {service_name}."
217
AUTH_PROVIDER_LOGOUT_SUCCESS_EXTRA           =   "You may still be logged in at {title} though. Consider logging out from there too."
218
AUTH_PROVIDER_NOT_ACTIVE                     =   "'{method_prompt}' is disabled."
219
AUTH_PROVIDER_ADD_DISABLED                   =   "{method_prompt} is disabled for your account."
220
AUTH_PROVIDER_NOT_ACTIVE_FOR_USER            =   "You cannot login using '{method_prompt}'."
221
AUTH_PROVIDER_NOT_ACTIVE_FOR_CREATE          =   "Sign up using '{method_prompt}' is disabled."
222
AUTH_PROVIDER_NOT_ACTIVE_FOR_ADD             =   "You cannot add {method_prompt}."
223
AUTH_PROVIDER_ADDED                          =   "{method_prompt} enabled for this account."
224
AUTH_PROVIDER_SWITCHED                       =   "{method_prompt} changed for this account."
225
AUTH_PROVIDER_REMOVED                        =   "{method_prompt} removed for this account."
226
AUTH_PROVIDER_ADD_FAILED                     =   "Failed to add {method_prompt}."
227
AUTH_PROVIDER_ADD_EXISTS                     =   "It seems that this '{method_prompt}' is already in use by another account."
228
AUTH_PROVIDER_LOGIN_TO_ADD                   =   "The new login method will be assigned once you login to your account."
229
AUTH_PROVIDER_INVALID_LOGIN                  =   "No account exists."
230
AUTH_PROVIDER_REQUIRED                       =   "{method_prompt} is required. Add one from your profile page."
231
AUTH_PROVIDER_CANNOT_CHANGE_PASSWORD         =   "Changing password is not supported."
232
AUTH_PROVIDER_SIGNUP_FROM_LOGIN              =   None
233
AUTH_PROVIDER_UNUSABLE_PASSWORD              =   '{method_prompt} is not enabled' \
234
                                                 ' for your account. You can access your account by logging in with' \
235
                                                 ' {available_methods_links}.'
236
AUTH_PROVIDER_LOGIN_DISABLED                 =   AUTH_PROVIDER_UNUSABLE_PASSWORD
237
AUTH_PROVIDER_SIGNUP_FROM_LOGIN              =   ''
238
AUTH_PROVIDER_AUTHENTICATION_FAILED          =   'Authentication with this account failed.'
239

    
240

    
241
AUTH_PROVIDER_PENDING_REGISTRATION =  '''A pending registration exists for
242
{title} account {username}. The email used for the registration is
243
{user_email}. If you decide to procceed with the signup process once again,
244
all pending registrations will be deleted.'''
245

    
246
AUTH_PROVIDER_PENDING_RESEND_ACTIVATION      =   '<a href="{resend_activation_url}">Click here to resend activation email.</a>'
247
AUTH_PROVIDER_PENDING_MODERATION             =   'Your account request is pending moderation.'
248
AUTH_PROVIDER_PENDING_ACTIVATION             =   'Your account request is pending activation.'
249
AUTH_PROVIDER_ACCOUNT_INACTIVE               =   'Your account is disabled.'
250

    
251
AUTH_PROVIDER_ADD_TO_EXISTING_ACCOUNT        =   "You can add {method_prompt} to your existing account from your " \
252
                                                 " <a href='{profile_url}'>profile page</a>"
253

    
254
# Email subjects
255
_SITENAME = astakos_settings.SITENAME
256
INVITATION_EMAIL_SUBJECT = 'Invitation to %s' % _SITENAME
257
GREETING_EMAIL_SUBJECT = 'Welcome to %s' % _SITENAME
258
FEEDBACK_EMAIL_SUBJECT = 'Feedback from %s' % _SITENAME
259
VERIFICATION_EMAIL_SUBJECT = '%s account activation is needed' % _SITENAME
260
ACCOUNT_CREATION_SUBJECT = '%s account created (%%(user)s)' % _SITENAME
261
HELPDESK_NOTIFICATION_EMAIL_SUBJECT = \
262
    '%s account activated (%%(user)s)' % _SITENAME
263
EMAIL_CHANGE_EMAIL_SUBJECT = 'Email change on %s ' % _SITENAME
264
PASSWORD_RESET_EMAIL_SUBJECT = 'Password reset on %s ' % _SITENAME
265
PROJECT_CREATION_SUBJECT = \
266
    '%s project application created (%%(name)s)' % _SITENAME
267
PROJECT_APPROVED_SUBJECT = \
268
    '%s project application approved (%%(name)s)' % _SITENAME
269
PROJECT_DENIED_SUBJECT = \
270
    '%s project application denied (%%(name)s)' % _SITENAME
271
PROJECT_TERMINATION_SUBJECT = \
272
    '%s project terminated (%%(name)s)' % _SITENAME
273
PROJECT_SUSPENSION_SUBJECT = \
274
    '%s project suspended (%%(name)s)' % _SITENAME
275
PROJECT_MEMBERSHIP_CHANGE_SUBJECT = \
276
    '%s project membership changed (%%(name)s)' % _SITENAME
277
PROJECT_MEMBERSHIP_ENROLL_SUBJECT = \
278
    '%s project enrollment (%%(name)s)' % _SITENAME
279
PROJECT_MEMBERSHIP_REQUEST_SUBJECT = \
280
    '%s project membership request (%%(name)s)' % _SITENAME
281
PROJECT_MEMBERSHIP_LEAVE_REQUEST_SUBJECT = \
282
    '%s project membership leave request (%%(name)s)' % _SITENAME
283

    
284

    
285
messages = locals().keys()
286
for msg in messages:
287
    if msg == msg.upper():
288
        attr = "ASTAKOS_%s_MESSAGE" % msg
289
        settings_value = getattr(settings, attr, None)
290
        if settings_value:
291
            locals()[msg] = settings_value