alpha_full/admin/themes/theme.reqInsert.php
2026-04-06 22:58:51 +02:00

154 lines
6.9 KiB
PHP
Executable File

<?php
$nomFicAppelant = basename(__FILE__);
// -----------------------------------------------------
// Recup jeu de données couleurs du site actif avant changement
// -----------------------------------------------------
$reqSelect="SELECT * FROM `design` WHERE idTheme=" .$_SESSION['idTheme']. " ;";
if (isset($debug[2]) && $debug[2] == '1' ) $debugMsg .= monDebug(2,['reqSelect' => $reqSelect],'theme.reqInsert.php');
$resConn='';
$resConn=$idPdo->query($reqSelect);
if($resConn) {
$t=0;
while ($result=$resConn->fetch(PDO::FETCH_BOTH)) {
$defDesc[$t]=$result['description'];
$defBgCol[$t]=$result['bgColor'];
$defFont[$t]=$result['fontColor'];
if (isset($debug[2]) && $debug[2] == '1' ) $debugMsg .= monDebug(2,['Recup couleurs idThème actif' => $defDesc[$t] ],'');
$t++;
}
}
else
{ $admMsg .= "<br><span class=\"msgKo\">Echec de la récupération des couleurs du thème actif</span>"; $admMsgClass='ko';}
// -----------------------------------------------------
// Désactivation du site en cours
// -----------------------------------------------------
$reqUpdate="UPDATE `cssthemes` SET activ=0 WHERE activ=1 ; ";
$resConn='';
$resConn=$idPdo->query($reqUpdate);
if (isset($debug[2]) && $debug[2] == '1') { $debugMsg .= monDebug(2, ['reqUpdate desactiv theme en cours' => $reqUpdate], '');}
if ($resConn) {
$admMsg .= "<br>Désactivation du site actif en cours effectuée avec succès ! "; $admMsgClass='ok';;
}
else {
$admMsg .= "Echec de la desactivation du site actif en cours"; $admMsgClass='ko';
}
// -----------------------------------------------------
// Insertion + activation du nouveau site
// -----------------------------------------------------
if (!empty($descTheme)) $descTheme=addslashes($descTheme);
$reqInsert="INSERT INTO `cssthemes` VALUES (0,'" .$nomTableCibleCss. "','" .$descTheme. "',1,1,1,1,2,1);";
if (isset($debug[2]) && $debug[2] == '1') $debugMsg .= monDebug(2,['reqInsert' => $reqInsert],'theme.reqInsert.php');
$resConn='';
$resConn=$idPdo->query($reqInsert);
if ($resConn) {
$admMsg .= "<br>Activation du nouveau site : " .$descTheme. " effectuée avec succès ! "; $admMsgClass='ok';
}
else {
$admMsg .= "Echec de l'activation du nouveau site !"; $admMsgClass='ko';
}
// -----------------------------------------------------
// Recup du nouveau idTheme defini par la requete précédente ( N° incremental )
// -----------------------------------------------------
$reqSelect="SELECT idTh FROM `cssthemes` WHERE description='" .$descTheme. "' ;";
$resConn='';
$resConn=$idPdo->query($reqSelect);
$result=$resConn->fetch(PDO::FETCH_BOTH);
$idThemeActif=$result['idTh'];
$_SESSION['idTheme']=$idThemeActif;
if (isset($debug[2]) && $debug[2] == '1') { $debugMsg .= monDebug(2,['reqSelect' => $reqSelect],'');}
if ($resConn) {
if (isset($debug[2]) && $debug[2] == '1') $debugMsg .= monDebug(2,['Recup idThème actif : ' .$descTheme => 'ok' ],'theme.reqInsert.php');
}
else {
if (isset($debug[2]) && $debug[2] == '1') $debugMsg .= monDebug(2,['Recup idThème actif : ' .$descTheme => 'ko' ],'theme.reqInsert.php');
}
// -----------------------------------------------------
// Insert into Design
// -----------------------------------------------------
for($i=0; $i<count($defDesc); $i++) {
$reqInsert="INSERT INTO `design` values (0, '" .$defDesc[$i]. "', '" .$defBgCol[$i]. "', '" .$defFont[$i]. "', " .$idThemeActif. ");";
$resConn='';
$resConn=$idPdo->query($reqInsert);
if (isset($debug[2]) && $debug[2] == '1') { $debugMsg .= monDebug(2,['reqInsert' => $reqInsert],'theme.reqInsert.php');}
if ($resConn) {
if (isset($debug[2]) && $debug[2] == '1') $debugMsg .= monDebug(2,['reqInsert design nouveau site : ' .$descTheme => 'ok' ],'theme.reqInsert.php');
}
else {
if (isset($debug[2]) && $debug[2] == '1') $debugMsg .= monDebug(2,['Echec design nouveau site : ' .$descTheme => 'ko' ],'theme.reqInsert.php');
}
}
// -----------------------------------------------------
// -----------------------------------------------------
// Insert into Param
// -----------------------------------------------------
// Compter le nombre de param : le theme 1 (par defaut) existe tjrs pour mettre autant de ligne et les desc
$reqSelect="SELECT count(id) as nbLignes FROM `thmParam` WHERE idTheme=1 ;";
$resConn='';
$resConn=$idPdo->query($reqSelect);
$result=$resConn->fetch(PDO::FETCH_ASSOC);
if ($resConn) $countLigne=$result['nbLignes'];
if (isset($debug[2]) && $debug[2] == '1') $debugMsg .= monDebug(2,['reqSelect' => $reqSelect],'theme.reqInsert.php');
if ($resConn) {
if (isset($debug[2]) && $debug[2] == '1') $admMsg .= 'countLigne = ' .$countLigne; $admMsgClass='ok';
}
else {
if (isset($debug[2]) && $debug[2] == '1') $admMsg .= 'Echec recup countLigne'; $admMsgClass='ko';
}
// -----------------------------------------------------
// Insert tous les param
// -----------------------------------------------------
for($nbL=1; $nbL<=($countLigne)+1; $nbL++) {
// -----------------------------------------------------
// Recup de tous les libellés depuis defaut
// -----------------------------------------------------
$reqSelect="SELECT `desc`, val FROM `thmParam` WHERE id=" .$nbL. " and idTheme=1; ";
if (isset($debug[2]) && $debug[2] == '1') $debugMsg .= monDebug(2,['reqSelect' => $reqSelect],'theme.reqInsert.php');
$resConn='';
try {
$resConn=$idPdo->query($reqSelect);
$result=$resConn->fetch(PDO::FETCH_ASSOC);
if ($result) {
$defautDesc=$result['desc'];
$defautVal=$result['val'];
if (isset($debug[2]) && $debug[2] == '1') { $debugMsg .= monDebug(2,['Recup desc Thème actif ' .$nbL. ' ' .$descTheme => 'ok'],'');}
}
}
catch ( PDOException $e) {
if (isset($debug[2]) && $debug[2] == '1') { $debugMsg .= monDebug(2, ['Pdo Exception' => $e->getMessage()], '');}
}
// -----------------------------------------------------
// Insert chaque ligne
// -----------------------------------------------------
$defautDesc=addslashes($defautDesc);
$reqInsert="INSERT INTO `thmParam` (`num`, `id`, `desc`, `val`, `idTheme`) VALUES (0, $nbL, '" .$defautDesc. "', " .$defautVal. ", " .$idThemeActif. " );";
if (isset($debug[2]) && $debug[2] == '1') $debugMsg .= monDebug(2,['reqInsert' => $reqInsert],'theme.reqInsert.php');
$resConn='';
try {
$resConn=$idPdo->query($reqInsert);
if (isset($debug[2]) && $debug[2] == '1') {
if ($resConn)
{ if (isset($debug[2]) && $debug[2] == '1') $admMsg .= "reqInsert param nouveau thème : " .$descTheme. " effectuée avec succès ! "; }
else
{ if (isset($debug[2]) && $debug[2] == '1') $admMsg .= "Echec reqInsert param du nouveau thème"; }
}
}
catch ( PDOException $e) {
if (isset($debug[2]) && $debug[2] == '1') { $debugMsg .= monDebug(2, ['Pdo Exception' => $e->getMessage()], '');}
}
}
?>