views: convert mod dashboard + admin user edit page to simple form.
Fixes bug with the user level select dropdown on the mod dashboard page missing the builder level.
This commit is contained in:
@@ -4,7 +4,7 @@ module Moderator
|
||||
helper :post_flags, :post_appeals
|
||||
|
||||
def show
|
||||
@dashboard = Moderator::Dashboard::Report.new(params[:min_date] || 2.days.ago.to_date, params[:max_level] || 20)
|
||||
@dashboard = Moderator::Dashboard::Report.new(**search_params.to_h.symbolize_keys)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1,13 +0,0 @@
|
||||
module Admin::UsersHelper
|
||||
def user_level_select(object, field)
|
||||
options = [
|
||||
["Member", User::Levels::MEMBER],
|
||||
["Gold", User::Levels::GOLD],
|
||||
["Platinum", User::Levels::PLATINUM],
|
||||
["Builder", User::Levels::BUILDER],
|
||||
["Moderator", User::Levels::MODERATOR],
|
||||
["Admin", User::Levels::ADMIN]
|
||||
]
|
||||
select(object, field, options)
|
||||
end
|
||||
end
|
||||
@@ -1,16 +0,0 @@
|
||||
module Moderator
|
||||
module DashboardsHelper
|
||||
def user_level_select_tag(name, options = {})
|
||||
choices = [
|
||||
["", ""],
|
||||
["Member", 20],
|
||||
["Gold", 30],
|
||||
["Platinum", 31],
|
||||
["Moderator", 40],
|
||||
["Admin", 50]
|
||||
]
|
||||
|
||||
select_tag(name, options_for_select(choices, params[name].to_i), options)
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -3,9 +3,9 @@ module Moderator
|
||||
class Report
|
||||
attr_reader :min_date, :max_level
|
||||
|
||||
def initialize(min_date, max_level)
|
||||
@min_date = min_date.present? ? min_date.to_date : 1.week.ago
|
||||
@max_level = max_level.present? ? max_level.to_i : User::Levels::MEMBER
|
||||
def initialize(min_date: 1.week.ago.to_date, max_level: User::Levels::MEMBER)
|
||||
@min_date = min_date
|
||||
@max_level = max_level.to_i
|
||||
end
|
||||
|
||||
def artists
|
||||
|
||||
@@ -2,35 +2,13 @@
|
||||
<div id="a-edit">
|
||||
<h1>Edit User: <%= @user.name %></h1>
|
||||
|
||||
<%= form_tag(admin_user_path(@user), :method => :put, :class => "simple_form") do %>
|
||||
<%= hidden_field_tag "id", @user.id %>
|
||||
|
||||
<div class="input integer optional">
|
||||
<label for="user_level" class="optional">Level</label>
|
||||
<%= user_level_select(:user, :level) %>
|
||||
</div>
|
||||
|
||||
<div class="input">
|
||||
<label for="user_can_upload_free" class="optional">Unrestricted Uploads</label>
|
||||
<%= select(:user, :can_upload_free, [["Yes", true], ["No", false]]) %>
|
||||
</div>
|
||||
|
||||
<div class="input">
|
||||
<label for="user_can_approve_posts" class="optional">Approve Posts</label>
|
||||
<%= select(:user, :can_approve_posts, [["Yes", true], ["No", false]]) %>
|
||||
</div>
|
||||
|
||||
<div class="input">
|
||||
<label for="user_no_flagging" class="optional">Banned From Flagging</label>
|
||||
<%= select(:user, :no_flagging, [["Yes", true], ["No", false]]) %>
|
||||
</div>
|
||||
|
||||
<div class="input">
|
||||
<label for="user_no_feedback" class="optional">Banned From Giving Feedback</label>
|
||||
<%= select(:user, :no_feedback, [["Yes", true], ["No", false]]) %>
|
||||
</div>
|
||||
|
||||
<%= submit_tag "Update" %>
|
||||
<%= simple_form_for(@user, url: admin_user_path(@user), method: :put) do |f| %>
|
||||
<%= f.input :level, collection: User.level_hash.to_a, selected: @user.level %>
|
||||
<%= f.input :can_upload_free, label: "Unrestricted Uploads", as: :boolean, selected: @user.can_upload_free %>
|
||||
<%= f.input :can_approve_posts, label: "Approve Posts", as: :boolean, selected: @user.can_approve_posts %>
|
||||
<%= f.input :no_flagging, label: "Banned From Flagging", as: :boolean, selected: @user.no_flagging %>
|
||||
<%= f.input :no_feedback, label: "Banned From Giving Feedback", as: :boolean, selected: @user.no_feedback %>
|
||||
<%= f.submit "Update" %>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -1,13 +1,5 @@
|
||||
<%= form_tag(moderator_dashboard_path, :method => :get, :class => "simple_form") do %>
|
||||
<div class="input">
|
||||
<label for="min_date">Minimum Date</label>
|
||||
<%= text_field_tag :min_date, @dashboard.min_date %>
|
||||
</div>
|
||||
|
||||
<div class="input">
|
||||
<label for="max_level">Max Level</label>
|
||||
<%= user_level_select_tag(:max_level) %><br>
|
||||
</div>
|
||||
|
||||
<%= submit_tag "Search" %>
|
||||
<%= simple_form_for(:search, url: moderator_dashboard_path, method: :get) do |f| %>
|
||||
<%= f.input :min_date, as: :date, html5: true, input_html: { value: @dashboard.min_date } %>
|
||||
<%= f.input :max_level, collection: User.level_hash.to_a, include_blank: true, selected: @dashboard.max_level %>
|
||||
<%= f.submit "Search" %>
|
||||
<% end %>
|
||||
|
||||
Reference in New Issue
Block a user