From 8f80f9e176bfb8f7cd33a93c849e8ea31bdf55cc Mon Sep 17 00:00:00 2001
From: Martin Mares <mj@ucw.cz>
Date: Sun, 12 Mar 2023 16:22:38 +0100
Subject: [PATCH] =?UTF-8?q?K=C3=B3d=20m=C3=ADsta=20nesm=C3=AD=20b=C3=BDt?=
 =?UTF-8?q?=20slo=C5=BEen=20jenom=20z=20=C4=8D=C3=ADslic?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

See #329.
---
 mo/web/org_place.py | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/mo/web/org_place.py b/mo/web/org_place.py
index a37e46bd..c6566888 100644
--- a/mo/web/org_place.py
+++ b/mo/web/org_place.py
@@ -2,6 +2,7 @@ from flask import render_template, g, redirect, url_for, flash, request
 from flask_wtf import FlaskForm
 import locale
 from markupsafe import Markup
+import re
 from sqlalchemy import func, and_
 from sqlalchemy.orm import joinedload
 from typing import List, Optional
@@ -110,8 +111,13 @@ class PlaceEditForm(FlaskForm):
     submit = wtforms.SubmitField('Uložit')
 
     def validate_code(form: FlaskForm, field: mo_fields.String) -> None:
-        if field.data is not None and field.data.startswith('#'):
+        code = field.data
+        if code is None:
+            pass
+        elif code.startswith('#'):
             raise wtforms.ValidationError('Kód nesmí začínat na znak "#".')
+        elif re.fullmatch(r'\d+', code):
+            raise wtforms.ValidationError('Kód nesmí být složen pouze z číslic.')
 
 
 class PlaceSchoolEditForm(PlaceEditForm):
-- 
GitLab