Fixing some stuff for Turbolinks, adding gzip on top, fixing a n+1 query

shrike
Eugen Rochko 2016-03-25 15:09:40 +01:00
parent 36f3da3cde
commit 318886287b
7 changed files with 16 additions and 3 deletions

View File

@ -66,5 +66,5 @@ group :production do
end end
group :development, :production do group :development, :production do
gem 'rack-mini-profiler' gem 'rack-mini-profiler', require: false
end end

View File

@ -44,5 +44,5 @@ work = ->
if runs == stop_at_run if runs == stop_at_run
stop() stop()
$ -> $(document).on 'turbolinks:load', ->
setTimeout(start, 100) setTimeout(start, 100)

View File

@ -0,0 +1,2 @@
$(document).on 'turbolinks:load', ->
window.MiniProfiler.pageTransition() unless typeof window.MiniProfiler == 'undefined'

View File

@ -279,6 +279,10 @@ body {
} }
} }
.turbolinks-progress-bar {
background-color: #2b90d9;
}
.mastodon { .mastodon {
$head: #282c37; $head: #282c37;
$tusk: #d9e1e8; $tusk: #d9e1e8;

View File

@ -17,7 +17,7 @@ class Status < ActiveRecord::Base
validates :text, presence: true, if: Proc.new { |s| s.local? && !s.reblog? } validates :text, presence: true, if: Proc.new { |s| s.local? && !s.reblog? }
scope :with_counters, -> { select('statuses.*, (select count(r.id) from statuses as r where r.reblog_of_id = statuses.id) as reblogs_count, (select count(f.id) from favourites as f where f.status_id = statuses.id) as favourites_count') } scope :with_counters, -> { select('statuses.*, (select count(r.id) from statuses as r where r.reblog_of_id = statuses.id) as reblogs_count, (select count(f.id) from favourites as f where f.status_id = statuses.id) as favourites_count') }
scope :with_includes, -> { includes(:account, :mentions, reblog: [:account, :mentions], thread: [:account, :mentions]) } scope :with_includes, -> { includes(:account, :mentions, :stream_entry, reblog: [:account, :mentions], thread: [:account, :mentions]) }
def local? def local?
self.uri.nil? self.uri.nil?

View File

@ -37,5 +37,6 @@ module Mastodon
end end
config.middleware.use Rack::Attack config.middleware.use Rack::Attack
config.middleware.use Rack::Deflater
end end
end end

View File

@ -0,0 +1,6 @@
require 'rack-mini-profiler'
Rack::MiniProfilerRails.initialize!(Rails.application)
Rails.application.middleware.delete(Rack::MiniProfiler)
Rails.application.middleware.insert_after(Rack::Deflater, Rack::MiniProfiler)