"; $sep_dx = "<2>"; } else { $sep_sx = ""; $sep_dx = ""; } //DA CAMBIARE MENU PERSONALIZZATO if($menu["menu_src"] != "") { //controllo presenza di testo, senno' metto nome pagina //creo il codice //controllo inizio fine if($dove_sono and $CONFIGURAZIONE["menu_link_sempre"] != "SI") $out .= $sep_sx.$menu["menu_src_s"].$multi.$sep_dx; else $out .= $sep_sx.$menu["menu_src"].$multi.$sep_dx; } else { // ######### MENU TESTUALE if($CONFIGURAZIONE["menu_tipo"] == "TXT") { //controllo presenza di testo, senno' metto nome pagina if ($menu["menu_txt"] != "") $txt = $menu["menu_txt"]; else $txt = $menu["nome"]; //creo il codice if($dove_sono and $CONFIGURAZIONE["menu_link_sempre"] != "SI") $out .= $sep_sx.$CONFIGURAZIONE[menu_txt_sel_sx].$txt.$CONFIGURAZIONE[menu_txt_sel_dx].$multi.$sep_dx; else $out .= $sep_sx.''.$txt.''.$multi.$sep_dx; } // ######### MENU IMMAGINE if($CONFIGURAZIONE["menu_tipo"] == "IMG") { //controllo presenza alt, senno' metto nome pagina if ($menu["menu_txt"] != "") $alt = $menu["menu_txt"]; else $alt = $menu["nome"]; $alt = encode($alt); //creo il nome immagine if($dove_sono) $sel = $CONFIGURAZIONE["menu_img_sel"]; else $sel = ""; $path_img = $CONFIGURAZIONE["dir_pic"].$CONFIGURAZIONE["menu_img_path"].$menu["lang"].'/'.$menu["pagina"].$sel.$CONFIGURAZIONE["menu_img_ext"]; $size = @getimagesize($path_img); $img = ''.$alt.''; //creo il codice if($dove_sono and $CONFIGURAZIONE[menu_link_sempre] != "SI") $out .= $sep_sx.$img.$multi.$sep_dx; else $out .= $sep_sx.''.$img.''.$multi.$sep_dx; } } } } } if($CONFIGURAZIONE["menu_tipo"] == "TXT") { $out = str_replace("<2><1>",$CONFIGURAZIONE[menu_txt_sep],$out); $out = str_replace("<1>",$CONFIGURAZIONE[menu_txt_sep_sx],$out); $out = str_replace("<2>",$CONFIGURAZIONE[menu_txt_sep_dx],$out); } if($CONFIGURAZIONE["menu_tipo"] == "IMG") { $out = str_replace("<2><1>",$CONFIGURAZIONE[menu_img_sep],$out); $out = str_replace("<1>",$CONFIGURAZIONE[menu_img_sep_sx],$out); $out = str_replace("<2>",$CONFIGURAZIONE[menu_img_sep_dx],$out); } return encode($out); } function menu_livello($pagina=NULL,$lang=NULL) { menu_init(); global $MENU,$DATI; if($lang == NULL) $lang = $DATI["lang"]; if($pagina == NULL) $pagina = $DATI["pagina"]; //print $lang.$pagina; $riferimento0 = $MENU[$pagina][$lang][menu_ref]; $riferimento1 = $MENU[$riferimento0][$lang][menu_ref]; $riferimento2 = $MENU[$riferimento1][$lang][menu_ref]; //trovo livello della pagina if ($riferimento0 == "root") $livello = 0; if ($riferimento1 == "root") $livello = 1; if ($riferimento2 == "root") $livello = 2; return $livello; } //funzione trova riferimento in base al livello e alla pagina di partenza function menu_riferimento($livello=NULL,$pagina=NULL,$lang=NULL) { menu_init(); global $MENU,$DATI; if($lang == NULL) $lang = $DATI["lang"]; if($pagina == NULL) $pagina = $DATI["pagina"]; if($livello == NULL) $livello = menu_livello($pagina,$lang); //$livello_corrente = menu_livello($DATI["pagina"],$DATI["lang"]); //$lev = $livello_corrente-$livello; //print "|$lev|"; //if($lev == "0") return $MENU[$pagina][$lang][menu_ref]; //creo i riferimenti in ordine inverso $riferimento0 = $pagina; $riferimento1 = $MENU[$riferimento0][$lang][menu_ref]; $riferimento2 = $MENU[$riferimento1][$lang][menu_ref]; $riferimento3 = $MENU[$riferimento2][$lang][menu_ref]; if ($riferimento0 != "root" and $riferimento0 != "") $REF[0] = $riferimento0; //else $REF[0] = "root"; if ($riferimento1 != "root" and $riferimento1 != "") $REF[1] = $riferimento1; //else $REF[1] = "root"; if ($riferimento2 != "root" and $riferimento2 != "") $REF[2] = $riferimento2; //else $REF[2] = "root"; if ($riferimento3 != "root" and $riferimento3 != "") $REF[3] = $riferimento3; //else $REF[3] = "root"; //aggiungo root $REF[] = "root"; $REF = array_reverse($REF); //d($REF); return $REF[$livello]; } // MENU MULTILIVELLO function menu_multi($M){ global $MENU,$DATI; if($lang == NULL) $lang = $DATI["lang"]; if($pagina == NULL) $pagina = $DATI["pagina"]; $M[0] = array_merge($M[A],$M[0]); $M[1] = array_merge($M[A],$M[1]); $M[2] = array_merge($M[A],$M[2]); //$M[0][menu_multi] = "SI"; if($M[0][menu_livello] == "") $M[0][menu_livello] = "0"; //$M[1][menu_multi] = "SI"; if($M[1][menu_livello] == "") $M[1][menu_livello] = "1"; //$M[2][menu_multi] = "SI"; if($M[2][menu_livello] == "") $M[2][menu_livello] = "2"; //monto il menu //forzo l' opzione multi $m1 = menu($M[0]); $m2 = menu($M[1]); $m3 = menu($M[2]); //creo il menu $m = str_replace("#MMUL#",$m2,$m1); $m = str_replace("#MMUL#",$m3,$m); $m = str_replace("#MMUL#","",$m); return $m; } function menu_multi_all($M){ global $MENU,$DATI; if($lang == NULL) $lang = $DATI["lang"]; if($pagina == NULL) $pagina = $DATI["pagina"]; $M[0] = array_merge($M[A],$M[0]); $M[1] = array_merge($M[A],$M[1]); $M[2] = array_merge($M[A],$M[2]); $M[0][menu_multi_all] = "SI"; if($M[0][menu_livello] == "") $M[0][menu_livello] = "0"; $M[1][menu_multi_all] = "SI"; if($M[1][menu_livello] == "") $M[1][menu_livello] = "1"; $M[2][menu_multi_all] = "SI"; if($M[2][menu_livello] == "") $M[2][menu_livello] = "2"; //monto il menu //root $m0 = menu($M[0]); //print_r($m0); //mi creo tutti i menu di tutti i riferimenti di livello 1 //copio conf $M_TMP = $M[1]; $MENU_TMP = $MENU; reset($MENU_TMP); while(list($k, $v)=each($MENU_TMP)) { $lev = menu_livello($k); if($lev == "0") { $M_TMP[menu_riferimento] = "$k"; $M_TMP[menu_livello] = "1"; $m_tmp = menu($M_TMP); $m0 = str_replace("#MMUL-$k#",$m_tmp,$m0); } } $M_TMP = $M[2]; $MENU_TMP = $MENU; reset($MENU_TMP); while(list($k, $v)=each($MENU_TMP)) { $lev = menu_livello($k); if($lev == "1") { $M_TMP[menu_riferimento] = "$k"; $M_TMP[menu_livello] = "2"; $m_tmp = menu($M_TMP); $m0 = str_replace("#MMUL-$k#",$m_tmp,$m0); } } $M_TMP = $M[2]; $MENU_TMP = $MENU; while(list($k, $v)=each($MENU_TMP)) { $lev = menu_livello($k); if($lev == "2") { $m0 = str_replace("#MMUL-$k#","",$m0); } } return $m0; } ?>