summaryrefslogtreecommitdiff
path: root/app/views/users
diff options
context:
space:
mode:
Diffstat (limited to 'app/views/users')
-rw-r--r--app/views/users/edit.html.erb106
-rw-r--r--app/views/users/new.html.erb56
-rw-r--r--app/views/users/show.html.erb24
3 files changed, 110 insertions, 76 deletions
diff --git a/app/views/users/edit.html.erb b/app/views/users/edit.html.erb
index 1763394d..8a5900ce 100644
--- a/app/views/users/edit.html.erb
+++ b/app/views/users/edit.html.erb
@@ -8,67 +8,83 @@
8 <% end %> 8 <% end %>
9 9
10 <%= form_for @user do |f| %> 10 <%= form_for @user do |f| %>
11 <div class="layout_row_label"><%= t("users.labels.login") %></div> 11 <div class="layout_row">
12 <div class="layout_row_content"><%= f.text_field :login, :autocomplete => "username" %></div> 12 <div class="layout_row_label"><%= t("users.labels.login") %></div>
13 <div class="layout_row_content"><%= f.text_field :login, :autocomplete => "username" %></div>
14 </div>
13 15
14 <div class="layout_row_label"><%= t("users.labels.email") %></div> 16 <div class="layout_row">
15 <div class="layout_row_content"><%= f.text_field :email %></div> 17 <div class="layout_row_label"><%= t("users.labels.email") %></div>
18 <div class="layout_row_content"><%= f.text_field :email %></div>
19 </div>
16 20
17 <div class="layout_row_label"><%= t("users.labels.password") %></div> 21 <div class="layout_row">
18 <div class="layout_row_content"><%= f.password_field :password, :autocomplete => "new-password" %></div> 22 <div class="layout_row_label"><%= t("users.labels.password") %></div>
23 <div class="layout_row_content"><%= f.password_field :password, :autocomplete => "new-password" %></div>
24 </div>
19 25
20 <div class="layout_row_label"><%= t("users.labels.confirm") %></div> 26 <div class="layout_row">
21 <div class="layout_row_content"><%= f.password_field :password_confirmation, :autocomplete => "new-password" %></div> 27 <div class="layout_row_label"><%= t("users.labels.confirm") %></div>
28 <div class="layout_row_content"><%= f.password_field :password_confirmation, :autocomplete => "new-password" %></div>
29 </div>
22 30
23 <% if current_user.is_admin? %> 31 <% if current_user.is_admin? %>
24 <div class="layout_row_label"><%= t("users.labels.roles") %></div> 32 <div class="layout_row">
25 <div class="layout_row_content"> 33 <div class="layout_row_label"><%= t("users.labels.roles") %></div>
26 <% User::ROLES.each do |role| %> 34 <div class="layout_row_content">
27 <label class="role_choice"> 35 <% User::ROLES.each do |role| %>
28 <%= check_box_tag "user[roles][]", role, @user.roles.include?(role), 36 <label class="role_choice">
29 :id => "user_roles_#{role}" %> 37 <%= check_box_tag "user[roles][]", role, @user.roles.include?(role),
30 <%= t("users.roles.#{role}") %> 38 :id => "user_roles_#{role}" %>
31 <span class="field_hint"><%= t("users.role_hints.#{role}") %></span> 39 <%= t("users.roles.#{role}") %>
32 </label> 40 <span class="field_hint"><%= t("users.role_hints.#{role}") %></span>
33 <% end %> 41 </label>
34 <%= hidden_field_tag "user[roles][]", "" %> 42 <% end %>
43 <%= hidden_field_tag "user[roles][]", "" %>
44 </div>
35 </div> 45 </div>
36 <% end %> 46 <% end %>
37 47
38 <div class="layout_row_label"></div> 48 <div class="layout_row">
39 <div class="layout_row_content"><%= submit_tag t(".update") %></div> 49 <div class="layout_row_label"></div>
50 <div class="layout_row_content"><%= submit_tag t(".update") %></div>
51 </div>
40 <% end %> 52 <% end %>
41 53
42 <% if @user == current_user %> 54 <% if @user == current_user %>
43 <div class="layout_row_label"><%= t(".second_factor") %></div> 55 <div class="layout_row">
44 <div class="layout_row_content"> 56 <div class="layout_row_label"><%= t(".second_factor") %></div>
45 <% if current_user.otp_enrolled? %> 57 <div class="layout_row_content">
46 <p><%= t(".enabled") %></p> 58 <% if current_user.otp_enrolled? %>
47 <%= form_tag otp_enrollment_path, :method => :delete, :class => "otp_form" do %> 59 <p><%= t(".enabled") %></p>
48 <%= password_field_tag :current_password, nil, :placeholder => t(".current_password"), :autocomplete => "current-password" %> 60 <%= form_tag otp_enrollment_path, :method => :delete, :class => "otp_form" do %>
49 <%= text_field_tag :code, nil, :placeholder => t(".current_code"), 61 <%= password_field_tag :current_password, nil, :placeholder => t(".current_password"), :autocomplete => "current-password" %>
50 :autocomplete => "one-time-code", :inputmode => "numeric" %> 62 <%= text_field_tag :code, nil, :placeholder => t(".current_code"),
51 <%= button_tag :type => "submit", :class => "action_button" do %> 63 :autocomplete => "one-time-code", :inputmode => "numeric" %>
52 <%= icon("shield-off", library: "tabler", "aria-hidden": true) %> <%= t(".disable_second_factor") %> 64 <%= button_tag :type => "submit", :class => "action_button" do %>
65 <%= icon("shield-off", library: "tabler", "aria-hidden": true) %> <%= t(".disable_second_factor") %>
66 <% end %>
53 <% end %> 67 <% end %>
54 <% end %> 68 <% else %>
55 <% else %> 69 <p><%= t(".not_enrolled") %></p>
56 <p><%= t(".not_enrolled") %></p> 70 <%= form_tag otp_enrollment_path, :method => :post, :class => "otp_form" do %>
57 <%= form_tag otp_enrollment_path, :method => :post, :class => "otp_form" do %> 71 <%= password_field_tag :current_password, nil, :placeholder => t(".current_password"), :autocomplete => "current-password"%>
58 <%= password_field_tag :current_password, nil, :placeholder => t(".current_password"), :autocomplete => "current-password"%> 72 <%= button_tag :type => "submit", :class => "action_button" do %>
59 <%= button_tag :type => "submit", :class => "action_button" do %> 73 <%= icon("shield-lock", library: "tabler", "aria-hidden": true) %> <%= t(".enable_second_factor") %>
60 <%= icon("shield-lock", library: "tabler", "aria-hidden": true) %> <%= t(".enable_second_factor") %> 74 <% end %>
61 <% end %> 75 <% end %>
62 <% end %> 76 <% end %>
63 <% end %> 77 </div>
64 </div> 78 </div>
65 <% elsif current_user.is_admin? && @user.otp_enrolled? %> 79 <% elsif current_user.is_admin? && @user.otp_enrolled? %>
66 <div class="layout_row_label"><%= t(".second_factor") %></div> 80 <div class="layout_row">
67 <div class="layout_row_content"> 81 <div class="layout_row_label"><%= t(".second_factor") %></div>
68 <%= t(".enabled") %> 82 <div class="layout_row_content">
69 <%= button_to t(".reset_second_factor"), reset_otp_user_path(@user), :method => :put, 83 <%= t(".enabled") %>
70 :form_class => "button_to destructive", 84 <%= button_to t(".reset_second_factor"), reset_otp_user_path(@user), :method => :put,
71 :form => { :data => { :confirm => t(".reset_confirm", :login => @user.login) } } %> 85 :form_class => "button_to destructive",
86 :form => { :data => { :confirm => t(".reset_confirm", :login => @user.login) } } %>
87 </div>
72 </div> 88 </div>
73 <% end %> 89 <% end %>
74</div> 90</div>
diff --git a/app/views/users/new.html.erb b/app/views/users/new.html.erb
index 8d99fd92..13a238b5 100644
--- a/app/views/users/new.html.erb
+++ b/app/views/users/new.html.erb
@@ -8,34 +8,44 @@
8 8
9<div id="admin_layout"> 9<div id="admin_layout">
10 <%= form_for @user do |f| %> 10 <%= form_for @user do |f| %>
11 <div id="content"> 11 <div class="layout_row">
12 <div class="layout_row_label"><%= t("users.labels.login") %></div> 12 <div class="layout_row_label"><%= t("users.labels.login") %></div>
13 <div class="layout_row_content"><%= f.text_field :login %></div> 13 <div class="layout_row_content"><%= f.text_field :login %></div>
14 </div>
14 15
15 <div class="layout_row_label"><%= t("users.labels.email") %></div> 16 <div class="layout_row">
16 <div class="layout_row_content"><%= f.text_field :email %></div> 17 <div class="layout_row_label"><%= t("users.labels.email") %></div>
18 <div class="layout_row_content"><%= f.text_field :email %></div>
19 </div>
17 20
18 <div class="layout_row_label"><%= t("users.labels.password") %></div> 21 <div class="layout_row">
19 <div class="layout_row_content"><%= f.password_field :password %></div> 22 <div class="layout_row_label"><%= t("users.labels.password") %></div>
23 <div class="layout_row_content"><%= f.password_field :password %></div>
24 </div>
20 25
21 <div class="layout_row_label"><%= t("users.labels.confirm") %></div> 26 <div class="layout_row">
22 <div class="layout_row_content"><%= f.password_field :password_confirmation %></div> 27 <div class="layout_row_label"><%= t("users.labels.confirm") %></div>
28 <div class="layout_row_content"><%= f.password_field :password_confirmation %></div>
29 </div>
23 30
24 <div class="layout_row_label"><%= t("users.labels.roles") %></div> 31 <div class="layout_row">
25 <div class="layout_row_content"> 32 <div class="layout_row_label"><%= t("users.labels.roles") %></div>
26 <% User::ROLES.each do |role| %> 33 <div class="layout_row_content">
27 <label class="role_choice"> 34 <% User::ROLES.each do |role| %>
28 <%= check_box_tag "user[roles][]", role, @user.roles.include?(role), 35 <label class="role_choice">
29 :id => "user_roles_#{role}" %> 36 <%= check_box_tag "user[roles][]", role, @user.roles.include?(role),
30 <%= t("users.roles.#{role}") %> 37 :id => "user_roles_#{role}" %>
31 <span class="field_hint"><%= t("users.role_hints.#{role}") %></span> 38 <%= t("users.roles.#{role}") %>
32 </label> 39 <span class="field_hint"><%= t("users.role_hints.#{role}") %></span>
33 <% end %> 40 </label>
34 <%= hidden_field_tag "user[roles][]", "" %> 41 <% end %>
42 <%= hidden_field_tag "user[roles][]", "" %>
43 </div>
35 </div> 44 </div>
36 45
37 <div class="layout_row_label"></div> 46 <div class="layout_row">
38 <div class="layout_row_content"><%= f.submit t("admin.common.create") %></div> 47 <div class="layout_row_label"></div>
48 <div class="layout_row_content"><%= f.submit t("admin.common.create") %></div>
49 </div>
39 <% end %> 50 <% end %>
40 </div>
41</div> 51</div>
diff --git a/app/views/users/show.html.erb b/app/views/users/show.html.erb
index 2685a15b..9879e171 100644
--- a/app/views/users/show.html.erb
+++ b/app/views/users/show.html.erb
@@ -1,7 +1,7 @@
1<div id="admin_layout"> 1<div id="admin_layout">
2 <h1><%= @user.login %></h1> 2 <h1><%= @user.login %></h1>
3 3
4 <div id="content"> 4 <div class="layout_row">
5 <div class="layout_row_label"><%= t("admin.columns.actions") %></div> 5 <div class="layout_row_label"><%= t("admin.columns.actions") %></div>
6 <div class="layout_row_content info_group"> 6 <div class="layout_row_content info_group">
7 <div class="info_group_items"> 7 <div class="info_group_items">
@@ -12,25 +12,33 @@
12 </div> 12 </div>
13 </div> 13 </div>
14 </div> 14 </div>
15 </div>
15 16
17 <div class="layout_row">
16 <div class="layout_row_label"><%= t("users.labels.login") %></div> 18 <div class="layout_row_label"><%= t("users.labels.login") %></div>
17 <div class="layout_row_content"><%= @user.login %></div> 19 <div class="layout_row_content"><%= @user.login %></div>
20 </div>
18 21
22 <div class="layout_row">
19 <div class="layout_row_label"><%= t("users.labels.email") %></div> 23 <div class="layout_row_label"><%= t("users.labels.email") %></div>
20 <div class="layout_row_content"><%= @user.email %></div> 24 <div class="layout_row_content"><%= @user.email %></div>
25 </div>
21 26
27 <div class="layout_row">
22 <div class="layout_row_label"><%= t("users.labels.roles") %></div> 28 <div class="layout_row_label"><%= t("users.labels.roles") %></div>
23 <div class="layout_row_content"> 29 <div class="layout_row_content">
24 <%= @user.roles.any? ? @user.role_labels.join(", ") : t("users.no_roles") %> 30 <%= @user.roles.any? ? @user.role_labels.join(", ") : t("users.no_roles") %>
25 </div> 31 </div>
26 </div> 32 </div>
27 33
28 <div class="layout_row_label"><%= t("users.labels.last_login") %></div> 34 <div class="layout_row">
29 <div class="layout_row_content"> 35 <div class="layout_row_label"><%= t("users.labels.last_login") %></div>
30 <% if @user.last_login_at %> 36 <div class="layout_row_content">
31 <%= admin_date(@user.last_login_at) %> 37 <% if @user.last_login_at %>
32 <% else %> 38 <%= admin_date(@user.last_login_at) %>
33 <%= t("users.never_signed_in") %> 39 <% else %>
34 <% end %> 40 <%= t("users.never_signed_in") %>
41 <% end %>
42 </div>
35 </div> 43 </div>
36</div> 44</div>