Vote #81588
完了Password and Confirmation fields are marked as required when editing a user
0%
説明
Password and Confirmation are marked as required in UsersController#edit page. However, in actuality, those fields are only required when creating a new user, not when editing a user.
One of my customers misunderstood that the fields are required and they always set a new password when they edit a user's information.
"*" marks that indicate Password and Confirmation fields are required should be removed when editing a user in order to avoid such confusion.
!{width: 400px; border: 1px solid grey;}.marked-as-required.png!
journals
The following patch fixes the issue.
<pre><code class="diff">
diff --git a/app/views/users/_form.html.erb b/app/views/users/_form.html.erb
index 4b030d920..0d50d3d56 100644
--- a/app/views/users/_form.html.erb
+++ b/app/views/users/_form.html.erb
@@ -32,13 +32,13 @@
<% end %>
<div id="password_fields" style="<%= 'display:none;' if @user.auth_source %>">
<p>
- <%= f.password_field :password, :required => true, :size => 25 %>
+ <%= f.password_field :password, :required => @user.new_record?, :size => 25 %>
<em class="info"><%= l(:text_caracters_minimum, :count => Setting.password_min_length) %></em>
<% if Setting.password_required_char_classes.any? %>
<em class="info"><%= l(:text_characters_must_contain, :character_classes => Setting.password_required_char_classes.collect{|c| l("label_password_char_class_#{c}")}.join(", ")) %></em>
<% end %>
</p>
- <p><%= f.password_field :password_confirmation, :required => true, :size => 25 %></p>
+ <p><%= f.password_field :password_confirmation, :required => @user.new_record?, :size => 25 %></p>
<p><%= f.check_box :generate_password %></p>
<p><%= f.check_box :must_change_passwd %></p>
</div>
</code></pre>
--------------------------------------------------------------------------------
Added test code.
--------------------------------------------------------------------------------
Looks good to me. Thanks!
--------------------------------------------------------------------------------
Setting the target version to 4.1.5.
--------------------------------------------------------------------------------
Committed the patch.
--------------------------------------------------------------------------------