upgrades ruby gems, related fixes

This commit is contained in:
Kyle Drake 2017-05-08 02:54:19 -07:00
parent 282ae9e45d
commit 31b864227a
7 changed files with 146 additions and 149 deletions

View file

@ -6,14 +6,14 @@ get '/browse/?' do
params.delete 'tag' if params[:tag].nil? || params[:tag].strip.empty?
if is_education?
site_dataset = education_sites_dataset
ds = education_sites_dataset
else
site_dataset = browse_sites_dataset
ds = browse_sites_dataset
end
site_dataset = site_dataset.paginate @page, Site::BROWSE_PAGINATION_LENGTH
@pagination_dataset = site_dataset
@sites = site_dataset.all
ds = ds.paginate @page, Site::BROWSE_PAGINATION_LENGTH
@pagination_dataset = ds
@sites = ds.all
site_ids = @sites.collect {|s| s[:id]}
tags = DB['select site_id,name from tags join sites_tags on tags.id=sites_tags.tag_id where site_id IN ?', site_ids].all
@ -31,25 +31,24 @@ get '/browse/?' do
end
def education_sites_dataset
site_dataset = Site.filter is_deleted: false
site_dataset = site_dataset.association_join(:tags).select_all(:sites)
ds = Site.filter is_deleted: false
ds = ds.association_join(:tags).select_all(:sites)
params[:tag] = current_site.tags.first.name
site_dataset.where! ['tags.name = ?', params[:tag]]
ds = ds.where ['tags.name = ?', params[:tag]]
end
def browse_sites_dataset
site_dataset = Site.browse_dataset
ds = Site.browse_dataset
if current_site
site_dataset.or! sites__id: current_site.id
ds = ds.or sites__id: current_site.id
if !current_site.blocking_site_ids.empty?
site_dataset.where!(Sequel.~(Sequel.qualify(:sites, :id) => current_site.blocking_site_ids))
ds = ds.where(Sequel.~(Sequel.qualify(:sites, :id) => current_site.blocking_site_ids))
end
if current_site.blocks_dataset.count
site_dataset.where!(
ds = ds.where(
Sequel.~(Sequel.qualify(:sites, :id) => current_site.blocks_dataset.select(:actioning_site_id).all.collect {|s| s.actioning_site_id})
)
end
@ -57,56 +56,56 @@ def browse_sites_dataset
case params[:sort_by]
when 'special_sauce'
site_dataset.exclude! score: nil
site_dataset.order! :score.desc
ds = ds.exclude score: nil
ds = ds.order :score.desc
when 'followers'
site_dataset.order! :follow_count.desc, :updated_at.desc
ds = ds.order :follow_count.desc, :updated_at.desc
when 'supporters'
site_dataset.exclude! plan_type: nil
site_dataset.exclude! plan_type: 'free'
site_dataset.order! :views.desc, :site_updated_at.desc
ds = ds.exclude plan_type: nil
ds = ds.exclude plan_type: 'free'
ds = ds.order :views.desc, :site_updated_at.desc
when 'featured'
site_dataset.exclude! featured_at: nil
site_dataset.order! :featured_at.desc
ds = ds.exclude featured_at: nil
ds = ds.order :featured_at.desc
when 'hits'
site_dataset.where!{views > 100}
site_dataset.order!(:hits.desc, :site_updated_at.desc)
ds = ds.where{views > 100}
ds = ds.order(:hits.desc, :site_updated_at.desc)
when 'views'
site_dataset.where!{views > 100}
site_dataset.order!(:views.desc, :site_updated_at.desc)
ds = ds.where{views > 100}
ds = ds.order(:views.desc, :site_updated_at.desc)
when 'newest'
site_dataset.order!(:created_at.desc, :views.desc)
ds = ds.order(:created_at.desc, :views.desc)
when 'oldest'
site_dataset.where!{views > 100}
site_dataset.order!(:created_at, :views.desc)
ds = ds.where{views > 100}
ds = ds.order(:created_at, :views.desc)
when 'random'
site_dataset.where!{views > 100}
site_dataset.where! 'random() < 0.01'
ds = ds.where{views > 100}
ds = ds.where 'random() < 0.01'
when 'last_updated'
site_dataset.where!{views > 100}
ds = ds.where{views > 100}
params[:sort_by] = 'last_updated'
site_dataset.exclude!(site_updated_at: nil)
site_dataset.order!(:site_updated_at.desc, :views.desc)
ds = ds.exclude(site_updated_at: nil)
ds = ds.order(:site_updated_at.desc, :views.desc)
when 'tipping_enabled'
site_dataset.where! tipping_enabled: true
site_dataset.where!("(tipping_paypal is not null and tipping_paypal != '') or (tipping_bitcoin is not null and tipping_bitcoin != '')")
site_dataset.where!{views > 10_000}
site_dataset.group! :sites__id
site_dataset.order! :follow_count.desc, :views.desc, :updated_at.desc
ds = ds.where tipping_enabled: true
ds = ds.where("(tipping_paypal is not null and tipping_paypal != '') or (tipping_bitcoin is not null and tipping_bitcoin != '')")
ds = ds.where{views > 10_000}
ds = ds.group :sites__id
ds = ds.order :follow_count.desc, :views.desc, :updated_at.desc
else
params[:sort_by] = 'followers'
site_dataset.order! :follow_count.desc, :views.desc, :updated_at.desc
ds = ds.order :follow_count.desc, :views.desc, :updated_at.desc
end
site_dataset.where! ['sites.is_nsfw = ?', (params[:is_nsfw] == 'true' ? true : false)]
ds = ds.where ['sites.is_nsfw = ?', (params[:is_nsfw] == 'true' ? true : false)]
if params[:tag]
site_dataset.select_all! :sites
site_dataset.inner_join! :sites_tags, :site_id => :id
site_dataset.inner_join! :tags, :id => :sites_tags__tag_id
site_dataset.where! ['tags.name = ?', params[:tag]]
site_dataset.where! ['tags.is_nsfw = ?', (params[:is_nsfw] == 'true' ? true : false)]
ds = ds.select_all :sites
ds = ds.inner_join :sites_tags, :site_id => :id
ds = ds.inner_join :tags, :id => :sites_tags__tag_id
ds = ds.where ['tags.name = ?', params[:tag]]
ds = ds.where ['tags.is_nsfw = ?', (params[:is_nsfw] == 'true' ? true : false)]
end
site_dataset
ds
end

View file

@ -59,11 +59,10 @@ post '/site_files/create' do
site_file ||= SiteFile.new site_id: current_site.id, path: name
site_file.set_all(
size: 0,
sha1_hash: Digest::SHA1.hexdigest(''),
updated_at: Time.now
)
site_file.size = 0
site_file.set size: 0
site_file.set sha1_hash: Digest::SHA1.hexdigest('')
site_file.set updated_at: Time.now
site_file.save
end