Show previous usernames to members; link to actual change requests.

This commit is contained in:
evazion
2017-01-11 13:07:39 -06:00
parent 87bcc07fae
commit 1f325c19da
4 changed files with 15 additions and 4 deletions

View File

@@ -89,6 +89,7 @@ class User < ActiveRecord::Base
has_many :dmails, lambda {order("dmails.id desc")}, :foreign_key => "owner_id"
has_many :saved_searches
has_many :forum_posts, lambda {order("forum_posts.created_at")}, :foreign_key => "creator_id"
has_many :user_name_change_requests, lambda {visible.order("user_name_change_requests.created_at desc")}
belongs_to :inviter, :class_name => "User"
after_update :create_mod_action
accepts_nested_attributes_for :dmail_filter

View File

@@ -18,6 +18,16 @@ class UserNameChangeRequest < ActiveRecord::Base
def self.approved
where(:status => "approved")
end
def self.visible
if CurrentUser.is_admin?
all
elsif CurrentUser.is_member?
where("user_name_change_requests.status = 'approved' OR user_name_change_requests.user_id = ?", CurrentUser.id)
else
none
end
end
def rejected?
status == "rejected"

View File

@@ -233,7 +233,7 @@ class UserPresenter
end
end
def previous_names
UserNameChangeRequest.approved.where("user_id = ?", user.id).map(&:original_name).join(", ")
def previous_names(template)
user.user_name_change_requests.map { |req| template.link_to req.original_name, req }.join(", ").html_safe
end
end

View File

@@ -138,10 +138,10 @@
</td>
</tr>
<% if CurrentUser.is_moderator? && presenter.previous_names.present? %>
<% if presenter.previous_names(self).present? %>
<tr>
<th>Previous Names</th>
<td><%= presenter.previous_names %></td>
<td><%= presenter.previous_names(self) %></td>
</tr>
<% end %>