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

34
35
from django.conf import settings

36
ACCOUNT_AUTHENTICATION_FAILED           =   'Authentication with this account failed.'
Kostas Papadimitriou's avatar
Kostas Papadimitriou committed
37
38
39
ACCOUNT_ALREADY_ACTIVE                  =   'This account is already active.'
ACCOUNT_PENDING_ACTIVATION              =   'Your account request is pending activation.'
ACCOUNT_PENDING_MODERATION              =   'Your account request is pending moderation.'
40
ACCOUNT_INACTIVE                        =   'Your account is disabled.'
Kostas Papadimitriou's avatar
Kostas Papadimitriou committed
41
42
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>'
INACTIVE_ACCOUNT_CHANGE_EMAIL           =   ''.join([ACCOUNT_RESEND_ACTIVATION, ' Or <a href="%(signup_url)s">Send activation to a new email.</a>'])
43

Kostas Papadimitriou's avatar
Kostas Papadimitriou committed
44
ACCOUNT_PENDING_ACTIVATION_HELP         =   'An activation email has been sent to you. Make sure you check your spam folder, too.'
Kostas Papadimitriou's avatar
Kostas Papadimitriou committed
45
46

ACCOUNT_ACTIVATED                       =   'Congratulations. Your account has' + \
47
                                            ' been activated. You are now logged in.'
Kostas Papadimitriou's avatar
Kostas Papadimitriou committed
48
49
PASSWORD_RESET_DONE                     =   'An email with details on how to change your password has been sent. Please check your Inbox.'
PASSWORD_RESET_CONFIRM_DONE             =   'Your password has changed successfully. You can now login using your new password.'
50
PASSWORD_CHANGED                        =   'Your new password was set successfully.'
51

Kostas Papadimitriou's avatar
Kostas Papadimitriou committed
52
ACCOUNT_RESEND_ACTIVATION_PROMPT        =   'Resend activation email'
53
54
ACCOUNT_USER_ACTIVATION_PENDING         =   'You have not followed the activation link'

Kostas Papadimitriou's avatar
Kostas Papadimitriou committed
55
ACCOUNT_UNKNOWN                         =   'It seems there is no account with those .'
56
57
TOKEN_UNKNOWN                           =   'There is no user matching this authentication token.'
TOKEN_UPDATED                           =   'Your authentication token has been updated successfully.'
Olga Brani's avatar
Olga Brani committed
58

Kostas Papadimitriou's avatar
Kostas Papadimitriou committed
59
PROFILE_UPDATED                         =   'Your profile has been updated successfully.'
60
FEEDBACK_SENT                           =   'Thank you for contacting us. We will process your message carefully and get back to you.'
Kostas Papadimitriou's avatar
Kostas Papadimitriou committed
61
EMAIL_CHANGED                           =   'The email of your account changed successfully.'
62
63
EMAIL_CHANGE_REGISTERED                 =   'Your request for changing your email has been registered successfully. \
                                               A verification email will be sent to your new address.'
Olga Brani's avatar
Olga Brani committed
64

Olga Brani's avatar
Bug fix    
Olga Brani committed
65
OBJECT_CREATED                          =   'The %(verbose_name)s was created successfully.'
Kostas Papadimitriou's avatar
Kostas Papadimitriou committed
66
67
USER_JOINED_GROUP                       =   'User %(realname)s joined the project.'
USER_LEFT_GROUP                         =   'User %(realname)s left the project.'
68
USER_MEMBERSHIP_REJECTED                =   '%(realname)s\'s request to join the project has been rejected.'
Kostas Papadimitriou's avatar
Kostas Papadimitriou committed
69
MEMBER_REMOVED                          =   'User %(realname)s has been successfully removed from the project.'
70
BILLING_ERROR                           =   'Service response status: %(status)d'
71
72
73
LOGOUT_SUCCESS                          =   'Logged out successfully.'
LOGIN_SUCCESS                           =   'Logged in successfully, using %s.'
LOCAL_LOGIN_SUCCESS                     =   'Logged in successfully, using your local account.'
Kostas Papadimitriou's avatar
Kostas Papadimitriou committed
74
75
76
77
78
79
80
81
82

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

MAX_INVITATION_NUMBER_REACHED   =           'You have reached the maximum amount of invitations for your account. No invitations left.'
GROUP_MAX_PARTICIPANT_NUMBER_REACHED    =   'This Group reached its maximum number of members. No other member can be added.'
PROJECT_MAX_PARTICIPANT_NUMBER_REACHED  =   'This Project reached its maximum number of members. No other member can be added.'
NO_APPROVAL_TERMS                       =   'There are no terms of service to approve.'
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.'
Olga Brani's avatar
Olga Brani committed
84
OBJECT_CREATED_FAILED                   =   'The %(verbose_name)s creation failed: %(reason)s.'
Kostas Papadimitriou's avatar
Kostas Papadimitriou committed
85
86
87
88
89
90
GROUP_JOIN_FAILURE                      =   'Failed to join this Group.'
PROJECT_JOIN_FAILURE                    =   'Failed to join this Project.'
GROUPKIND_UNKNOWN                       =   'The kind of Project you specified does not exist.'
NOT_MEMBER                              =   'User is not a member of the Project.'
NOT_OWNER                               =   'User is not the Project\'s owner.'
OWNER_CANNOT_LEAVE_GROUP                =   'You are the owner of this Project. Owners can not leave their Projects.'
Olga Brani's avatar
Olga Brani committed
91
92
93

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

SIGN_TERMS                              =   'Please, you need to \'Agree with the terms\' before proceeding.'
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. \
Kostas Papadimitriou's avatar
Kostas Papadimitriou committed
110
                                               Please try logging in using an external login provider (e.g.: twitter)'
111
UNUSABLE_PASSWORD                       =   '%s is not enabled for your account. You can may access your account by logging in with %s.'
Kostas Papadimitriou's avatar
Kostas Papadimitriou committed
112
113
EMAIL_UNKNOWN                           =   'This email address doesn\'t have an associated user account. \
                                               Please make sure you have registered, before proceeding.'
114
INVITATION_EMAIL_EXISTS                 =   'An invitation has already been sent to this email.'
Olga Brani's avatar
Olga Brani committed
115
116
INVITATION_CONSUMED_ERR                 =   'Invitation is used.'
UNKNOWN_USERS                           =   'Unknown users: %s'
Kostas Papadimitriou's avatar
Kostas Papadimitriou committed
117
UNIQUE_EMAIL_IS_ACTIVE_CONSTRAIN_ERR    =   'More than one account with the same email & \'is_active\' field. Error.'
Olga Brani's avatar
Olga Brani committed
118
INVALID_ACTIVATION_KEY                  =   'Invalid activation key.'
Kostas Papadimitriou's avatar
Kostas Papadimitriou committed
119
120
121
NEW_EMAIL_ADDR_RESERVED                 =   'The new email address you requested is already used by another account. Please provide a different one.'
EMAIL_RESERVED                          =   'Email: %(email)s is already reserved.'
NO_LOCAL_AUTH                           =   'Only external login providers are enabled for this acccount. You can not login with a local password.'
122
SWITCH_ACCOUNT_FAILURE                  =   'Account failed to switch. Invalid parameters.'
123
SWITCH_ACCOUNT_SUCCESS_WITH_PROVIDER    =   'Account failed to switch to %(provider)s.'
124
SWITCH_ACCOUNT_SUCCESS                  =   'Account successfully switched to %(provider)s.'
Olga Brani's avatar
Olga Brani committed
125
126

# Field help text
Kostas Papadimitriou's avatar
Kostas Papadimitriou committed
127
128
129
ADD_GROUP_MEMBERS_Q_HELP                =   'Add a comma separated list of user emails, eg. user1@user.com, user2@user.com'
ASTAKOSUSER_GROUPS_HELP                 =   'In addition to the permissions assigned manually, \
                                               this user will also get all permissions coming from his/her groups.'
130
131
132
EMAIL_CHANGE_NEW_ADDR_HELP              =   'Provide a new email address. Until you verify the new address by \
                                               following the activation link that will be sent to it, your old \
                                               email address will remain active.'
Olga Brani's avatar
Olga Brani committed
133
134
135
136
137
138
139
140
141

