Dernier sujets d'un sous-forum isolé ( Question / Modification à propos du tutoriel )

Voir le sujet précédent Voir le sujet suivant Aller en bas

Résolu Dernier sujets d'un sous-forum isolé ( Question / Modification à propos du tutoriel )

Message par Mysticals le Lun 23 Fév 2015 - 12:47

Détails techniques


Version du forum : phpBB2
Poste occupé : Fondateur
Navigateur(s) concerné(s) : Mozilla Firefox
Personnes concernées par le problème : Tous les utilisateurs
Lien du forum : http://www.teso-event.com/

Description du problème

Salutation !

Alors voila, j'ai utilisé un tutoriel présent sur ce site afin de supprimer ma colonne Dernier messages. Celui-ci : http://forum.forumactif.com/t359318-widget-dernier-sujets-d-un-sous-forum-isole pour les mettre sous chaque forums : http://www.teso-event.com/forum

Il fonctionne très bien, mais le soucis, c'est qu'il n'affiche pas le dernier message du post le plus récent, mais le post le plus haut.
Problème, le post le plus haut n'est pas forcément le plus récent : il y a les notes et annonces. Hors je voudrais le plus récent, pas le plus haut.

Le code Java est le suivant :
Code:
jQuery(document).ready(function(){
jQuery("#newsareal1").load("/f1-la-sante-de-votre-chat div.topictitle:lt(11)");
});

J'imagine qu'il faut modifier div.topictitle:lt(1) pour charger ce que je souhaite, mais quoi? Si j’interprète, je pense qu'il dis juste d'afficher les sujets dans l’ordre. Que faut il mettre à la place pour simplement afficher le dernier message du dernier sujet?

QUESTION BONUS :

Pour les plus doués, si le premier problème peu se résoudre : Ajouter au Java l'avatar de l'auteur du message, et la date. Je pense qu'il ce glisse comme ceci :
Code:
jQuery("#newsareal1").load("CODE AVATAR"+"/f1-la-sante-de-votre-chat div.topictitle:lt(11)"+"CODE DATE");

Avec une petite div autour du CODE AVATAR pour s'amuser au CSS. Mais que faut t'il mettre exactement?

Merci !


Dernière édition par Mysticals le Jeu 26 Fév 2015 - 18:23, édité 1 fois

Mysticals
***

Masculin
Messages : 194
Inscrit(e) le : 25/12/2012

http://www.the-elder-scrolls-by-mysticals.com/
Mysticals a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Dernier sujets d'un sous-forum isolé ( Question / Modification à propos du tutoriel )

Message par Mysticals le Mar 24 Fév 2015 - 9:11

Up Exclamation

Mysticals
***

Masculin
Messages : 194
Inscrit(e) le : 25/12/2012

http://www.the-elder-scrolls-by-mysticals.com/
Mysticals a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Dernier sujets d'un sous-forum isolé ( Question / Modification à propos du tutoriel )

Message par [Nihil] le Mar 24 Fév 2015 - 11:39

Hello

Il y a quelque chose que je ne saisis pas... Pourquoi s'embêter avec un javascript qui va load chaque forum au lieu d'utiliser le code du template pour afficher le dernier message ainsi que l'avatar du dernier posteur ?

Pour afficher le dernier message d'un forum + les infos de dates:
Code:
{catrow.forumrow.LAST_POST}

Pour afficher l'avatar du dernier posteur :
Code:
<!-- BEGIN avatar -->
{catrow.forumrow.avatar.LAST_POST_AVATAR}
<!-- END avatar -->

[Nihil]
# Tropactif #

Messages : 1155
Inscrit(e) le : 10/12/2009

http://forum.forumactif.com
[Nihil] a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Dernier sujets d'un sous-forum isolé ( Question / Modification à propos du tutoriel )

Message par Mysticals le Mar 24 Fév 2015 - 12:22

