From 75aa0349ffcbb5d15c16c24886bdacc726f9a71e Mon Sep 17 00:00:00 2001
From: th-kim0823
Date: Mon, 27 Apr 2026 21:18:48 +0900
Subject: [PATCH] =?UTF-8?q?fix:=20admin=20UX=20=E2=80=94=20QR=20placeholde?=
=?UTF-8?q?r,=20=ED=88=AC=ED=91=9C=20=EC=83=81=ED=83=9C=20=EB=B6=84?=
=?UTF-8?q?=EB=A6=AC,=20=EC=A0=9C=EB=AA=A9=20placeholder=20=EB=8B=A4?=
=?UTF-8?q?=EC=96=91=ED=99=94,=20=EC=8B=9C=EC=83=81=20=EB=B9=88=EB=B8=94?=
=?UTF-8?q?=EB=9F=AD=20=EA=B0=80=EB=93=9C?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Co-Authored-By: Claude Sonnet 4.6
---
app.py | 24 +++++++++++++++++++-----
1 file changed, 19 insertions(+), 5 deletions(-)
diff --git a/app.py b/app.py
index 7ee5416..e2eed6b 100644
--- a/app.py
+++ b/app.py
@@ -29,6 +29,15 @@ CATEGORIES = [
("polish_team", "π μμ±λμ", "μμ°μ° 5κ°"),
("utility_team", "π μ€μ©μ±μ", "νλ μ€νΈ 5κ°"),
]
+TITLE_PLACEHOLDERS = [
+ "μ: Slack λ©μ
μλ λΆλ₯κΈ°",
+ "μ: kubectl λ§€ν¬λ‘ CLI",
+ "μ: PR μ°μ μμ ν",
+ "μ: νμ μΊλ¦°λ λΈλ¦¬ν",
+ "μ: μ μ
κ°μ΄λ λ΄",
+ "μ: λ°°ν¬ μλ¦Ό λ΄",
+ "μ: μ μ¬ ν¬ν λ΄",
+]
PRIZE_PRIORITY = ["utility_team", "polish_team", "fun_team"]
SHOW_CSS = """
@@ -668,7 +677,7 @@ def render_admin():
new_override = st.text_input(
"Override (λΉμλλ©΄ μλ κ°μ§)",
value=cur_override,
- placeholder="http://192.168.1.10:8501",
+ placeholder="https://hackerthon.altair823.xyz",
key="qr_override",
)
if st.button("Override μ μ₯"):
@@ -676,9 +685,11 @@ def render_admin():
st.success("μ μ₯λ¨.")
st.rerun()
+ st.divider()
+ st.subheader("π³ ν¬ν μν")
voting_open = is_voting_open()
cur_label = "π’ ν¬ν μ§ν μ€" if voting_open else "π΄ ν¬ν λ§κ°λ¨"
- st.markdown(f"### ν¬ν μν: {cur_label}")
+ st.markdown(f"**νμ¬**: {cur_label}")
cc1, cc2 = st.columns(2)
with cc1:
if voting_open and st.button("π ν¬ν λ§κ° (μμ μμ μ νμ)", type="primary"):
@@ -807,11 +818,11 @@ def render_admin():
titles = get_titles()
with st.form("titles_form"):
new_titles = {}
- for team in TEAMS:
+ for i, team in enumerate(TEAMS):
new_titles[team] = st.text_input(
team,
value=titles.get(team, ""),
- placeholder="μ: μ¬λ λ©μ
μλ λΆλ₯κΈ°",
+ placeholder=TITLE_PLACEHOLDERS[i % len(TITLE_PLACEHOLDERS)],
key=f"title_{team}",
)
if st.form_submit_button("μ λͺ© μ μ₯"):
@@ -914,7 +925,10 @@ def render_admin():
st.divider()
st.subheader("π€ μμμ λ°νμ© (볡μ¬ν΄μ νλ©΄ 곡μ )")
- st.code("\n".join(public_lines), language="markdown")
+ if public_lines:
+ st.code("\n".join(public_lines), language="markdown")
+ else:
+ st.caption("μμ§ κ²°κ³Ό μμ. ν¬ν λ§κ° ν μλ νμ.")
st.divider()
with st.expander("π κ°μ¬ λ‘κ·Έ (μ¬μΉ μΆμ μ©)"):