Astuces Forumactif
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Membres connectés récemment
Voir tous les membres

[PHPBB3] Couleur quand nouvelle petite annonce


2 participants

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

photoclic
https://photoclic.forum-pro.fr/

Messagephotoclic Dim 6 Juin 2021 - 15:12

  • Version du forum :
    PHPBB3
  • Templates modifiés :
    oui
  • Navigateur :
    Firefox
Bonjour à tous les milouziens,

Philippe m'a développé un script pour indiquer quand il y de nouveaux évènements.

Pour les petites annonces, rien n'indique sur la page d'accueil qu'une nouvelle annonce a été postée.

Serait-il possible comme pour les évènements de mettre en rouge l'image par exemple et d'indiquer dans la colonne Messages "1 annonce".

[PHPBB3] Couleur quand nouvelle petite annonce Captu193

[PHPBB3] Couleur quand nouvelle petite annonce Captu194



Merci pour votre aide.


Dernière édition par photoclic le Lun 7 Juin 2021 - 15:34, édité 1 fois
Milouze14
Milouze14
Fondateur

https://www.milouze14.net/

MessageMilouze14 Dim 6 Juin 2021 - 19:29

Hello Serge,
alors c'est réalisable, je me baserais sur la date et capturer le texte aujourd'hui.
As tu le lien sur l'index du dit forum s'il te plait.
photoclic
https://photoclic.forum-pro.fr/

Messagephotoclic Dim 6 Juin 2021 - 19:45

Bonjour Philippe,

C'est pour mon forum.
Le lien:
https://photoclic.forum-pro.fr/f21-vos-petites-annonces#M14
photoclic
https://photoclic.forum-pro.fr/

Messagephotoclic Dim 6 Juin 2021 - 19:48

Ah oui, bonne idée de te baser sur la date.
Dans ce cas serait-il possible de considérer que c'est nouveau durant 5 jours par exemple?
Milouze14
Milouze14
Fondateur

https://www.milouze14.net/

MessageMilouze14 Dim 6 Juin 2021 - 19:55

photoclic a écrit:Ah oui, bonne idée de te baser sur la date.
Dans ce cas serait-il possible de considérer que c'est nouveau durant 5 jours par exemple?

Hum Serge comment expliquer ?
Si je me base sur le texte aujourd'hui, çà risque d'être compliqué pour 5 jours  lOL .

Si le temps ne change pas, le texte "aujourd'hui " restera jusqu'à minuit ok .

Je vois tout cela demain.
photoclic
https://photoclic.forum-pro.fr/

Messagephotoclic Dim 6 Juin 2021 - 20:48

Ah ok Philippe,, je pensais que tu parlais de la date et non du texte.
Pas grave, ce sera donc jusqu'à minuit MdR1

Merci pour la prise en charge et pas d'urgence Phil.
Milouze14
Milouze14
Fondateur

https://www.milouze14.net/

MessageMilouze14 Lun 7 Juin 2021 - 6:22

Hello Serge,
alors tu peux tester ce script sur l'index:


Modules/HTML&JAVASCRIPT/Gestion des codes Javascript/Créer un nouveau Javascript

Mettre un titre explicite.

Cocher sur l'index.



Déposer ceci:

Code:

$(function() {
var fofo=$('a.forumtitle[href^="/f21-"]');
var fofolink=$('a.forumtitle[href^="/f21-"]').attr('href');
if(fofo){
$.get(fofolink, function( data ) {
$(data).find('.forumbg.announcement').last().each(function(){
var a=$(this).find('li[class$="AD_Row"]').find('li.col3 .AD_Infos p:contains(Aujourd)').length;
if(a)
{
fofo.closest('li').addClass('M14_annonce_li').find('dd.posts').html('<span class="M14_annonce_span">'+a+'</span>'); 
}
else
{
fofo.closest('li').find('dd.posts').html('<span class="M14_annonce_none_span">Aucune</span>'); 
}
});});}});

Penser a cliquer sur le bouton Valid



Dans la feuille de style:
Affichage/Images et Couleurs/Couleurs/Feuille de style

Ajouter ceci:

Code:

/*SI NOUVELLE ANNONCE*/
.M14_annonce_li .dterm img
{
 background:red;
}

/*LE NOMBRE D ANNONCES PASSEES CASE MESSAGES*/
.M14_annonce_span
{
  color:green;
}
/*SI PAS D ANNONCE RECENTE CASE MESSAGES*/
.M14_annonce_none_span
{
color:black;
}

Penser a cliquer sur le bouton [PHPBB3] Couleur quand nouvelle petite annonce Sans_t10


