anadea-identity 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/MIT-LICENSE +20 -0
- data/README.md +174 -0
- data/Rakefile +10 -0
- data/app/assets/images/facebook.png +0 -0
- data/app/assets/images/google_oauth2.png +0 -0
- data/app/assets/images/twitter.png +0 -0
- data/app/controllers/identity/base_controller.rb +5 -0
- data/app/controllers/identity/omniauth_callbacks_controller.rb +24 -0
- data/app/controllers/identity/users_controller.rb +58 -0
- data/app/models/identity/role.rb +16 -0
- data/app/models/identity/user.rb +47 -0
- data/app/views/devise/confirmations/new.html.erb +23 -0
- data/app/views/devise/mailer/confirmation_instructions.html.erb +6 -0
- data/app/views/devise/mailer/reset_password_instructions.html.erb +8 -0
- data/app/views/devise/mailer/unlock_instructions.html.erb +7 -0
- data/app/views/devise/passwords/edit.html.erb +28 -0
- data/app/views/devise/passwords/new.html.erb +21 -0
- data/app/views/devise/registrations/edit.html.erb +34 -0
- data/app/views/devise/registrations/new.html.erb +28 -0
- data/app/views/devise/sessions/new.html.erb +31 -0
- data/app/views/devise/shared/_links.erb +25 -0
- data/app/views/devise/unlocks/new.html.erb +20 -0
- data/app/views/identity/users/edit.html.erb +70 -0
- data/app/views/identity/users/index.html.erb +55 -0
- data/config/locales/ca.yml +59 -0
- data/config/locales/de.yml +110 -0
- data/config/locales/en.yml +111 -0
- data/config/locales/es-AR.yml +51 -0
- data/config/locales/es-ES.yml +59 -0
- data/config/locales/es.yml +51 -0
- data/config/locales/fr.yml +51 -0
- data/config/locales/hu.yml +59 -0
- data/config/locales/it.yml +51 -0
- data/config/locales/nl.yml +59 -0
- data/config/locales/pl.yml +57 -0
- data/config/locales/pt-BR.yml +51 -0
- data/config/locales/ru.yml +56 -0
- data/config/locales/tr.yml +51 -0
- data/config/locales/zh-CN.yml +57 -0
- data/config/locales/zh-TW.yml +57 -0
- data/config/routes.rb +5 -0
- data/db/migrate/20150402142437_devise_create_identity_users.rb +42 -0
- data/db/migrate/20150402152859_rolify_create_identity_roles.rb +19 -0
- data/lib/anadea/identity.rb +1 -0
- data/lib/generators/identity/locales_generator.rb +8 -0
- data/lib/generators/identity/views_generator.rb +8 -0
- data/lib/identity.rb +50 -0
- data/lib/identity/admin/user.rb +89 -0
- data/lib/identity/devise_config.rb +31 -0
- data/lib/identity/engine.rb +21 -0
- data/lib/identity/version.rb +3 -0
- data/lib/identity/view_helper.rb +22 -0
- data/lib/tasks/whoami_tasks.rake +4 -0
- metadata +157 -0
@@ -0,0 +1,57 @@
|
|
1
|
+
pl:
|
2
|
+
devise:
|
3
|
+
confirmations:
|
4
|
+
new:
|
5
|
+
resend_confirmation_instructions: Wyślij ponownie instrukcje aktywacji
|
6
|
+
mailer:
|
7
|
+
confirmation_instructions:
|
8
|
+
action: Potwierdź swoje konto
|
9
|
+
greeting: Witaj %{recipient}!
|
10
|
+
instruction: ! 'Możesz potwierdzić swoje konto przy pomocy poniższego linku:'
|
11
|
+
subject: Instrukcja aktywacji konta
|
12
|
+
reset_password_instructions:
|
13
|
+
action: Zmień swoje hasło
|
14
|
+
greeting: Cześć %{recipient}!
|
15
|
+
instruction: 'Ktoś zażądał zmiany hasła do Twojego konta. Hasło możesz zmienić wchodząc na poniższy link:'
|
16
|
+
instruction_2: Jeśli to nie Ty zażądałeś zmiany hasła, proszę zignoruj tę wiadomość.
|
17
|
+
instruction_3: Twoje hasło nie ulegnie zmianie dopóki nie wejdziesz na poniższy link i nie ustawisz nowego.
|
18
|
+
subject: Instrukcja zmiany hasła
|
19
|
+
unlock_instructions:
|
20
|
+
action: Odblokuj swoje konto
|
21
|
+
greeting: Cześć %{recipient}!
|
22
|
+
instruction: ! 'Kliknij poniższy link aby odblokować swoje konto.'
|
23
|
+
message: Twoje konto zostało zablokowane z powodu zbyt dużej ilości nieprawidłowych prób zalogowania się na nie.
|
24
|
+
subject: Instrukcja odblokowania konta
|
25
|
+
passwords:
|
26
|
+
new:
|
27
|
+
forgot_your_password: Zapomniałeś swoje hasło?
|
28
|
+
send_me_reset_password_instructions: Wyślij instrukcje zmiany hasła
|
29
|
+
edit:
|
30
|
+
change_your_password: Zmień swoje hasło
|
31
|
+
new_password: Nowe hasło
|
32
|
+
confirm_new_password: Powtórz nowe hasło
|
33
|
+
change_my_password: Zmień swoje hasło
|
34
|
+
registrations:
|
35
|
+
edit:
|
36
|
+
are_you_sure: Jesteś pewny?
|
37
|
+
cancel_my_account: Anuluj moje konto
|
38
|
+
leave_blank_if_you_don_t_want_to_change_it: pozostaw puste jeśli nie chcesz wprowadzać zmian
|
39
|
+
title: Edytuj %{resource}
|
40
|
+
we_need_your_current_password_to_confirm_your_changes: potrzebujemy Twojego bieżącego hasła aby potwierdzić zmiany
|
41
|
+
update: Zaktualizuj
|
42
|
+
new:
|
43
|
+
sign_up: Zarejestruj się
|
44
|
+
sessions:
|
45
|
+
new:
|
46
|
+
sign_in: Zaloguj się
|
47
|
+
shared:
|
48
|
+
links:
|
49
|
+
didn_t_receive_confirmation_instructions: Nie otrzymałeś instrukcji aktywacji konta?
|
50
|
+
didn_t_receive_unlock_instructions: Nie otrzymałeś instrukcji odblokowania konta?
|
51
|
+
forgot_your_password: Zapomniałeś hasło?
|
52
|
+
sign_in: Zaloguj się
|
53
|
+
sign_in_with_provider: Zaloguj się przez %{provider}
|
54
|
+
sign_up: Zarejestruj się
|
55
|
+
unlocks:
|
56
|
+
new:
|
57
|
+
resend_unlock_instructions: Wyślij instrukcje odblokowania konta
|
@@ -0,0 +1,51 @@
|
|
1
|
+
pt-BR:
|
2
|
+
devise:
|
3
|
+
confirmations:
|
4
|
+
new:
|
5
|
+
resend_confirmation_instructions: Reenviar instruções de confirmação
|
6
|
+
mailer:
|
7
|
+
confirmation_instructions:
|
8
|
+
action: Confirmar minha conta
|
9
|
+
greeting: Bem-vindo %{recipient}!
|
10
|
+
instruction: ! 'Você pode confirmar sua conta através do link abaixo:'
|
11
|
+
subject: Instruções de confirmação
|
12
|
+
reset_password_instructions:
|
13
|
+
action: Redefinir minha senha
|
14
|
+
greeting: Olá %{recipient}!
|
15
|
+
instruction: Alguém fez o pedido para redefinir sua senha, e você pode fazer isso clicando no link abaixo.
|
16
|
+
instruction_2: Se você não fez este pedido, por favor ignore este e-mail.
|
17
|
+
instruction_3: Sua senha não será alterada até que você acesse o link abaixo e crie uma nova.
|
18
|
+
subject: Instruções para redefinição da senha
|
19
|
+
unlock_instructions:
|
20
|
+
action: Desbloquear minha conta
|
21
|
+
greeting: Olá %{recipient}!
|
22
|
+
instruction: ! 'Clique no link abaixo para desbloquear sua conta:'
|
23
|
+
message: Sua conta foi bloqueada devido ao excessivo número de tentativas acesso inválidas.
|
24
|
+
subject: Instruções de desbloqueio
|
25
|
+
passwords:
|
26
|
+
new:
|
27
|
+
forgot_your_password: Esqueceu sua senha?
|
28
|
+
send_me_reset_password_instructions: Enviar instruções para redefinição da senha
|
29
|
+
registrations:
|
30
|
+
edit:
|
31
|
+
are_you_sure: Você tem certeza?
|
32
|
+
cancel_my_account: Cancelar minha conta
|
33
|
+
leave_blank_if_you_don_t_want_to_change_it: deixe em branco caso não queira alterá-la
|
34
|
+
title: Editar %{resource}
|
35
|
+
we_need_your_current_password_to_confirm_your_changes: precisamos da sua senha atual para confirmar suas mudanças
|
36
|
+
new:
|
37
|
+
sign_up: Inscrever-se
|
38
|
+
sessions:
|
39
|
+
new:
|
40
|
+
sign_in: Login
|
41
|
+
shared:
|
42
|
+
links:
|
43
|
+
didn_t_receive_confirmation_instructions: Não recebeu instruções de confirmação?
|
44
|
+
didn_t_receive_unlock_instructions: Não recebeu instruções de desbloqueio?
|
45
|
+
forgot_your_password: Equeceu sua senha?
|
46
|
+
sign_in: Login
|
47
|
+
sign_in_with_provider: Entrar com %{provider}
|
48
|
+
sign_up: Inscrever-se
|
49
|
+
unlocks:
|
50
|
+
new:
|
51
|
+
resend_unlock_instructions: Renviar instruções de desbloqueio
|
@@ -0,0 +1,56 @@
|
|
1
|
+
ru:
|
2
|
+
devise:
|
3
|
+
confirmations:
|
4
|
+
new:
|
5
|
+
resend_confirmation_instructions: Выслать повторно письмо с активацией
|
6
|
+
mailer:
|
7
|
+
confirmation_instructions:
|
8
|
+
action: Активировать
|
9
|
+
greeting: Привет %{recipient}!
|
10
|
+
instruction: ! 'Вы можете активировать свою учетную запись, нажав ссылку снизу:'
|
11
|
+
subject: Активация учетной записи
|
12
|
+
reset_password_instructions:
|
13
|
+
action: Изменить пароль
|
14
|
+
greeting: Привет %{recipient}!
|
15
|
+
instruction: ! 'Вы (или кто-то еще) запросили изменение пароля. Для изменение пароля нажимите ссылку ниже:'
|
16
|
+
instruction_2: Если вы не запрашивали изменение пароля - проигнорируйте это сообщение
|
17
|
+
instruction_3: Ваш пароль не изменится пока вы не нажмете на ссылку и не введете новый.
|
18
|
+
subject: Запрос на изменение пароля
|
19
|
+
unlock_instructions:
|
20
|
+
action: Разблокировать учетную запись
|
21
|
+
greeting: Привет %{recipient}!
|
22
|
+
instruction: ! 'Нажмите ссылку для активации учетной записи:'
|
23
|
+
message: Ваша учетная запись была заблокирована в связи с превышением лимита неудачных попыток входа.
|
24
|
+
subject: Инструкции для разблокировки учетной записи
|
25
|
+
passwords:
|
26
|
+
new:
|
27
|
+
forgot_your_password: Забыли пароль?
|
28
|
+
send_me_reset_password_instructions: Выслать новый пароль
|
29
|
+
edit:
|
30
|
+
change_your_password: Изменить пароль
|
31
|
+
new_password: Новый пароль
|
32
|
+
confirm_new_password: Повторите новый пароль
|
33
|
+
change_my_password: Изменить мой пароль
|
34
|
+
registrations:
|
35
|
+
edit:
|
36
|
+
are_you_sure: Вы уверены?
|
37
|
+
cancel_my_account: Удалить учетную запись
|
38
|
+
leave_blank_if_you_don_t_want_to_change_it: оставьте поле пустым, если не хотите ничего менять
|
39
|
+
title: Редактировать %{resource}
|
40
|
+
we_need_your_current_password_to_confirm_your_changes: введите текущий пароль для подтверждения изменений
|
41
|
+
new:
|
42
|
+
sign_up: Регистрация
|
43
|
+
sessions:
|
44
|
+
new:
|
45
|
+
sign_in: Войти
|
46
|
+
shared:
|
47
|
+
links:
|
48
|
+
didn_t_receive_confirmation_instructions: Не получили подтверждение?
|
49
|
+
didn_t_receive_unlock_instructions: Не получили код разблокировки?
|
50
|
+
forgot_your_password: Забыли пароль?
|
51
|
+
sign_in: Войти
|
52
|
+
sign_in_with_provider: ! 'Войти с помощью: %{provider}'
|
53
|
+
sign_up: Регистрация
|
54
|
+
unlocks:
|
55
|
+
new:
|
56
|
+
resend_unlock_instructions: Выслать подтверждение заново
|
@@ -0,0 +1,51 @@
|
|
1
|
+
tr:
|
2
|
+
devise:
|
3
|
+
confirmations:
|
4
|
+
new:
|
5
|
+
resend_confirmation_instructions: Onaylama talimatlarını tekrar gönder
|
6
|
+
mailer:
|
7
|
+
confirmation_instructions:
|
8
|
+
action: Hesabımı onayla
|
9
|
+
greeting: Hoşgeldiniz %{recipient}!
|
10
|
+
instruction: ! 'E-postanızı aşağıdaki bağlantıyı takip ederek onaylayabilirsiniz:'
|
11
|
+
subject: Onaylama talimatları
|
12
|
+
reset_password_instructions:
|
13
|
+
action: Parolamı değiştir
|
14
|
+
greeting: Merhaba %{recipient}!
|
15
|
+
instruction: Birisi parolanızı değiştirmek için bir istek gönderdi, aşağıdaki bağlantıyı kullanarak bunu yapabilirsiniz.
|
16
|
+
instruction_2: Eğer bu isteği siz yapmadıysanız, bu e-postayı görmezden gelebilirsiniz.
|
17
|
+
instruction_3: Parolanız yukarıdaki bağlantıyı kullanıp, yeni bir parola oluşturmadığınız sürece değişmeyecektir.
|
18
|
+
subject: Parola yenileme talimatları
|
19
|
+
unlock_instructions:
|
20
|
+
action: Hesabımı geri aç
|
21
|
+
greeting: Merhaba %{recipient}!
|
22
|
+
instruction: ! 'Hesabınızı geri açmak için aşağıdaki bağlantıyı tıklayınız:'
|
23
|
+
message: Hesabınız çok fazla başarısız giriş denemesinden dolayı kilitlenmiştir.
|
24
|
+
subject: Hesap geri açma talimatları
|
25
|
+
passwords:
|
26
|
+
new:
|
27
|
+
forgot_your_password: Parolanızı mı unuttunuz?
|
28
|
+
send_me_reset_password_instructions: Parola yenileme talimatlarını gönder
|
29
|
+
registrations:
|
30
|
+
edit:
|
31
|
+
are_you_sure: Emin misiniz?
|
32
|
+
cancel_my_account: Hesabımı iptal et
|
33
|
+
leave_blank_if_you_don_t_want_to_change_it: değiştirmek istemiyorsanız boş bırakın
|
34
|
+
title: ! '%{resource} düzenle'
|
35
|
+
we_need_your_current_password_to_confirm_your_changes: değişikleri onaylamak için şu anki parolanız gerekli
|
36
|
+
new:
|
37
|
+
sign_up: Kaydol
|
38
|
+
sessions:
|
39
|
+
new:
|
40
|
+
sign_in: Giriş yap
|
41
|
+
shared:
|
42
|
+
links:
|
43
|
+
didn_t_receive_confirmation_instructions: Onaylama talimatlarını almadınız mı?
|
44
|
+
didn_t_receive_unlock_instructions: Hesap geri açma talimatlarını almadınız mı?
|
45
|
+
forgot_your_password: Parolanızı mı unuttunuz?
|
46
|
+
sign_in: Giriş yap
|
47
|
+
sign_in_with_provider: ! '%{provider} ile giriş yap'
|
48
|
+
sign_up: Kaydol
|
49
|
+
unlocks:
|
50
|
+
new:
|
51
|
+
resend_unlock_instructions: Hesap geri açma talimatlarını tekrar gönder
|
@@ -0,0 +1,57 @@
|
|
1
|
+
zh-CN:
|
2
|
+
devise:
|
3
|
+
confirmations:
|
4
|
+
new:
|
5
|
+
resend_confirmation_instructions: 重新发送确认指示
|
6
|
+
mailer:
|
7
|
+
confirmation_instructions:
|
8
|
+
action: 确认我的帐户
|
9
|
+
greeting: 欢迎 %{recipient}!
|
10
|
+
instruction: ! '您可以通过下面的链接确认您的帐户的电子邮件:'
|
11
|
+
subject: 确认指示
|
12
|
+
reset_password_instructions:
|
13
|
+
action: 更改我的密码
|
14
|
+
greeting: 你好 %{recipient}!
|
15
|
+
instruction: 有人要求更改密码的链接,并通过下面的链接,你可以做到这一点。
|
16
|
+
instruction_2: 如果你没有要求,请忽略此电子邮件。
|
17
|
+
instruction_3: 您的密码将不会改变,直到你访问上面的链接,并创建一个新的。
|
18
|
+
subject: 重设密码的说明
|
19
|
+
unlock_instructions:
|
20
|
+
action: 帐户解锁
|
21
|
+
greeting: 你好 %{recipient}!
|
22
|
+
instruction: ! '点击下面的链接到您的帐户解锁:'
|
23
|
+
message: 您的帐户已被锁定由于过量的不成功的登录尝试。
|
24
|
+
subject: 解锁说明
|
25
|
+
passwords:
|
26
|
+
new:
|
27
|
+
forgot_your_password: 忘记密码?
|
28
|
+
send_me_reset_password_instructions: 给我发送重设密码的说明
|
29
|
+
edit:
|
30
|
+
change_your_password: 更改您的密码
|
31
|
+
new_password: 新密码
|
32
|
+
confirm_new_password: 确认新密码
|
33
|
+
change_my_password: 更改我的密码
|
34
|
+
registrations:
|
35
|
+
edit:
|
36
|
+
are_you_sure: 你确定吗?
|
37
|
+
cancel_my_account: 取消我的帐户
|
38
|
+
leave_blank_if_you_don_t_want_to_change_it: 你不想去改变它,不需要填写
|
39
|
+
title: 修改 %{resource}
|
40
|
+
we_need_your_current_password_to_confirm_your_changes: 我们需要您的当前密码以确认您的更改
|
41
|
+
update: 更新
|
42
|
+
new:
|
43
|
+
sign_up: 注册
|
44
|
+
sessions:
|
45
|
+
new:
|
46
|
+
sign_in: 登录
|
47
|
+
shared:
|
48
|
+
links:
|
49
|
+
didn_t_receive_confirmation_instructions: 没有收到确认指令?
|
50
|
+
didn_t_receive_unlock_instructions: 没有收到解锁指令?
|
51
|
+
forgot_your_password: 忘记密码?
|
52
|
+
sign_in: 登录
|
53
|
+
sign_in_with_provider: 用 %{provider} 登录
|
54
|
+
sign_up: 注册
|
55
|
+
unlocks:
|
56
|
+
new:
|
57
|
+
resend_unlock_instructions: 重发解锁指示
|
@@ -0,0 +1,57 @@
|
|
1
|
+
zh-TW:
|
2
|
+
devise:
|
3
|
+
confirmations:
|
4
|
+
new:
|
5
|
+
resend_confirmation_instructions: '重新發送確認信'
|
6
|
+
mailer:
|
7
|
+
confirmation_instructions:
|
8
|
+
action: '確認帳號'
|
9
|
+
greeting: '%{recipient} 你好!'
|
10
|
+
instruction: ! '您可以利用下面的連結確認您的帳戶的電子郵件:'
|
11
|
+
subject: '確認帳號的說明'
|
12
|
+
reset_password_instructions:
|
13
|
+
action: '更改我的密碼'
|
14
|
+
greeting: '你好 %{recipient}!'
|
15
|
+
instruction: '有人要求更改密碼的連結,你可以利用下面的連結更改密碼。'
|
16
|
+
instruction_2: '如果你沒有要求,請忽略此電子郵件。'
|
17
|
+
instruction_3: '如果你沒有進入上面的連結,並建立新的密碼,你的密碼不會被改變。'
|
18
|
+
subject: '重設密碼的說明'
|
19
|
+
unlock_instructions:
|
20
|
+
action: '帳戶解鎖'
|
21
|
+
greeting: '你好 %{recipient}!'
|
22
|
+
instruction: ! '點擊下面的連結到您的帳戶進行解鎖:'
|
23
|
+
message: '由於多次的不成功的登入嘗試,您的帳戶已被鎖定。'
|
24
|
+
subject: '帳戶解鎖說明'
|
25
|
+
passwords:
|
26
|
+
new:
|
27
|
+
forgot_your_password: '忘記密碼?'
|
28
|
+
send_me_reset_password_instructions: '請寄重設密碼的說明信件給我'
|
29
|
+
edit:
|
30
|
+
change_your_password: '更改您的密碼'
|
31
|
+
new_password: '新密碼'
|
32
|
+
confirm_new_password: '確認新密碼'
|
33
|
+
change_my_password: '更改我的密碼'
|
34
|
+
registrations:
|
35
|
+
edit:
|
36
|
+
are_you_sure: '你確定嗎?'
|
37
|
+
cancel_my_account: '取消我的帳戶'
|
38
|
+
leave_blank_if_you_don_t_want_to_change_it: '不想修改的話就不需要填寫這個欄位'
|
39
|
+
title: '修改 %{resource}'
|
40
|
+
we_need_your_current_password_to_confirm_your_changes: '我們需要您的目前的密碼以確認您的更改'
|
41
|
+
update: '更新'
|
42
|
+
new:
|
43
|
+
sign_up: '註冊'
|
44
|
+
sessions:
|
45
|
+
new:
|
46
|
+
sign_in: '登入'
|
47
|
+
shared:
|
48
|
+
links:
|
49
|
+
didn_t_receive_confirmation_instructions: '沒有收到確認信件?'
|
50
|
+
didn_t_receive_unlock_instructions: '沒有收到解鎖信件?'
|
51
|
+
forgot_your_password: '忘記密碼?'
|
52
|
+
sign_in: '登入'
|
53
|
+
sign_in_with_provider: '用 %{provider} 登入'
|
54
|
+
sign_up: '註冊'
|
55
|
+
unlocks:
|
56
|
+
new:
|
57
|
+
resend_unlock_instructions: '重發解鎖說明信件'
|
data/config/routes.rb
ADDED
@@ -0,0 +1,42 @@
|
|
1
|
+
class DeviseCreateIdentityUsers < ActiveRecord::Migration
|
2
|
+
def change
|
3
|
+
create_table(:identity_users) do |t|
|
4
|
+
# To enable/disable users from admin area
|
5
|
+
t.boolean :active, null: false, default: true
|
6
|
+
|
7
|
+
## Database authenticatable
|
8
|
+
t.string :email, null: false, default: ""
|
9
|
+
t.string :encrypted_password, null: false, default: ""
|
10
|
+
|
11
|
+
## Recoverable
|
12
|
+
t.string :reset_password_token
|
13
|
+
t.datetime :reset_password_sent_at
|
14
|
+
|
15
|
+
## Rememberable
|
16
|
+
t.datetime :remember_created_at
|
17
|
+
|
18
|
+
## Trackable
|
19
|
+
t.integer :sign_in_count, default: 0, null: false
|
20
|
+
t.datetime :current_sign_in_at
|
21
|
+
t.datetime :last_sign_in_at
|
22
|
+
t.string :current_sign_in_ip
|
23
|
+
t.string :last_sign_in_ip
|
24
|
+
|
25
|
+
## Confirmable
|
26
|
+
t.string :confirmation_token
|
27
|
+
t.datetime :confirmed_at
|
28
|
+
t.datetime :confirmation_sent_at
|
29
|
+
t.string :unconfirmed_email # Only if using reconfirmable
|
30
|
+
|
31
|
+
## Omniauthable
|
32
|
+
t.string :provider
|
33
|
+
t.string :uid
|
34
|
+
|
35
|
+
t.timestamps null: true
|
36
|
+
end
|
37
|
+
|
38
|
+
add_index :identity_users, :email, unique: true
|
39
|
+
add_index :identity_users, :reset_password_token, unique: true
|
40
|
+
add_index :identity_users, :confirmation_token, unique: true
|
41
|
+
end
|
42
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
class RolifyCreateIdentityRoles < ActiveRecord::Migration
|
2
|
+
def change
|
3
|
+
create_table(:identity_roles) do |t|
|
4
|
+
t.string :name
|
5
|
+
t.references :resource, :polymorphic => true
|
6
|
+
|
7
|
+
t.timestamps null: true
|
8
|
+
end
|
9
|
+
|
10
|
+
create_table(:identity_users_identity_roles, :id => false) do |t|
|
11
|
+
t.references :user
|
12
|
+
t.references :role
|
13
|
+
end
|
14
|
+
|
15
|
+
add_index(:identity_roles, :name)
|
16
|
+
add_index(:identity_roles, [ :name, :resource_type, :resource_id ])
|
17
|
+
add_index(:identity_users_identity_roles, [ :user_id, :role_id ])
|
18
|
+
end
|
19
|
+
end
|
@@ -0,0 +1 @@
|
|
1
|
+
require_relative "../identity"
|
@@ -0,0 +1,8 @@
|
|
1
|
+
module Identity
|
2
|
+
class LocalesGenerator < Rails::Generators::NamedBase
|
3
|
+
source_root File.expand_path('../../../../config/locales', __FILE__)
|
4
|
+
def copy_locale
|
5
|
+
copy_file("#{name}.yml", Rails.root.join("config", "locales", "whoami.views.#{name}.yml"))
|
6
|
+
end
|
7
|
+
end
|
8
|
+
end
|
data/lib/identity.rb
ADDED
@@ -0,0 +1,50 @@
|
|
1
|
+
require "identity/engine"
|
2
|
+
|
3
|
+
|
4
|
+
module Identity
|
5
|
+
mattr_accessor :devise_modules do
|
6
|
+
[
|
7
|
+
:database_authenticatable,
|
8
|
+
:registerable,
|
9
|
+
:recoverable,
|
10
|
+
:rememberable,
|
11
|
+
:trackable,
|
12
|
+
:validatable
|
13
|
+
]
|
14
|
+
end
|
15
|
+
|
16
|
+
mattr_accessor(:layout) { 'application' }
|
17
|
+
mattr_accessor(:auth_routes) { true }
|
18
|
+
mattr_accessor(:admin_namespace) { :identity }
|
19
|
+
mattr_accessor(:admin_role) { :admin }
|
20
|
+
|
21
|
+
def self.admins_method
|
22
|
+
:"#{admin_role.to_s.pluralize}"
|
23
|
+
end
|
24
|
+
|
25
|
+
def self.admin_predicate
|
26
|
+
:"#{admin_role}?"
|
27
|
+
end
|
28
|
+
|
29
|
+
def self.setup
|
30
|
+
yield self
|
31
|
+
end
|
32
|
+
|
33
|
+
def self.method_missing(name, *args, &block)
|
34
|
+
if delegate_to_devise?(name.to_s)
|
35
|
+
Devise.public_send(name, *args, &block)
|
36
|
+
else
|
37
|
+
super
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
def self.delegate_to_devise?(name)
|
42
|
+
name.in? %w(omniauth) ||
|
43
|
+
name.ends_with?('=') && Devise.respond_to?(name)
|
44
|
+
end
|
45
|
+
|
46
|
+
def self.respond_to_missing?(name, include_private = false)
|
47
|
+
(name.to_s.ends_with?('=') && Devise.respond_to?(name, include_private)) || super
|
48
|
+
end
|
49
|
+
|
50
|
+
end
|