EMAIL_SEND_ERR                          =   'Failed to send %s.'
ADMIN_NOTIFICATION_SEND_ERR             =   EMAIL_SEND_ERR % 'admin notification'
VERIFICATION_SEND_ERR                   =   EMAIL_SEND_ERR % 'verification'
INVITATION_SEND_ERR                     =   EMAIL_SEND_ERR % 'invitation'
GREETING_SEND_ERR                       =   EMAIL_SEND_ERR % 'greeting'
FEEDBACK_SEND_ERR                       =   EMAIL_SEND_ERR % 'feedback'
CHANGE_EMAIL_SEND_ERR                   =   EMAIL_SEND_ERR % 'feedback'
NOTIFICATION_SEND_ERR                   =   EMAIL_SEND_ERR % 'notification'
142
DETAILED_NOTIFICATION_SEND_ERR          =   'Failed to send %(subject)s notification to %(recipients)s.'
Olga Brani's avatar
Olga Brani committed
143

Kostas Papadimitriou's avatar
Kostas Papadimitriou committed
144
MISSING_NEXT_PARAMETER                  =   'The next parameter is missing.'
Olga Brani's avatar
Olga Brani committed
145

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

Kostas Papadimitriou's avatar
Kostas Papadimitriou committed
158
REGISTRATION_COMPLETED                  =   'Your registration completed successfully. You can now login to your new account!'
159
160
161
162
163

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

195
196
197
198
APPLICATION_CANNOT_APPROVE              =   "Cannot approve application %s in state '%s'"
APPLICATION_CANNOT_DENY                 =   "Cannot deny application %s in state '%s'"
APPLICATION_CANNOT_DISMISS              =   "Cannot dismiss application %s in state '%s'"
APPLICATION_CANNOT_CANCEL               =   "Cannot cancel application %s in state '%s'"
199
200
APPLICATION_CANCELLED                   =   "Your project request has been cancelled."

201

202
# Auth providers messages
Kostas Papadimitriou's avatar
Kostas Papadimitriou committed
203
204
205
AUTH_PROVIDER_NOT_ACTIVE                     =   "'%(provider)s' is disabled."
AUTH_PROVIDER_NOT_ACTIVE_FOR_LOGIN           =   "Login using '%(provider)s' is disabled."
AUTH_PROVIDER_NOT_ACTIVE_FOR_USER            =   "You cannot login using '%(provider)s'."
206
AUTH_PROVIDER_NOT_ACTIVE_FOR_CREATE          =   "Sign up using '%(provider)s' is disabled."
207
AUTH_PROVIDER_NOT_ACTIVE_FOR_ADD             =   "You cannot add %(provider)s login method."
208
209
AUTH_PROVIDER_ADDED                          =   "%s enabled for this account."
AUTH_PROVIDER_REMOVED                        =   "%s removed for this account."
Kostas Papadimitriou's avatar
Kostas Papadimitriou committed
210
AUTH_PROVIDER_ADD_FAILED                     =   "Failed to add new login method."
211
AUTH_PROVIDER_ADD_EXISTS                     =   "It seems that this account is already assigned to another user."
212
213
AUTH_PROVIDER_LOGIN_TO_ADD                   =   "The new login method will be assigned once you login to your account."
AUTH_PROVIDER_INVALID_LOGIN                  =   "No account exists."
214
AUTH_PROVIDER_REQUIRED                       =   "%(provider)s login method is required. Add one from your profile page."
Kostas Papadimitriou's avatar
Kostas Papadimitriou committed
215
AUTH_PROVIDER_CANNOT_CHANGE_PASSWORD         =   "Changing password is not supported."
216
AUTH_PROVIDER_SIGNUP_FROM_LOGIN              =   None
217

218
EXISTING_EMAIL_THIRD_PARTY_NOTIFICATION      =   "You can add the '%s' login method to your existing account from your " \
219
220
                                                 " <a href='%s'>profile page</a>"

221
222
223
224
225
226
messages = locals().keys()
for msg in messages:
    if msg == msg.upper():
        attr = "ASTAKOS_%s_MESSAGE" % msg
        settings_value = getattr(settings, attr, None)
        if settings_value:
227
            locals()[msg] = settings_value