diff --git a/app/services/views.py b/app/services/views.py index 1605f666a7f6bfd851794c9c06ed9614a7232a7a..d8492544fe4b510d9eec2e390c722a96069e7b59 100644 --- a/app/services/views.py +++ b/app/services/views.py @@ -31,7 +31,7 @@ def service(service): if service == 'corpus_analysis': return render_template('services/{}.html.j2'.format(service), title=SERVICES[service]['name']) - add_job_form = SERVICES[service]['add_job_form']() + add_job_form = SERVICES[service]['add_job_form'](prefix='add-job-form') if add_job_form.is_submitted(): if not add_job_form.validate(): return make_response(add_job_form.errors, 400) diff --git a/app/static/js/nopaque.js b/app/static/js/nopaque.js index fb87044da940704e6a6e04a4f7a694b1177a1900..629a44345bc8c838850f2a16c3046a80e6c2f64d 100644 --- a/app/static/js/nopaque.js +++ b/app/static/js/nopaque.js @@ -21,10 +21,23 @@ nopaque.foreignJobsSubscribers = []; // nopaque functions nopaque.forms = {}; nopaque.forms.init = function() { - var abortRequestElement, progressElement, progressModal, - progressModalElement, request; + var abortRequestElement, parentElement, progressElement, progressModal, + progressModalElement, request, submitElement; for (let form of document.querySelectorAll(".nopaque-job-form")) { + submitElement = form.querySelector('button[type="submit"]'); + submitElement.addEventListener("click", function() { + for (let selectElement of form.querySelectorAll('select')) { + if (selectElement.value === "") { + parentElement = selectElement.closest(".input-field"); + for (let helperTextElement of parentElement.querySelectorAll(".helper-text")) { + helperTextElement.remove(); + } + parentElement.insertAdjacentHTML("beforeend", `<span class="helper-text red-text">Please select an option.</span>`); + } + } + }) + request = new XMLHttpRequest(); if (form.dataset.hasOwnProperty("progressModal")) { progressModalElement = document.getElementById(form.dataset.progressModal); diff --git a/app/templates/services/ocr.html.j2 b/app/templates/services/ocr.html.j2 index 43910b4ca6cd44771351b1d63760c99a475a67ad..bbc6a01715c238987c9db2cbba59075768befab3 100644 --- a/app/templates/services/ocr.html.j2 +++ b/app/templates/services/ocr.html.j2 @@ -185,7 +185,7 @@ </div> </div> <div class="card-action right-align"> - <button class="btn waves-effect waves-light" id="submit" name="submit" type="submit">Submit<i class="material-icons right">send</i></button> + <button class="btn waves-effect waves-light" id="add-job-form-submit" name="add-job-form-submit" type="submit">Submit<i class="material-icons right">send</i></button> </div> </form> </div>