mirror of
https://github.com/tildeverse/lobsters
synced 2024-06-24 17:27:04 +00:00
style/wrapping
This commit is contained in:
parent
b3e6679da0
commit
8a3b133d87
|
@ -24,7 +24,9 @@ class HomeController < ApplicationController
|
|||
end
|
||||
|
||||
def hidden
|
||||
@stories, @show_more = get_from_cache(hidden: true) { paginate stories.hidden }
|
||||
@stories, @show_more = get_from_cache(hidden: true) {
|
||||
paginate stories.hidden
|
||||
}
|
||||
|
||||
@heading = @title = "Hidden Stories"
|
||||
@cur_url = "/hidden"
|
||||
|
@ -33,7 +35,9 @@ class HomeController < ApplicationController
|
|||
end
|
||||
|
||||
def index
|
||||
@stories, @show_more = get_from_cache(hottest: true) { paginate stories.hottest }
|
||||
@stories, @show_more = get_from_cache(hottest: true) {
|
||||
paginate stories.hottest
|
||||
}
|
||||
|
||||
@rss_link ||= { :title => "RSS 2.0",
|
||||
:href => "/rss#{@user ? "?token=#{@user.rss_token}" : ""}" }
|
||||
|
@ -55,7 +59,9 @@ class HomeController < ApplicationController
|
|||
end
|
||||
|
||||
def newest
|
||||
@stories, @show_more = get_from_cache(newest: true) { paginate stories.newest }
|
||||
@stories, @show_more = get_from_cache(newest: true) {
|
||||
paginate stories.newest
|
||||
}
|
||||
|
||||
@heading = @title = "Newest Stories"
|
||||
@cur_url = "/newest"
|
||||
|
@ -79,7 +85,9 @@ class HomeController < ApplicationController
|
|||
def newest_by_user
|
||||
by_user = User.where(:username => params[:user]).first!
|
||||
|
||||
@stories, @show_more = get_from_cache(by_user: by_user) { paginate stories.by_user(by_user) }
|
||||
@stories, @show_more = get_from_cache(by_user: by_user) {
|
||||
paginate stories.by_user(by_user)
|
||||
}
|
||||
|
||||
@heading = @title = "Newest Stories by #{by_user.username}"
|
||||
@cur_url = "/newest/#{by_user.username}"
|
||||
|
@ -91,14 +99,14 @@ class HomeController < ApplicationController
|
|||
end
|
||||
|
||||
def recent
|
||||
@stories, @show_more = get_from_cache(recent: true) do
|
||||
@stories, @show_more = get_from_cache(recent: true) {
|
||||
scope = if page == 1
|
||||
stories.recent
|
||||
else
|
||||
stories.newest
|
||||
end
|
||||
paginate scope
|
||||
end
|
||||
}
|
||||
|
||||
@heading = @title = "Recent Stories"
|
||||
@cur_url = "/recent"
|
||||
|
@ -113,7 +121,9 @@ class HomeController < ApplicationController
|
|||
def tagged
|
||||
@tag = Tag.where(:tag => params[:tag]).first!
|
||||
|
||||
@stories, @show_more = get_from_cache(tag: @tag) { paginate stories.tagged(@tag) }
|
||||
@stories, @show_more = get_from_cache(tag: @tag) {
|
||||
paginate stories.tagged(@tag)
|
||||
}
|
||||
|
||||
@heading = @title = @tag.description.blank?? @tag.tag : @tag.description
|
||||
@cur_url = tag_url(@tag.tag)
|
||||
|
@ -139,7 +149,9 @@ class HomeController < ApplicationController
|
|||
@cur_url << "/#{params[:length]}"
|
||||
end
|
||||
|
||||
@stories, @show_more = get_from_cache(top: true, length: length) { paginate stories.top(length) }
|
||||
@stories, @show_more = get_from_cache(top: true, length: length) {
|
||||
paginate stories.top(length)
|
||||
}
|
||||
|
||||
if length[:dur] > 1
|
||||
@heading = @title = "Top Stories of the Past #{length[:dur]} " <<
|
||||
|
@ -152,7 +164,6 @@ class HomeController < ApplicationController
|
|||
end
|
||||
|
||||
private
|
||||
|
||||
def filtered_tag_ids
|
||||
if @user
|
||||
@user.tag_filters.map{|tf| tf.tag_id }
|
||||
|
@ -177,7 +188,8 @@ private
|
|||
if Rails.env.development? || @user || tags_filtered_by_cookie.any?
|
||||
yield
|
||||
else
|
||||
key = opts.merge(page: page).sort.map{|k,v| "#{k}=#{v.to_param}" }.join(" ")
|
||||
key = opts.merge(page: page).sort.map{|k,v| "#{k}=#{v.to_param}"
|
||||
}.join(" ")
|
||||
Rails.cache.fetch("stories #{key}", :expires_in => 45, &block)
|
||||
end
|
||||
end
|
||||
|
|
|
@ -13,8 +13,7 @@ class StoriesPaginator
|
|||
.includes(:user, :taggings => :tag)
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
private
|
||||
def with_pagination_info(scope)
|
||||
scope = scope.to_a
|
||||
show_more = scope.count > STORIES_PER_PAGE
|
||||
|
|
|
@ -17,14 +17,18 @@ class StoryRepository
|
|||
|
||||
def hidden
|
||||
hidden = base_scope
|
||||
hidden = hidden.where(Story.arel_table[:id].in(hidden_arel)) if @user
|
||||
hidden = filter_tags hidden, @params[:exclude_tags] if @params[:exclude_tags].try(:any?)
|
||||
hidden.order('hotness')
|
||||
if @user
|
||||
hidden = hidden.where(Story.arel_table[:id].in(hidden_arel))
|
||||
end
|
||||
if @params[:exclude_tags].try(:any?)
|
||||
hidden = filter_tags hidden, @params[:exclude_tags]
|
||||
end
|
||||
hidden.order("hotness")
|
||||
end
|
||||
|
||||
def newest
|
||||
newest = filter_downvoted_and_tags base_scope
|
||||
newest.order('stories.created_at DESC')
|
||||
newest.order("stories.created_at DESC")
|
||||
end
|
||||
|
||||
def by_user(user)
|
||||
|
@ -47,7 +51,8 @@ class StoryRepository
|
|||
|
||||
if story_ids.length > StoriesPaginator::STORIES_PER_PAGE + 1
|
||||
# keep the top half (newest stories)
|
||||
keep_ids = story_ids[0 .. ((StoriesPaginator::STORIES_PER_PAGE + 1) * 0.5)]
|
||||
keep_ids = story_ids[0 .. ((StoriesPaginator::STORIES_PER_PAGE + 1) *
|
||||
0.5)]
|
||||
story_ids = story_ids[keep_ids.length - 1 ... story_ids.length]
|
||||
|
||||
# make the bottom half a random selection of older stories
|
||||
|
@ -61,7 +66,7 @@ class StoryRepository
|
|||
end
|
||||
end
|
||||
|
||||
stories.order('stories.created_at DESC')
|
||||
stories.order("stories.created_at DESC")
|
||||
end
|
||||
|
||||
def tagged(tag)
|
||||
|
@ -75,23 +80,27 @@ class StoryRepository
|
|||
)
|
||||
)
|
||||
)
|
||||
tagged.order('stories.created_at DESC')
|
||||
tagged.order("stories.created_at DESC")
|
||||
end
|
||||
|
||||
def top(length)
|
||||
top = base_scope.where("created_at >= (NOW() - INTERVAL #{length[:dur]} #{length[:intv].upcase})")
|
||||
top.order '(CAST(upvotes AS integer) - CAST(downvotes AS integer)) DESC'
|
||||
top = base_scope.where("created_at >= (NOW() - INTERVAL " <<
|
||||
"#{length[:dur]} #{length[:intv].upcase})")
|
||||
top.order("(CAST(upvotes AS integer) - CAST(downvotes AS integer)) DESC")
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
private
|
||||
def base_scope
|
||||
Story.unmerged.where(is_expired: false)
|
||||
end
|
||||
|
||||
def filter_downvoted_and_tags(scope)
|
||||
scope = filter_downvoted scope if @user
|
||||
scope = filter_tags scope, @params[:exclude_tags] if @params[:exclude_tags].try(:any?)
|
||||
if @user
|
||||
scope = filter_downvoted scope
|
||||
end
|
||||
if @params[:exclude_tags].try(:any?)
|
||||
scope = filter_tags scope, @params[:exclude_tags]
|
||||
end
|
||||
scope
|
||||
end
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user