Cope with new installation without screenshots

This commit is contained in:
Christoph Haas 2018-08-22 13:10:22 +02:00
parent ea3769501b
commit 0207cb194b
3 changed files with 12 additions and 13 deletions

View file

@ -3,12 +3,11 @@ class WelcomeController < ApplicationController
# TODO: Only approved screenshots!
@newest_upload = Screenshot.newest_upload
# TODO: Use the actually most popular package and not just a random one
@most_popular_package = Package.order(:visits).last
@most_popular_package = Package.with_screenshots.order(visits: :desc).first
@package_count = Package.count
@most_wanted_package = Package.without_screenshots_most_visits.first
@most_wanted_package = Package.without_screenshots.order(visits: :desc).first
end
def about

View file

@ -52,12 +52,6 @@ class Package < ApplicationRecord
where.not(id: subselect)
end
# Packages that need screenshots and have most visits.
# These packages are most likely to need a screenshot.
def self.without_screenshots_most_visits
self.without_screenshots.order(visits: :desc)
end
# Return a query of all approved/public screenshots of this package
def screenshots_approved
self.screenshots.where(approved: true)

View file

@ -39,8 +39,11 @@
.large-3.medium-12.small-12.cell.text-center
h2 Most popular
.thumb-height
a href=package_path(@most_popular_package.name)
img src=@most_popular_package.screenshots.first.image.url(:thumb, timestamp: false)
- if @most_popular_package
a href=package_path(@most_popular_package.name)
img src=@most_popular_package.screenshots.first.image.url(:thumb, timestamp: false)
- else
'No uploaded screenshots yet.
p
strong
=@most_popular_package.name
@ -49,8 +52,11 @@
.large-3.medium-12.small-12.cell.text-center
h2 Contribute
.thumb-height
a href=upload_path(@most_wanted_package.name)
img src="/images/dummy/no-screenshots-upload-one.svg" width="160"
- if @most_wanted_package.name
a href=upload_path(@most_wanted_package.name)
img src="/images/dummy/no-screenshots-upload-one.svg" width="160"
- else
'No uploaded screenshots yet.
p
/ TODO: Randomly choose one of ~30 packages
' We lack a screenshot for the