Les archives de FluxBB.fr
Vous n'êtes pas identifié(e).
Pages : 1
Bonjour à toutes et à tous,
J'ai découvert PunBB il y a quelques jours. N'y connaissant rien à ce type de logiciel, je l'ai installé sans problème sur mon PC sur sur mon site Free.
J'ai beaucoup apprécié son esthétique et sa simplicité d'emploi et d'administration.
Surprise ! Sans rien avoir installé de particulier, je m'aperçois qu'un correcteur orthographique est utilisé. Est-il propre à PunBB ou est-ce un autre correcteur qui est mis en oeuvre ?
Par ailleurs, j'aurais aimé avoir un formatage des liste, option qui n'existe pas de base et que je n'ai pas trouvée dans les différents "mods" et "plugins" que j'ai vus (je n'ai peut-être pas bien cherché).
J'ai donc écrit une fonction qui permet de le faire et je l'ai incluse dans le fichier "parser.php". Apparemment, cela fonctionne, cela place les balises <ul> et <li> là où il faut. Mais ... rien ne se passe à l'écran de prévisualisation ni dans celui après "envoi".
Si je place le code html résultant de ma fonction dans un fichier html sans feuille de style, j'ai un affichage correct des listes, c'est-à-dire avec une puce devant chaque item et si la ligne est trop longue, le retour vient se faire à la verticale du premier mot de l'item.
Je suppose donc que le problème de visualisation vient des feuilles de styles employées par PunBB. Le problème, c'est que je suis assez (beaucoup) nul dans ce domaine.
Ma question : comment faire pour afficher les messages avec le formatage "original ou normal" des balises <ul> et <li>.
Voici le bout de code que j'ai écrit (c'est à améliorer) :
if (strpos($text, '[list]') !== false)
{
$text = preg_replace('#\[list\](.*?)\[/list\]#s', '<ul><li>$1</li></ul>', $text); //remplacement des balises BBCode par du HTML
$textR = $text; // $textR = texte restant à analyser;
$P1 = strpos($textR, '<li>'); // Position du premier élement de la première liste
$textT = substr($textR, 0, $P1+4); // $textT = texte en amont de la liste
/* echo 'T = '.$textT;
echo '<br>';*/
while ($P1 !== false) // Tant qu'il y a des listes ...
{
/* echo 'P1 = '.$P1;
echo '<br>';*/
$P2 = strpos($textR, '</li>'); // Position du délimiteur de fin de liste
/* echo 'P2 = '.$P2;
echo '<br>';*/
$textL = substr($textR, $P1+4, $P2-$P1-4); // le texte de la liste est ce qui est entre les deux délimiteurs
$textL = preg_replace('#\n#', '</li><li>', $textL); // On remplace le retour à la ligne par du HTML dans le texte de la liste
/* echo 'L = '.$textL;
echo '<br>';*/
$textR = substr($textR, $P2+5); // le texte restant à analyser est ce qui se trouve après la fin de la liste en cours
/* echo 'R ='.$textR;
echo '<br>';*/
$P1 = strpos($textR, '<li>'); // Recherche d'une nouvelle liste
if ($P1 !== false)
$textT = $textT.$textL.substr($textR, 0, $P1+4);
else
$textT = $textT.$textL.$textR;
/* echo 'T ='.$textT;
echo '<br>';*/
}
$text = $textT;
}Il faut le placer dans la fonction "doBBcode" du fichier "parser.php" entre les instructions suivantes :
global $lang_common, $pun_user;
{c'est ici qu'il faut placer le bout de code}
if (strpos($text, 'quote') !== false)Merci de votre attention et de votre aide.
Pierre
Hors ligne
Bonjour à toutes et à tous,
J'ai découvert PunBB il y a quelques jours. N'y connaissant rien à ce type de logiciel, je l'ai installé sans problème sur mon PC sur sur mon site Free.
J'ai beaucoup apprécié son esthétique et sa simplicité d'emploi et d'administration.
Bonjour, bienvenue et ravi que ça vous plaise
!
Surprise ! Sans rien avoir installé de particulier, je m'aperçois qu'un correcteur orthographique est utilisé. Est-il propre à PunBB ou est-ce un autre correcteur qui est mis en oeuvre ?
Êtes-vous sur? ça n'est pas celui de Firefox qui serait activé par hasard?
Par ailleurs, j'aurais aimé avoir un formatage des liste, option qui n'existe pas de base et que je n'ai pas trouvée dans les différents "mods" et "plugins" que j'ai vus (je n'ai peut-être pas bien cherché).
J'ai donc écrit une fonction qui permet de le faire et je l'ai incluse dans le fichier "parser.php". Apparemment, cela fonctionne, cela place les balises <ul> et <li> là où il faut. Mais ... rien ne se passe à l'écran de prévisualisation ni dans celui après "envoi".
Si je place le code html résultant de ma fonction dans un fichier html sans feuille de style, j'ai un affichage correct des listes, c'est-à-dire avec une puce devant chaque item et si la ligne est trop longue, le retour vient se faire à la verticale du premier mot de l'item.
Je suppose donc que le problème de visualisation vient des feuilles de styles employées par PunBB. Le problème, c'est que je suis assez (beaucoup) nul dans ce domaine.
Ma question : comment faire pour afficher les messages avec le formatage "original ou normal" des balises <ul> et <li>.
Je ne pense pas que le souci vienne des feuilles de style, mais plutot de la fonction en elle-même. Pour en être sur, regardez le code source de la page HTML générée (dans Firefox : Affichage -> Code source de la page).
Et affichez ce code ici qu'on regarde s'il y a vos listes
!
Nico
Hors ligne
Bonjour,
Je pense que cela doit être effectivement cela pour le dictionnaire.
Pour ce qui est de l'affichage des listes :
Pour en être sur, regardez le code source de la page HTML générée
Mais je l'ai fait et écrit :
Si je place le code html résultant de ma fonction dans un fichier html sans feuille de style, j'ai un affichage correct des listes, c'est-à-dire avec une puce devant chaque item et si la ligne est trop longue, le retour vient se faire à la verticale du premier mot de l'item.
Pour :
Une liste :
Celi
Cela
Autre
Autre texte.
Voilà le fragment de code source que cela donne :
<div id="postpreview" class="blockpost">
<h2><span>Prévisualisation du message</span></h2>
<div class="box">
<div class="inbox">
<div class="postright">
<div class="postmsg">
<p>Une liste :<br /><ul><li>Celi</li><li>Cela</li><li>Autre</ul><br />Autre texte.</p>
</div>
</div>
</div>
</div>
</div>Vous pouvez constater que les bonnes balises sont au bon endroit.
Un des problèmes vient déjà de ce morceau de code au début du fichier "base.css :
.pun TABLE, .pun DIV, .pun FORM, .pun P, .pun H1, .pun H2, .pun H3,
.pun H4, .pun PRE, .pun BLOCKQUOTE, .pun UL, .pun OL, .pun LI, .pun DL,
.pun DT, .pun DD, .pun TH, .pun TD, .pun FIELDSET, .pun IMG {
MARGIN: 0px;
PADDING: 0px;
FONT-WEIGHT: normal;
LIST-STYLE: none;
}Si je remplace :
LIST-STYLE: none;
par
LIST-STYLE: inside;
là, je retrouve toutes les puces des listes, mais il y en a partout ! Par contre, l'indentation du texte n'est toujours pas bonne.
Je pense réellement que c'est un problème de feuille de style, mais je ne sais pas où taper !
Merci de votre aide.
Pierre
Hors ligne
ah en effet, c'est de ma faute, j'avais mal lu votre premier post
!
Dans votre fonction, il faudrait mettre quelque chose du style :
[c]<ul class="maListePerso"></ul>[/c]
avec un nom de classe complètement étranger à PunBB. Comme ça, vos listes n'utiliseraient pas le style des listes de PunBB.
En espérant avoir bien compris votre dernier post
!
Hors ligne
Dans votre fonction, il faudrait mettre quelque chose du style :
<ul class="maListePerso"></ul>
Cela me semble une idée intéressante à creuser. Mon problème est ma nullité en CSS. Je vais aller voir le site du Zéro sur lequel j'avais apprécié le cours sur les expressions régulières.
Cordialement.
Pierre
Hors ligne
Inutile dans ce cas à mon avis d'avoir de connaissances en CSS. Mettez juste un nom pour votre classe. Comme cette classe ne sera pas trouvée dans le fichier CSS, on devrait voir apparaitre les listes sans style, c'est à dire avec les puces. 
Hors ligne
En fait, afin d'afficher les listes à puces correctement, j'ai dû rajouter ce qui suit dans ma feuille de style.
/* 2.6 Affichage des listes à puces */
.pun .postmsg LI {
margin-left: 10px;
padding-left: 10px;
font-weight: normal;
list-style: inside square;
text-indent: -12px; /* lié au padding de 10px, permet d'avoir toutes les lignes cadrées sur la même verticale gauche*/
}Cordialement.
Pierre
Hors ligne
Pages : 1