-<% @title = t ".title", :name => h(@user_block.user.display_name) %>
+<% @title = t ".title", :name => @user_block.user.display_name %>
+
+<% content_for :heading_class, "pb-0" %>
<% content_for :heading do %>
- <h1><%= raw t(".title",
- :name => link_to(h(@user_block.user.display_name),
- user_path(@user_block.user))) %></h1>
- <ul class='secondary-actions clearfix'>
- <li><%= link_to t(".show"), @user_block %></li>
- <li><%= link_to t(".back"), user_blocks_path %></li>
- </ul>
+ <h1><%= t(".heading_html", :name => link_to(@user_block.user.display_name, @user_block.user)) %></h1>
+ <%= render :partial => "navigation" %>
<% end %>
-<%= form_for(@user_block) do |f| %>
- <%= f.error_messages %>
+<%= bootstrap_form_for(@user_block) do |f| %>
+ <%= f.richtext_field :reason, :cols => 80, :rows => 20, :format => @user_block.reason_format %>
+
+ <% if @user_block.active? && @user_block.creator == current_user %>
+ <%= f.form_group do %>
+ <%= label_tag "user_block_period", t(".period"), :class => "form-label" %>
+ <%= select_tag "user_block_period",
+ options_for_select(UserBlock::PERIODS.collect { |h| [block_duration_in_words(h.hours), h.to_s] },
+ UserBlock::PERIODS.min_by { |h| (params[:user_block_period].to_i - h).abs }),
+ :class => "form-select" %>
+ <% end %>
+
+ <%= f.form_group :needs_view do %>
+ <%= f.check_box :needs_view %>
+ <% end %>
+ <% else %>
+ <div class="alert alert-info">
+ <% if @user_block.active? %>
+ <%= t "user_blocks.update.only_creator_can_edit_without_revoking" %>
+ <% else %>
+ <%= t "user_blocks.update.inactive_block_cannot_be_reactivated" %>
+ <% end %>
+ </div>
+
+ <%= hidden_field_tag "user_block_period", 0 %>
+ <%= hidden_field_tag "user_block[needs_view]", false %>
+ <% end %>
- <p>
- <%= f.label :reason, t(".reason", :name => h(@user_block.user.display_name)) %><br />
- <%= richtext_area :user_block, :reason, :cols => 80, :rows => 20, :format => @user_block.reason_format %>
- </p>
- <p>
- <%= label_tag "user_block_period", t(".period") %><br />
- <%= select_tag("user_block_period", options_for_select(UserBlock::PERIODS.collect { |h| [block_duration_in_words(h.hours), h.to_s] }, params[:user_block_period])) %>
- </p>
- <p>
- <%= f.check_box :needs_view %>
- <%= f.label :needs_view, t(".needs_view") %>
- </p>
- <p>
- <%= f.submit t(".submit") %>
- </p>
+ <%= f.primary %>
<% end %>