From 64a897b52f1e9cf8f265ba10bedc3d22a8ee4dcb Mon Sep 17 00:00:00 2001 From: rubenwardy Date: Tue, 2 Feb 2021 17:09:21 +0000 Subject: [PATCH] Improve token form --- app/blueprints/api/tokens.py | 2 +- app/models/packages.py | 8 ++++++++ app/models/users.py | 4 ++-- app/templates/api/create_edit_token.html | 4 ++-- 4 files changed, 13 insertions(+), 5 deletions(-) diff --git a/app/blueprints/api/tokens.py b/app/blueprints/api/tokens.py index 7024087..f3a3c21 100644 --- a/app/blueprints/api/tokens.py +++ b/app/blueprints/api/tokens.py @@ -79,7 +79,7 @@ def create_edit_token(username, id=None): access_token = session.pop("token_" + str(token.id), None) form = CreateAPIToken(formdata=request.form, obj=token) - form.package.query_factory = lambda: Package.query.filter_by(author=user).all() + form.package.query_factory = lambda: user.maintained_packages.all() if form.validate_on_submit(): if is_new: diff --git a/app/models/packages.py b/app/models/packages.py index d75e4a7..9168508 100644 --- a/app/models/packages.py +++ b/app/models/packages.py @@ -909,6 +909,14 @@ class PackageScreenshot(db.Model): def getThumbnailURL(self, level=2): return self.url.replace("/uploads/", "/thumbnails/{:d}/".format(level)) + def getAsDictionary(self): + return { + "id": self.id, + "title": self.title, + "url": self.url, + "approved": self.approved, + } + class PackageUpdateTrigger(enum.Enum): COMMIT = "New Commit" diff --git a/app/models/users.py b/app/models/users.py index c9ad249..0aa8372 100644 --- a/app/models/users.py +++ b/app/models/users.py @@ -167,9 +167,9 @@ class User(db.Model, UserMixin): audit_log_entries = db.relationship("AuditLogEntry", foreign_keys="AuditLogEntry.causer_id", back_populates="causer", order_by=desc("audit_log_entry_created_at"), lazy="dynamic") - maintained_packages = db.relationship("Package", lazy="dynamic", secondary="maintainers") + maintained_packages = db.relationship("Package", lazy="dynamic", secondary="maintainers", order_by=db.asc("package_title")) - packages = db.relationship("Package", back_populates="author", lazy="dynamic") + packages = db.relationship("Package", back_populates="author", lazy="dynamic", order_by=db.asc("package_title")) reviews = db.relationship("PackageReview", back_populates="author", order_by=db.desc("package_review_created_at"), cascade="all, delete, delete-orphan") tokens = db.relationship("APIToken", back_populates="owner", lazy="dynamic", cascade="all, delete, delete-orphan") threads = db.relationship("Thread", back_populates="author", lazy="dynamic", cascade="all, delete, delete-orphan") diff --git a/app/templates/api/create_edit_token.html b/app/templates/api/create_edit_token.html index 53f503b..44b2b00 100644 --- a/app/templates/api/create_edit_token.html +++ b/app/templates/api/create_edit_token.html @@ -47,8 +47,8 @@
{{ form.hidden_tag() }} - {{ render_field(form.name, placeholder="Human readable") }} - {{ render_field(form.package) }} + {{ render_field(form.name, placeholder="Human readable", hint=_("Human-readable name to tell tokens apart.")) }} + {{ render_field(form.package, hint=_("Recommended: Only allows token to interact with a particular package.")) }} {{ render_submit_field(form.submit) }}