Defensive programming tweaks for some Snowboard extras

Fixes some intermittent errors with certain requests - mainly JS-driven requests that have no element attached.
This commit is contained in:
Ben Thomson 2023-08-02 16:16:30 +08:00
parent 02f16acf16
commit 43594b4103
No known key found for this signature in database
GPG Key ID: 9BEA985335CAC094
2 changed files with 3 additions and 3 deletions

View File

@ -111,7 +111,7 @@ export default class AttributeRequest extends Singleton {
clickHandler(event) {
let currentElement = event.target;
while (currentElement.tagName !== 'HTML') {
while (currentElement && currentElement.tagName !== 'HTML') {
if (!currentElement.matches(
'a[data-request], button[data-request], input[type=button][data-request], input[type=submit][data-request]',
)) {

View File

@ -49,7 +49,7 @@ export default class FormValidation extends Singleton {
* @returns {Boolean}
*/
doValidation(form, invalidFields, request) {
if (request.element.dataset.requestValidate === undefined) {
if (request.element && request.element.dataset.requestValidate === undefined) {
return null;
}
if (!form) {
@ -72,7 +72,7 @@ export default class FormValidation extends Singleton {
* @returns {void}
*/
clearValidation(promise, request) {
if (request.element.dataset.requestValidate === undefined) {
if (request.element && request.element.dataset.requestValidate === undefined) {
return;
}
if (!request.form) {