diff options
-rw-r--r-- | app/templates/packages/view.html | 9 | ||||
-rw-r--r-- | app/views/packages/__init__.py | 12 |
2 files changed, 20 insertions, 1 deletions
diff --git a/app/templates/packages/view.html b/app/templates/packages/view.html index e4555f0..6ed5bbe 100644 --- a/app/templates/packages/view.html +++ b/app/templates/packages/view.html @@ -249,4 +249,13 @@ </ul> {% endif %} #} + + {% if alternatives %} + <h3>Alternatives</h3> + <ul> + {% for p in alternatives %} + <li><a href="{{ p.getDetailsURL() }}">{{ p.title }} by {{ p.author.display_name }}</a></li> + {% endfor %} + </ul> + {% endif %} {% endblock %} diff --git a/app/views/packages/__init__.py b/app/views/packages/__init__.py index 76d278b..03a007e 100644 --- a/app/views/packages/__init__.py +++ b/app/views/packages/__init__.py @@ -88,9 +88,19 @@ def package_page(package): else: clearNotifications(package.getDetailsURL()) + alternatives = None + if package.type == PackageType.MOD: + alternatives = Package.query \ + .filter_by(name=package.name, type=PackageType.MOD, soft_deleted=False) \ + .filter(Package.id != package.id) \ + .order_by(db.asc(Package.title)) \ + .all() + releases = getReleases(package) requests = [r for r in package.requests if r.status == 0] - return render_template("packages/view.html", package=package, releases=releases, requests=requests) + return render_template("packages/view.html", \ + package=package, releases=releases, requests=requests, \ + alternatives=alternatives) @app.route("/packages/<author>/<name>/download/") |