Revision 450093ec

b/snf-astakos-app/astakos/im/auth_providers.py
73 73
    module_active = False
74 74
    module_enabled = False
75 75
    one_per_user = False
76
    login_prompt = _('Login using')
76
    login_prompt = _('Login using ')
77
    primary_login_prompt = _('Login using ')
77 78

  
78 79
    def get_message(self, msg, **kwargs):
79 80
        params = kwargs
......
129 130
    module = 'local'
130 131
    title = _('Local password')
131 132
    description = _('Create a local password for your account')
132
    create_prompt =  _('Create an account')
133 133
    add_prompt =  _('Create a local password for your account')
134 134
    login_prompt = _('if you already have a username and password')
135
    signup_prompt = _('New to ~Okeanos ?')
135
    signup_prompt = _('New to ~okeanos ?')
136
    signup_link_prompt = _('create an account now')
136 137

  
137 138

  
138 139
    @property
......
152 153
        return [(_('Change password'), reverse('password_change')), ]
153 154

  
154 155

  
155
class LDAPAuthProvider(AuthProvider):
156
    module = 'ldap'
157
    title = _('LDAP credentials')
158
    description = _('Allows you to login using your LDAP credentials')
159

  
160
    one_per_user = True
161

  
162
    login_template = 'im/auth/local_login_form.html'
163
    login_prompt_template = 'im/auth/local_login_prompt.html'
164
    signup_prompt_template = 'im/auth/local_signup_prompt.html'
165
    details_tpl = _('You can login to your account using your'
166
                    ' %(auth_backend)s password.')
167

  
168 156
class ShibbolethAuthProvider(AuthProvider):
169 157
    module = 'shibboleth'
170 158
    title = _('Academic credentials (Shibboleth)')
171
    description = _('Allows you to login to your account using your academic '
172
                    'credentials')
173
    add_prompt = _('Add academic credentials to your account.')
159
    add_prompt = _('Allows you to login to your account using your academic '
160
                    'account')
174 161
    details_tpl = _('Shibboleth account \'%(identifier)s\' is connected to your '
175 162
                    ' account.')
176 163
    user_title = _('Academic credentials (%(identifier)s)')
......
189 176
class TwitterAuthProvider(AuthProvider):
190 177
    module = 'twitter'
191 178
    title = _('Twitter')
192
    description = _('Allows you to login to your account using your Twitter '
193
                    'credentials')
194
    add_prompt = _('Connect with your Twitter account.')
179
    add_prompt = _('Allows you to login to your account using Twitter')
195 180
    details_tpl = _('Twitter screen name: %(info_screen_name)s')
196 181
    user_title = _('Twitter (%(info_screen_name)s)')
197 182

  
......
199 184
    def add_url(self):
200 185
        return reverse('astakos.im.target.twitter.login')
201 186

  
202
    login_template = 'im/auth/twitter_login.html'
203
    login_prompt_template = 'im/auth/twitter_login_prompt.html'
187
    login_template = 'im/auth/third_party_provider_generic_login.html'
188
    login_prompt_template = 'im/auth/third_party_provider_generic_login_prompt.html'
204 189

  
205 190

  
206 191
class GoogleAuthProvider(AuthProvider):
207 192
    module = 'google'
208 193
    title = _('Google')
209
    description = _('Allows you to login to your account using your Google '
210
                    'credentials')
211
    add_prompt = _('Connect with your Google account.')
194
    add_prompt = _('Allows you to login to your account using Google')
212 195
    details_tpl = _('Google account: %(info_email)s')
213 196
    user_title = _('Google (%(info_email)s)')
214 197

  
......
223 206
class LinkedInAuthProvider(AuthProvider):
224 207
    module = 'linkedin'
225 208
    title = _('LinkedIn')
226
    description = _('Allows you to login to your account using your LinkedIn '
227
                    'credentials')
228
    add_prompt = _('Connect with your LinkedIn account.')
229
    details_tpl = _('LinkedIn account: %(info_emailAddress)s')
209
    add_prompt = _('Allows you to login to your account using LinkedIn')
230 210
    user_title = _('LinkedIn (%(info_emailAddress)s)')
211
    details_tpl = _('LinkedIn account: %(info_emailAddress)s')
231 212

  
232 213
    @property
233 214
    def add_url(self):
