fixed pool sidebar in post/show

This commit is contained in:
albert
2011-03-13 18:12:42 -04:00
parent 90a41a334b
commit 7571280d72
6 changed files with 1349 additions and 12 deletions

View File

@@ -91,16 +91,18 @@ class Pool < ActiveRecord::Base
end
def neighbor_posts(post)
post_ids =~ /\A#{post.id} (\d+)|(\d+) #{post.id} (\d+)|(\d+) #{post.id}\Z/
@neighbor_posts ||= begin
post_ids =~ /\A#{post.id} (\d+)|(\d+) #{post.id} (\d+)|(\d+) #{post.id}\Z/
if $2 && $3
{:previous => $2.to_i, :next => $3.to_i}
elsif $1
{:next => $1.to_i}
elsif $4
{:previous => $4.to_i}
else
nil
if $2 && $3
{:previous => $2.to_i, :next => $3.to_i}
elsif $1
{:next => $1.to_i}
elsif $4
{:previous => $4.to_i}
else
{}
end
end
end
@@ -116,6 +118,7 @@ class Pool < ActiveRecord::Base
def reload(options = {})
super
@neighbor_posts = nil
clear_post_id_array
end
end

View File

@@ -1,5 +1,17 @@
<ul>
<% post.pools.each do |pool| %>
<li><span class="ui-icon ui-icon-circle-arrow-w"></span><span class="ui-icon ui-icon-circle-arrow-e"></span> <%= link_to pool_path(pool), pool.name %></li>
<li>
<% if pool.neighbor_posts(post)[:previous] %>
<%= link_to "&laquo;".html_safe, post_path(pool.neighbor_posts(post)[:previous]) %>
<% else %>
&laquo;
<% end %>
<% if pool.neighbor_posts(post)[:next] %>
<%= link_to "&raquo;".html_safe, post_path(pool.neighbor_posts(post)[:next]) %>
<% else %>
&raquo;
<% end %>
<%= link_to pool.name, pool_path(pool) %>
</li>
<% end %>
</ul>

View File

@@ -7,9 +7,9 @@
</section>
<% if @post.pools.any? %>
<section>
<section id="pool-sidebar">
<h1>Pools</h1>
<%= render "posts/partials/show/pools", :locals => {:post => @post} %>
<%= render :partial => "posts/partials/show/pools", :locals => {:post => @post} %>
</section>
<% end %>

File diff suppressed because one or more lines are too long

View File

@@ -333,6 +333,10 @@ div#c-posts h1 {
font-size: 1.2em; }
div#c-posts h2 {
font-size: 1.1em; }
div#c-posts aside#sidebar > section#pool-sidebar span.ui-icon {
float: left;
margin-right: 0.25em;
color: #666; }
div#c-posts aside#sidebar > section > ul li {
list-style-type: none; }
div#c-posts aside#sidebar > section > ul ul li {

View File

@@ -527,6 +527,14 @@ div#c-posts {
font-size: 1.1em;
}
aside#sidebar > section#pool-sidebar {
span.ui-icon {
float: left;
margin-right: 0.25em;
color: #666;
}
}
aside#sidebar > section > ul li {
list-style-type: none;
}