alpha_full/_include/_fonctions/fonctionItemMessage.php
2026-04-06 22:58:51 +02:00

253 lines
9.3 KiB
PHP
Executable File

<?php
function dynamiqItemMessage ( $itemDebug, $ifDiv, $divClass, $styleDiv, $baliseType, $attrClass, $action, $var, $itemNum, $msg1) {
// ----------------------------------------
// Principe
// ----------------------------------------
// Si affichageDiv = vrai
// --> si on demande une DIV on fait une div et si on demande pas une autre balise alors
// on mets attributs dans la div,
// --> sinon on mets les attributs dans la balise demandée
// ----------------------------------------
// Soit :
// ----------------------------------------
// SI DIV et pas BALISE ==> <div attributs divClass><msg></div>
// ----------------------------------------
// Si pas DIV et BALISE <balise attributs attrClass >msg </fin balise>
// ----------------------------------------
// Si Div et balise <div divClass><balise attributs attrClass >msg</fin balise></div>
// ----------------------------------------
// ----------------------------------------
// On suppose que les tableaux $_SESSION sont toujours chargés, sinon il faudra forcer un refresh avant l'appel mais pas ici
// ----------------------------------------
// Si affichage pas renseigné on le force à 1
// ----------------------------------------
if ($var!='' && $var!='-var-' && $var!='-') {
if (isset( $_SESSION[$var. "Afficher"][$itemNum])) {$Afficher = $_SESSION[$var. "Afficher"][$itemNum];}
else $Afficher=1;
}
else {$Afficher=1;}
// ---------------------------------------------------
// Afficher Menu contextuel que dans backOffice
// ---------------------------------------------------
global $mouseOverMenuContext;
global $affMContext;
// ---------------------------------------------------
// On veut afficher
// ---------------------------------------------------
if ($Afficher==1) {
$dyItem='';
if ($itemNum!='' && $itemNum!="-") {
// recup des attributs une seule fois, puis on les repasse aux fonctions
$varMsg = $_SESSION[$var. "Msg"][$itemNum];
$varTitle = $_SESSION[$var. "Title"][$itemNum];
$varClasse = $_SESSION[$var. "Classe"][$itemNum];
$varLien = $_SESSION[$var. "Lien"][$itemNum];
}
else {
$varMsg ="";
$varTitle ="";
$varClasse="";
$varLien ="";
}
// ---------------------------------------------------
// Il y a une div conteneur : value=1
// ---------------------------------------------------
if ($ifDiv==1) {
$dyItem .= '<div ';
// ---------------------------------------------------
// divClass
// ---------------------------------------------------
if ($divClass!="" && $divClass!="-" && $divClass!='-divClass-') {
if (substr ($divClass,0,1 )=="#") {
$divClass=substr($divClass, 1, strlen($divClass) );
$dyItem .=' id="' .$divClass. '"';
}
else {
$dyItem .=' class="' .$divClass. '"';
}
}
if ($styleDiv != "" && $styleDiv!="-" && $styleDiv!='-styleDiv-') {
if ($affMContext === true) { $dyItem .= ' style="cursor:context-menu; '.$styleDiv.'"'; }
else $dyItem .= ' style="' .$styleDiv. '"';
}
if ($affMContext === true) {
$menuContextStyleNom=$divClass;
$test=strpos($menuContextStyleNom,' ');
if ($test >0) { $menuContextStyleNom = substr($menuContextStyleNom, 0, $test); }
$dyItem .= $mouseOverMenuContext. ' onContextMenu="return mContextuel(this, \'' .$menuContextStyleNom. '\',\'' .$var. '\', \'' .$itemNum. '\', event);" ';
}
}
// else {echo 'pas de div';}
// ---------------------------------------------------
// Il y a une balise
// ---------------------------------------------------
if ($baliseType!='' && $baliseType!='-balise-' && $baliseType!='-') {
if ($ifDiv==1) {
// on referme la div si on l'avait ouverte
$dyItem .= '>';
}
// on ouvre la balise {span / input / button}
$dyItem .= '<' .$baliseType. ' ';
// on appele la fonction atributs
$dyItem .= dynamicAttr( $attrClass, $action, $varTitle, $varClasse, $varLien, $var, $itemNum);
// on ferme atribut
$dyItem .= ' >';
// on appele la fonction [ divClass s'appliquera si rien d'autre ]
$dyItem .= dynamicCont($msg1, $action, $varMsg, $varLien);
// input n'a pas de fermeture de balise mais les autres oui
if ($baliseType!='input') {
$dyItem .= '</' .$baliseType. '>';}
if ($ifDiv==1) {$dyItem .= '</div> '; }
}
// ---------------------------------------------------
// Il n'y a pas de balise => c'est la div qui a les attributs
// ---------------------------------------------------
else {
// attributs sur div
$dyItem .= dynamicAttr( $attrClass, $action, $varTitle, $varClasse, $varLien, $var, $itemNum);
// on referme la div
$dyItem .= ' > ';
// on appele la fonction contenu [ divClass s'appliquera si rien d'autre ]
$dyItem .= dynamicCont($msg1, $action, $varMsg, $varLien);
// Fin de Il y a une div avec attributs
$dyItem .= '</div>';
}
// ---------------------------------------------------
// Affichage final
// ---------------------------------------------------
echo $dyItem;
// ---------------------------------------------------
// Debug a l'ecran
// ---------------------------------------------------+
if ($itemDebug==1) echo ''.htmlentities($dyItem). '';
}
// else {echo 'pas de afficher';}
}// fin function
// ---------------------------------------------------
// les attributs
// ---------------------------------------------------
function dynamicAttr ( $attrClass, $action, $varTitle, $varClasse, $varLien, $var, $itemNum) {
$dynAttr='';
global $mouseOverMenuContext;
global $affMContext;
// ---------------------------------------------------
// Action
// ---------------------------------------------------
if ($action!='' && $action!='-action-' && $action!='-') {
$dynAttr .= ' ' .$action;
}
// ---------------------------------------------------
// attrClass
// ---------------------------------------------------
if ($attrClass!='' && $attrClass!='-attrClass-' && $attrClass!='-') {
if ($affMContext === true) {
$menuContextStyleNom=$attrClass;
$test=strpos($menuContextStyleNom,' ');
if ($test > 0) { $menuContextStyleNom = substr($menuContextStyleNom, 0, $test); }
}
if (substr ($attrClass,0,1 )=="#") {
$attrClass=substr($attrClass,1,strlen($attrClass) );
$dynAttr .= ' id="' .$attrClass. '';
}
else { $dynAttr .= ' class="' .$attrClass. '"'; }
}
else
if ($varClasse!='' && $varClasse!='-attrClass-' && $varClasse!='-') {
if (substr ($attrClass,0,1 )=="#") {
$varClasse=substr($varClasse,1,strlen($attrClass) );
$dynAttr .= ' id="' .$varClasse. '';
}
else {
$dynAttr .= ' class="' .$varClasse. '"';
}
}
if ($affMContext === true && !empty($menuContextStyleNom) ) {
$test=strpos($menuContextStyleNom,' ');
if ($test > 0) {
$menuContextStyleNom = substr($menuContextStyleNom, 0, $test);
}
$dynAttr .= $mouseOverMenuContext. ' onContextMenu="return mContextuel(this, \'' .$menuContextStyleNom. '\',\'' .$var. '\', \'' .$itemNum. '\', event);" ';
}
// ---------------------------------------------------
// Title
// ---------------------------------------------------
if ($varTitle!='' && $varTitle!='-') {$dynAttr .= ' data-tooltip="' .$varTitle. '" ' ;}
// if ($varTitle!='' && $varTitle!='-') {$dynAttr .= ' data-tooltip="' .$varTitle. '" onmouseover="this.parentElement.style.zIndex=\'1000\'" onmouseout="this.parentElement.style.zIndex=\'\' "' ;}
// ---------------------------------------------------
// Lien si lien
// ---------------------------------------------------
if ($varLien!='' && $varLien!='-' ) {$dynAttr .= ' onClick="window.location=\'' .$varLien. '\'"';}
return $dynAttr;
}
// ---------------------------------------------------
// Les contenus
// ---------------------------------------------------
function dynamicCont ( $msg1, $action, $varMsg, $varLien) {
$dynContenu ='';
// ---------------------------------------------------
// Lien
// ---------------------------------------------------
// if ($target=="") {$target="_self";}
if (($varLien!='' && $varLien!='-') && ($action=='' || $action=='-action-' || $action=='-')) {
$target="_self";
$dynContenu = '<a href="' .$varLien. '" target="' .$target. '" >';
}
// ---------------------------------------------------
// Message de session
// ---------------------------------------------------
if ($varMsg!='' && $varMsg!='-') {
$dynContenu .= '' .$varMsg. '';
// ---------------------------------------------------
// Message complément
// ---------------------------------------------------
if ($msg1!='' && $msg1!='-msg1-' && $msg1!='-' ) {$dynContenu .= ' ' .$msg1. '' ;}
}
else {
if ($msg1!='' && $msg1!='-msg1-' && $msg1!='-' ) {$dynContenu .= ' ' .$msg1. '' ;}
}
// ---------------------------------------------------
// Fin lien
// ---------------------------------------------------
if (($varLien!='' && $varLien!='-') && ($action=='' || $action=='-action-' || $action=='-')) {
$dynContenu .= '</a>';
}
// echo 'AAA -> ' .$dynContenu;
return $dynContenu;
}
?>