diff --git a/app/blueprints/packages/packages.py b/app/blueprints/packages/packages.py index 90cb72f2..8cb9b62d 100644 --- a/app/blueprints/packages/packages.py +++ b/app/blueprints/packages/packages.py @@ -24,6 +24,7 @@ from . import bp from app.models import * from app.querybuilder import QueryBuilder from app.tasks.importtasks import importRepoScreenshot, updateMetaFromRelease +from app.rediscache import has_key, set_key from app.utils import * from flask_wtf import FlaskForm @@ -51,6 +52,19 @@ def list_all(): joinedload(Package.media_license), \ subqueryload(Package.tags)) + edited = False + for tag in qb.tags: + edited = True + key = "tag-" + tag.name + if not has_key(key): + set_key(key, "true") + Tag.query.filter_by(id=tag.id).update({ + "views": Tag.views + 1 + }) + + if edited: + db.session.commit() + if qb.lucky: package = query.first() if package: diff --git a/app/models.py b/app/models.py index 2bb6d3dc..711d9fd2 100644 --- a/app/models.py +++ b/app/models.py @@ -804,11 +804,12 @@ class MetaPackage(db.Model): return retval class Tag(db.Model): - id = db.Column(db.Integer, primary_key=True) + id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(100), unique=True, nullable=False) title = db.Column(db.String(100), nullable=False) - backgroundColor = db.Column(db.String(6), nullable=False) - textColor = db.Column(db.String(6), nullable=False) + backgroundColor = db.Column(db.String(6), nullable=False) + textColor = db.Column(db.String(6), nullable=False) + views = db.Column(db.Integer, nullable=False, default=0) def __init__(self, title, backgroundColor="000000", textColor="ffffff"): self.title = title diff --git a/app/querybuilder.py b/app/querybuilder.py index 49728f0c..c4823cb3 100644 --- a/app/querybuilder.py +++ b/app/querybuilder.py @@ -24,7 +24,7 @@ class QueryBuilder: tags = [Tag.query.filter_by(name=tname).first() for tname in tags] tags = [tag for tag in tags if tag is not None] - # Hid + # Hide hide_flags = args.getlist("hide") self.title = title diff --git a/app/templates/admin/tags/list.html b/app/templates/admin/tags/list.html index 574d1a62..8db66ca8 100644 --- a/app/templates/admin/tags/list.html +++ b/app/templates/admin/tags/list.html @@ -14,13 +14,39 @@