diff --git a/.gitignore b/.gitignore index b37ffcc..57dae51 100644 --- a/.gitignore +++ b/.gitignore @@ -6,6 +6,7 @@ tmp log.txt *.rdb uploads +thumbnails # Created by https://www.gitignore.io/api/linux,macos,python,windows diff --git a/app/models.py b/app/models.py index d414589..b3a6d5a 100644 --- a/app/models.py +++ b/app/models.py @@ -374,9 +374,18 @@ class Package(db.Model): "repo": self.repo, "url": base_url + self.getDownloadURL(), "release": self.getDownloadRelease().id if self.getDownloadRelease() is not None else None, - "screenshots": [base_url + ss.url for ss in self.screenshots] + "screenshots": [base_url + ss.url for ss in self.screenshots], + "thumbnail": base_url + self.getThumbnailURL() } + def getThumbnailURL(self): + screenshot = self.screenshots.filter_by(approved=True).first() + return screenshot.getThumbnailURL() if screenshot is not None else None + + def getMainScreenshotURL(self): + screenshot = self.screenshots.filter_by(approved=True).first() + return screenshot.url if screenshot is not None else None + def getDetailsURL(self): return url_for("package_page", author=self.author.username, name=self.name) @@ -409,10 +418,6 @@ class Package(db.Model): return url_for("package_download_page", author=self.author.username, name=self.name) - def getMainScreenshotURL(self): - screenshot = self.screenshots.filter_by(approved=True).first() - return screenshot.url if screenshot is not None else None - def getDownloadRelease(self): for rel in self.releases: if rel.approved: @@ -575,7 +580,7 @@ class PackageScreenshot(db.Model): id=self.id) def getThumbnailURL(self): - return self.url # TODO + return self.url.replace("/uploads/", "/thumbnails/332x221/") class EditRequest(db.Model): id = db.Column(db.Integer, primary_key=True) diff --git a/app/templates/macros/packagegridtile.html b/app/templates/macros/packagegridtile.html index 0ba39db..45f1f45 100644 --- a/app/templates/macros/packagegridtile.html +++ b/app/templates/macros/packagegridtile.html @@ -1,6 +1,6 @@ {% macro render_pkgtile(package) -%}