From 5a1e325ae5076ecd0dff2234373fe5e92f42f42b Mon Sep 17 00:00:00 2001 From: Harry Walker Date: Sun, 18 Jan 2026 13:22:58 +0000 Subject: [PATCH 1/7] chore: add assets to .gitignore --- .gitignore | 1 + Dockerfile | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 746f651..2749718 100644 --- a/.gitignore +++ b/.gitignore @@ -130,5 +130,6 @@ dmypy.json .idea .DS_Store +assets/ config.py \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index d2047ce..64bdaf4 100644 --- a/Dockerfile +++ b/Dockerfile @@ -5,7 +5,7 @@ WORKDIR /app RUN apk add -U --no-cache git RUN git clone https://github.com/WiiLink24/NintendoChannel . -RUN go build -o cli cli/main.go +RUN go build -o app cli/main.go FROM python:3.10-alpine @@ -27,7 +27,7 @@ USER server COPY . . # Copy file generator -COPY --from=builder /app/cli . +COPY --from=builder /app/app cli ENV FLASK_APP app.py EXPOSE 5000 From 001588bdd14e81f505c4be0fceb5a2daed9eb65b Mon Sep 17 00:00:00 2001 From: nami1 Date: Sun, 1 Feb 2026 17:14:24 -0500 Subject: [PATCH 2/7] feat(banners): editing support --- .../{banner_add.html => banner_action.html} | 4 +- templates/banner_list.html | 5 ++ thegateway/banner.py | 52 ++++++++++++++++++- thegateway/form.py | 1 + 4 files changed, 59 insertions(+), 3 deletions(-) rename templates/{banner_add.html => banner_action.html} (99%) diff --git a/templates/banner_add.html b/templates/banner_action.html similarity index 99% rename from templates/banner_add.html rename to templates/banner_action.html index 1822b0a..316e86c 100644 --- a/templates/banner_add.html +++ b/templates/banner_action.html @@ -1,12 +1,12 @@ {% extends "generic/base.html" %} {% block title %} -Upload Banner - Nintendo Channel Admin +{{ action }} Banner - Nintendo Channel Admin {% endblock %} {% block content %}
-

Upload New Banner

+

{{ action }} Banner

diff --git a/templates/banner_list.html b/templates/banner_list.html index cb56e7c..64f7904 100644 --- a/templates/banner_list.html +++ b/templates/banner_list.html @@ -99,6 +99,11 @@

Banners

