From c51e1aee0ab08cedf962140ab12aff43cc1d137d Mon Sep 17 00:00:00 2001 From: Martin Mares <mj@ucw.cz> Date: Sat, 12 Nov 2022 14:17:42 +0100 Subject: [PATCH] =?UTF-8?q?Registrace:=20Drobn=C3=A1=20vylep=C5=A1en=C3=AD?= =?UTF-8?q?=20okolo=20hled=C3=A1n=C3=AD=20m=C4=9Bst?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit • Ořezáváme mezery z počátku i konce názvu obce. • Místo "jméno obce" používáme častější "název obce". • Placeholder od INPUTu vysvětluje, co se má zadat (uživatelé nečekaně často zkouší zadat přímo název školy a pak píší správci, že ji to nenajde). • Pokud se obec nenajde, radíme hledat jen část názvu (to řeší různé obce s pomlčkami ve jméně nebo zažitými nekanonickými názvy). Closes #301. --- mo/web/api.py | 14 +++++++------- mo/web/templates/user_join_round.html | 4 ++-- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/mo/web/api.py b/mo/web/api.py index 1f0ac5c7..a9b1b0a6 100644 --- a/mo/web/api.py +++ b/mo/web/api.py @@ -17,11 +17,11 @@ def api_root(): @app.route('/api/find-town') def api_find_town(): - query = request.args.get('q') - if query is None or len(query) < 2: - return jsonify(error='Zadejte alespoň 2 znaky jména obce.') + query = request.args.get('q', "").strip() + if len(query) < 2: + return jsonify(error='Zadejte alespoň 2 znaky názvu obce.') elif '%' in query: - return jsonify(error='Nepovolené znaky ve jménu obce.') + return jsonify(error='Nepovolené znaky v názvu obce.') else: max_places = 50 places = (db.get_session().query(db.Place) @@ -32,11 +32,11 @@ def api_find_town(): .order_by(db.Place.name, db.Place.place_id) .limit(max_places) .all()) - if not places: - return jsonify(error='Nenalezena žádná obec.') + if not places : + return jsonify(error='Nenalezena žádná obec. Zkuste zadat jen část názvu.') # XXX: Nemůže se stát, že nastane přesná shoda a k tomu příliš mnoho nepřesných? if len(places) >= max_places: - return jsonify(error='Nalezeno příliš mnoho obcí. Zadejte prosím více znaků jména.') + return jsonify(error='Nalezeno příliš mnoho obcí. Zadejte prosím více znaků názvu.') res = [] for p in places: diff --git a/mo/web/templates/user_join_round.html b/mo/web/templates/user_join_round.html index 9745b1b8..c9cf2b5a 100644 --- a/mo/web/templates/user_join_round.html +++ b/mo/web/templates/user_join_round.html @@ -28,9 +28,9 @@ <div id='town_query-group' class='form-group row required{% if form.school.errors %} has-error{% endif %}'> <label class='col-sm-2 control-label' for='town_query'>Škola</label> <div class='col-sm-8'> - <input autofocus="" class="form-control" id="town_query" name="town_query" type="text" value=""> + <input autofocus="" class="form-control" id="town_query" name="town_query" type="text" value="" placeholder="Nejdříve zadejte název obce."> <div id='town_query-help' class='help-block'> - Zadejte prvních pár znaků jména obce a zmáčkněte Hledat. + Zadejte prvních pár znaků názvu obce a zmáčkněte Hledat. Pokud se vám nedaří školu najít (například proto, že studujete v zahraničí), informujte prosím <a href='{{ url_for('doc_about') }}'>správce OSMO</a>. </div> -- GitLab