alpha_full/admin/agencement/blocDroit/pages/items/item.js
2026-04-06 22:58:51 +02:00

208 lines
7.3 KiB
JavaScript
Executable File

function creaItem(){
let debugLocal = 0;
let continueProcess = 1;
let msg = '';
let theItemNom ='';
let theType ='';
let theMsg ='';
let theFichier ='';
// Vérification si 'theItemNom' pas vide
if (document.getElementById('theItemNom')) { theItemNom = document.getElementById('theItemNom').value;}
if (theItemNom == '' || theItemNom == '-') {
continueProcess = 0;
msg += 'Vous devez saisir un nom pour le contenu.';
}
// Vérification si 'theType' pas vide
if (document.getElementById('theType')) { theType = document.getElementById('theType').value;}
if (theType == 'Type de contenu' || theType == '-') {
continueProcess = 0;
msg += 'Vous devez saisir un type de contenu.';
}
// Vérification si 'theMsg' pas vide
if (theType == 'txt' ) {
if (document.getElementById('theMsg')) { theMsg = document.getElementById('theMsg').value;}
if (theMsg == '' || theMsg == '-') {
continueProcess = 0;
msg += 'Vous devez saisir un message pour le contenu de type texte.';
}
}
// Vérification si 'theFichier' pas vide
if (theType == 'video' || theType == 'img' || theType == 'audio') {
if (document.getElementById('theFichier')) { theFichier = document.getElementById('theFichier').value;}
if (theFichier == '' || theFichier == '-') {
continueProcess = 0;
msg += 'Vous devez saisir un fichier pour le contenu de type multimédia.';
}
}
// Affectation de la valeur 'insertItem' à 'codeOpe' si présent
if (document.getElementById('codeOpe') && continueProcess==1 ) { document.getElementById('codeOpe').value = 'insertItem'; }
// Affichage du message de debugLocal si activé
if (debugLocal == 1) {
alert('creaItem => theType = ' + theType + ' | theMsg = ' + theMsg + ' | theItemNom = ' + theItemNom + ' | theFichier = ' + theFichier + ' | continueProcess = ' + continueProcess );
}
// Affichage du message d'erreur si nécessaire
if (msg != '') { alert(msg); }
// Soumettre le formulaire si aucune erreur n'est survenue
if (continueProcess == 1 && document.menuSiteForm) {document.menuSiteForm.submit(); }
}
function affichageSelonType(affType){
debugLocal=0;
if (debugLocal==1) { alert('Type sélectionné : ' + affType); }
// mettre tout en caché, en cas de repostage
document.getElementById('typeTxt').style.display='none';
document.getElementById('typeMultimed').style.display='none';
document.getElementById('typePageTxt').style.display='none';
switch (affType) {
case'text':
if(document.getElementById('typeTxt')) document.getElementById('typeTxt').style.display='block';
break;
case'video':
case'audio':
case'img':
if(document.getElementById('typeMultimed')) document.getElementById('typeMultimed').style.display='block';
if(document.getElementById('iFr')) {
//alert(' id');
var iframe = document.getElementById('iFr');
var oldSrc = iframe.src;
// Supprime l'ancien theType à la fin (si présent)
var newSrc = oldSrc.replace(/&theType=[^&]*$/, '');
// Ajoute le nouveau theType
newSrc += '&theType=' + encodeURIComponent(affType);
iframe.src = newSrc;
//alert(' fin');
}
else alert('pas iFr');
break;
case'page':
if(document.getElementById('typePageTxt')) document.getElementById('typePageTxt').style.display='block';
break;
}
//if (debugLocal==1) { alert('Fin, src : ' + iframe.src); }
}
function deleteItem(itemNom){
var debugLocal=0;
var r=confirm ('Vous allez supprimer : ' + itemNom + ' de toutes les langues. Veuillez confirmer votre choix.');
if (debugLocal==1) alert ('reponse = '+r);
if (r ==true){
document.getElementById('codeOpe').value='delItem';
document.menuSiteForm.submit();
}
}
function upItem(flag){
debugLocal=0;
if (debugLocal==1) alert ('upItem = '+flag);
if (flag==1) document.getElementById('codeOpe').value='majItemSansAutresLangues';
if (flag==2) document.getElementById('codeOpe').value='majItem';
document.menuSiteForm.submit();
}
// -----------------------------------------------------
// propager page / item
// ---------------------------------------------------
function propagation (){
debugLocal=0;
if (debugLocal==1) {
// alert('propager checked ? = ' + document.getElementById('propager').checked);
alert('propagation ');
}
if (document.getElementById('propager')) {
if (document.getElementById('propager').checked==false){
document.getElementById('propager').value='2';
if (document.getElementById('btn_All')) {document.getElementById('btn_All').style.display="none";} else alert('pas');
if (document.getElementById('btn_ParLangue')) {document.getElementById('btn_ParLangue').style.display="block";}
// alert('propager js false');
}
else{
document.getElementById('propager').value='1';
if (document.getElementById('btn_All')) {document.getElementById('btn_All').style.display="block";} else alert('pas 2');
if (document.getElementById('btn_ParLangue')) {document.getElementById('btn_ParLangue').style.display="none";}
// alert('propager js true');
}
if (debugLocal==1) alert('propager value = ' + document.getElementById('propager').value);
}
else {
if (debugLocal==1) alert('propager pas atteignable par id ' );
}
//document.menuSiteForm.submit();
}
function synchroVoletCssToClasse(theVoletCss, theme, theClass ) {
let debugLocal = 0;
if(debugLocal==1) {
alert('theVoletCss: ' + theVoletCss + '\n theme: ' + theme + '\n theClass: ' + theClass);
}
const url = './agencement/blocDroit/pages/items/fetchClassesCss.php?theVoletCss=' + encodeURIComponent(theVoletCss)+'&theme='+theme;
if(debugLocal==1) console.log('🛰️ Envoi fetch vers :', url);
fetch(url)
.then(response => {
if(debugLocal==1) console.log('📥 Réponse brute :', response);
if (!response.ok) {
throw new Error('Erreur HTTP : ' + response.status);
}
return response.json();
})
.then(data => {
if(debugLocal==1) console.log('📦 Données JSON reçues :', data);
const classeSelect = document.getElementById('theClasse');
classeSelect.innerHTML = '<option value="">-- Choisir un style Css --</option>';
data.forEach(item => {
if(debugLocal==1) console.log('🔹 Option ajoutée :', item); // debugLocal individuel
const opt = document.createElement('option');
opt.value = item.nom;
opt.textContent = item.description;
if(debugLocal==1) console.log('🔹 Option item.nom :', item.nom); // debugLocal individuel
if (item.nom === theClass) {
opt.selected = true;
}
classeSelect.appendChild(opt);
});
})
.catch(error => {
if(debugLocal==1) console.error('❌ Erreur Ajax:', error);
});
};
//synchroCSS au chargement de la page
document.addEventListener("DOMContentLoaded", function () {
debugLocal=0;
const selectVoletCss = document.getElementById('theVoletCss');
const selectClasse = document.getElementById('theJSClasse').value;
// const theme = '<?= htmlspecialchars($nomThemeCss) ?>'; // ou $_SESSION['nomThemeCss'] si toujours dispo
const theme = window.nomThemeCss;
if (selectVoletCss && selectVoletCss.value && selectVoletCss.value !== "-" && selectVoletCss.value !== "Aucun") {
if(debugLocal==1) console.log('⏳ Chargement initial avec voletCss :', selectVoletCss.value);
synchroVoletCssToClasse(selectVoletCss.value, theme, selectClasse );
}
}
);