app: Fix javascript doesn't run on first visit

Merge Request !1644 fixed the 'const redeclaration' error but introduced
another issue - javascript on the app configuration page doesn't run
on first visit.

Relates to #1715

Signed-off-by: Veiko Aasa <veiko17@disroot.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
This commit is contained in:
Veiko Aasa 2019-12-09 16:02:00 +03:00 committed by James Valleroy
parent fe121e1fab
commit 851d1c7c28
No known key found for this signature in database
GPG Key ID: 77C0C75E7B650808

View File

@ -21,38 +21,36 @@
* in this page.
*/
$(document).on('turbolinks:load', function() {
const appForm = document.querySelector('#app-form');
const appToggleContainer = document.querySelector('#app-toggle-container');
const appToggleButton = document.querySelector('#app-toggle-button');
const appToggleInput = document.querySelector('#app-toggle-input');
var appForm = document.querySelector('#app-form');
var appToggleContainer = document.querySelector('#app-toggle-container');
var appToggleButton = document.querySelector('#app-toggle-button');
var appToggleInput = document.querySelector('#app-toggle-input');
if (appForm && appToggleButton && appToggleInput && appToggleContainer) {
const onSubmit = (e) => {
e.preventDefault;
appToggleInput.checked = !appToggleInput.checked;
appForm.submit();
};
if (appForm && appToggleButton && appToggleInput && appToggleContainer) {
var onSubmit = (e) => {
e.preventDefault;
appToggleInput.checked = !appToggleInput.checked;
appForm.submit();
};
appToggleButton.addEventListener('click', onSubmit);
appToggleButton.addEventListener('click', onSubmit);
/**
* if javascript is enabled, this script will run and show the toggle button
*/
/**
* if javascript is enabled, this script will run and show the toggle button
*/
appToggleInput.parentElement.style.display = 'none';
appToggleContainer.style.display = 'flex';
appToggleInput.parentElement.style.display = 'none';
appToggleContainer.style.display = 'flex';
/* A basic form has only three elements:
* 1. An input tag with CSRF token
* 2. A div with form elements
* 3. A Submit button
*
* This kind of form can be completely hidden.
*/
if (appForm.children.length === 3) {
appForm.style.display = 'none';
appForm.previousElementSibling.style.display = 'none';
}
/* A basic form has only three elements:
* 1. An input tag with CSRF token
* 2. A div with form elements
* 3. A Submit button
*
* This kind of form can be completely hidden.
*/
if (appForm.children.length === 3) {
appForm.style.display = 'none';
appForm.previousElementSibling.style.display = 'none';
}
});
}