Files
BirdDeterrentSystem/Html/html/setting.js
2024-11-09 08:52:49 +07:00

111 lines
3.5 KiB
JavaScript

// script for setting.html start here
async function onload(){
const resp = await fetch("/setting");
if (resp.status === 200) {
/**
* @type {Object}
* @property {String[]} AudioFiles
* @property {String} AudioFile1
* @property {String} AudioFile2
* @property {String} AudioFile3
* @property {String} AudioFile4
* @property {String} AudioFile5
* @property {String} CameraIP
* @property {String} CameraPort
* @property {String} CameraUsername
* @property {String} CameraPassword
* @property {String} LoginUsername
* @property {String} LoginPassword
*/
const data = await resp.json();
fill_select(1, data["AudioFiles"]);
fill_select(2, data["AudioFiles"]);
fill_select(3, data["AudioFiles"]);
fill_select(4, data["AudioFiles"]);
fill_select(5, data["AudioFiles"]);
$("#preset1").val(data["AudioFile1"]);
$("#preset2").val(data["AudioFile2"]);
$("#preset3").val(data["AudioFile3"]);
$("#preset4").val(data["AudioFile4"]);
$("#preset5").val(data["AudioFile5"]);
$("#setting_ip").val(data["CameraIP"]);
$("#setting_port").val(data["CameraPort"]);
$("#setting_username").val(data["CameraUsername"]);
$("#setting_password").val(data["CameraPassword"]);
$("#login_username").val(data["LoginUsername"]);
$("#edit_password").val(data["LoginPassword"]);
$("#confirm_password").val(data["LoginPassword"]);
}
}
/**
* Fill select with values
* @param {number} index start from 1
* @param {String[]} values array of values
*/
function fill_select(index, values){
/**
*
* @type {HTMLSelectElement}
*/
let preset = document.getElementById("preset"+index);
preset.innerHTML = "";
if (values!=null && values.length>0){
for (let i = 0; i < values.length; i++) {
const element = values[i];
let option = document.createElement("option");
option.value = element;
option.innerText = element;
preset.appendChild(option);
}
}
}
function cameraPassword() {
const passwordField = document.getElementById('setting_password');
const icon = document.getElementById('icon_camera');
if (passwordField.type === 'password') {
passwordField.type = 'text';
icon.classList.remove('fa-eye');
icon.classList.add('fa-eye-slash');
} else {
passwordField.type = 'password';
icon.classList.remove('fa-eye-slash');
icon.classList.add('fa-eye');
}
}
function showPassword() {
const passwordField = document.getElementById('edit_password');
const icon = document.getElementById('icon_password');
if (passwordField.type === 'password') {
passwordField.type = 'text';
icon.classList.remove('fa-eye');
icon.classList.add('fa-eye-slash');
} else {
passwordField.type = 'password';
icon.classList.remove('fa-eye-slash');
icon.classList.add('fa-eye');
}
}
function showConfirm() {
const passwordField = document.getElementById('confirm_password');
const icon = document.getElementById('icon_confirm');
if (passwordField.type === 'password') {
passwordField.type = 'text';
icon.classList.remove('fa-eye');
icon.classList.add('fa-eye-slash');
} else {
passwordField.type = 'password';
icon.classList.remove('fa-eye-slash');
icon.classList.add('fa-eye');
}
}