0) { $ajout .= $pile_li[$niveau]; $ajout .= $pile_type[$niveau]; $niveau --; } $t .= $ajout; break; case 'ul': case 'ol': $nouv_type = $quoi; break; case 'item': default: $profond = 0; if ($l=strlen($t[2])) { $profond=$l;$nouv_type='ul'; if (strncmp($t[2],'#',1)==0) $nouv_type='ol'; } if ($profond > 0) { $ajout=''; // changement de type de liste au meme niveau : il faut // descendre un niveau plus bas, fermer ce niveau, et // remonter $change_type = ($type AND ($type <> $nouv_type) AND ($profond == $niveau)) ? 1 : 0; $type = $nouv_type; // d'abord traiter les descentes while ($niveau > $profond - $change_type) { $ajout .= $pile_li[$niveau]; $ajout .= $pile_type[$niveau]; if (!$change_type) unset ($pile_li[$niveau]); $niveau --; } // puis les identites (y compris en fin de descente) if ($niveau == $profond && !$change_type) { $ajout .= $pile_li[$niveau]; } // puis les montees (y compris apres une descente un cran trop bas) while ($niveau < $profond) { if ($niveau == 0) $ajout .= "\n\n"; elseif (!isset($pile_li[$niveau])) { $ajout .= ""; $pile_li[$niveau] = ""; } $niveau ++; $ajout .= "<$type$class_spip_plus>"; $pile_type[$niveau] = ""; } $ajout .= ""; $pile_li[$profond] = ""; } else { $ajout = $t[1]; // puce normale ou
} $t = $ajout . $t[3]; break; } return $t; } function tw_def_wrap($t){ global $class_spip_plus; return "\n$t\n"; }