b/snf-astakos-app/astakos/im/messages.py
31 31
# interpreted as representing official policies, either expressed
32 32
# or implied, of GRNET S.A.
33 33

  
34
from django.conf import settings
35

  
34 36
ACCOUNT_AUTHENTICATION_FAILED           =   'Cannot authenticate account.'
35 37
ACCOUNT_ALREADY_ACTIVE                  =   'Account is already active.'
36 38
ACCOUNT_PENDING_ACTIVATION              =   'Your request is pending activation.'
......
146 148
# Auth providers messages
147 149
AUTH_PROVIDER_NOT_ACTIVE                     =   "'%(provider)s' is disabled"
148 150
AUTH_PROVIDER_NOT_ACTIVE_FOR_LOGIN           =   "Login using '%(provider)s' is disabled"
149
AUTH_PROVIDER_NOT_ACTIVE_FOR_USER_LOGIN      =   "You cannot login using '%(provider)s'"
150
AUTH_PROVIDER_NOT_ACTIVE_FOR_CREATE          =   "Signup using '%(provider)s' is disabled"
151
AUTH_PROVIDER_NOT_ACTIVE_FOR_ADD             =   "'%(provider)s is disabled."
151
AUTH_PROVIDER_NOT_ACTIVE_FOR_USER            =   "You cannot login using '%(provider)s'"
152
AUTH_PROVIDER_NOT_ACTIVE_FOR_CREATE          =   "Signup using '%(provider)s' is disabled."
153
AUTH_PROVIDER_NOT_ACTIVE_FOR_ADD             =   "You cannot add %(provider)s login method."
152 154
AUTH_PROVIDER_ADDED                          =   "New login method added."
153 155
AUTH_PROVIDER_ADD_FAILED                     =   "Failed to add new login method."
154 156
AUTH_PROVIDER_ADD_EXISTS                     =   "Account already assigned to another user."
155
AUTH_PROVIDER_LOGIN_TO_ADD                   =   "Please login now to your existing account."
157
AUTH_PROVIDER_LOGIN_TO_ADD                   =   "The new login method will be assigned once you login to your account."
158
AUTH_PROVIDER_INVALID_LOGIN                  =   "No account exists."
159

  
160

  
161
messages = locals().keys()
162
for msg in messages:
163
    if msg == msg.upper():
164
        attr = "ASTAKOS_%s_MESSAGE" % msg
165
        settings_value = getattr(settings, attr, None)
166
        if settings_value:
167
            locals()[msg] = settings_value
156 168

  
b/snf-astakos-app/astakos/im/templates/im/auth/local_signup_prompt.html
1 1
<br />
2 2
{{ provider.get_signup_prompt_display }}
3
<a href="{% url astakos.im.views.signup %}{% ifnotequal code "" %}?code={{ code|urlencode }}{% endifnotequal %}">
4
{{ provider.get_create_prompt_display }}
5
</a>
3
<a href="{% url astakos.im.views.signup %}{% ifnotequal code "" %}?code={{ code|urlencode }}{% endifnotequal %}">{{ provider.get_signup_link_prompt_display }}</a>
6 4

  
b/snf-astakos-app/astakos/im/templates/im/auth/third_party_provider_generic_login.html
1
<h2><a href="{{ provider.add_url }}">{{ provider.get_login_prompt_display }} {{ provider.get_title_display }}</a></h2>
1
<h2><a href="{{ provider.add_url }}">{{ provider.get_primary_login_prompt_display|safe }} {{ provider.get_title_display }}</a></h2>
b/snf-astakos-app/astakos/im/templates/im/auth/third_party_provider_generic_login_prompt.html
1
<br />{{ provider.get_login_prompt_display }}
1
<Br />{{ provider.get_login_prompt_display|safe }}
2 2
<a href="{{ provider.add_url }}?{% ifnotequal next "" %}&next={{ next|urlencode }}{% endifnotequal %}{% ifnotequal code ""%}{% if next != "" %}&{% else %}?{% endif %}code={{ code }}{% endifnotequal %}"
3 3
  alt="{{ provider.get_title_display }}">{{ provider.get_title_display }}</a>
b/snf-astakos-app/astakos/im/templates/im/auth/twitter_login.html
1
<h2><a href="/im/login/shibboleth">LOGIN OR CREATE ACCOUNT USING SHIBBOLETH</a></h2>
1
<h2><a href="/im/login/{{ provider.add_url }}">{{ provider.get_login_prompt_display }}</a></h2>
b/snf-astakos-app/astakos/im/templates/im/auth/twitter_login_prompt.html
1 1
<br />{{ provider.get_login_prompt_display }}
2
<a href="/im/login/twitter?{% ifnotequal next "" %}&next={{ next|urlencode }}{% endifnotequal %}{% ifnotequal code ""%}{% if next != "" %}&{% else %}?{% endif %}code={{ code }}{% endifnotequal %}"
3
  alt="{{ provider.get_title_display }}">{{ provider.get_title_display }}</a>
2
<a href="/im/login/twitter?{% ifnotequal next "" %}&next={{ next|urlencode }}{% endifnotequal %}{% ifnotequal code ""%}{% if next != "" %}&{% else %}?{% endif %}code={{ code }}{% endifnotequal %}" alt="{{ provider.get_title_display }}">{{ provider.get_title_display }}</a>
b/snf-astakos-app/astakos/im/templates/im/login_base.html
21 21
      <div class="extralogin" 
22 22
          style="{% if not last_login_method or last_login_method == master_auth_provider.module %}display:none{% endif %}">
23 23
      {% for provider in auth_providers %}
24
      {% if not provider == master_auth_provider %}
25
        {% include provider.login_prompt_template %}
26
      {% endif %}
24
        {% if not provider == master_auth_provider %}
25
            {% include provider.login_prompt_template %}
26
        {% endif %}
27 27
      {% endfor %}
28 28
        <div class="bottom">
29 29
        {% block body.signup %}
b/snf-astakos-app/astakos/im/templates/im/profile_auth_methods.html
39 39
                <p><a href="{{ provider.add_url }}?force_login=1">
40 40
                  {{ provider.get_title_display }}</a><br />
41 41
                <span class="description">
42
                  {{ provider.get_description_display }}
42
                  {{ provider.get_add_prompt_display }}
43 43
                </span>
44 44
                  </p>
45 45
                {% empty %}

Also available in: Unified diff