Parce que ce n'est pas géré dans un template, mais dans les forums ( Général > Catégories et forums > Modifier un forum ). A titre d'exemple, ( http://www.teso-event.com/forum ) le premier que tu vois, GUILDE | LOTERIE, le contenu est le suivant :

Code:
<table style="width: 100%;">
                                                                                                                                                                                                                        
   <tbody>
      <tr>
                                                                                                                                                                                                                
         <td class="table" ;="" style="width: 50%;">
                                                                                                                                                                                                               
            <table>
                                                                                                                                                                                                                                      
               <tbody>
                  <tr>
                                                                                                                                                                                                                            
                     <td>
                                                                                                                                                                                                                             
                        <table _moz_resizing="true">
                                                                                                                                                                                                                                                  
                           <tbody>
                              <tr>
                                                                                                                                                                                                                                        
                                 <td style="width: 157px">
                                                                                                                                               
                                    <div align="center">
                                             <img src="https://lh3.googleusercontent.com/-oXPlrF3EDyU/VOdz-jNB7SI/AAAAAAAADLY/69zF3RaQdzo/s127/2.png" />     
                                    </div>
                                                                                                                                               
                                 </td>
                                                                                                                                                                                                                                        
                                 <td>
                                                                                                                                                  <a href="http://www.teso-event.com/f1-adeptes-de-sheogorath-guilde-affilie-a-www-teso-event-com">[ GUILDE ]</a><br /><br />- Adeptes de Shéogorath est une guilde créée pour notre communauté.<br />- Elle réunie ceux qui souhaitent facilement participer à nos événements grâce au canal de guilde. Mais a aussi pour fonction la gestion des futures ressources...                                                       
                                 </td>
                                                                                                                                                                                                                                        
                              </tr>
                                                                                                                                                                                                                                                     
                           </tbody>
                        </table>
                                                                                                                                 
                        <div class="bordurehaut">
                                                             <span style="color: #DE4E00;"><strong>Plus de détails dans le sujet dédié :</strong></span> <a href="http://www.teso-event.com/t99-adeptes-de-sheogorath-guilde-affilie-a-www-teso-event-com">Adeptes de Shéogorath ( Guilde affilié à www.teso-event.com )</a>                                                   
                        </div>
                                                                                                                   
                     </td>
                                                                                                                                                                                                                            
                  </tr>
                                                                                                                                                                                                                                         
               </tbody>
            </table>
                                                                                                                                                                                                                 
         </td>
                                                                                                                                                                                                          
         <td class="table" ;="" style="width: 50%;">
                                                                                                                                                                                                             
            <table>
                                                                                                                                                                                                                                        
               <tbody>
                  <tr>
                                                                                                                                                                                                                            
                     <td>
                                                                                                                                                                                                                             
                        <table _moz_resizing="true">
                                                                                                                                                                                                                                                  
                           <tbody>
                              <tr>
                                                                                                                                                                                                                                        
                                 <td>
                                                                                                                                          <img src="https://lh3.googleusercontent.com/-CQL3oraHYcc/VOohRFcgIMI/AAAAAAAADPM/YHTPcsYytcA/s141/1.png" />                                                                                                     
                                 </td>
                                                                                                                                                                                                                                        
                                 <td>
                                                                                                                                                <a href="http://www.teso-event.com/f6-loterie-hebdomadaire-du-dimanche-au-vendredi">[ LOTERIE ]</a>    <br /><br /><strong>50% des pièces d'or récoltées grâce aux tickets financerons les récompenses des évènements.</strong><br /><br />- Les tickets coûterons 1000 pièces d'or.<br />- Les tirages se feront les vendredi soirs à 20h00.                                                   
                                 </td>
                                                                                                                                                                                                                                        
                              </tr>
                                                                                                                                                                                                                                                     
                           </tbody>
                        </table>
                                                                                                                                         
                        <div class="bordurehaut">
                                                         <strong><span style="color: #DE4E00;">Plus de détails dans le sujet dédié :</span></strong> <a href="http://www.teso-event.com/t100-loterie-hebdomadaire-pour-les-membres-des-adeptes-de-sheogorath">Loterie hebdomadaire ( Pour les membres des Adeptes de Shéogorath )</a>                                     
                        </div>
                                                                                                     
                     </td>
                                                                                                                                                                                                                            
                  </tr>
                                                                                                                                                                                                                                         
               </tbody>
            </table>
                                                                                                                                                                                                                 
         </td>
                                                                                                                                                                                                                
      </tr>
                                                                                                                                                                                                             
   </tbody>
</table>
                         
<table style="width: 100%;">
                                                                                                                                                                                                                                      
   <tbody>
      <tr>
                                                                                                                                                                                                                              
         <td style="width: 50%;">
                                                               
            <table>
                                                                                
               <tbody>
                  <tr>
                                                                        
                     <td>
                                                  Dernier message :                         
                     </td>
                                                                        
                     <td>
                                                                             
                        <div id="new13">
                                                                                
                        </div>
                                                                           
                     </td>
                                                                        
                  </tr>
                                                                                   
               </tbody>
            </table>
                                                                     
         </td>
                                                                    
         <td style="width: 50%;">
                                                                   
            <table>
                                                                                
               <tbody>
                  <tr>
                                                                        
                     <td>
                                                  Dernier message :                         
                     </td>
                                                                        
                     <td>
                                                                             
                        <div id="new14">
                                                                                
                        </div>
                                                                           
                     </td>
                                                                        
                  </tr>
                                                                                   
               </tbody>
            </table>
                                                                   
         </td>
                                                                  
      </tr>
                                                                                                                                                                                                                           
   </tbody>
</table>

Et le template ne peux me le permettre, j'ai deux derniers messages de deux forum différents à afficher ( id="new13" et id="new14" ).

Mysticals
***

Masculin
Messages : 194
Inscrit(e) le : 25/12/2012

http://www.the-elder-scrolls-by-mysticals.com/
Mysticals a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Dernier sujets d'un sous-forum isolé ( Question / Modification à propos du tutoriel )

Message par [Nihil] le Mar 24 Fév 2015 - 12:35

Ow je viens juste de comprendre que c'était dans la description, je pensais que tu avais codé cette mise en page des forums directement dans les templates, au temps pour moi x)

Pourrais tu s'il te plait m'indiquer un endroit dans ton forum où il y a le problème ? C'est à dire une annonce + un sujet plus récent (car là je n'en trouve pas dans ton forum, je n'ai pas envie de m'amuser à parcourir tout le forum pour faire des tests Mr. Green )
Par exemple ici le problème n'est pas présent : http://www.teso-event.com/f9-tribulations