Pour la liste d'annonces, tu as déjà un style natif Serge:
Code:

.AD_StatusLabel {
    background: #12a3eb;
}

photoclic
https://photoclic.forum-pro.fr/

Messagephotoclic Lun 7 Juin 2021 - 11:10

Bonjour Philippe,

Ton script fonctionne à merveille  super

2 questions Phil:
. Serait-il correct pour mettre en vert le nombre d'annonces dans la colonne Sujets (comme pour les évènements) de mettre ce style:
Code:
li.row.M14_annonce_li dd.topics span{color:green;}

.Tu t'es basé comme tu l'as indiqué sur le texte "aujourd'hui" pour afficher le nombre d'annonce.

Or en y regardant de plus près, il y a aussi à coté le mot "Nouveau":

[PHPBB3] Couleur quand nouvelle petite annonce Captu194

Serait-il correct de tester ce mot "Nouveau à la place de "aujourd" en remplaçant la variable a ainsi:
Code:
var a=$(this).find('li[class$="AD_Row"]').find('span.AD_StatusLabel').length;

Un grand merci l'ami pour ton aide.
Milouze14
Milouze14
Fondateur

https://www.milouze14.net/

MessageMilouze14 Lun 7 Juin 2021 - 15:02

Re Serge,
effectivement c'est plus logique de placer le nombre dans la case "Sujets".
Pour le mot "Nouveau", comme mes annonces étaient récentes j'avais ce mot sur toutes.
Je me suis donc dis que ce terme était par défaut et qu'il ne fallait pas partir de ce mot.
Donc a priori le mot nouveau reste 2 jours.

Le script suivant devrait correspondre à tes attentes Serge:

Code:
//Dernieres annonces
$(function() {
var fofo=$('a.forumtitle[href^="/f21-"]');
var fofolink=$('a.forumtitle[href^="/f21-"]').attr('href');
if(fofo){
$.get(fofolink, function( data ) {
$(data).find('.forumbg.announcement').last().each(function(){
var a=$(this).find('li[class$="AD_Row"]').find('li.col2 span.AD_StatusLabel:contains(Nouveau)').length;
if(a)
{
fofo.closest('li').addClass('M14_annonce_li').find('dd.topics').html('<span class="M14_annonce_span">'+a+'</span>'); 
}
else
{
fofo.closest('li').find('dd.topics').html('<span class="M14_annonce_none_span">Aucune</span>'); 
}
});});}});

photoclic
https://photoclic.forum-pro.fr/

Messagephotoclic Lun 7 Juin 2021 - 15:26

Re Phil,

Impec que le mot nouveau dure 2 jours. Je l'ignorais aussi.

J'ai pris ta ligne pour la variable a qui me semble plus précise.

Par contre je préfère garder le nombre total d'annonces dans la colonne "Sujets" et les nouvelles annonces dans la colonne "Messages".

J'ai donc au final ce script qui correspond exactement à ce que j'avais en tête:
Code:

//Dernières annonces
$(function() {
var fofo=$('a.forumtitle[href^="/f21-"]');
var fofolink=$('a.forumtitle[href^="/f21-"]').attr('href');
if(fofo){
$.get(fofolink, function( data ) {
$(data).find('.forumbg.announcement').last().each(function(){

var a=$(this).find('li[class$="AD_Row"]').find('li.col2 span.AD_StatusLabel:contains(Nouveau)').length; 
if(a)
{
fofo.closest('li').addClass('M14_annonce_li').find('dd.posts').html('<span class="M14_annonce_span">'+a+' en cours</span>');
}
else
{
fofo.closest('li').find('dd.posts').html('<span class="M14_annonce_none_span">Aucune</span>');
}
});});}});

C'est donc tout bon pour moi et un grand merci pour tout l'ami tape la
Milouze14
Milouze14
Fondateur

https://www.milouze14.net/

MessageMilouze14 Lun 7 Juin 2021 - 15:33

De rien Serge hinhin .

Milouze14
Milouze14
Fondateur

https://www.milouze14.net/

MessageMilouze14 Lun 7 Juin 2021 - 15:35


Hello


Sujet résolu et déplacé dans le forum adéquate

A bientôt pour une prochaine demande clin oeil

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

Créer un compte ou se connecter pour répondre

Vous devez être membre pour répondre.

S'enregistrer

Rejoignez notre communauté ! C'est facile !


S'enregistrer

Connexion

Vous êtes déjà membre ? Aucun soucis, cliquez ici pour vous connecter.


Connexion

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