Membres connectés récemment
[PHPBB3] Mettre en forme le widget crée "Mes derniers MPs"
2 participants
Page 1 sur 1 • Partagez
- Version du forum :PHPBB3
- Templates modifiés :oui
- Navigateur :Firefox
Bonsoir Phil.
Mon souhait est de mettre en forme ce widget créé "Mes derniers MPs", comme celui des "Sujets récents" (avec permissions spéciales)
Voir ici : https://www.milouze14.com/t32822-resoluphpbb3-mise-en-forme-du-widget-derniers-sujets#anchor
J'ai bien essayé de modifier le JS de "Mes derniers MPs" qui est actuellement celui-ci :
à la lumière de celui des "Sujets récents" :
mais au final, le résultat global n'est pas au rendez-vous !!!
Je m'en remets donc, une fois encore, à tes talents.
Bonne nuit et d'avance merci.
Mon souhait est de mettre en forme ce widget créé "Mes derniers MPs", comme celui des "Sujets récents" (avec permissions spéciales)
Voir ici : https://www.milouze14.com/t32822-resoluphpbb3-mise-en-forme-du-widget-derniers-sujets#anchor
J'ai bien essayé de modifier le JS de "Mes derniers MPs" qui est actuellement celui-ci :
- Code:
$(function(){
if(!_userdata["session_logged_in"])return;
$(function(){
var u=_userdata["user_id"];
if(u==1||u==5||u==45)
$('table.portal').each(function(){
//modifier le texte du titre ici
var a="Mes messages privés récents";
$(this).find('td.column:first').find('div.module').first().after('<div class="Widget_portail">
<div class="module"><div class="h3">'+a+'</div>
<div id="M14_load_widget"class="inner"></div></div></div>');
var $this=$('#M14_load_widget');
$.get('/privmsg?folder=inbox' , function(data){
$(data).find('a.topictitle:lt(6)').each(function(){
var link=$(this).attr('href');
var text=$(this).text();
$this.append('<a class="topictitle info" href="'+link+'" title="'+text+'">'+text+'</a>');
$('.topictitle.info').tooltipster({
animation : 'fade',
arrow : true,
speed : 300,
delay : 300,
onlyOne : true,
theme : 'tooltipster-default'
});
});
});
});
})});
à la lumière de celui des "Sujets récents" :
- Code:
$(function(){
if(!_userdata["session_logged_in"])return;
$(function(){
var u=_userdata["user_id"];
if(u==1||u==4||u==5||u==6||u==7||u==8||u==9||u==10||u==11||u==45)
$('table.portal').each(function(){
//modifier le texte du titre ici
var a="Messages/Sujets les plus récents";
$(this).find('td.column').last().find('div.module').first().after('<div class="Widget_portail">
<div class="module"><div class="h3">'+a+'</div>
<div id="M14_load_widget"class="inner"></div></div></div>');
var $this=$('#M14_load_widget');
$.get('/latest' , function(data){
$(data).find('a.topictitle:lt(10)').each(function(){
var color=$(this).closest('li').find('.lastpost a[href^="/u"] span').css('color');
var auteur=$(this).closest('li').find('.lastpost a[href^="/u"]').text();
var date=$(this).closest('li').find('dd.lastpost').find('.M14_search_time').text();
var link=$(this).closest('li').find('.lastpost a[href^="/t"]').attr('href');
var text=$(this).text();
$this.append('<div class="M14_ligne"><a class="topictitle info" href="'+link+'" title="'+text+'">'+text+'</a><span style="color:'+color+';font-weight:bold;">par '+auteur+'</span><span style="float:right;">'+date+'</span></div><hr/>');
$('.topictitle.info').tooltipster({animation : 'fade',arrow : true,speed : 300,delay : 300,onlyOne : true,
theme : 'tooltipster-default'});});});});})});
mais au final, le résultat global n'est pas au rendez-vous !!!
Je m'en remets donc, une fois encore, à tes talents.
Bonne nuit et d'avance merci.
J'ai oublié la CSS actuellement en fonction :
- Code:
#M14_load_widget a.topictitle
{
display:list-item;
list-style:none;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
max-width:98%;
font-size:10px;
}
/*CHAQUE LIGNE DU WIDGET*/
#M14_load_widget .M14_ligne
{
height:30px;
}
/*LE PSEUDO ET LA DATE*/
#M14_load_widget .M14_ligne span
{
font-size:10px;
}
/*CHAQUE LIGNE DU WIDGET*/
#M14_load_widget .M14_ligne
{
background:white;
height:30px;
}
Coucou Roza,
alors on va intervenir dans le template privmsgs_body:
Affichage/Templates/Poster et messages privés/privmsgs_body
Recherches ceci (ligne 55 environ):
Supprimes et remplaces par:
Penses a enregistrer puis à valider en cliquant respectivement sur puis
On a englobé le pseudo et la date dans la liste des mps.
Ensuite, je viens de me rendre compte qu'il faut mettre un identifiant différent pour chaque div:
Pour les sujets récents, tu as cet id:
M14_load_widget
Pour les Mps ce sera:
M14_load_widgetmp
Remplaces donc le script des mps par celui-ci:
Puis remplaces la css donnée par celle ci:
Veut dire, toutes les divs ayant un id commençant par "M14_load_widget".
Cela évite de doubler la css.
alors on va intervenir dans le template privmsgs_body:
Affichage/Templates/Poster et messages privés/privmsgs_body
Recherches ceci (ligne 55 environ):
- Code:
<span style="margin: 0 5px"><em>{listrow.FROM} - {listrow.DATE}</em></span>
Supprimes et remplaces par:
- Code:
<span style="margin: 0 5px"><em><span class="M14_userMP">{listrow.FROM}</span> - <span class="M14_dateMP">{listrow.DATE}</span></em></span>
Penses a enregistrer puis à valider en cliquant respectivement sur puis
On a englobé le pseudo et la date dans la liste des mps.
Ensuite, je viens de me rendre compte qu'il faut mettre un identifiant différent pour chaque div:
Pour les sujets récents, tu as cet id:
M14_load_widget
Pour les Mps ce sera:
M14_load_widgetmp
Remplaces donc le script des mps par celui-ci:
- Code:
$(function(){
if(!_userdata["session_logged_in"])return;
$(function(){
var u=_userdata["user_id"];
if(u==1||u==5||u==45)
$('table.portal').each(function(){
//modifier le texte du titre ici
var a="Mes messages privés récents";
$(this).find('td.column:first').find('div.module').first().after('<div class="Widget_portail">
<div class="module"><div class="h3">'+a+'</div>
<div id="M14_load_widgetmp"class="inner"></div></div></div>');
var $this=$('#M14_load_widgetmp');
$.get('/privmsg?folder=inbox' , function(data){
$(data).find('a.topictitle:lt(6)').each(function(){
var link=$(this).attr('href');
var text=$(this).text();
var date=$(this).closest('dt').find('.M14_dateMP').text();
var auteur=$(this).closest('dt').find('.M14_userMP').text();
var color=$(this).closest('dt').find('.M14_userMP a[href^="/u"] span').css('color');
$this.append('<div class="M14_ligne"><a class="topictitle info" href="'+link+'" title="'+text+'">'+text+'</a><span style="color:'+color+';font-weight:bold;">par '+auteur+'</span><span style="float:right;">'+date+'</span></div><hr/>');
$('.topictitle.info').tooltipster({
animation : 'fade',
arrow : true,
speed : 300,
delay : 300,
onlyOne : true,
theme : 'tooltipster-default'
});
});
});
});
})});
Puis remplaces la css donnée par celle ci:
- Code:
div[id^="M14_load_widget"] a.topictitle
{
display:list-item;
list-style:none;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
max-width:98%;
font-size:10px;
}
/*CHAQUE LIGNE DU WIDGET*/
div[id^="M14_load_widget"] .M14_ligne
{
background:white;
height:30px;
}
/*LE PSEUDO ET LA DATE*/
div[id^="M14_load_widget"] .M14_ligne span
{
font-size:10px;
}
- Code:
div[id^="M14_load_widget"]
Veut dire, toutes les divs ayant un id commençant par "M14_load_widget".
Cela évite de doubler la css.
Bonjour Phil !
J'avais bien trouvé certaines choses... mais pas tout (modifier Le template, ignorance de la syntaxe JS appropriée : "userMP" notamment)
Tout est OK maintenant !
Encore une fois un grand à toi !
Grâce à toi, le portail de mon forum a donc pris maintenant une allure qui me convient
Je passe en résolu.
Bonne journée et, probablement... à bientôt...
J'avais bien trouvé certaines choses... mais pas tout (modifier Le template, ignorance de la syntaxe JS appropriée : "userMP" notamment)
Tout est OK maintenant !
Encore une fois un grand à toi !
Grâce à toi, le portail de mon forum a donc pris maintenant une allure qui me convient
Je passe en résolu.
Bonne journée et, probablement... à bientôt...
Sujets similaires
Créer un compte ou se connecter pour répondre
Vous devez être membre pour répondre.
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum