shelfy/templates/assets/js/index.js

87 lines
2.6 KiB
JavaScript
Raw Normal View History

2025-06-06 07:42:55 +00:00
console.log("la");
console.log("la");
async function validatePath() {
const pathInput = document.getElementById('path-input');
const statusIcon = document.getElementById('path-status-icon');
const validateBtn = document.getElementById('validate-btn');
2025-06-19 15:01:27 +00:00
const pathNameHidden = document.getElementById('pathName');
const path = pathInput.value.trim();
2025-06-06 07:42:55 +00:00
2025-06-19 15:01:27 +00:00
if (!path) {
2025-06-06 07:42:55 +00:00
statusIcon.innerHTML = '<i class="fas fa-times has-text-danger"></i>';
validateBtn.disabled = true;
return;
}
2025-06-19 15:01:27 +00:00
// On assigne directement la valeur dans le champ hidden pour HTMX
pathNameHidden.value = path;
statusIcon.innerHTML = '<i class="fas fa-circle-notch fa-spin"></i>'; // Loading spinner
2025-06-06 07:42:55 +00:00
try {
const response = await fetch('/validate-path', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
2025-06-19 15:01:27 +00:00
body: JSON.stringify({ path }),
2025-06-06 07:42:55 +00:00
});
if (response.ok) {
2025-06-19 15:01:27 +00:00
statusIcon.innerHTML = '<i class="fas fa-check-square has-text-success"></i>';
2025-06-06 07:42:55 +00:00
validateBtn.disabled = false;
} else {
const result = await response.json();
2025-06-19 15:01:27 +00:00
statusIcon.innerHTML = '<i class="fas fa-exclamation-triangle has-text-danger"></i>';
2025-06-06 07:42:55 +00:00
validateBtn.disabled = true;
console.error('Error:', result.error);
}
} catch (error) {
2025-06-19 15:01:27 +00:00
statusIcon.innerHTML = '<i class="fas fa-exclamation-triangle has-text-danger"></i>';
2025-06-06 07:42:55 +00:00
validateBtn.disabled = true;
console.error('Request failed:', error);
}
}
2025-06-19 14:37:39 +00:00
2025-06-19 15:01:27 +00:00
2025-06-06 07:42:55 +00:00
function disableAllInputPath(id){
console.log(this)
var inputs = document.querySelectorAll('#path-'+id+' .fff');
var btn =document.getElementById('btn-path-annuler-'+id)
btn.style.display = "none";
var btn2 =document.getElementById('btn-path-edit-'+id)
btn2.style.display = "block";
var btn3 =document.getElementById('btn-path-valider-'+id)
btn3.style.display = "none";
inputs.forEach(function(input) {
input.disabled = true;
});
}
function enableAllInputPath(id){
console.log(this)
var inputs = document.querySelectorAll('#path-'+id+' .fff');
var btn =document.getElementById('btn-path-annuler-'+id)
btn.style.display = "block";
var btn2 =document.getElementById('btn-path-edit-'+id)
btn2.style.display = "none";
var btn3 =document.getElementById('btn-path-valider-'+id)
btn3.style.display = "block";
inputs.forEach(function(input) {
input.disabled = false;
});
}
function setInputHidden(target,value){
document.getElementById(target).value = value;
}
function hide(target){
var btn =document.getElementById(target)
btn.style.display = "none";
}
document.addEventListener("htmx:afterOnLoad", function (event) {
2025-06-15 15:21:11 +00:00
// console.log("Réponse du serveur :", event.detail.xhr.responseText);
2025-06-06 07:42:55 +00:00
});