373 lines
18 KiB
PHP
Executable File
373 lines
18 KiB
PHP
Executable File
<?php
|
|
$nomFicAppelant = basename(__FILE__);
|
|
|
|
// -----------------------------------------------------
|
|
// Etre admin
|
|
// -----------------------------------------------------
|
|
if (isset($_SESSION['isAdmin']) && $_SESSION['isAdmin']=='O' ) {
|
|
// -----------------------------------------------------
|
|
// Init
|
|
// Vocabulaire pas trop évident :
|
|
// Dans PHP Theme themeAgencement --> volet --> style
|
|
// Dans Mysql cssthemes => tableNomTheme --> Theme --> style
|
|
// -----------------------------------------------------
|
|
|
|
include ("./styles/css.initVar.php");
|
|
$cssMaxHeight ='';
|
|
$affAdmin=3;
|
|
$_SESSION['isAgencement'] = false;
|
|
include ($includePathAdmin. "/req/reqListeDesVolets.php");
|
|
|
|
// -----------------------------------------------------
|
|
// Post
|
|
// -----------------------------------------------------
|
|
include ("./styles/css.post_gene.php");
|
|
include ("./styles/css.post_details.php");
|
|
|
|
// -----------------------------------------------------
|
|
// Requete update style
|
|
// -----------------------------------------------------
|
|
$resUpdate='';
|
|
if ($codeOpe=="faireMajCss") {
|
|
if ($nomCss!="") { include ("./styles/req/css.reqUpdateStyles.php"); }
|
|
else {if (isset($debug[1]) && $debug[1] == '1' ) $debugMsg .= monDebug (1,['Nom Css vide dans frm.css', ''],''); }
|
|
}
|
|
|
|
if ($resUpdate!='') {
|
|
if (isset($debug[2]) && $debug[2] == '1') { $debugMsg .= monDebug(2, ['Mise à jour des styles' => $resUpdate], '');}
|
|
|
|
// -----------------------------------------------------
|
|
// Requete update image
|
|
// -----------------------------------------------------
|
|
if ($codeOpe=="uploadImageDeFond") {
|
|
$target_dir = "../Design/_fonds/";
|
|
$targetExtension =['jpeg', 'jpg', 'png', 'svg', 'bmp'];
|
|
$targetSize ='5242880'; //5 Mo
|
|
$largeurMax = 0;
|
|
$hauteurMax = 0;
|
|
$largeurMin = 0;
|
|
$hauteurMin = 0;
|
|
$uploadOk =0;
|
|
include ($includePathAdmin. "/_fonctions/uploadGenerique.php");
|
|
// $theImageFonds=$theImage;
|
|
if ($uploadOk==1) include ("./styles/req/css.reqUpdateImageFonds.php");
|
|
}
|
|
}
|
|
|
|
// -----------------------------------------------------
|
|
// Requete delete image
|
|
// -----------------------------------------------------
|
|
if ($codeOpe=="deleteImage") { include ("./styles/req/requeteDeleteImgDeFonds.php"); }
|
|
|
|
// -----------------------------------------------------
|
|
// Requete liste des modeles
|
|
// -----------------------------------------------------
|
|
include ($includePathAdmin. "/req/themesCss.reqSelect.Liste.php");
|
|
|
|
// -----------------------------------------------------
|
|
// Recup des valeurs dimensions en fonction de id dimension posté
|
|
// pour la liste complete
|
|
// -----------------------------------------------------
|
|
include ("./styles/dimensions/dimensionsListeReqSelect.php");
|
|
if ($widthSelectedIndex!='') {$widthUnite=$dimensionsLargUnite[$widthSelectedIndex];}
|
|
if ($heightSelectedIndex!='') {$heightUnite=$dimensionsHautUnite[$heightSelectedIndex];}
|
|
|
|
// -----------------------------------------------------
|
|
// Selection du volet en fonction du nom du style
|
|
// -----------------------------------------------------
|
|
if (!isset($theVoletCss)) { include ("./styles/req/css.voletFromNomcss.php"); }
|
|
|
|
// -----------------------------------------------------
|
|
// Select liste des styles du theme
|
|
// -----------------------------------------------------
|
|
include ("./styles/req/css.listeStylesFromVolet.php");
|
|
|
|
// -----------------------------------------------------
|
|
// Trouver le themeDesign selon le volet actif
|
|
// -----------------------------------------------------
|
|
include ("./styles/couleursGene/coulGeneThemes.php");
|
|
|
|
// -----------------------------------------------------
|
|
// Recup numcs
|
|
// -----------------------------------------------------
|
|
if ($nomCss!='' && $theNumCss =='') {
|
|
if (isset($debug[2]) && $debug[2] == '1' ) $debugMsg .= monDebug (1,['nomCss', $nomCss],'');
|
|
// CHANGEMENT NUMERO DEPART A ZERO LE 31.03.2025
|
|
for($m=0; $m<=count($cssNom); $m++) {
|
|
if (isset($debug[2]) && $debug[2] == '1') { $debugMsg .= monDebug(2, ['cssNom[m]' => $cssNom[$m]], '');}
|
|
if ($nomCss==$cssNom[$m] || '#' .$nomCss==$cssNom[$m]) {
|
|
$theNumCss=$m;
|
|
if (isset($debug[2]) && $debug[2] == '1') { $debugMsg .= monDebug(2, ['correspondance nomCss trouvée' => $theNumCss], '');}
|
|
}
|
|
}
|
|
}
|
|
|
|
// -----------------------------------------------------
|
|
// Debug
|
|
// -----------------------------------------------------
|
|
if (isset($debug[7]) && $debug[7] == '1' ) {include ("./styles/styles.debug.php");}
|
|
if (isset($debug[1]) && $debug[1] == '1' ) {include ("./styles/css.debug.php");}
|
|
|
|
// -----------------------------------------------------
|
|
// Recup enregistrement courant from la table CSS = nomThemeCss
|
|
// -----------------------------------------------------
|
|
if (isset($cssNom[$theNumCss])) {
|
|
include ("./styles/req/css.selectStyleFromNum.php");
|
|
}
|
|
else {
|
|
if (isset($debug[2]) && $debug[2] == '1') { $debugMsg .= monDebug(2, ['$cssNom[' => $theNumCss, ']=' => '', 'indéfini' => '', ';' => ''], '');}
|
|
}
|
|
|
|
// -----------------------------------------------------
|
|
// Form
|
|
// -----------------------------------------------------
|
|
echo '<form name="menuSiteForm" id="menuSiteForm" method="POST" enctype="multipart/form-data" >';
|
|
echo '<div id="zonePageWbm">';
|
|
|
|
// -----------------------------------------------------
|
|
// Titre de page
|
|
// -----------------------------------------------------
|
|
echo '<div id="zoneTitreWbm" > ';
|
|
echo '<input type="hidden" action="upCompass.php" name="affCss" id="affCss" value="' .$affCss. '" >';
|
|
echo '<span id="resize" class="jsResize fad fa-arrow-circle-left" onClick="jsResize();"></span> ';
|
|
echo '<span class="titreWbm" >';
|
|
echo '<img border="0" onClick="affDebug();" valign="top" align="center" src="' .$includeAdminDesign. '/design.png" alt="CSS" title="CSS" /> ';
|
|
if ($affCss==2)
|
|
echo '<span>Gestion du moteur de styles : Compass CSS</span>';
|
|
else
|
|
echo '<span><a target="_top" href="./frmAdmin.php?affAdmin=3&affCss='.$affCss.'">Gestion des styles </a></span>';
|
|
echo '</span>';
|
|
include($includePathAdmin. "/zoneMonCompte.php");
|
|
echo '<br>';
|
|
echo '</div>'; //zoneTitreWbm
|
|
|
|
// -----------------------------------------------------
|
|
// Menu styles
|
|
// -----------------------------------------------------
|
|
echo '<div id="zoneMenuWbmContainer" style="top: 59px;">';
|
|
echo '<div id="zoneMenuWbm" >';
|
|
|
|
// -----------------------------------------------------
|
|
// Bouton Couleur generiques
|
|
// -----------------------------------------------------
|
|
echo '<span class="boutonsMenusWbm" >';
|
|
echo '<i id="btnCoulGene" class="fad fa-palette"></i>';
|
|
echo '<span onClick="window.self.location=\'./frmModale.php?affAdmin=3&affModale=3-1&affCss='.$affCss.'\';"> Couleurs par espaces</span> ';
|
|
echo '</span>';
|
|
|
|
// -----------------------------------------------------
|
|
// Bouton Dimensions generiques
|
|
// -----------------------------------------------------
|
|
echo '<span class="boutonsMenusWbm" >';
|
|
echo ' <i id="btnDimGene" class="fad fa-sign" ></i>';
|
|
echo '<span onClick="window.self.location=\'./frmModale.php?affModale=3-2&affCss='.$affCss.'\';"> Dimensions génériques</span> ';
|
|
echo '</span>';
|
|
|
|
// -----------------------------------------------------
|
|
// Bouton compass
|
|
// -----------------------------------------------------
|
|
// flag edt
|
|
// ne pas mettre de bouton si ok avec automatisation
|
|
$moteurSCSS=0;
|
|
if($moteurSCSS==1) {
|
|
echo '<span class="boutonsMenusWbm boutonEnregistrer" >';
|
|
echo ' <i id="btnPub" class="boutonEnregistrer fad fa-play-circle"></i>';
|
|
echo '<span title="Lancer compas" ><a href="./frmAdmin.php?affAdmin=3&nomThemeCss=' .$nomThemeCss. '" target="_parent"> Moteur CSS</span></a> ';
|
|
echo '</span>';
|
|
}
|
|
echo '</div>'; //zoneMenuWbm
|
|
echo '</div>'; //zoneMenuWbm
|
|
|
|
// -----------------------------------------------------
|
|
// Zone recherche ou aide ou sous-menus
|
|
// -----------------------------------------------------
|
|
echo '<div id="zoneRechercheWbm" style="top: 17px; min-height: 110px; overflow: visible;">';
|
|
|
|
// -----------------------------------------------------
|
|
// Icône d'information
|
|
// -----------------------------------------------------
|
|
echo '<span style="margin:3px;">';
|
|
// Icône d'information
|
|
echo '<span class="info-icon fad fa-info-circle" onMouseOver="openPopup(\'Css\')" onClick="openPopup(\'Css\')" onMouseLeave="closePopup(\'Css\');"></span>';
|
|
echo '<div id="popupInfoCss" class="popup">';
|
|
echo '<div class="popup-content">';
|
|
echo '<span class="popup-close" onclick="closePopup(\'Css\');">×</span>';
|
|
echo '<img src="./adminInclude/designAdmin/info.png" alt="Info" class="popup-icon" />';
|
|
echo '<p>
|
|
🔧 <strong>Utilisation avancée des styles :</strong> Pour le modèle d\'agencement en cours ( collection ), choisissez un espace de styles, puis un objet de la page et modifiez le style associé.
|
|
<br><br>
|
|
🎨 Vous pouvez alors modifier l\'affichage, la couleur, le fond, l\'espacement, la police...
|
|
<br> Pour <strong>annuler</strong> une saisie, <strong><span style="color:red">vous pouvez entrer «-» ( le tiret du 6 )</strong></span>, la saisie ne sera pas prise en compte ( différent de zero ).
|
|
<br><br>
|
|
👁 La zone <strong>Prévisualiser</strong> vous permet de voir immédiatement le résultat. Si vous êtes satisfait de la prévisualisation, vous pouvez <strong>enregistrer</strong> afin de visualiser le site de Test.
|
|
<br><br>
|
|
🌐 Ensuite, vous pouvez <strong>publier</strong> sur le site public.
|
|
<br><br>
|
|
📱 Le mode <strong>responsive</strong> est pris en compte automatiquement, aucune action n\'est nécessaire.
|
|
</p>';
|
|
echo '</div>';
|
|
echo '</div>';
|
|
//echo '</span>';
|
|
echo '</span>';
|
|
|
|
if ($affCss!=2) {
|
|
// -----------------------------------------------------
|
|
// Themes CSS ( ce n'est pas themes agencement )
|
|
// -----------------------------------------------------
|
|
echo '<div style="display:flex; flex-wrap:wrap; justify-content:space-between; " >';
|
|
echo '<span class="actionMessages" style="margin:7px;">Collection :  ';
|
|
echo '<select name="nomThemeCss" class="selectWbm" onChange="menuSiteForm.submit();" >';
|
|
for($i=0;$i<count($themeTabId);$i++) {
|
|
if ($themeTabNom[$i]==$nomThemeCss) {
|
|
if ($themeTabNom[$i]=="css_default") {echo '<option value="' .$themeTabNom[$i]. '" style="color:blue;font-weight:bold;" selected>' .$themeTabDescription[$i]. '</option>';}
|
|
else echo '<option value="' .$themeTabNom[$i]. '" style="color:grey;font-weight:bold;" selected>' .$themeTabDescription[$i]. '</option>';
|
|
}
|
|
else {
|
|
if ($themeTabNom[$i]=="css_default") {echo '<option value="' .$themeTabNom[$i]. '" style="color:blue;font-weight:bold;" >' .$themeTabDescription[$i]. '</option>';}
|
|
else echo '<option value="' .$themeTabNom[$i]. '" style="color:grey;font-weight:bold;" >' .$themeTabDescription[$i]. '</option>';
|
|
}
|
|
}
|
|
echo '</select>';
|
|
echo '</span>';
|
|
|
|
// -----------------------------------------------------
|
|
// Listes deroulantes des styles = volet
|
|
// ---------------------------------------------------- -
|
|
echo '<div class="actionMessages" style="margin:7px;">Espaces des styles : ';
|
|
$theVoletCss=str_replace("\\", "", $theVoletCss); // si structure d\'entete on enleve le \
|
|
echo '<select id="theVoletCss" class="selectWbm" name="theVoletCss" onChange="menuSiteForm.submit();" >';
|
|
if ($theVoletCss=='') {echo '<option value="Choisir un thème de page"></option>';}
|
|
|
|
for ($i=0; $i<count($cssVolet); $i++) {
|
|
// on peut arriver ici par d'autres pages avec un get, mais dans ce cas pas d'accents ni apostrophe, alors on fait un strstr pour comparrer qu'une partie de la chaine
|
|
if (strstr($cssVolet[$i], $theVoletCss)) {
|
|
echo '<option class="selectWbm" value="' .$cssVolet[$i]. '" selected >' .$cssVolet[$i]. '</option>';
|
|
// on reprends le $theVoletCss complet faudrait voir pour refaire la requete des sous styles....
|
|
$_SESSION['theVoletCss']=$cssVolet[$i];
|
|
}
|
|
else
|
|
{echo '<option class="selectWbm" value="' .$cssVolet[$i]. '" >' .$cssVolet[$i]. '</option>';}
|
|
}
|
|
echo '</select>';
|
|
echo '</div>';
|
|
|
|
// -----------------------------------------------------
|
|
// Description des styles dans le volet
|
|
// -----------------------------------------------------
|
|
echo '<span class="actionMessages" >Objets dans chaque page :  ';
|
|
|
|
if ($theVoletCss!="-------------") {
|
|
echo '<select id="theNumCss" class="selectWbm" name="theNumCss" onChange="menuSiteForm.submit();" >';
|
|
for ($i=0; $i<count($cssDescription); $i++) {
|
|
if ($i==$theNumCss) {
|
|
echo '<option value="' .$i. '" selected>' .$i. ' - ' .$cssDescription[$i]. '</option>';
|
|
}
|
|
else
|
|
{echo '<option value="' .$i. '" >' .$i. ' - ' .$cssDescription[$i]. '</option>';}
|
|
}
|
|
echo '</select>';
|
|
}
|
|
else {
|
|
echo '<select id="theNumCss" name="theNumCss" width="200px" style="width:200px;" >';
|
|
echo '<option selected>Pas de style pour ce choix !</option>';
|
|
echo '</select>';
|
|
}
|
|
echo '</span>';
|
|
echo '</div>';
|
|
// echo '</div>';
|
|
}
|
|
|
|
if ($codeOpe=='genereCss') {
|
|
// flag edt
|
|
// ne pas mettre de bouton si ok avec automatisation
|
|
include ("./styles/genererStyles.php");
|
|
include ("./styles/responsiv/00-chapeauResponsive.php");
|
|
if ($retour !='') {
|
|
$admMsg .= " Après vérifications ( appuyez sur ctrl et r à la fois [ctrl-r], pour forcer la prise en compte ), veuillez publier pour impacter le site en production ( site public )";
|
|
// affichage du message quand on a lancé le responsive, ne fonctionnant pas avec msgUser
|
|
}
|
|
if ($debugResponsive==1) {
|
|
echo '<div >';
|
|
echo $debugRespMsg;
|
|
echo '</div>';
|
|
}
|
|
}
|
|
|
|
if ($affCss!=2) {
|
|
if ($nomCss!='') {
|
|
|
|
// -----------------------------------------------------
|
|
// Nom du style
|
|
// -----------------------------------------------------
|
|
echo '<span style="display:flex; justify-content:center;padding:4px;" >';
|
|
echo '<i class="fad fa-tags"></i>';
|
|
echo '<span class="informationsTechLib"><b>Nom du style :</b> </span>';
|
|
echo '<span style="color:red; font-weigh:bold;">' .$nomCss. '</span> ';
|
|
echo '</span>';
|
|
|
|
// -----------------------------------------------------
|
|
// Theme de couleur
|
|
// -----------------------------------------------------
|
|
echo '<span style="display:flex; justify-content:center;padding:4px;" >';
|
|
echo '<i class="fad fa-palette"></i>';
|
|
echo '<span class="informationsTechLib"> <b>Thème de couleur actuel :</b> </span>';
|
|
echo '<span class="">' .$themeDesign. '</span> ';
|
|
echo '</span>';
|
|
|
|
// -----------------------------------------------------
|
|
// Commentaires
|
|
// -----------------------------------------------------
|
|
if (isset($cssComment[$theNumCss])) {
|
|
echo '<span style="display:flex; justify-content:center; padding:4px; align-items: center; width:97%; flex:1" >';
|
|
echo '<i class="fad fa-comments" ></i>';
|
|
echo '<span class="informationsTechLib"> <b>Commentaire</b> (modifiable) : </span>';
|
|
echo '<textarea class="inputWebmaster" rows="1" style="border:1px solid lightgrey; overflow: auto; display:block; width:97%" id="commentCss" name="commentCss" onChange="editMonForm(\'Comment\',0);">'.$cssComment[$theNumCss].'</textarea>';
|
|
echo '</span>';
|
|
}
|
|
}
|
|
}
|
|
|
|
// -----------------------------------------------------
|
|
// Nom du style input en caché
|
|
// -----------------------------------------------------
|
|
if (isset($cssNom[$theNumCss])) {$nommCssICI=$cssNom[$theNumCss];} else $nommCssICI='';
|
|
echo '<input type="hidden" id="nomCss" name="nomCss" value="' .$nommCssICI. '" >';
|
|
// echo '<input type="hidden" id="designGloablMaj" name="designGloablMaj" value="' .$designGloablMaj. '" />';
|
|
|
|
echo '<input type="hidden" id="themeBgColor" name="themeBgColor" value="' .$themeBgColor. '" />';
|
|
echo '<input type="hidden" id="themeFontColor" name="themeFontColor" value="' .$themeFontColor. '" />';
|
|
echo '<input type="hidden" id="globalBgColor" name="globalBgColor" value="' .$globalBgColor. '" />';
|
|
echo '<input type="hidden" id="globalFontColor" name="globalFontColor" value="' .$globalFontColor. '" />';
|
|
echo '<input type="hidden" id="codeOpe" name="codeOpe" value="' .$codeOpe. '" />';
|
|
echo '</div>'; //zoneRechercheWbm
|
|
|
|
// -----------------------------------------------------
|
|
// Page css
|
|
// -----------------------------------------------------
|
|
if ($_SESSION['isAgencement'] === true) echo '<div id="zoneFormWbm" style="min-height:700px">';
|
|
else echo '<div id="zoneFormWbm" style="min-height:200px">';
|
|
if ($affCss==2)
|
|
include ("./styles/upCompass.php");
|
|
else
|
|
include ("./styles/css.php");
|
|
echo '</div>'; //zoneFormWeb
|
|
|
|
// -----------------------------------------------------
|
|
// Afficher messages webmaster
|
|
// -----------------------------------------------------
|
|
if (!empty($admMsg) || !empty($debugMsg) ) {
|
|
echo '<div id="zoneMsgWbm">';
|
|
include ($includePathAdmin. "/adminMsg.php");
|
|
echo '</div>'; //zoneMsg
|
|
}
|
|
echo '</div>'; //zonePageWbm
|
|
echo '</form>';
|
|
|
|
echo '<script type="text/javascript">initAffCss();</script>';
|
|
include ("./styles/fin_session_css.php");
|
|
}
|
|
else {
|
|
$confPath="../_conf";
|
|
include ("../adminInclude/redirectionAdmin.php");
|
|
}
|
|
?>
|