diff --git a/app/admin.rb b/app/admin.rb index d8b4c35d..c16131be 100644 --- a/app/admin.rb +++ b/app/admin.rb @@ -36,8 +36,14 @@ get '/admin/usage' do stats.collect {|s| s == 0}.uniq - unless stats.select {|k,v| v == 0}.length == stats.keys.length - @monthly_stats.push stats.merge(date: month) + if stats[:views] != 0 && stats[:hits] != 0 && stats[:bandwidth] != 0 + popular_sites = DB[ + 'select sum(bandwidth) as bandwidth,username from stats left join sites on sites.id=stats.site_id where stats.created_at >= ? and stats.created_at < ? group by username order by bandwidth desc limit 50', + month, + month.next_month + ].all + + @monthly_stats.push stats.merge(date: month).merge(popular_sites: popular_sites) end month = month.prev_month diff --git a/views/admin.erb b/views/admin.erb index f2ac59b1..fdb65c0e 100644 --- a/views/admin.erb +++ b/views/admin.erb @@ -9,7 +9,8 @@
diff --git a/views/admin/usage.erb b/views/admin/usage.erb index 629a1885..794dd447 100644 --- a/views/admin/usage.erb +++ b/views/admin/usage.erb @@ -28,4 +28,27 @@ +Username | +Profile | +Bandwidth | +
---|---|---|
<%= s[:username] %> | +link | +<%= s[:bandwidth].to_bytes_pretty %> | +