+ + Edit + Edit + /edit", methods=["GET", "POST"]) +@oidc.require_login +def edit_banner(banner_id): + form = BannerForm() + form.upload.label.text = "Edit Banner" + + banner = Banners.query.filter_by(id=banner_id).first() + if not banner: + return exceptions.NotFound() + + if form.validate_on_submit(): + thumbnail_data = None + if form.thumbnail.data: + thumbnail_data = form.thumbnail.data.read() + else: + flash("Invalid banner") + return render_template("banner_action.html", form=form, action="Edit") + + save_banner_data(banner_id, thumbnail_data) + + banner.name_japanese = form.title_jpn.data + banner.name_english = form.title_en.data + banner.name_german = form.title_de.data + banner.name_french = form.title_fr.data + banner.name_spanish = form.title_es.data + banner.name_italian = form.title_it.data + banner.name_dutch = form.title_dutch.data + db.session.commit() + + return redirect(url_for("thegateway.list_banners")) + else: + form.title_jpn.data = banner.name_japanese + form.title_en.data = banner.name_english + form.title_de.data = banner.name_german + form.title_fr.data = banner.name_french + form.title_es.data = banner.name_spanish + form.title_it.data = banner.name_italian + form.title_dutch.data = banner.name_dutch + + return render_template("banner_action.html", form=form, action="Edit") @thegateway_blueprint.route( diff --git a/thegateway/form.py b/thegateway/form.py index 85357c9..a38b42f 100644 --- a/thegateway/form.py +++ b/thegateway/form.py @@ -56,6 +56,7 @@ class VideoForm(FlaskForm): class BannerForm(FlaskForm): + banner = FileField("Banner") title_jpn = StringField( "Title (Japanese)", validators=[DataRequired(), Length(max=102)] ) From 99e846d1e0281d44fa461dfac38ad108ff8eff9e Mon Sep 17 00:00:00 2001 From: nami1 Date: Sun, 1 Feb 2026 17:38:12 -0500 Subject: [PATCH 3/7] chore(banners): remove useless form --- thegateway/form.py | 1 - 1 file changed, 1 deletion(-) diff --git a/thegateway/form.py b/thegateway/form.py index a38b42f..85357c9 100644 --- a/thegateway/form.py +++ b/thegateway/form.py @@ -56,7 +56,6 @@ class VideoForm(FlaskForm): class BannerForm(FlaskForm): - banner = FileField("Banner") title_jpn = StringField( "Title (Japanese)", validators=[DataRequired(), Length(max=102)] ) From c95f5db960308f1e8bad9e48cbcd7114be11eb0e Mon Sep 17 00:00:00 2001 From: nami1 Date: Sun, 1 Feb 2026 19:28:15 -0500 Subject: [PATCH 4/7] fix(banners): dont force user to add banner when editing --- thegateway/banner.py | 8 +++----- thegateway/form.py | 2 +- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/thegateway/banner.py b/thegateway/banner.py index 75f18fa..296cac1 100644 --- a/thegateway/banner.py +++ b/thegateway/banner.py @@ -20,6 +20,7 @@ import subprocess import os from werkzeug import exceptions +from flask_wtf.file import FileRequired banner_generate_status = { @@ -55,6 +56,7 @@ def list_banners(): @oidc.require_login def add_banner(): form = BannerForm() + form.thumbnail.validators = [FileRequired()] if form.validate_on_submit(): thumbnail = form.thumbnail.data if thumbnail: @@ -102,11 +104,7 @@ def edit_banner(banner_id): thumbnail_data = None if form.thumbnail.data: thumbnail_data = form.thumbnail.data.read() - else: - flash("Invalid banner") - return render_template("banner_action.html", form=form, action="Edit") - - save_banner_data(banner_id, thumbnail_data) + save_banner_data(banner_id, thumbnail_data) banner.name_japanese = form.title_jpn.data banner.name_english = form.title_en.data diff --git a/thegateway/form.py b/thegateway/form.py index 85357c9..97d71ac 100644 --- a/thegateway/form.py +++ b/thegateway/form.py @@ -77,7 +77,7 @@ class BannerForm(FlaskForm): title_dutch = StringField( "Title (Dutch)", validators=[DataRequired(), Length(max=102)] ) - thumbnail = FileField("Image", validators=[FileRequired()]) + thumbnail = FileField("Image") upload = SubmitField("Add") From 43487fc1d9d4ddeb08260a3b5a303075b968c29d Mon Sep 17 00:00:00 2001 From: nami1 <135884307+nami1yt@users.noreply.github.com> Date: Sun, 8 Mar 2026 18:57:56 +0000 Subject: [PATCH 5/7] chore: update editing to support ptbr --- thegateway/banner.py | 2 ++ thegateway/form.py | 3 +++ 2 files changed, 5 insertions(+) diff --git a/thegateway/banner.py b/thegateway/banner.py index 41ff7ce..96d1d59 100644 --- a/thegateway/banner.py +++ b/thegateway/banner.py @@ -114,6 +114,7 @@ def edit_banner(banner_id): banner.name_spanish = form.title_es.data banner.name_italian = form.title_it.data banner.name_dutch = form.title_dutch.data + banner.name_ptbr = form.title_ptbr.data db.session.commit() return redirect(url_for("thegateway.list_banners")) @@ -125,6 +126,7 @@ def edit_banner(banner_id): form.title_es.data = banner.name_spanish form.title_it.data = banner.name_italian form.title_dutch.data = banner.name_dutch + form.title_ptbr.data = banner.name_ptbr return render_template("banner_action.html", form=form, action="Edit") diff --git a/thegateway/form.py b/thegateway/form.py index ba55749..9f5c9f9 100644 --- a/thegateway/form.py +++ b/thegateway/form.py @@ -104,6 +104,9 @@ class BannerForm(FlaskForm): title_dutch = StringField( "Title (Dutch)", validators=[DataRequired(), Length(max=102)] ) + title_ptbr = StringField( + "Title (Brazilian Portuguese)", validators=[DataRequired(), Length(max=102)] + ) thumbnail = FileField("Image", validators=[FileRequired()]) upload = SubmitField("Add") From 4b3260741d38af328af861708cd6dc1b331ca8b3 Mon Sep 17 00:00:00 2001 From: nami1 <135884307+nami1yt@users.noreply.github.com> Date: Sun, 8 Mar 2026 18:59:27 +0000 Subject: [PATCH 6/7] fix: due to the commit update, this made it so you need to upload an image. we dont want that for editing. --- thegateway/form.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/thegateway/form.py b/thegateway/form.py index 9f5c9f9..a6ef6ca 100644 --- a/thegateway/form.py +++ b/thegateway/form.py @@ -107,7 +107,7 @@ class BannerForm(FlaskForm): title_ptbr = StringField( "Title (Brazilian Portuguese)", validators=[DataRequired(), Length(max=102)] ) - thumbnail = FileField("Image", validators=[FileRequired()]) + thumbnail = FileField("Image") upload = SubmitField("Add") From 443e02acb70d3ca972160c02eb69149cb62a4884 Mon Sep 17 00:00:00 2001 From: nami1yt Date: Wed, 1 Apr 2026 15:38:11 -0400 Subject: [PATCH 7/7] fix: add a else if form.thumbnail.data --- thegateway/banner.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/thegateway/banner.py b/thegateway/banner.py index 96d1d59..e762502 100644 --- a/thegateway/banner.py +++ b/thegateway/banner.py @@ -106,6 +106,9 @@ def edit_banner(banner_id): if form.thumbnail.data: thumbnail_data = form.thumbnail.data.read() save_banner_data(banner_id, thumbnail_data) + else: + flash("Invaild banner") + return render_template("banner_action.html", form=form, action="Edit") banner.name_japanese = form.title_jpn.data banner.name_english = form.title_en.data