finish login i18n + controller
This commit is contained in:
parent
419f5ef0ad
commit
b12a906a74
6 changed files with 58 additions and 34 deletions
|
@ -18,7 +18,7 @@ class LoginController < ApplicationController
|
||||||
logger.debug("Sent password reset email to #{user.email}.")
|
logger.debug("Sent password reset email to #{user.email}.")
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
redirect_to login_url, :notice => "Wenn Deine E-Mail hier registiert ist bekommst Du jetzt eine Nachricht mit einem Passwort-Zurücksetzen-Link."
|
redirect_to login_url, :notice => I18n.t('login.reset_password.notice')
|
||||||
end
|
end
|
||||||
|
|
||||||
# Set a new password with a token from the password reminder email.
|
# Set a new password with a token from the password reminder email.
|
||||||
|
@ -34,7 +34,7 @@ class LoginController < ApplicationController
|
||||||
@user.reset_password_token = nil
|
@user.reset_password_token = nil
|
||||||
@user.reset_password_expires = nil
|
@user.reset_password_expires = nil
|
||||||
@user.save
|
@user.save
|
||||||
redirect_to login_url, :notice => "Dein Passwort wurde aktualisiert. Du kannst Dich jetzt anmelden."
|
redirect_to login_url, :notice => I18n.t('login.update_password.notice')
|
||||||
else
|
else
|
||||||
render :new_password
|
render :new_password
|
||||||
end
|
end
|
||||||
|
@ -44,10 +44,10 @@ class LoginController < ApplicationController
|
||||||
def accept_invitation
|
def accept_invitation
|
||||||
@invite = Invite.find_by_token(params[:token])
|
@invite = Invite.find_by_token(params[:token])
|
||||||
if (@invite.nil? || @invite.expires_at < Time.now)
|
if (@invite.nil? || @invite.expires_at < Time.now)
|
||||||
flash[:error] = "Deine Einladung ist nicht (mehr) gültig."
|
flash[:error] = I18n.t('login.errors.invite_invalid')
|
||||||
render :action => 'login'
|
render :action => 'login'
|
||||||
elsif @invite.group.nil?
|
elsif @invite.group.nil?
|
||||||
flash[:error] = "Die Gruppe, in die Du eingeladen wurdest, existiert leider nicht mehr."
|
flash[:error] = I18n.t('login.errors.group_invalid')
|
||||||
render :action => 'login'
|
render :action => 'login'
|
||||||
elsif (request.post?)
|
elsif (request.post?)
|
||||||
User.transaction do
|
User.transaction do
|
||||||
|
@ -56,14 +56,14 @@ class LoginController < ApplicationController
|
||||||
if @user.save
|
if @user.save
|
||||||
Membership.new(:user => @user, :group => @invite.group).save!
|
Membership.new(:user => @user, :group => @invite.group).save!
|
||||||
@invite.destroy
|
@invite.destroy
|
||||||
redirect_to login_url, notice: "Herzlichen Glückwunsch, Dein Account wurde erstellt. Du kannst Dich nun einloggen."
|
redirect_to login_url, notice: I18n.t('login.accept_invitation.notice')
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
@user = User.new(:email => @invite.email)
|
@user = User.new(:email => @invite.email)
|
||||||
end
|
end
|
||||||
rescue
|
rescue
|
||||||
flash[:error] = "Ein Fehler ist aufgetreten. Bitte erneut versuchen."
|
flash[:error] = I18n.t('errors.general_again')
|
||||||
end
|
end
|
||||||
|
|
||||||
protected
|
protected
|
||||||
|
@ -71,7 +71,7 @@ class LoginController < ApplicationController
|
||||||
def validate_token
|
def validate_token
|
||||||
@user = User.find_by_id_and_reset_password_token(params[:id], params[:token])
|
@user = User.find_by_id_and_reset_password_token(params[:id], params[:token])
|
||||||
if (@user.nil? || @user.reset_password_expires < Time.now)
|
if (@user.nil? || @user.reset_password_expires < Time.now)
|
||||||
flash.now.error = "Ungültiger oder abgelaufener Token. Bitte versuch es erneut."
|
flash[:error] = I18n.t('login.errors.token_invalid')
|
||||||
render :action => 'forgot_password'
|
render :action => 'forgot_password'
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -2,22 +2,10 @@
|
||||||
:javascript
|
:javascript
|
||||||
$('user_nick').focus();
|
$('user_nick').focus();
|
||||||
|
|
||||||
- title "Einladung in die #{FoodsoftConfig[:name]}"
|
- title t('.title', name: FoodsoftConfig[:name])
|
||||||
%p
|
= t('.body', group: h(@invite.group.name), foodcoop: h(FoodsoftConfig[:name])).html_safe
|
||||||
Du bist eingeladen worden als Mitglied der Gruppe
|
|
||||||
%b= @invite.group.name
|
|
||||||
in der Foodcoop
|
|
||||||
= FoodsoftConfig[:name]
|
|
||||||
mitzumachen.
|
|
||||||
%p
|
|
||||||
Wenn Du mitmachen möchtest, dann fülle bitte dieses Formular aus.
|
|
||||||
%p
|
|
||||||
Deine Daten werden selbstverständlich nicht an Dritte, aus was auch immer für
|
|
||||||
Gründen, weitergeben. Du kannst auch entscheiden, wieviel deiner persönlichen
|
|
||||||
Daten für alle einsehbar sein sollen. 'Alle' bedeutet hier alle Foodcoop-Mitglieder.
|
|
||||||
Die Administratoren haben aber jederzeit Zugriff auf deine Daten.
|
|
||||||
= simple_form_for @user, url: accept_invitation_path do |form|
|
= simple_form_for @user, url: accept_invitation_path do |form|
|
||||||
= render partial: 'shared/user_form_fields', locals: {f: form}
|
= render partial: 'shared/user_form_fields', locals: {f: form}
|
||||||
.form-actions
|
.form-actions
|
||||||
= submit_tag "Foodsoft Account erstellen", class: 'btn'
|
= submit_tag t('.submit'), class: 'btn'
|
||||||
|
|
||||||
|
|
|
@ -1,12 +1,7 @@
|
||||||
- title "Passwort vergessen?"
|
- title t('.title')
|
||||||
%p
|
= t('.body').html_safe
|
||||||
Kein Problem, Du kannst dir einfach ein neues Passwort zulegen.
|
|
||||||
%p
|
|
||||||
Dazu musst hier die E-Mail-Adresse eingeben, mit der Du in der FoodSoft angemeldet bist.
|
|
||||||
Du erhälst dann eine E-Mail mit weiteren Instruktionen.
|
|
||||||
|
|
||||||
= simple_form_for User.new, url: {action: 'reset_password'} do |form|
|
= simple_form_for User.new, url: {action: 'reset_password'} do |form|
|
||||||
= form.input :email
|
= form.input :email
|
||||||
.form-actions
|
.form-actions
|
||||||
= form.submit "Neues Passwort anfordern", class: 'btn'
|
= form.submit t('.submit'), class: 'btn'
|
||||||
= link_to "oder abbrechen", :back
|
= link_to t('.cancel'), :back
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
- title "Neues Passwort"
|
- title t('.title')
|
||||||
%p=h "Bitte neues Passwort für #{@user.nick} eingeben."
|
= t('.body', user: h(@user.nick)).html_safe
|
||||||
= simple_form_for @user, :url => {:action => 'update_password', :id => @user.id, :token => @user.reset_password_token} do |form|
|
= simple_form_for @user, :url => {:action => 'update_password', :id => @user.id, :token => @user.reset_password_token} do |form|
|
||||||
= form.input :password
|
= form.input :password
|
||||||
= form.input :password_confirmation
|
= form.input :password_confirmation
|
||||||
.form-actions
|
.form-actions
|
||||||
= form.submit 'Neues Passwort speichern', class: 'btn'
|
= form.submit t('.submit'), class: 'btn'
|
||||||
|
|
|
@ -120,6 +120,7 @@ de:
|
||||||
year: Jahr
|
year: Jahr
|
||||||
errors: &errors
|
errors: &errors
|
||||||
general: 'Ein Problem ist aufgetreten.'
|
general: 'Ein Problem ist aufgetreten.'
|
||||||
|
general_again: 'Ein Fehler ist aufgetreten. Bitte erneut versuchen.'
|
||||||
format: ! '%{attribute} %{message}'
|
format: ! '%{attribute} %{message}'
|
||||||
messages:
|
messages:
|
||||||
accepted: muss akzeptiert werden
|
accepted: muss akzeptiert werden
|
||||||
|
|
40
config/locales/de/de.login.yml
Normal file
40
config/locales/de/de.login.yml
Normal file
|
@ -0,0 +1,40 @@
|
||||||
|
de:
|
||||||
|
login:
|
||||||
|
accept_invitation:
|
||||||
|
title: 'Einlading in die %{name}'
|
||||||
|
body:
|
||||||
|
<p>Du bist eingeladen worden als Mitglied der Gruppe <b>%{group}</b>
|
||||||
|
in der Foodcoop %{foodcoop} mitzumachen.</p>
|
||||||
|
<p>Wenn Du mitmachen möchtest, dann fülle bitte dieses Formular aus.</p>
|
||||||
|
<p>Deine Daten werden selbstverständlich nicht an Dritte, aus was auch immer für
|
||||||
|
Gründen, weitergeben. Du kannst auch entscheiden, wieviel deiner persönlichen
|
||||||
|
Daten für alle einsehbar sein sollen. 'Alle' bedeutet hier alle Foodcoop-Mitglieder.
|
||||||
|
Die Administratoren haben aber jederzeit Zugriff auf deine Daten.</p>
|
||||||
|
submit: 'Foodsoft Account erstellen'
|
||||||
|
forgot_password:
|
||||||
|
title: 'Passwort vergessen?'
|
||||||
|
body:
|
||||||
|
<p>Kein Problem, Du kannst dir einfach ein neues Passwort zulegen.</p>
|
||||||
|
<p>Dazu musst hier die E-Mail-Adresse eingeben, mit der Du in der Foodsoft angemeldet bist.
|
||||||
|
Du erhälst dann eine E-Mail mit weiteren Instruktionen.</p>
|
||||||
|
submit: 'Neues Passwort anfordern'
|
||||||
|
cancel: 'oder abbrechen'
|
||||||
|
new_password:
|
||||||
|
title: 'Neues Passwort'
|
||||||
|
body:
|
||||||
|
<p>Bitte neues Passwort für <b>%{user}</b> eingeben.</p>
|
||||||
|
submit: 'Neues passwort speichern'
|
||||||
|
|
||||||
|
# used by controller
|
||||||
|
reset_password:
|
||||||
|
notice: 'Wenn Deine E-Mail hier registiert ist bekommst Du jetzt eine Nachricht mit einem Passwort-Zurücksetzen-Link.'
|
||||||
|
update_password:
|
||||||
|
notice: 'Dein Passwort wurde aktualisiert. Du kannst Dich jetzt anmelden.'
|
||||||
|
accept_invitation:
|
||||||
|
notice: 'Herzlichen Glückwunsch, Dein Account wurde erstellt. Du kannst Dich nun einloggen.'
|
||||||
|
errors:
|
||||||
|
invite_invalid: 'Deine Einladung ist nicht (mehr) gültig.'
|
||||||
|
group_invalid: 'Die Gruppe, in die Du eingeladen wurdest, existiert leider nicht mehr."'
|
||||||
|
token_invalid: 'Ungültiger oder abgelaufener Token. Bitte versuch es erneut.'
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue