Forum verrouillé Forum verrouillé Imprimer Syndication RSS 2.0

[MOD] FSCode table

Volcan
Avatar de Eagle
  • Age : 34 ans
  • Messages : 1105
  • Inscrit : 22 Janvier 2005
  Lien vers ce message 22 Février 2006, 14:07
Voici un nouveau FSCode pour les tables. C'est une version très simple basée sur le FSCode list.

/*******************************************************************************
*     MOD FSCode table :: version 1.0.0
*
*   ---------- Auteur --------------------------------------------------------
*   Auteur ::				Eagle
*   Email ::				eagle-22@bluewin.ch
*   Site Web ::				http://www.loutan.net/eagle
*
*   ---------- Mod -----------------------------------------------------------
*   Nom ::				FSCode table
*   Version ::				1.0.0
*   Compatible ::			FSB 1.0.5
*
*   Description ::			Cette FSCode permet de rajouter une table (simple) dans un message (basé sur la liste).
*					[table][-]L1-C1[*]L1-C2[*]L1-C3[-]L2-C1[*]L2-C2[*]L2-C3[/table]
*
*   Temps d'installation ::	~5 minutes minutes
*   Requete ::			Non
*   Cache ::			Oui
*   Fichiers joins ::		0
*   Fichiers à modifier ::	3 (4 si reponse_rapide)
*
*   ---------- Historique ----------------------------------------------------
*   Commencé ::               Le 22 / 02 / 2006
*
*******************************************************************************/

#
# [1] ---------- requete cache --------------------------------------------------
#
INSERT ac_mods FIELDS mod_name mod_version mod_description mod_auteur mod_email mod_actif VALUES 'fscode_table' '1.0.0' 'Cette FSCode permet de rajouter une table (simple) dans un message (basé sur la liste).' 'Eagle' 'eagle-22@bluewin.ch' '1';

#
# [2] ---------- ouvrir ---------------------------------------------------------
#
poster.php

#
# [3] ---------- chercher -------------------------------------------------------
#
$fscode_bouttons = array('b', 'i', 'u', 'url', 'mail', 'img', 'quote', 'code', 'list');

#
# [4] ---------- apres, ajouter -------------------------------------------------
#
// Mod table
if ( $MOD['fscode_table'] ){
	$fscode_bouttons[] = 'table';
}

#
# [5*] ---------- ouvrir ---------------------------------------------------------
# si reponse_rapide installé
includes/reponse_rapide.php

#
# [6*] ---------- chercher -------------------------------------------------------
#
	$fscode_bouttons = array('b', 'i', 'u', 'url', 'mail', 'img', 'quote', 'code', 'list');

#
# [7*] ---------- apres, ajouter -------------------------------------------------
#
	// Mod table
	if ( $MOD['fscode_table'] ){
		$fscode_bouttons[] = 'table';
	}


#
# [8] ---------- ouvrir ---------------------------------------------------------
#
includes/functions/fonctions_message.php

#
# [9] ---------- chercher -------------------------------------------------------
#
	$texte = parse_list($texte);

#
# [10] ---------- apres, ajouter -------------------------------------------------
#
	// Mod table
	if ( $GLOBALS['MOD']['fscode_table'] ) {
		$texte = parse_table($texte);
	}

#
# [11] ---------- chercher -------------------------------------------------------
#
/*
** Gestion des FScodes [list]
*/
function parse_list($str)

#
# [12] ---------- avant, ajouter -------------------------------------------------
#
/**
 * Mod Table [table]
 */
function parse_table($str)
{
	while(preg_match('/\n?\[table\](.+?)\[\/table\]\n?/is', $str))
	{
		$str = preg_replace('/\n?\[table\](.+?)\[\/table\]\n?/ies', "subparse_table('\\1')" , $str);
	}
	return ($str);
}

function subparse_table($str)
{
	$str = str_replace('\"', '"', $str);
	$str = preg_replace('/^<br \/>/', '', $str);
	$str = preg_replace('/\[\-\]/', '</td></tr><tr><td>', $str);
	$pos = strpos($str, '</td></tr>');
	$str = substr_replace($str, '', $pos, 10);
	$str = preg_replace('/\[\*\]/', '</td><td>', $str);
	$str = str_replace( "<br /></td>", '</td>', $str . '</td></tr>');
	return '<table border="1">' . $str . '</table>';
}

#
# [13] ---------- ouvrir ---------------------------------------------------------
#
langues/fr/langue_faq.php

#
# [14] ---------- chercher -------------------------------------------------------
#
/********************************************
* FAQ des FScodes
********************************************/

#
# [15] ---------- apres, ajouter -------------------------------------------------
#
// Mod Table
$faq_fscode[] = array("FScode table [table]" => "Pour créer des tables vous pouvez utiliser les balises [table] et [/table] combinées avec [-] pour les nouvelles lignes et [*] pour les nouvelles cellules dans la ligne courante.<br /><br /><span class=\"b\">Exemple:</span> [table][-]Première colonne[*]Deuxième colonne[-]Deuxième ligne[*]Fin[/table] donnera<br />" . fscode_parse("[table][-]Première colonne[*]Deuxième colonne[-]Deuxième ligne[*]Fin[/table]"));


Eagle


Dans les hauteurs des cieux, par delà les nuages et les sommets enneigés, l'aigle majestueux survole la terre...

Kosmos & Eagle homepage ^^
 
Flamme ardente
Avatar de Punisher
  • Age : 21 ans
  • Messages : 452
  • Inscrit : 04 Février 2006
  Lien vers ce message 22 Février 2006, 14:42
J'ai pas compris a quoi il sert x) .
Tu pourrait m'expliquer plus en détail :lol: ?


http://img170.imageshack.us/img170/7417/banvdesigner2oy.png
 
Etoile
Avatar de Ghost Warrior
  • Age : 26 ans
  • Messages : 3536
  • Inscrit : 14 Novembre 2004
  Lien vers ce message 22 Février 2006, 14:51
Impossibilité d'executer la cache

Pcache error :: Il y a un nombre différent de champs et de valeurs
----------------------

Erreur SQL: 0

Requête SQL: INSERT ac_mods FIELDS mod_name mod_version mod_description mod_auteur mod_email mod_actif VALUES 'fscode_table' '1.0.0' 'Cette FSCode permet de rajouter une table (simple) dans un message (basé sur la liste).' 'Eagle' 'eagle-22@bluewin.ch'

Ligne: 99
Fichier: /home/httpd/vhosts/www.allez-vous-ailleur-:p/admin/admin_index_cache.php


L'amour est aveugle, il faut donc toucher.

La mort est un état de non-existence. Ce qui n'est pas n'existe pas. Donc la mort n'existe pas.

Comment le vent sait-il dans quelle direction il doit souffler ?
 
Equipe de développement
Avatar de SquallX
  • Age : 22 ans
  • Messages : 2929
  • Inscrit : 18 Novembre 2004
  Lien vers ce message 22 Février 2006, 14:54
En gros il permet de faire un tableau de ce style :

http://www.fire-corporation.net/dev_fc/images/divers/tableau.jpg

Par contre j'ai pas tous compris avec les [+] et les [*] :bierre:
 
Flamme ardente
Avatar de Punisher
  • Age : 21 ans
  • Messages : 452
  • Inscrit : 04 Février 2006
  Lien vers ce message 22 Février 2006, 14:56
A sa a l'air d'etre bien... faudra que je l'instale :lol:


http://img170.imageshack.us/img170/7417/banvdesigner2oy.png
 
Volcan
Avatar de Eagle
  • Age : 34 ans
  • Messages : 1105
  • Inscrit : 22 Janvier 2005
  Lien vers ce message 22 Février 2006, 15:01
J'ai remplacé les [+] par [-] pour être compatible avec le mod prévisualitation instantanée...
J'ai également corrigé un peu la méthode de parsing pour traiter un cas particulier.

Pour le reste c'est simple
[-] correspond au début de ligne ET début de première cellule
[*] correspond au début de la cellule suivante de la même ligne

[edit] Pour l'erreur de requête du cache, c'est étrange, j'ai eu la même erreur avec un autre mod, j'ai repassé la requête et c'était bon O.o
[re-edit]A priori il faut bien prendre la requête complète... dans ton log il manque le '1'; de la fin (j'ai dû faire la même erreur une fois) :P

Voilà...


Dans les hauteurs des cieux, par delà les nuages et les sommets enneigés, l'aigle majestueux survole la terre...

Kosmos & Eagle homepage ^^
 
Etoile
Avatar de Ghost Warrior
  • Age : 26 ans
  • Messages : 3536
  • Inscrit : 14 Novembre 2004
  Lien vers ce message 22 Février 2006, 15:10
Vraiment étrange, je retest sans avoir changé et cela fonctionne pffff


L'amour est aveugle, il faut donc toucher.

La mort est un état de non-existence. Ce qui n'est pas n'existe pas. Donc la mort n'existe pas.

Comment le vent sait-il dans quelle direction il doit souffler ?
 
Etoile
Avatar de Ghost Warrior
  • Age : 26 ans
  • Messages : 3536
  • Inscrit : 14 Novembre 2004
  Lien vers ce message 22 Février 2006, 15:22
Bizarre que FSCode dans FAQ n'apparait pas... je parle fscode table...


L'amour est aveugle, il faut donc toucher.

La mort est un état de non-existence. Ce qui n'est pas n'existe pas. Donc la mort n'existe pas.

Comment le vent sait-il dans quelle direction il doit souffler ?
 
Equipe de développement
Avatar de Fabogranqi
  • Age : 23 ans
  • Messages : 3238
  • Inscrit : 29 Décembre 2004
  Lien vers ce message 22 Février 2006, 20:42
Quoi ca ne fonctionnait pas les [+] avec le mod prévisulisation instantannée ? x)
 
Volcan
Avatar de Eagle
  • Age : 34 ans
  • Messages : 1105
  • Inscrit : 22 Janvier 2005
  Lien vers ce message 23 Février 2006, 10:02
Bon, j'ai dû retoucher ton mod de prévisualisation instantanée pour qu'il support les tests de mod dans fonctions_messages.php mais il y a un effet bizarre qui fait que le + disparaît de la chaîne de caractère, mais que dans le cas de la prévisualisation instantanée, j'ai préférer changer de symbole plutôt que de chercher midi à 14h :P


Dans les hauteurs des cieux, par delà les nuages et les sommets enneigés, l'aigle majestueux survole la terre...

Kosmos & Eagle homepage ^^
 
Brasier
Avatar de DDril
  • Messages : 756
  • Inscrit : 03 Janvier 2005
  Lien vers ce message 23 Février 2006, 11:37
Haaa encore un fscode excellent !

Bravo Eagle !


Webmaster de l'Organisation Très Secrète
 
Volcan
Avatar de Eagle
  • Age : 34 ans
  • Messages : 1105
  • Inscrit : 22 Janvier 2005
  Lien vers ce message 23 Février 2006, 14:58
En fait j'ai pas fait grand chose, j'ai juste adapté le FSCode list de Genova pour le cas des tables ^^ C'est du bête copié-collé-adapté en somme...


Dans les hauteurs des cieux, par delà les nuages et les sommets enneigés, l'aigle majestueux survole la terre...

Kosmos & Eagle homepage ^^
 
Etoile
Avatar de Ghost Warrior
  • Age : 26 ans
  • Messages : 3536
  • Inscrit : 14 Novembre 2004
  Lien vers ce message 23 Février 2006, 16:33
Sinon, le FAQ marche chez vous ?


L'amour est aveugle, il faut donc toucher.

La mort est un état de non-existence. Ce qui n'est pas n'existe pas. Donc la mort n'existe pas.

Comment le vent sait-il dans quelle direction il doit souffler ?
 
Volcan
Avatar de Eagle
  • Age : 34 ans
  • Messages : 1105
  • Inscrit : 22 Janvier 2005
  Lien vers ce message 24 Février 2006, 8:23
Ben chez moi oui, mais j'ai peut-être oublié quelque chose en mettant en ligne. Alors si quelqu'un d'autre a un problème je vais aller regarder de plus près tout ça ^^

[edit]En revanche j'ai trouvé un problème dans le parsing quand il y a un retour à la ligne entre le tag [table] et le [-]. J'ai corrigé le mod (correction effective dans le premier message du sujet). Voici le nouveau code de la fonction de parsing (qui se trouve dans fonctions_message.php)

function subparse_table($str)
{
   $str = str_replace('\"', '"', $str);
   $str = preg_replace('/^<br \/>/', '', $str);
   $str = preg_replace('/\[\-\]/', '</td></tr><tr><td>', $str);
   $pos = strpos($str, '</td></tr>');
   $str = substr_replace($str, '', $pos, 10);
   $str = preg_replace('/\[\*\]/', '</td><td>', $str);
   $str = str_replace( "<br /></td>", '</td>', $str . '</td></tr>');
   return '<table border="1">' . $str . '</table>';
}


Dans les hauteurs des cieux, par delà les nuages et les sommets enneigés, l'aigle majestueux survole la terre...

Kosmos & Eagle homepage ^^
 
Chef du projet FSB
Avatar de Genova
  • Age : 26 ans
  • Messages : 14944
  • Inscrit : 16 Septembre 2004
  Lien vers ce message 24 Février 2006, 21:41
Pas mal interessant comme FSBcode, par contre il n'y a pas de risques de bugs HTML ?


Cause Im as free as a bird now, And this bird you can not change. - Freebird - Lynyrd Skynyrd
There's someone in my head but it's not me. - Brain damage - Pink Floyd
I said baby, you know Im gonna leave you. - Babe I'm gonna leave you - Led Zeppelin
Father ? yes son, I want to kill you - The end - The Doors
 
Forum verrouillé


.