diff --git a/app/assets/stylesheets/specific/users.css.scss b/app/assets/stylesheets/specific/users.css.scss
index 5a82d54bf..11c85bf97 100644
--- a/app/assets/stylesheets/specific/users.css.scss
+++ b/app/assets/stylesheets/specific/users.css.scss
@@ -2,26 +2,22 @@
div#c-users {
div#a-show {
- div.grid {
- div.col {
- float: left;
- width: 50%;
+ div.box {
+ h2, h3 {
+ color: #333;
}
- div.box {
- clear: both;
- margin-bottom: 2em;
- }
-
- /* clearfix hacks */
- div.box:before, div.box:after {
- content: "";
- display: table;
- }
-
- div.box:after {
- clear: both;
- }
+ margin-bottom: 2em;
+ }
+
+ /* clearfix hacks */
+ div.box:before, div.box:after {
+ content: "";
+ display: table;
+ }
+
+ div.box:after {
+ clear: both;
}
dl {
diff --git a/app/presenters/user_presenter.rb b/app/presenters/user_presenter.rb
index d330743a9..a8914e5de 100644
--- a/app/presenters/user_presenter.rb
+++ b/app/presenters/user_presenter.rb
@@ -37,6 +37,10 @@ class UserPresenter
Post.where("id in (?)", subscription.post_id_array.slice(0, 6).map(&:to_i)).order("id desc")
end
+ def tag_links_for_subscription(template, subscription)
+ subscription.tag_query_array.map {|x| template.link_to(x.tr("_", " "), template.posts_path(:tags => x))}.join(", ").html_safe
+ end
+
def upload_limit
deleted_count = Post.for_user(user.id).deleted.count
pending_count = Post.for_user(user.id).pending.count
diff --git a/app/views/users/_post_summary.html.erb b/app/views/users/_post_summary.html.erb
new file mode 100644
index 000000000..3c670d8d1
--- /dev/null
+++ b/app/views/users/_post_summary.html.erb
@@ -0,0 +1,45 @@
+
+
<%= link_to "Uploads", posts_path(:tags => "user:#{user.name}") %>
+ <% if presenter.has_uploads? %>
+
+ <% presenter.uploads.each do |post| %>
+ <%= PostPresenter.preview(post) %>
+ <% end %>
+
+ <% else %>
+
None
+ <% end %>
+
+
+
+
<%= link_to "Favorites", posts_path(:tags => "fav:#{user.name}") %>
+ <% if presenter.has_favorites? %>
+
+ <% presenter.favorites.each do |post| %>
+ <%= PostPresenter.preview(post) %>
+ <% end %>
+
+ <% else %>
+
None
+ <% end %>
+
+
+
+
<%= link_to "Subscriptions", posts_path(:tags => "sub:#{user.name}") %>
+ <% presenter.subscriptions.each do |subscription| %>
+
+
+ <%= link_to subscription.pretty_name, posts_path(:tags => "sub:#{user.name}:#{subscription.name}") %>
+ –
+ <%= presenter.tag_links_for_subscription(self, subscription) %>
+
+
+
+ <% presenter.posts_for_subscription(subscription).each do |post| %>
+ <%= PostPresenter.preview(post) %>
+ <% end %>
+
+
+
+ <% end %>
+
diff --git a/app/views/users/_statistics.html.erb b/app/views/users/_statistics.html.erb
new file mode 100644
index 000000000..d25ffb0d1
--- /dev/null
+++ b/app/views/users/_statistics.html.erb
@@ -0,0 +1,54 @@
+
+
Statistics
+
+ - Join Date
+ - <%= presenter.join_date %>
+
+ - Inviter
+ - <%= presenter.inviter(self) %>
+
+ - Level
+ - <%= presenter.level %>
+
+ <% if user.is_banned? %>
+ - Ban reason
+ - <%= presenter.ban_reason %>
+ <% end %>
+
+ - Upload Limit
+ - <%= presenter.upload_limit %>
+
+ - Uploads
+ - <%= presenter.upload_count(self) %>
+
+ - Deleted Uploads
+ - <%= presenter.deleted_upload_count(self) %>
+
+ - Favorites
+ - <%= presenter.favorite_count(self) %>
+
+ - Post Changes
+ - <%= presenter.post_version_count(self) %>
+
+ - Note Changes
+ - <%= presenter.note_version_count(self) %>
+
+ - Wiki Page Changes
+ - <%= presenter.wiki_page_version_count(self) %>
+
+ - Pool Changes
+ - <%= presenter.pool_version_count(self) %>
+
+ - Forum Posts
+ - <%= presenter.forum_post_count(self) %>
+
+ - Approvals
+ - <%= presenter.approval_count(self) %>
+
+ - Comments
+ - <%= presenter.comment_count(self) %>
+
+ - Feedback
+ - <%= presenter.feedbacks(self) %>
+
+
\ No newline at end of file
diff --git a/app/views/users/show.html.erb b/app/views/users/show.html.erb
index f8e18f5d9..210af07bb 100644
--- a/app/views/users/show.html.erb
+++ b/app/views/users/show.html.erb
@@ -2,106 +2,8 @@
<%= @presenter.name %>
-
-
-
-
<%= link_to "Uploads", posts_path(:tags => "user:#{@user.name}") %>
- <% if @presenter.has_uploads? %>
-
- <% @presenter.uploads.each do |post| %>
- <%= PostPresenter.preview(post) %>
- <% end %>
-
- <% else %>
-
None
- <% end %>
-
-
-
-
<%= link_to "Favorites", posts_path(:tags => "fav:#{@user.name}") %>
- <% if @presenter.has_favorites? %>
-
- <% @presenter.favorites.each do |post| %>
- <%= PostPresenter.preview(post) %>
- <% end %>
-
- <% else %>
-
None
- <% end %>
-
-
-
-
Subscriptions
- <% @presenter.subscriptions.each do |subscription| %>
-
-
<%= link_to subscription.pretty_name, posts_path(:tags => "sub:#{@user.name}:#{subscription.name}") %>
-
-
- <% @presenter.posts_for_subscription(subscription).each do |post| %>
- <%= PostPresenter.preview(post) %>
- <% end %>
-
-
-
- <% end %>
-
-
-
-
-
Statistics
-
- - Join Date
- - <%= @presenter.join_date %>
-
- - Inviter
- - <%= @presenter.inviter(self) %>
-
- - Level
- - <%= @presenter.level %>
-
- <% if @user.is_banned? %>
- - Ban reason
- - <%= @presenter.ban_reason %>
- <% end %>
-
- - Upload Limit
- - <%= @presenter.upload_limit %>
-
- - Uploads
- - <%= @presenter.upload_count(self) %>
-
- - Deleted Uploads
- - <%= @presenter.deleted_upload_count(self) %>
-
- - Favorites
- - <%= @presenter.favorite_count(self) %>
-
- - Post Changes
- - <%= @presenter.post_version_count(self) %>
-
- - Note Changes
- - <%= @presenter.note_version_count(self) %>
-
- - Wiki Page Changes
- - <%= @presenter.wiki_page_version_count(self) %>
-
- - Pool Changes
- - <%= @presenter.pool_version_count(self) %>
-
- - Forum Posts
- - <%= @presenter.forum_post_count(self) %>
-
- - Approvals
- - <%= @presenter.approval_count(self) %>
-
- - Comments
- - <%= @presenter.comment_count(self) %>
-
- - Feedback
- - <%= @presenter.feedbacks(self) %>
-
-
-
+ <%= render "statistics", :presenter => @presenter, :user => @user %>
+ <%= render "post_summary", :presenter => @presenter, :user => @user %>