ModernBB : Mention "Auteur du sujet" dans le profil du membre
2 participants
Forum gratuit : Le forum des forums actifs :: Entraide & Support... :: Gérer l'apparence de son forum :: Archives des problèmes avec l'apparence du forum
Page 1 sur 1 • Partagez
Re: ModernBB : Mention "Auteur du sujet" dans le profil du membre
Bonjour *Splash*,
Je peine un peu à comprendre quel est votre besoin. Pouvez-vous préciser ce que vous entendez par mention ? Est-ce l'image "supporter" que l'on voit sur votre screenshot ?
Et puis surtout, sous quelles conditions souhaitez vous qu'une telle mention soit ajoutée ? Est-ce qu'elle est attribuée aux utilisateurs au cas par cas ? Est-ce que c'est pour les utilisateurs qui appartiennent à un groupe précis ? Est-ce que cela dépend éventuellement d'autres paramètres (nombre de messages, etc) ?
Cordialement,
w00tw00t
Je peine un peu à comprendre quel est votre besoin. Pouvez-vous préciser ce que vous entendez par mention ? Est-ce l'image "supporter" que l'on voit sur votre screenshot ?
Et puis surtout, sous quelles conditions souhaitez vous qu'une telle mention soit ajoutée ? Est-ce qu'elle est attribuée aux utilisateurs au cas par cas ? Est-ce que c'est pour les utilisateurs qui appartiennent à un groupe précis ? Est-ce que cela dépend éventuellement d'autres paramètres (nombre de messages, etc) ?
Cordialement,
w00tw00t
Re: ModernBB : Mention "Auteur du sujet" dans le profil du membre
Hi w00tw00t,
La mention à ajouter serait "Auteur du sujet"
Cette mention s'ajoute au profil du membre qui lance un topic, elle s'ajoute uniquement aux informations du membre dans la discussion en question, ce qui rappel que c'est lui qui a initié le topic.
La mention à ajouter serait "Auteur du sujet"
Cette mention s'ajoute au profil du membre qui lance un topic, elle s'ajoute uniquement aux informations du membre dans la discussion en question, ce qui rappel que c'est lui qui a initié le topic.
Re: ModernBB : Mention "Auteur du sujet" dans le profil du membre
Bonjour *Splash*,
Forumactif ne fourni pour le moment aucune facilité pour résoudre votre problème. Il existe néanmoins plusieurs solutions de contournement. Je vous en propose une compatible phpBB3 et ModernBB, et qui pourra fonctionner que vous ayez un rappel du 1er message ou non.
Comme l'a annoncé précédemment The Godfather, les forums migreront à terme vers jQuery 3.2. Pour rendre le code un peu plus simple, je vous propose de l'inclure dès à présent dans votre template overall_header. Ces lignes sont à placer idéalement avant tout autre chargement JavaScript. Vous pouvez les placez à défaut de savoir juste après la balise ouvrante "<head>".
Ensuite rendez-vous dans votre template viewtopic_body et recherchez un élément qui porte la classe "postprofile" :
Cette classe est associée à un DIV. Insérez le code suivant ou vous le souhaitez au sein de cette DIV :
Exemple :
Le span avec la mention "Auteur du topic" est ainsi placée dans cet exemple juste après l'avatar et le pseudo du membre dans chaque post. Vous remarquerez que l'attribut style précise que ce span est caché. Vous pourrez plus tard créer une classe pour faire appliquer les effets que vous le souhaitez sur cette mention, mais l'important est de conserver "display" à "none".
Pour finir, je vous propose ce nouveau JavaScript à ajouter (en tant que script présent sur toutes vos pages) :
Il effectuera le nécessaire, au sein de l'affichage d'un sujet, pour rendre visible les éléments ".current_user_is_author" (le span dans notre cas qui contient la mention), dans le cas ou l'auteur du message courant est bien l'auteur du sujet. Il effectue une requête AJAX dans le cas ou la page visitée n'est pas la première, et qu'il n'existe pas de rappel du premier message.
Mes codes ont été testés avec succès sur des installations propres phpBB3 et ModernBB. Néanmoins un petit travail d'adaptation est peut être nécessaire selon l'environnement de destination.
Je reste à votre disposition pour plus de détails,
Cordialement,
w00tw00t
Forumactif ne fourni pour le moment aucune facilité pour résoudre votre problème. Il existe néanmoins plusieurs solutions de contournement. Je vous en propose une compatible phpBB3 et ModernBB, et qui pourra fonctionner que vous ayez un rappel du 1er message ou non.
Comme l'a annoncé précédemment The Godfather, les forums migreront à terme vers jQuery 3.2. Pour rendre le code un peu plus simple, je vous propose de l'inclure dès à présent dans votre template overall_header. Ces lignes sont à placer idéalement avant tout autre chargement JavaScript. Vous pouvez les placez à défaut de savoir juste après la balise ouvrante "<head>".
- Code:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.0/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">const $jQuery3 = $.noConflict(true);</script>
Ensuite rendez-vous dans votre template viewtopic_body et recherchez un élément qui porte la classe "postprofile" :
- Code:
<div class="postprofile" id="profile{postrow.displayed.U_POST_ID}">
Cette classe est associée à un DIV. Insérez le code suivant ou vous le souhaitez au sein de cette DIV :
- Code:
<span class="current_user_is_author" style="display:none">Auteur du topic</span>
Exemple :
- Code:
<div class="postprofile" id="profile{postrow.displayed.U_POST_ID}">
<!-- div class="online2"></div-->
<dl>
<dt>
<div class="postprofile-avatar">
{postrow.displayed.POSTER_AVATAR}
</div>
<div class="postprofile-name">
{postrow.displayed.POSTER_NAME} <span class="current_user_is_author" style="display:none">Auteur du topic</span>
</div>
….
Le span avec la mention "Auteur du topic" est ainsi placée dans cet exemple juste après l'avatar et le pseudo du membre dans chaque post. Vous remarquerez que l'attribut style précise que ce span est caché. Vous pourrez plus tard créer une classe pour faire appliquer les effets que vous le souhaitez sur cette mention, mais l'important est de conserver "display" à "none".
Pour finir, je vous propose ce nouveau JavaScript à ajouter (en tant que script présent sur toutes vos pages) :
- Code:
$jQuery3(function(){
try {
const post_profile_selector = '.postprofile';
const pagination_selector = '.pagination';
const markup_selector = '.current_user_is_author';
const has_first_message_enabled = false;
const t_exp = /^\/t[0-9]+-/;
const u_exp_extract = /^\/u([0-9]+)$/;
const t_exp_extract = /^\/t([0-9]+)-/;
const current_page = window.location.pathname;
if(current_page.indexOf('/t') === 0){
const lookAtFirstHT = (ownerDocument,selector,route,expr) => {
let id = 0;
$jQuery3(selector+' a[href^="/'+route+'"]',ownerDocument).each(function(){
const $this = $jQuery3(this);
const href = $this.attr('href');
let extract = null;
if( typeof href !== "undefined" && (extract=href.match(expr)) ){
id = Number.parseInt(extract[1]);
return false;
}
});
return id;
};
let a_promise = null;
if( t_exp.test(current_page) ){
const id = lookAtFirstHT(document, post_profile_selector, 'u', u_exp_extract );
if( id !== 0 ){
a_promise = Promise.resolve(id);
}
} else if(!has_first_message_enabled) {
let topic_id = lookAtFirstHT(document, pagination_selector, 't', t_exp_extract );
if(topic_id !== 0){
a_promise = new Promise((resolve, reject) => {
$jQuery3.get("/t"+topic_id+"-", ( data ) => {
const id = lookAtFirstHT($jQuery3.parseHTML( data , document.implementation.createHTMLDocument(""), false ), post_profile_selector, 'u', u_exp_extract );
if( id !== 0 ){
resolve(id);
}
});
});
}
}
a_promise !== null && a_promise.then((uid)=>{
$jQuery3(post_profile_selector).each(function(){
const id = lookAtFirstHT(this, '', 'u', /^\/u([0-9]+)$/ );
if( id === uid ){
$(markup_selector, this).show();
}
});
});
}
} catch(e){
console.error(e);
}
});
Il effectuera le nécessaire, au sein de l'affichage d'un sujet, pour rendre visible les éléments ".current_user_is_author" (le span dans notre cas qui contient la mention), dans le cas ou l'auteur du message courant est bien l'auteur du sujet. Il effectue une requête AJAX dans le cas ou la page visitée n'est pas la première, et qu'il n'existe pas de rappel du premier message.
Mes codes ont été testés avec succès sur des installations propres phpBB3 et ModernBB. Néanmoins un petit travail d'adaptation est peut être nécessaire selon l'environnement de destination.
Je reste à votre disposition pour plus de détails,
Cordialement,
w00tw00t
Re: ModernBB : Mention "Auteur du sujet" dans le profil du membre
Merci w00tw00t,
Je test ça très vite...
Je test ça très vite...
Re: ModernBB : Mention "Auteur du sujet" dans le profil du membre
Hi w00tw00t,
Rien n'est ajouté comme mention en suivant tes explications.
Je pense ne pas avoir compris où ajouter le code dans le overhall_header :
Rien n'est ajouté comme mention en suivant tes explications.
Je pense ne pas avoir compris où ajouter le code dans le overhall_header :
w00tw00t a écrit:
Comme l'a annoncé précédemment The Godfather, les forums migreront à terme vers jQuery 3.2. Pour rendre le code un peu plus simple, je vous propose de l'inclure dès à présent dans votre template overall_header. Ces lignes sont à placer idéalement avant tout autre chargement JavaScript. Vous pouvez les placez à défaut de savoir juste après la balise ouvrante "<head>".
Re: ModernBB : Mention "Auteur du sujet" dans le profil du membre
Bonjour *Splash*,
Vous pouvez placer ce code juste après la balise suivante :
Cette balise doit se situer tout en haut de votre template overall_header.
Comme je l'ai indiqué, plusieurs modifications peuvent être nécessaires pour le rendre fonctionnel sur votre environnement, selon la quantité de modifications dans vos templates notamment. A ce titre, pouvez-vous me fournir par MP, l'URL de votre forum de destination, ainsi qu'un compte de test ? Ce sera plus simple pour vous aider !
Cordialement,
w00tw00t
Vous pouvez placer ce code juste après la balise suivante :
- Code:
<head>
Cette balise doit se situer tout en haut de votre template overall_header.
Comme je l'ai indiqué, plusieurs modifications peuvent être nécessaires pour le rendre fonctionnel sur votre environnement, selon la quantité de modifications dans vos templates notamment. A ce titre, pouvez-vous me fournir par MP, l'URL de votre forum de destination, ainsi qu'un compte de test ? Ce sera plus simple pour vous aider !
Cordialement,
w00tw00t
Re: ModernBB : Mention "Auteur du sujet" dans le profil du membre
Voici les 6 premières lignes de mon overall_header
Les deux lignes sont bien à la suite de la balise <head>
Le lien de mon forum est renseigné dans mon profil
Pour le compte Test, il faut qu'il ait des accès particuliers ?
- Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="{S_CONTENT_DIRECTION}" id="min-width" lang="{L_LANG_HTML}" xml:lang="{L_LANG_HTML}" {NAMESPACE_FB_LIKE} {NAMESPACE_FB} {NAMESPACE_BBCODE}>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.0/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">const $jQuery3 = $.noConflict(true);</script>
<title>{SITENAME_TITLE}{PAGE_TITLE}</title>
Les deux lignes sont bien à la suite de la balise <head>
Le lien de mon forum est renseigné dans mon profil
Pour le compte Test, il faut qu'il ait des accès particuliers ?
Re: ModernBB : Mention "Auteur du sujet" dans le profil du membre
*Splash* a écrit:Voici les 6 premières lignes de mon overall_header
- Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="{S_CONTENT_DIRECTION}" id="min-width" lang="{L_LANG_HTML}" xml:lang="{L_LANG_HTML}" {NAMESPACE_FB_LIKE} {NAMESPACE_FB} {NAMESPACE_BBCODE}>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.0/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">const $jQuery3 = $.noConflict(true);</script>
<title>{SITENAME_TITLE}{PAGE_TITLE}</title>
Les deux lignes sont bien à la suite de la balise <head>
Le lien de mon forum est renseigné dans mon profil
Pour le compte Test, il faut qu'il ait des accès particuliers ?
EDIT
Mes yeux me font défaut !
tout va bien car la mention apparaît bien
Est-il possible de placer cette mention entre le pseudo et le groupe du membre ?
Et-il possible de mettre cette mention en gras et lui donner une couleur ?
Re: ModernBB : Mention "Auteur du sujet" dans le profil du membre
Bonjour *Splash*,
Vos modifications sont correctes en effet.
Néanmoins, lorsque l'on est sur une session invitée sur votre forum, chaque auteur est affiché sous forme textuelle, et non sous forme de lien cliquable, ce qui empêche au système de déduire quels sont les IDs des utilisateurs de chaque message d'un sujet, et donc d'en déduire l'auteur. Peut être avez-vous désactiver les liens ou quelque chose comme ça pour vos invités. Il faudra investiguer si vous souhaitez que la mention soit également présente dans ces conditions.
Pour ce qui est d'un utilisateur connecté, veillez à vérifier que la mention s'affiche bien à la fois sur la première page et sur les autres pages d'un sujet donné. S'agissant de l'emplacement de la mention, rien ne vous empêche à la place d'un span d'utiliser un div par exemple :
Vous pouvez ensuite personnaliser le style à l'aide de la classe "current_user_is_author" dans votre CSS :
Vous pouvez aussi spécifier une image en tant que "background-image" si c'est plus pratique.
Si vous avez d'autres modifications souhaitées, vous pouvez m'envoyer un compte de test, sans droit particulier (membre standard).
Cordialement,
w00tw00t
Vos modifications sont correctes en effet.
Néanmoins, lorsque l'on est sur une session invitée sur votre forum, chaque auteur est affiché sous forme textuelle, et non sous forme de lien cliquable, ce qui empêche au système de déduire quels sont les IDs des utilisateurs de chaque message d'un sujet, et donc d'en déduire l'auteur. Peut être avez-vous désactiver les liens ou quelque chose comme ça pour vos invités. Il faudra investiguer si vous souhaitez que la mention soit également présente dans ces conditions.
Pour ce qui est d'un utilisateur connecté, veillez à vérifier que la mention s'affiche bien à la fois sur la première page et sur les autres pages d'un sujet donné. S'agissant de l'emplacement de la mention, rien ne vous empêche à la place d'un span d'utiliser un div par exemple :
- Code:
<div class="current_user_is_author" style="display:none">Auteur du sujet</div>
Vous pouvez ensuite personnaliser le style à l'aide de la classe "current_user_is_author" dans votre CSS :
- Code:
.current_user_is_author {
font-weight: bold;
color: #f00;
}
Vous pouvez aussi spécifier une image en tant que "background-image" si c'est plus pratique.
Si vous avez d'autres modifications souhaitées, vous pouvez m'envoyer un compte de test, sans droit particulier (membre standard).
Cordialement,
w00tw00t
Re: ModernBB : Mention "Auteur du sujet" dans le profil du membre
Merci w00tw00t,
Avec la commande <br /> cette mention apparaît entre le pseudo et le groupe du membre
Je passe ce sujet en Résolu
Avec la commande <br /> cette mention apparaît entre le pseudo et le groupe du membre
- Code:
<div class="postprofile-name">
{postrow.displayed.POSTER_NAME}<br />
<span class="current_user_is_author" style="display:none">Auteur du sujet</span>
</div>
Je passe ce sujet en Résolu
Re: ModernBB : Mention "Auteur du sujet" dans le profil du membre
Non les liens sont actifs pour les visiteurs.w00tw00t a écrit:Néanmoins, lorsque l'on est sur une session invitée sur votre forum, chaque auteur est affiché sous forme textuelle, et non sous forme de lien cliquable, ce qui empêche au système de déduire quels sont les IDs des utilisateurs de chaque message d'un sujet, et donc d'en déduire l'auteur. Peut être avez-vous désactiver les liens ou quelque chose comme ça pour vos invités. Il faudra investiguer si vous souhaitez que la mention soit également présente dans ces conditions.
Quelle est la modification à apporter pour que cette mention "Auteur du sujet" soit visible aux invités ?
Trouvé, il suffit d'enlever display:none
Re: ModernBB : Mention "Auteur du sujet" dans le profil du membre
Bonjour *Splash*,
Si vous enlevez display:none, la mention sera affichée pour chaque message, et ce même si le message n'est pas posté par l'auteur du sujet. La technique réside justement dans la présence de ce display:none.
Le système ne détecte pas pour les invités qui est l'auteur d'un sujet, puisque la configuration de votre forum ne le permet pas. Pour que cela fonctionne avec les invités vous devez vous assurer que "voir le profil" est bien positionné sur "invités" :
Si néanmoins vous souhaitez masquer les profils aux invités ET continuer d'afficher l'auteur du sujet pour vos invités, une solution de contournement pourrait être de laisser les profils pour les invités, mais qu'après l'exécution du script vous masquez tout ce qui est relatif aux informations profils.
Je reste à disposition par MP pour plus de détails. Vous pouvez également ouvrir un nouveau sujet si vous avez d'autres besoins par rapport à cette mention "auteur du sujet".
Cordialement,
w00tw00t
Merci à Chacha d'avoir réouvert le topic pour que je puisse apporter cette précision pour les autres membres
Si vous enlevez display:none, la mention sera affichée pour chaque message, et ce même si le message n'est pas posté par l'auteur du sujet. La technique réside justement dans la présence de ce display:none.
Le système ne détecte pas pour les invités qui est l'auteur d'un sujet, puisque la configuration de votre forum ne le permet pas. Pour que cela fonctionne avec les invités vous devez vous assurer que "voir le profil" est bien positionné sur "invités" :
Si néanmoins vous souhaitez masquer les profils aux invités ET continuer d'afficher l'auteur du sujet pour vos invités, une solution de contournement pourrait être de laisser les profils pour les invités, mais qu'après l'exécution du script vous masquez tout ce qui est relatif aux informations profils.
Je reste à disposition par MP pour plus de détails. Vous pouvez également ouvrir un nouveau sujet si vous avez d'autres besoins par rapport à cette mention "auteur du sujet".
Cordialement,
w00tw00t
Merci à Chacha d'avoir réouvert le topic pour que je puisse apporter cette précision pour les autres membres
Sujets similaires
» problème affichage de la mention membre @ dans le profil
» ModernBB : retirer les deux points des labels de champs de profil dans l'affichage d'un sujet et dans l'affichage du profil.
» Gif dans le Profil qui déforme la colonne "auteur"
» Problème d'apparence profil de membre personnalisé dans un sujet
» Comment retirer la ligne avec "Auteur", "Message" sous le "Titre du sujet" dans le sujet en question ?
» ModernBB : retirer les deux points des labels de champs de profil dans l'affichage d'un sujet et dans l'affichage du profil.
» Gif dans le Profil qui déforme la colonne "auteur"
» Problème d'apparence profil de membre personnalisé dans un sujet
» Comment retirer la ligne avec "Auteur", "Message" sous le "Titre du sujet" dans le sujet en question ?
Forum gratuit : Le forum des forums actifs :: Entraide & Support... :: Gérer l'apparence de son forum :: Archives des problèmes avec l'apparence du forum
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum