Jump to content
Invision Board France
  • 0
Sign in to follow this  
Soundamental

4.1 Modifier l'indicateur "forum lu/non lu"

Question

Soundamental

Savez-vous comment modifier les petits visuels de la page d'accueil des forums à gauche, ceux qui indiquent qu'un forum a des nouveaux messages ou n'en a pas ?

Autrefois c'était une image qu'on pouvait changer facilement en mettant la nôtre sur le serveur avec le même nom que celle par défaut. Aujourd'hui j'avoue que je ne sais plus du tout comment faire pour remettre mes propres images suite à la MAJ vers la version 4...

Edited by sanlogik

Share this post


Link to post
Share on other sites

9 answers to this question

Recommended Posts

  • 0
Soundamental

J'ai trouvé comment faire ^^

 

Dans Personnalisation > Thèmes, il faut utiliser le fichier des CSS personnalisés (custom.css), si on a créé un skin basé sur le skin par défaut.

Vous y ajoutez simplement une image d'arrière plan dans le background de 2 classes :

 

.ipsItemStatus.ipsItemStatus_large {
    background: transparent url(/cheminVersVotreImage/imageForumNonLu.png);
}

.ipsItemStatus.ipsItemStatus_large.ipsItemStatus_read {
    background: transparent url(/cheminVersVotreImage/imageForumLu.png);
}

.fa-comments::before {
    content: none;
}
Après il y a d'autres modifs à faire pour obtenir le bon résultat, mais c'est à vous de voir en fonction de vos besoins. Dans tous les cas toutes les modifs sont à faire dans les 2 premières classes du code ci-dessus.

Sinon la classe "fa-comment::before" c'est pour empêcher l'affichage des bulles par dessus votre propre image.

 

 

Il y a sans doute une autre méthode mais celle-ci semble convenir :)

Edited by sanlogik
  • Thanks 1

Share this post


Link to post
Share on other sites
  • 0
Soundamental

Je ne sais pas si c'est lié à la modif expliquée ci-dessus mais mon icone reste en "lu" quand un message est posté dans un sous-forum, alors qu'avant elle passait en "non lu" pour n'importe quel message de n'importe quel sous-forum il me semble...
J'ai oublié quelque chose ou fait une bêtise d'après vous ? :unsure:

Share this post


Link to post
Share on other sites
  • 0
Soundamental

Je ressors cette question car elle est toujours d'actualité en utilisant une autre méthode :P

 

Au lieu de mettre des images, je souhaite utiliser Font Awesome.

J'ai réussi à mettre une icone, sombre quand il y a de nouveaux messages et grisée quand tout est lu, mais c'est donc la même dans les 2 cas.

Désormais je souhaiterais en mettre une différente pour chacun des 2 cas, et là je n'y arrive pas...

 

La modification se fait a priori ici, dans l'éditeur de thèmes :

Modèles>Forums>Front>Index

 

Et là, il y a 2 fichiers. Je n'ai pas encore compris pourquoi ils sont 2...

-> forumGridItem

-> forumRow

 

Il faut changer l'icone font awesome dans cette partie du code (remplacer le "fa-comments" par l'icone désirée) :

<span class='ipsItemStatus ipsItemStatus_large cForumIcon_normal {{if !\IPS\forums\Topic::containerUnread( $forum ) && !$forum->redirect_on}}ipsItemStatus_read{{endif}}' {template="formattedInlineStyle" params="$forum" app="core" group="global" location="front"}>
		<i class="fa fa-comments"></i>
</span>

Ce code me semble identique dans les 2 fichiers, d'où mon incompréhension quant à l'utilité de ce doublon.

Mais le plus important c'est de trouver comment écrire la condition qui dit "quand le forum est non lu, afficher l'icone A, quand le forum est lu, afficher l'icone B"

 

Je pense que ça ne doit pas être très compliqué pour qui maitrise un peu le code du forum, du moins je l'espère !

  • Like 1

Share this post


