Affichage :
Le laboratoire de Darathor Index du Forum

Le laboratoire de Darathor

Ressources diverses, principalement sur les fourms phpBB
[MOD] Notes bas de post (DEV - A)

Poster un nouveau sujet Répondre au sujet

Rechercher dans ce sujet :
Messages
Darathor Sexe : Masculin
Site Admin
Membre

Inscrit le : 02 Nov 2003
Messages : 1101
Localisation : Strasbourg
MessagePosté le : 16 Aoû 2005 17:11
Masquer ce messageAfficher ce message
Répondre en citantAjouter à liste des messages à citerRetirer de la liste des messages à citer
Citation :
But : Ajoute la balise BBcode note, permettant de définir des notes placées en fin de post.

Prérequis :
- [BBCODE] Multiple BBCode MOD

Auteur : Darathor (darathor@free.fr)
Version : 1.0 DEV - A (16/08/2005)
Compatibilité phpBB : 2.0.17


Dans "includes/bbcodes.php" :
Code :
#
# Trouver la ligne commençant par
#
$EMBB_widths = array(''

#
# Dans la ligne, trouver 
#
array(''

#
# Dans la ligne, ajouter après
#
,'40'

#
# Trouver la ligne commençant par
#
$EMBB_values = array(''

#
# Dans la ligne, trouver
#
array(''

#
# Dans la ligne, ajouter après
#
,'Note'

#
# Trouver
#
   $bbcode_tpl['email'] = str_replace('{EMAIL}', '\\1', $bbcode_tpl['email']);
   

#
# Ajouter après
#
   // DEBUT MOD Notes bas de post
   $bbcode_tpl['note_post'] = str_replace('{NOTE_ID}', '\\1', $bbcode_tpl['note_post']);
   $bbcode_tpl['note_foot'] = str_replace('{NOTE_ID}', '\\1', $bbcode_tpl['note_foot']);
   $bbcode_tpl['note_post'] = str_replace('{NOTE_NUMBER}', '\\2', $bbcode_tpl['note_post']);
   $bbcode_tpl['note_foot'] = str_replace('{NOTE_NUMBER}', '\\2', $bbcode_tpl['note_foot']);
   $bbcode_tpl['note_foot'] = str_replace('{NOTE_TEXT}', '\\3', $bbcode_tpl['note_foot']);
   // DEBUT MOD Notes bas de post

#
# Trouver
#
   // [email]user@domain.tld[/email] code..
   $patterns[] = "#\[email\]([a-z0-9&\-_.]+?@[\w\-]+\.([\w\-\.]+\.)?[\w]+)\[/email\]#si";
   $replacements[] = $bbcode_tpl['email'];

#
# Ajouter après
#
   // DEBUT MOD Notes bas de post
   $patterns[] = "#\[note=(([0-9]+):$uid)\](.*?)\[/note:$uid\]#si";
   $replacements[] = $bbcode_tpl['note_post'];
   
   // Génération des notes.
   $notes_matches = array();
   $note_foot = $bbcode_tpl['note_separ'];
   preg_match_all("#\[note=([0-9]+):$uid\](.*?)\[/note:$uid\]#si", $text, &$notes_matches);
   for($i=0; $i<count($notes_matches[0]); $i++)
   {
      $note_foot .= preg_replace("#\[note=(([0-9]+):$uid)\](.*?)\[/note:$uid\]#si", $bbcode_tpl['note_foot'], $notes_matches[0][$i]);
   }
   if($note_foot != $bbcode_tpl['note_separ']) { $text .= $note_foot; }
   // FIN MOD Notes bas de post

#
# Trouver
#
   // [i] and [/i] for italicizing text.
   $text = preg_replace("#\[i\](.*?)\[/i\]#si", "[i:$uid]\\1[/i:$uid]", $text);

#
# Ajouter après
#
   // DEBUT MOD Notes bas de post
   $i = 1;
   $new_text = $text;
   while(!($text == $new_text && $i>1))
   {
      $text = $new_text;
      $new_text = preg_replace("#\[note(|=([0-9]?))\](.*?)\[/note\]#si", "[note=$i:$uid]\\3[/note:$uid]", $text, 1);
      $i++;
   }
   $text = $new_text;
   // FIN MOD Notes bas de post


Dans "bbcodes.tpl" :
Code :
#
# Trouver
#
<!-- BEGIN email --><a href="mailto:{EMAIL}">{EMAIL}</A><!-- END email -->

#
# Ajouter après
#
<!-- BEGIN note_post --><sup><a href="#footnote-{NOTE_ID}" id="rev-footnote-{NOTE_ID}" class="postlink">{NOTE_NUMBER}</a></sup><!-- END note_post -->

<!-- BEGIN note_separ --><br />
_________________
<!-- END note_post -->

<!-- BEGIN note_foot --><br />
<sup><a href="#rev-footnote-{NOTE_ID}" id="footnote-{NOTE_ID}" class="postlink">{NOTE_NUMBER}</a></sup> : {NOTE_TEXT}
<!-- END note_foot -->


Dans "posting_body.tpl" :
Code :
#
# Trouver la ligne commençant par
#
bbtags = new Array('[b]','[/b]','[i]','[/i]','[u]','[/u]'

#
# Dans la ligne, trouver
#
'[url]','[/url]'

#
# Dans la ligne, ajouter après
#
, '[note]', '[/note]'


Dans "lang_french.php" :
Code :
#
# Trouver
#
$lang['bbcode_help']['value'] = 'BBCode Name: Info (Alt+%s)';

#
# Ajouter après
#
$lang['bbcode_help']['note'] = 'Insèrer une note en base de post : [note]texte de la note[/note] (Alt+%s)';

Revenir en haut Aller en bas
Hors ligne | Profil | MP | E-mail | Site web
  Vous ne pouvez pas poster de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas voter dans les sondages de ce forum