sorting for browse

This commit is contained in:
Kyle Drake 2013-07-14 23:34:51 -04:00
parent 63957c225e
commit ce59bbac9b
2 changed files with 54 additions and 9 deletions

17
app.rb
View file

@ -36,9 +36,22 @@ end
get '/browse' do
@current_page = params[:current_page] || 1
@current_page = @current_page.to_i
site_dataset = Site.order(:updated_at.desc, :hits.desc).filter(is_banned: false).filter(site_changed: true).paginate(@current_page, 300)
site_dataset.filter! is_nsfw: (!params[:is_nsfw].nil? ? true : false)
site_dataset = Site.filter(is_banned: false).filter(site_changed: true).paginate(@current_page, 2) # 300
case params[:sort_by]
when 'hits'
site_dataset.order!(:hits.desc)
when 'newest'
site_dataset.order!(:created_at.desc)
when 'oldest'
site_dataset.order!(:created_at.desc)
else
params[:sort_by] = 'last_updated'
site_dataset.order!(:updated_at.desc, :hits.desc)
end
site_dataset.filter!(is_nsfw: true) if params[:is_nsfw] == 'true'
@page_count = site_dataset.page_count || 1
@sites = site_dataset.all