Link to post
Share on other sites
  • 0
cybero

Bonsoir :)

 

Il y a 2 fichiers pour chacun des modes d'affichage (Classique / Grille) , si le code est identique ils auraient effectivement pu mutualiser.

Mais bon ça permet de customiser l'un et/ou l'autre des modes différemment si désiré.

 

Concernant ta question, si j'ai bien compris ceci devrait faire l'affaire:
On descend la condition du span dans son contenu:

<span class='ipsItemStatus ipsItemStatus_large cForumIcon_normal' {template="formattedInlineStyle" params="$forum" app="core" group="global" location="front"}>
  {{if !\IPS\forums\Topic::containerUnread( $forum ) && !$forum->redirect_on}}
    <!-- Icône si tout est lu -->
    <i class="fa fa-comments"></i>
  {{else}}
    <!-- Icône si du contenu non lu -->
    <i class="fa fa-eye"></i>
  {{endif}}
</span>

 

Si tu souhaites également conserver le fond gris (ou ce que tu as mis), il falloir faire 2 fois le test:

Une fois dans le span comme c'est déjà le cas + le contenu du span comme ci-dessus

<span class='ipsItemStatus ipsItemStatus_large cForumIcon_normal {{if !\IPS\forums\Topic::containerUnread( $forum ) && !$forum->redirect_on}}ipsItemStatus_read{{endif}}' {template="formattedInlineStyle" params="$forum" app="core" group="global" location="front"}>
  {{if !\IPS\forums\Topic::containerUnread( $forum ) && !$forum->redirect_on}}
    <!-- Icône si tout est lu -->
    <i class="fa fa-comments"></i>
  {{else}}
    <!-- Icône si du contenu non lu -->
    <i class="fa fa-eye"></i>
  {{endif}}
</span>

 

Démo avec la version juste au-dessus:

 

image.png.27af768e24b7961d176ec8b5949d4d1d.png

 

 

Nabon ? :drop:

Edited by cybero
Screen
  • Like 1
  • Thanks 1

Share this post


Link to post
Share on other sites
  • 0
Soundamental
Il y a 2 heures, cybero a dit :

Il y a 2 fichiers pour chacun des modes d'affichage (Classique / Grille)

Ah mais oui... comme je n'utilise que le classique, j'ai pas pensé à ça !

 

Il y a 2 heures, cybero a dit :

Nabon ? :drop:

Bonne réponse de Monsieur cybero, dans le Bas-Rhin :D

 

Encore une fois tu me sauves, un grand merci !

J'ai testé et ça marche nickel ^_^

  • Like 1

Share this post


Link to post
Share on other sites
  • 0
Soundamental

La nouvelle version 4.5.2 n'a pas perturbé (a priori) le fonctionnement des icônes pour les forums lus/non lus, mais elle a fait sauter la couleur de fond derrière les icônes, et impossible de la remettre :(
Le bleu qui est apparu à la place n'apparait même pas dans le CSS :arg:

Share this post


Link to post
Share on other sites
  • 0
Youp3

Bonsoir,

Il s’agit peut-être d’une image.

Share this post


Link to post
Share on other sites
  • 0
Soundamental

A priori non, c'est bien une valeur, cachée derrière une variable :

background: rgb( var(--theme-item_status) );

 

Sauf que cette variable je ne la trouve pas :(

Elle est appelée dans plusieurs fichiers, mais je n'ai aucune idée de où elle est stockée, en tout cas pas dans le fichier _vars.css où elle devrait être a priori...

Share this post


Link to post
Share on other sites
  • 0
Soundamental

Pour info, j'ai trouvé comment changer la couleur ^^

Il faut aller dans :

 

Thèmes > MonThème > Editer > Couleurs de la zone publique > Badges de statut de l’élément actifs

 

Pourquoi ça se modifie là et pas dans les CSS, je ne sais pas. Ce n'est pas très cohérent d'avoir plusieurs endroits à modifier mais bon...

  • Like 1

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.