[Nihil]
# Tropactif #

Messages : 1155
Inscrit(e) le : 10/12/2009

http://forum.forumactif.com
[Nihil] a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Dernier sujets d'un sous-forum isolé ( Question / Modification à propos du tutoriel )

Message par Mysticals le Mar 24 Fév 2015 - 12:38

C'est parce que en attendant de résoudre le problème, j'avais remis en normal toutes les annonces et notes.

J'en ai remis une en place ici http://www.teso-event.com/f11-fetes

Et comme tu peux le voir en page d’accueil, c'est l'annonce ( [ Annonce ]: Les fêtes et invocations ) qu'il m'affiche, et non le topic avec le message le plus récents ( L'influence de Sanghin ).

Mysticals
***

Masculin
Messages : 194
Inscrit(e) le : 25/12/2012

http://www.the-elder-scrolls-by-mysticals.com/
Mysticals a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Dernier sujets d'un sous-forum isolé ( Question / Modification à propos du tutoriel )

Message par [Nihil] le Mar 24 Fév 2015 - 12:44

Allez, faisons un premier petit essai alors Smile

Si tu remplaces :
Code:
div.topictitle:lt(11)

Par :
Code:
div.topictitle:not(:contains('[ Annonce ]')):first

C'est mieux ou pas Mr. Green ?

[Nihil]
# Tropactif #

Messages : 1155
Inscrit(e) le : 10/12/2009

http://forum.forumactif.com
[Nihil] a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Dernier sujets d'un sous-forum isolé ( Question / Modification à propos du tutoriel )

Message par Mysticals le Mar 24 Fév 2015 - 12:51

Ça fonctionne, et j'imagine que pour les notes, il me suffira d'ajouter + '[ Notes ]'

Mais, si le dernier message/sujet est une/dans une [ Annonce ] ?

J'ai fait le test, et ouais, il zappe le dernier message ( vu qu'il est dans l'annonce ). Il est bon ton code, mais il résout un soucis par un autre. Razz

Mysticals
***

Masculin
Messages : 194
Inscrit(e) le : 25/12/2012

http://www.the-elder-scrolls-by-mysticals.com/
Mysticals a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Dernier sujets d'un sous-forum isolé ( Question / Modification à propos du tutoriel )

Message par [Nihil] le Mar 24 Fév 2015 - 13:02

Ah oui j'avais oublié ce cas x)

Je vois comment faire, par contre je n'ai pas encore le temps de le faire. :p
S'amuser à load une page par forum, puis chercher dedans le dernier message en fonction de la date, je pense que c'est un peu lourd comme méthode Smile... Je dois dire que j'ai horreur de manipuler les dates en javascript x)

Ce qu'on pourrait faire (je le note pour ne pas oublier non plus XD) :
Pour chaque catégorie, on load la page avec la liste des forums : http://www.teso-event.com/f21-guilde-loterie?change_version=prosilver

Le ?change_version=prosilver permet d'afficher ton forum en phpbb3 et donc d'avoir des templates vierges
Ensuite on récupère les derniers messages, qui sont chacun dans un élément .lastpost
Enfin, on replace les titres au bon endroit.

Si quelqu'un passe par ici, il pourra peut-être le faire, sinon je le ferai plus tard :p

[Nihil]
# Tropactif #

Messages : 1155
Inscrit(e) le : 10/12/2009

http://forum.forumactif.com
[Nihil] a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Dernier sujets d'un sous-forum isolé ( Question / Modification à propos du tutoriel )

Message par Mysticals le Mar 24 Fév 2015 - 16:12

Ne t'embête pas, je vais faire comme tu a proposée, juste une chose, comment on ajoute un élément dans le code ?

Code:
div.topictitle:not(:contains('[ Annonce ]')):first

Je veux ajouter [ Note ] et [ Annonce globale ], mais je ne sais pas comment. J'ai essayer

Code:
div.topictitle:not(:contains('[ Note ]','[ Annonce ]','[ Annonce globale ]')):first

Mais ça donne rien ( j'avais mis au pif aussi faut dire lol, on sais jamais ). Smile

EDIT, J'ai failli oublier :

C'est possible que l'on arrive au dernier message, au lieu d'arriver au topic? Ça doit être un truc avec le last dedans.

Mysticals
***

Masculin
Messages : 194
Inscrit(e) le : 25/12/2012

http://www.the-elder-scrolls-by-mysticals.com/
Mysticals a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Dernier sujets d'un sous-forum isolé ( Question / Modification à propos du tutoriel )

Message par Mysticals le Mer 25 Fév 2015 - 17:30

Up ! Le sujet en est à ce stade :

Nous avons ce code pour le JavaScript.
Code:
div.topictitle:not(:contains('[ Annonce ]')):first

Qui défini en condition la présence de [ Annonce ]. Je souhaite simplement ajouter deux éléments supplémentaire dans les conditions : [ Note ] et [ Annonce globale ]

Merci.

Mysticals
***

Masculin
Messages : 194
Inscrit(e) le : 25/12/2012

http://www.the-elder-scrolls-by-mysticals.com/
Mysticals a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Dernier sujets d'un sous-forum isolé ( Question / Modification à propos du tutoriel )

Message par [Nihil] le Jeu 26 Fév 2015 - 13:55

Coucou

Si je voulais rajouter [ Note ] le code deviendrait comme ceci :
Code:
div.topictitle:not(:contains('[ Annonce ]')):not(:contains('[ Note ]')):first

C'est à dire que je rajoute ce bout de code avant :first
Code:
:not(:contains('[ Note ]'))

[Nihil]
# Tropactif #

Messages : 1155
Inscrit(e) le : 10/12/2009

http://forum.forumactif.com
[Nihil] a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Dernier sujets d'un sous-forum isolé ( Question / Modification à propos du tutoriel )

Message par Mysticals le Jeu 26 Fév 2015 - 14:18

Parfait, merci !

Avant de boucler le sujet, tu pense que c'est possible qu'au lieu de nous envoyer au dernier sujet, cela nous renvoie au dernier message du sujet, ou encore mieux ( mais je ne sais pas si forumactif le gère ça ), au dernier message que l'on ai consulter du sujet.

Je suis chiant, désolé. Sad

Mysticals
***

Masculin
Messages : 194
Inscrit(e) le : 25/12/2012

http://www.the-elder-scrolls-by-mysticals.com/
Mysticals a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Dernier sujets d'un sous-forum isolé ( Question / Modification à propos du tutoriel )

Message par [Nihil] le Jeu 26 Fév 2015 - 16:00

ou encore mieux ( mais je ne sais pas si forumactif le gère ça ), au dernier message que l'on ai consulter du sujet.

En fait, les liens "dernier message" par défaut renvoi vers le premier message que l'on n'a pas lu du topic normalement Smile

J'ai fait un petit essai qui correspond au forum "Fêtes" :
Code:
jQuery(document).ready(function(){
    /* selecteur du titre */
    var selector_sujet = "div.topictitle:not(:contains('[ Annonce')):not(:contains('[ Note ]')):first";
   
    /* sélecteur du conteneur dans la description */
    var selector_content = "#new2";
   
    jQuery(selector_content).load("/f11-fetes " + selector_sujet, function(data){       
        /* on récupère l'url du lien du dernier sujet */
        var newhref = jQuery(selector_sujet, data).closest("tr").find("a[href^='/t']:last").attr("href");
       
        /* on change l'url du lien */
        jQuery(selector_content + " a").attr("href", newhref);
    });
});

[Nihil]
# Tropactif #

Messages : 1155
Inscrit(e) le : 10/12/2009

http://forum.forumactif.com
[Nihil] a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Dernier sujets d'un sous-forum isolé ( Question / Modification à propos du tutoriel )

Message par Mysticals le Jeu 26 Fév 2015 - 18:23

Je me prosterne devant toi, oh déesse du JavaScript !

C'est parfait ! Rien à redire ! Merci énormément ! Very Happy

Mysticals
***

Masculin
Messages : 194
Inscrit(e) le : 25/12/2012

http://www.the-elder-scrolls-by-mysticals.com/
Mysticals a été remercié(e) par l'auteur de ce sujet.

Voir le sujet précédent Voir le sujet suivant Revenir en haut


Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum