Page 1 sur 1

Problème avec mod sur forum phpBB2

Publié : 26 mars 2005, 17:22
par EmmaZL
Bonjour,

Je suis bien consciente qu'on n'est pas sur un forum de support phpBB2 alors j'espère que vous ne m'en voudrez pas de poser ma question ici. J'ai bien mis un post sur le forum de phpBB-fr, mais avec 38'000 membres enregistré, il faut attendre env. 6 mois avant d'avoir une réponse ! :cry:

Je comprends si ça vous ennuie de répondre, alors peut-être que quelqu'un connaît un autre forum de support pour les mods ??

Voilà, je viens d'installer Birthday Mod mais l'âge ne s'affiche pas à côté des posts (sous l'avatar). Je précise que j'ai un template pas standard. Les infos à côté du posts sont gérés par un fichier à part qui s'appelle viewtopic_post_left.tpl (et non viewtopic_body.tpl comme c'est le cas d'habitude)

Voici mon code, qui me paraît être exact, mais peut-être que je me trompe (en tout cas pour le Mod Gender, ça marche) :

Code : Tout sélectionner

<td width="150" class="{postrow.TPL_CLASS_PROFILE}" align="center" valign="top" rowspan="2">
		<span class="name">{postrow.POSTER_NAME}<br /></span>
		<!-- IF TPL_CFG_RANKS_TEXT == "above" || TPL_CFG_RANKS_TEXT == "text" --><div style="padding: 2px;"><span class="postdetails">{postrow.POSTER_RANK}</span><br /></div><!-- ENDIF -->
		<!-- IF TPL_CFG_RANKS_TEXT !== "text" -->{postrow.RANK_IMAGE}<!-- ENDIF -->
		<!-- IF TPL_CFG_RANKS_TEXT == "below" --><div style="padding: 2px;"><span class="postdetails">{postrow.POSTER_RANK}</span><br /></div><!-- ENDIF -->
		<!-- IF TPL_CFG_AVATARS --><div style="width: 140px; margin: auto; overflow: hidden">{postrow.POSTER_AVATAR}<br /></div><!-- ENDIF -->
		
		<br />
		<table width="100%" cellspacing="5" cellpadding="0">
			<!-- IF TPL_CFG_GENDER !== "text" --><tr><td align="left"><span class="postdetails">{postrow.POSTER_GENDER}</span></td></tr><!-- ENDIF -->
			<tr><td align="left"><span class="postdetails">{postrow.POSTER_AGE}{postrow.L_ZODIAC}{postrow.ZODIAC_IMG}</span></td></tr>
			<tr><td align="left"><span class="postdetails">{postrow.POSTER_JOINED}</span></td></tr>
			<tr><td align="left"><span class="postdetails">{postrow.POSTER_POSTS}</span></td></tr>
			<tr><td align="left"><span class="postdetails">{postrow.POSTER_FROM}</span></td></tr>
		</table>
		<img src="{T_IMAGESET_PATH}/spacer.gif" width="150" height="1" border="0" alt="" />
	</td>
Le pb se situe visiblement au niveau des variables {postrow.POSTER_AGE} {postrow.L_ZODIAC} et {postrow.ZODIAC_IMG} qui correspondent respectivement à l'âge du posteur, le nom de son signe du zodiaque et une petite image qui illustre le signe du zodiaque. Et pourtant, la variable {postrow.POSTER_GENDER} appartient aussi à un mod et ça fonctionne...

Voici l'adresse de mon forum : http://www.molos.ch/forum/phpBB2/index.php

Merci de votre aide ! :wink:

Publié : 26 mars 2005, 18:16
par calimo
Tu ne crois pas que ça pourrait venir du fait que les variables "{postrow.POSTER_AGE}", "{postrow.L_ZODIAC}" et "{postrow.ZODIAC_IMG}" sont en dehors du "<!-- IF TPL_CFG_GENDER !== "text" -->" ... "<!-- ENDIF --> " ?
Je dis ça un peu au hasard...

Tu n'aurais pas par hasard un lien vers ce "birthday mod" et ses explications d'installation ?

Publié : 26 mars 2005, 18:19
par HP
perso ce que je ne comprends pas trop c'est çà :

Code : Tout sélectionner

      <table width="100%" cellspacing="5" cellpadding="0">
         <!-- IF TPL_CFG_GENDER !== "text" --><tr><td align="left"><span class="postdetails">{postrow.POSTER_GENDER}</span></td></tr><!-- ENDIF -->
         <tr><td align="left"><span class="postdetails">{postrow.POSTER_AGE}{postrow.L_ZODIAC}{postrow.ZODIAC_IMG}</span></td></tr>
         <tr><td align="left"><span class="postdetails">{postrow.POSTER_JOINED}</span></td></tr>
         <tr><td align="left"><span class="postdetails">{postrow.POSTER_POSTS}</span></td></tr>
         <tr><td align="left"><span class="postdetails">{postrow.POSTER_FROM}</span></td></tr>
      </table> 
pourquoi mettre tout çà dans une <table> ?
et en plus préciser des align="left" ...
tu pourrais virer la table et inscrire ça simplement avec des <br />
et basta ...
et aussi un <span class="postdetails"> au début et un </span> à la fin ...
le table ne sert pas à grand chose dans ce cas et alourdi la page et son temps de chargement inutilement.

Publié : 26 mars 2005, 18:55
par EmmaZL
calimo a écrit :Tu ne crois pas que ça pourrait venir du fait que les variables "{postrow.POSTER_AGE}", "{postrow.L_ZODIAC}" et "{postrow.ZODIAC_IMG}" sont en dehors du "<!-- IF TPL_CFG_GENDER !== "text" -->" ... "<!-- ENDIF --> " ?
Je dis ça un peu au hasard...

Tu n'aurais pas par hasard un lien vers ce "birthday mod" et ses explications d'installation ?
hello !

J'ai déjà essayé en les mettant dans le <!-- IF TPL_CFG_GENDER !== "text" -->" ... "<!-- ENDIF -->
ça ne marche pas non plus... (d'après ce que j'ai compris, les trucs qui vont là dedans, c'est pour quand il y a des images)


Entre temps, j'ai réussi à faire apparaître les signes du zodiaque en modifiant viewtopic.php mais un peu par hasard, je dois bien l'avouer...

Voilà le nouveau code modifié, avec les zodiaques qui fonctionnent (comme tu vois, j'ai mis {postrow.POSTER_AGE} dans le <!-- IF TPL_CFG_GENDER !== "text" -->" ... "<!-- ENDIF -->, mais ça ne marche pas :

Code : Tout sélectionner

<td width="150" class="{postrow.TPL_CLASS_PROFILE}" align="center" valign="top" rowspan="2">
		<span class="name">{postrow.POSTER_NAME}<br /></span>
		<!-- IF TPL_CFG_RANKS_TEXT == "above" || TPL_CFG_RANKS_TEXT == "text" --><div style="padding: 2px;"><span class="postdetails">{postrow.POSTER_RANK}</span><br /></div><!-- ENDIF -->
		<!-- IF TPL_CFG_RANKS_TEXT !== "text" -->{postrow.RANK_IMAGE}<!-- ENDIF -->
		<!-- IF TPL_CFG_RANKS_TEXT == "below" --><div style="padding: 2px;"><span class="postdetails">{postrow.POSTER_RANK}</span><br /></div><!-- ENDIF -->
		<!-- IF TPL_CFG_AVATARS --><div style="width: 140px; margin: auto; overflow: hidden">{postrow.POSTER_AVATAR}<br /></div><!-- ENDIF -->
		
		<br />
		<table width="100%" cellspacing="5" cellpadding="0">
			<!-- IF TPL_CFG_GENDER !== "text" --><tr><td align="left"><span class="postdetails">{postrow.POSTER_GENDER}<br />{postrow.L_ZODIAC}{postrow.ZODIAC_IMG}<br />{postrow.POSTER_AGE}</span></td></tr><!-- ENDIF -->
			<tr><td align="left"><span class="postdetails">{postrow.POSTER_JOINED}</span></td></tr>
			<tr><td align="left"><span class="postdetails">{postrow.POSTER_POSTS}</span></td></tr>
			<tr><td align="left"><span class="postdetails">{postrow.POSTER_FROM}</span></td></tr>
		</table>
		<img src="{T_IMAGESET_PATH}/spacer.gif" width="150" height="1" border="0" alt="" />
	</td>
D'après ce que je comprends (je suis nulle en php), c'est viewtopic.php qui génère ce qui qui est appelé par les variables (j'essaie de me la péter en utilisant des termes techniques, mais j'y pige que dalle :lol: ) :

Code : Tout sélectionner

// Start add - Birthday MOD
	if ( $postrow[$i]['user_birthday'] != 999999 ) 
	{
		$poster_birthdate=realdate('md', $postrow[$i]['user_birthday']);
		$n=0;
		while ($n<26)
		{
			if ($poster_birthdate>=$zodiacdates[$n] && $poster_birthdate<=$zodiacdates[$n+1])
			{
				$zodiac = $lang[$zodiacs[($n/2)]];
				$u_zodiac = $images[$zodiacs[($n/2)]];
				$zodiac_img = '<img src="' . $u_zodiac . '" alt="' . $zodiac . '" title="' . $zodiac . '" align="top" border="0" />';
				$n=26;
			} else
			{
				$n=$n+2;
			}
		}
		$poster_age = $this_year - realdate ('Y',$postrow[$i]['user_birthday']);
		if ($this_date < $poster_birthdate) $poster_age--;
		$poster_age = $lang['Age'] . ': ' . $poster_age;
	} else
	{
		$poster_age = '';
	}
// End add - Birthday MOD
Voici les fichiers pour installer brithday mod et le add on des signes du zodiaque :

http://www.molos.ch/temp/birthday_1.5.7em.txt

http://www.molos.ch/temp/birthday_add_o ... .0.5em.txt

Publié : 26 mars 2005, 19:01
par EmmaZL
HP a écrit :
pourquoi mettre tout çà dans une <table> ?
et en plus préciser des align="left" ...
tu pourrais virer la table et inscrire ça simplement avec des <br />
et basta ...
et aussi un <span class="postdetails"> au début et un </span> à la fin ...
le table ne sert pas à grand chose dans ce cas et alourdi la page et son temps de chargement inutilement.
Je suis bien d'accord avec toi, mais c'est l'auteur du template qui a fait ça, pas moi. Je vais d'abord régler mon problème de php et après, je corrigerai le html... :wink: