From ad28a2cced60453e5ceedffbe797e0f8d2cd244a Mon Sep 17 00:00:00 2001 From: albert Date: Fri, 22 Feb 2013 15:16:54 -0500 Subject: [PATCH] alt layout for user profile --- .../stylesheets/specific/users.css.scss | 32 +++--- app/presenters/user_presenter.rb | 4 + app/views/users/_post_summary.html.erb | 45 ++++++++ app/views/users/_statistics.html.erb | 54 ++++++++++ app/views/users/show.html.erb | 102 +----------------- 5 files changed, 119 insertions(+), 118 deletions(-) create mode 100644 app/views/users/_post_summary.html.erb create mode 100644 app/views/users/_statistics.html.erb 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 %>