Dupliquer un bouton
2 participants
Forum gratuit : Le forum des forums actifs :: Entraide & Support... :: Problème avec un script, un code :: Archives des problèmes avec un code
Page 1 sur 1 • Partagez
Dupliquer un bouton
Bonjour à toutes et tous,
Le bouton des like est placé sur mon forum sous le 1ier message du sujet.
Serait-il possible de dupliquer ce bouton à droite de l'éditeur (sceditor-toolbar) sur la réponse rapide.
Je ne sais pas si cela est possible tout en gardant la possibilité de ne pas pas pouvoir mettre 2 like par le même membre, et que l'auteur du message ne puisse pas se mettre un like comme c'est le cas actuellement.
Merci pour votre aide.
Le bouton des like est placé sur mon forum sous le 1ier message du sujet.
Serait-il possible de dupliquer ce bouton à droite de l'éditeur (sceditor-toolbar) sur la réponse rapide.
Je ne sais pas si cela est possible tout en gardant la possibilité de ne pas pas pouvoir mettre 2 like par le même membre, et que l'auteur du message ne puisse pas se mettre un like comme c'est le cas actuellement.
Merci pour votre aide.
Re: Dupliquer un bouton
Non faisable apparemment.
Re: Dupliquer un bouton
petit up.
Re: Dupliquer un bouton
Bonjour,
Vous avez déjà personnalisé votre système de like ? Parce que normalement, il me semble que le bouton "j'aime" apparait pour chaque message ? Ou je me trompe et vous parlez d'autre chose ?
Pour ce qui est de ne pas pouvoir "s'aimer soi même"... à voir, peut être avec un javascript Je sais que le système de vote ne permet pas de voter pour soi-même, mais c'est un peu différent comme système.
Vous avez déjà personnalisé votre système de like ? Parce que normalement, il me semble que le bouton "j'aime" apparait pour chaque message ? Ou je me trompe et vous parlez d'autre chose ?
Pour ce qui est de ne pas pouvoir "s'aimer soi même"... à voir, peut être avec un javascript Je sais que le système de vote ne permet pas de voter pour soi-même, mais c'est un peu différent comme système.
MlleAlys- Membre actif
- Messages : 5968
Inscrit(e) le : 12/09/2012
Re: Dupliquer un bouton
Bonjour MlleAlys,
Oui, mon système de like a effectivement été personnalisé. Il est placé en dessous de chaque premier message dans les sujets, il permet de ne pas s'aimer soi même etc.
Il fonctionne parfaitement.
Ce qui est demandé ici, est de pouvoir le dupliquer.
C'est à dire le garder à son emplacement actuel en l'état, mais avoir en plus un second bouton à droite de l'éditeur (sceditor-toolbar) sur la réponse rapide qui permettrait aussi de mettre un like.
En fait pouvoir mettre un like, soit à partir du bouton placé sous le 1ier message, soit sur ce second bouton placé à coté de la réponse rapide.
Oui, mon système de like a effectivement été personnalisé. Il est placé en dessous de chaque premier message dans les sujets, il permet de ne pas s'aimer soi même etc.
Il fonctionne parfaitement.
Ce qui est demandé ici, est de pouvoir le dupliquer.
C'est à dire le garder à son emplacement actuel en l'état, mais avoir en plus un second bouton à droite de l'éditeur (sceditor-toolbar) sur la réponse rapide qui permettrait aussi de mettre un like.
En fait pouvoir mettre un like, soit à partir du bouton placé sous le 1ier message, soit sur ce second bouton placé à coté de la réponse rapide.
Re: Dupliquer un bouton
Alors j'ai essayé avec un simple "clone" dans un petit javascript comme ceci :
Avec les nuances suivantes :
- Les deux boutons ne se synchronisent pas automatiquement, mais dès lors qu'on rafraichit la page.
- je n'ai pas vos personnalisations, j'espère que ça va fonctionner quand même !
- j'ai ajouté ce css là sur mon forum pour afficher le bouton sur le côté droit :
- Code:
$(function() {
$("#quick_reply").before('<div id="fa_like_clone"></div>');
$(".fa_like_div").clone().appendTo("#fa_like_clone");
});
Avec les nuances suivantes :
- Les deux boutons ne se synchronisent pas automatiquement, mais dès lors qu'on rafraichit la page.
- je n'ai pas vos personnalisations, j'espère que ça va fonctionner quand même !
- j'ai ajouté ce css là sur mon forum pour afficher le bouton sur le côté droit :
- Code:
#fa_like_clone {
float: right;
}
div#fa_like_clone .fa_like_div {
margin: 0;
width: auto;
padding: 0;
}
MlleAlys- Membre actif
- Messages : 5968
Inscrit(e) le : 12/09/2012
Re: Dupliquer un bouton
Un grand merci MlleAlys pour cette suite.
Alors le bouton est bien dupliqué en bas.
Par contre j'ai autant de boutons cote à cote qu'il il y a de message dans le sujet.
Alors le bouton est bien dupliqué en bas.
Par contre j'ai autant de boutons cote à cote qu'il il y a de message dans le sujet.
Re: Dupliquer un bouton
Ah mince, je pensais que les autres seraient également cachés du coup....
Quel code utilisez-vous pour n'afficher que le premier ?
Quel code utilisez-vous pour n'afficher que le premier ?
MlleAlys- Membre actif
- Messages : 5968
Inscrit(e) le : 12/09/2012
Re: Dupliquer un bouton
Le code du système de like personnalisé:
- Code:
//Nouveau système de Best
$(function(){
$(function(){
var fofo=$('a.nav[href^="/f4-"],a.nav[href^="/f5-"],a.nav[href^="/f1-"],a.nav[href^="/f19-"]').length;
if(fofo){
var typeTopic=$('.topic-title:first').find('img[src="https://i.servimg.com/u/f20/20/11/87/27/annonc10.png"],img[src="https://i.servimg.com/u/f20/20/11/87/27/annonc11.png"],img[src="https://i.servimg.com/u/f20/20/11/87/27/note10.png"]').length;
if(typeTopic)return;
// $editor = $('.sceditor-container');
var member=_userdata["username"];
// if ($editor.hasClass('wysiwygMode')) $editor.removeClass('wysiwygMode').addClass('sourceMode') ;
$('div[class*="post--"]:first').each(function(){
if (_userdata["user_id"] < (0)){
$(this).find('.fa_like_div').wrap('<a href="/login" title="Si vous souhaitez réagir à ce message, merci de vous connecter ou de vous enregistrer."></a>');
}
var speudo=$('div[class*="post--"]:first .author a[href^="/u"]').text() ;
if(speudo==member){
$(this).find('.fa_like_div').show().each(function(){
var a=$(this).find('.fa_like_list').text().length;
if(a==0){$(this).after('<span class="zerobest">0\n\n <img src="https://i.servimg.com/u/f31/19/32/37/01/059012.gif" style="top: 4px;position: relative;"/> pour le moment.</span>');}
else{
var liketest=$('span[class="rep-nb"]:first').text();
$(this).before('<span class="bestmembre">'+liketest+''+" "+'<img src="https://i.servimg.com/u/f31/19/32/37/01/059012.gif" style="top: 4px;position: relative;"/> mis par:</span>');
}
$(this).find('button').remove();
});
}
else{$(this).find('.fa_like_div').show();}
var base=$('#text_editor_textarea').sceditor("instance").val();
var liketest=$('span[class="rep-nb"]:first').text();
//LE TEXTE AJOUTE DANS L EDITEUR
var message=" + 1 ";
//LE CODE SMILEY
var pictures=":BEST: ";
//LE TEXTE DE L EDITEUR
var texte="un Best a été ajouté dans l\'éditeur.";
$(this).find('button.rep-button.fa_like').wrap('<a href="#quickreply"></a>').click(function(){
$(this).unbind(); $(this).unwrap();
alert(''+member+','+texte+'');
if(liketest == 0){
$('#text_editor_textarea').sceditor("instance").insert(base+'\n'+pictures+'\n\n');
}
else {
$('#text_editor_textarea').sceditor("instance").insert(base+'\n'+message+' '+pictures+'\n\n');
}
});
});
}
})});
Re: Dupliquer un bouton
le template a été modifié également je suppose ?
MlleAlys- Membre actif
- Messages : 5968
Inscrit(e) le : 12/09/2012
Re: Dupliquer un bouton
Oui, surement, c'est Milouze qui m'avait écrit cela.
J'essaie de retrouver ça et je reviens.
J'essaie de retrouver ça et je reviens.
Re: Dupliquer un bouton
Je pense que c'est cette partie:
- Code:
<!-- BEGIN switch_likes_active -->
<div class="fa_like_div" style="display:none;">
<!-- BEGIN switch_like_list -->
{postrow.displayed.switch_likes_active.switch_like_list.D_LIKE_LIST}
<!-- END switch_like_list -->
<!-- BEGIN switch_dislike_list -->
{postrow.displayed.switch_likes_active.switch_dislike_list.D_DISLIKE_LIST}
<!-- END switch_dislike_list -->
<button class="rep-button {postrow.displayed.switch_likes_active.C_VOTE_LIKE}" data-href="{postrow.displayed.switch_likes_active.U_VOTE_LIKE}" data-href-rm="{postrow.displayed.switch_likes_active.U_VOTE_RM_LIKE}">
<svg width="13px" height="13px" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M320 1344q0-26-19-45t-45-19q-27 0-45.5 19t-18.5 45q0 27 18.5 45.5t45.5 18.5q26 0 45-18.5t19-45.5zm160-512v640q0 26-19 45t-45 19h-288q-26 0-45-19t-19-45v-640q0-26 19-45t45-19h288q26 0 45 19t19 45zm1184 0q0 86-55 149 15 44 15 76 3 76-43 137 17 56 0 117-15 57-54 94 9 112-49 181-64 76-197 78h-129q-66 0-144-15.5t-121.5-29-120.5-39.5q-123-43-158-44-26-1-45-19.5t-19-44.5v-641q0-25 18-43.5t43-20.5q24-2 76-59t101-121q68-87 101-120 18-18 31-48t17.5-48.5 13.5-60.5q7-39 12.5-61t19.5-52 34-50q19-19 45-19 46 0 82.5 10.5t60 26 40 40.5 24 45 12 50 5 45 .5 39q0 38-9.5 76t-19 60-27.5 56q-3 6-10 18t-11 22-8 24h277q78 0 135 57t57 135z" fill="#666"/></svg>
<span> Best </span>{postrow.displayed.switch_likes_active.COUNT_VOTE_LIKE}
</button>
<!-- BEGIN switch_dislike_button -->
<button class="rep-button {postrow.displayed.switch_likes_active.switch_dislike_button.C_VOTE_DISLIKE}" data-href="{postrow.displayed.switch_likes_active.switch_dislike_button.U_VOTE_DISLIKE}" data-href-rm="{postrow.displayed.switch_likes_active.switch_dislike_button.U_VOTE_RM_LIKE}">
<svg width="13px" height="13px" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M320 576q0 26-19 45t-45 19q-27 0-45.5-19t-18.5-45q0-27 18.5-45.5t45.5-18.5q26 0 45 18.5t19 45.5zm160 512v-640q0-26-19-45t-45-19h-288q-26 0-45 19t-19 45v640q0 26 19 45t45 19h288q26 0 45-19t19-45zm1129-149q55 61 55 149-1 78-57.5 135t-134.5 57h-277q4 14 8 24t11 22 10 18q18 37 27 57t19 58.5 10 76.5q0 24-.5 39t-5 45-12 50-24 45-40 40.5-60 26-82.5 10.5q-26 0-45-19-20-20-34-50t-19.5-52-12.5-61q-9-42-13.5-60.5t-17.5-48.5-31-48q-33-33-101-120-49-64-101-121t-76-59q-25-2-43-20.5t-18-43.5v-641q0-26 19-44.5t45-19.5q35-1 158-44 77-26 120.5-39.5t121.5-29 144-15.5h129q133 2 197 78 58 69 49 181 39 37 54 94 17 61 0 117 46 61 43 137 0 32-15 76z" fill="#666"/></svg>
<span>{postrow.displayed.switch_likes_active.switch_dislike_button.L_DISLIKE}</span>{postrow.displayed.switch_likes_active.switch_dislike_button.COUNT_VOTE_DISLIKE}
</button>
<!-- END switch_dislike_button -->
</div>
<!-- END switch_likes_active -->
Re: Dupliquer un bouton
Merci !
Essayez en supprimant le code que je vous ai donné au départ, et de mettre celui-ci à la place de celui que vous m'avez donné plus haut :
(je ne l'ai pas modifié, j'ai simplement mis le mien à la fin du votre pour être sûre qu'il se déclenche après.... normalement ! J'avoue que le code est un peu trop compliqué pour moi pour que je creuse plus que ça.... )
Essayez en supprimant le code que je vous ai donné au départ, et de mettre celui-ci à la place de celui que vous m'avez donné plus haut :
- Code:
//Nouveau système de Best
$(function(){
$(function(){
var fofo=$('a.nav[href^="/f4-"],a.nav[href^="/f5-"],a.nav[href^="/f1-"],a.nav[href^="/f19-"]').length;
if(fofo){
var typeTopic=$('.topic-title:first').find('img[src="https://i.servimg.com/u/f20/20/11/87/27/annonc10.png"],img[src="https://i.servimg.com/u/f20/20/11/87/27/annonc11.png"],img[src="https://i.servimg.com/u/f20/20/11/87/27/note10.png"]').length;
if(typeTopic)return;
// $editor = $('.sceditor-container');
var member=_userdata["username"];
// if ($editor.hasClass('wysiwygMode')) $editor.removeClass('wysiwygMode').addClass('sourceMode') ;
$('div[class*="post--"]:first').each(function(){
if (_userdata["user_id"] < (0)){
$(this).find('.fa_like_div').wrap('<a href="/login" title="Si vous souhaitez réagir à ce message, merci de vous connecter ou de vous enregistrer."></a>');
}
var speudo=$('div[class*="post--"]:first .author a[href^="/u"]').text() ;
if(speudo==member){
$(this).find('.fa_like_div').show().each(function(){
var a=$(this).find('.fa_like_list').text().length;
if(a==0){$(this).after('<span class="zerobest">0\n\n <img src="https://i.servimg.com/u/f31/19/32/37/01/059012.gif" style="top: 4px;position: relative;"/> pour le moment.</span>');}
else{
var liketest=$('span[class="rep-nb"]:first').text();
$(this).before('<span class="bestmembre">'+liketest+''+" "+'<img src="https://i.servimg.com/u/f31/19/32/37/01/059012.gif" style="top: 4px;position: relative;"/> mis par:</span>');
}
$(this).find('button').remove();
});
}
else{$(this).find('.fa_like_div').show();}
var base=$('#text_editor_textarea').sceditor("instance").val();
var liketest=$('span[class="rep-nb"]:first').text();
//LE TEXTE AJOUTE DANS L EDITEUR
var message=" + 1 ";
//LE CODE SMILEY
var pictures=":BEST: ";
//LE TEXTE DE L EDITEUR
var texte="un Best a été ajouté dans l\'éditeur.";
$(this).find('button.rep-button.fa_like').wrap('<a href="#quickreply"></a>').click(function(){
$(this).unbind(); $(this).unwrap();
alert(''+member+','+texte+'');
if(liketest == 0){
$('#text_editor_textarea').sceditor("instance").insert(base+'\n'+pictures+'\n\n');
}
else {
$('#text_editor_textarea').sceditor("instance").insert(base+'\n'+message+' '+pictures+'\n\n');
}
});
});
}
$("#quick_reply").before('<div id="fa_like_clone"></div>');
$(".fa_like_div").clone().appendTo("#fa_like_clone");
})
});
(je ne l'ai pas modifié, j'ai simplement mis le mien à la fin du votre pour être sûre qu'il se déclenche après.... normalement ! J'avoue que le code est un peu trop compliqué pour moi pour que je creuse plus que ça.... )
MlleAlys- Membre actif
- Messages : 5968
Inscrit(e) le : 12/09/2012
Re: Dupliquer un bouton
Je n'ai plus les répétitions.
Mais il y a des choses qui sont faites par le script et qui ne sont pas réalisés par le nouveau bouton. comme par exemple le fait de mettre dans l'éditeur une petite image prédéfinie.
Il y a je pense quelques adaptations à faire pour ce nouveau bouton.
Tu m'as donné des pistes de réflexions et je te remercie beaucoup pour cette avancée.
Peut-être que quelqu'un viendra nous aider.
Mais il y a des choses qui sont faites par le script et qui ne sont pas réalisés par le nouveau bouton. comme par exemple le fait de mettre dans l'éditeur une petite image prédéfinie.
Il y a je pense quelques adaptations à faire pour ce nouveau bouton.
Tu m'as donné des pistes de réflexions et je te remercie beaucoup pour cette avancée.
Peut-être que quelqu'un viendra nous aider.
Re: Dupliquer un bouton
Oui, je pense que je vais laisser la main parce que je ne maîtrise pas du tout assez le code de base, je devine rapidement à quoi servent telles ou telles parties, mais de là à comprendre pour quoi ça ne fonctionne pas... (surtout que comme il me manque des personnalisations, je n'ai pas le fameux bouton de l'éditeur ^^")
A tout hasard, essayez ceci peut être :
Mais sinon, il faudra attendre quelqu'un d'autre pour la réponse ^^"
A tout hasard, essayez ceci peut être :
- Code:
//Nouveau système de Best
$(function(){
$(function(){
var fofo=$('a.nav[href^="/f4-"],a.nav[href^="/f5-"],a.nav[href^="/f1-"],a.nav[href^="/f19-"]').length;
if(fofo){
var typeTopic=$('.topic-title:first').find('img[src="https://i.servimg.com/u/f20/20/11/87/27/annonc10.png"],img[src="https://i.servimg.com/u/f20/20/11/87/27/annonc11.png"],img[src="https://i.servimg.com/u/f20/20/11/87/27/note10.png"]').length;
if(typeTopic)return;
// $editor = $('.sceditor-container');
var member=_userdata["username"];
// if ($editor.hasClass('wysiwygMode')) $editor.removeClass('wysiwygMode').addClass('sourceMode') ;
$('div[class*="post--"]:first').each(function(){
if (_userdata["user_id"] < (0)){
$(this).find('.fa_like_div').wrap('<a href="/login" title="Si vous souhaitez réagir à ce message, merci de vous connecter ou de vous enregistrer."></a>');
}
var speudo=$('div[class*="post--"]:first .author a[href^="/u"]').text() ;
if(speudo==member){
$(this).find('.fa_like_div').show().each(function(){
var a=$(this).find('.fa_like_list').text().length;
if(a==0){$(this).after('<span class="zerobest">0\n\n <img src="https://i.servimg.com/u/f31/19/32/37/01/059012.gif" style="top: 4px;position: relative;"/> pour le moment.</span>');}
else{
var liketest=$('span[class="rep-nb"]:first').text();
$(this).before('<span class="bestmembre">'+liketest+''+" "+'<img src="https://i.servimg.com/u/f31/19/32/37/01/059012.gif" style="top: 4px;position: relative;"/> mis par:</span>');
}
$(this).find('button').remove();
});
}
else{$(this).find('.fa_like_div').show();}
var base=$('#text_editor_textarea').sceditor("instance").val();
var liketest=$('span[class="rep-nb"]:first').text();
//LE TEXTE AJOUTE DANS L EDITEUR
var message=" + 1 ";
//LE CODE SMILEY
var pictures=":BEST: ";
//LE TEXTE DE L EDITEUR
var texte="un Best a été ajouté dans l\'éditeur.";
$(this).find('button.rep-button.fa_like').wrap('<a href="#quickreply"></a>').click(function(){
$(this).unbind(); $(this).unwrap();
alert(''+member+','+texte+'');
if(liketest == 0){
$('#text_editor_textarea').sceditor("instance").insert(base+'\n'+pictures+'\n\n');
}
else {
$('#text_editor_textarea').sceditor("instance").insert(base+'\n'+message+' '+pictures+'\n\n');
}
});
});
}
})});
$(function() {
$(function() {
$("#quick_reply").before('<div id="fa_like_clone"></div>');
$(".fa_like_div").clone().appendTo("#fa_like_clone");
});
});
Mais sinon, il faudra attendre quelqu'un d'autre pour la réponse ^^"
MlleAlys- Membre actif
- Messages : 5968
Inscrit(e) le : 12/09/2012
Re: Dupliquer un bouton
Tout fonctionne à merveille là MlleAlys.
Il manque effectivement juste ce qu'il se passe au niveau l'éditeur quand on clique sur ce nouveau bouton. On a normalement une alert et le smiley :BEST. qui est jouté à l'éditeur.
C'est cette partie du code qui fait ça:
Il manque effectivement juste ce qu'il se passe au niveau l'éditeur quand on clique sur ce nouveau bouton. On a normalement une alert et le smiley :BEST. qui est jouté à l'éditeur.
C'est cette partie du code qui fait ça:
- Code:
//LE TEXTE AJOUTE DANS L EDITEUR
var message=" + 1 ";
//LE CODE SMILEY
var pictures=":BEST: ";
//LE TEXTE DE L EDITEUR
var texte="un Best a été ajouté dans l\'éditeur.";
$(this).find('button.rep-button.fa_like').wrap('<a href="#quickreply"></a>').click(function(){
$(this).unbind(); $(this).unwrap();
alert(''+member+','+texte+'');
if(liketest == 0){
$('#text_editor_textarea').sceditor("instance").insert(base+'\n'+pictures+'\n\n');
}
else {
$('#text_editor_textarea').sceditor("instance").insert(base+'\n'+message+' '+pictures+'\n\n');
}
});
MlleAlys- Membre actif
- Messages : 5968
Inscrit(e) le : 12/09/2012
Re: Dupliquer un bouton
AH AH ! Essayez ça pour voir !
Je croise les doigts !!
(EDIT : pardon, j'avais oublié mon message précédent et j'ai fait un double-post )
- Code:
//Nouveau système de Best
$(function(){
$(function(){
// localisation
var fofo=$('a.nav[href^="/f4-"],a.nav[href^="/f5-"],a.nav[href^="/f1-"],a.nav[href^="/f19-"]').length;
if(fofo){
// type de sujet
var typeTopic=$('.topic-title:first').find('img[src="https://i.servimg.com/u/f20/20/11/87/27/annonc10.png"],img[src="https://i.servimg.com/u/f20/20/11/87/27/annonc11.png"],img[src="https://i.servimg.com/u/f20/20/11/87/27/note10.png"]').length;
if(typeTopic)return;
// $editor = $('.sceditor-container');
// if ($editor.hasClass('wysiwygMode')) $editor.removeClass('wysiwygMode').addClass('sourceMode') ;
// utilisateur
var member=_userdata["username"];
// pour chaque premier message
$('div[class*="post--"]:first').each(function(){
// invités
if (_userdata["user_id"] < (0)){
$(this).find('.fa_like_div').wrap('<a title="Si vous souhaitez réagir à ce message, merci de vous connecter ou de vous enregistrer."></a>');
}
// auteur
var speudo=$('div[class*="post--"]:first .author a[href^="/u"]').text() ;
// utilisateur = auteur
if(speudo==member){
// montrer les boutons
$(this).find('.fa_like_div').show().each(function(){
var a=$(this).find('.fa_like_list').text().length;
// il n'y a aucun like
if(a==0){$(this).after('<span class="zerobest">0\n\n <img src="https://i.servimg.com/u/f31/19/32/37/01/059012.gif" style="top: 4px;position: relative;"/> pour le moment.</span>');}
//il y a des likes
else{
var liketest=$('span[class="rep-nb"]:first').text();
$(this).before('<span class="bestmembre">'+liketest+''+" "+'<img src="https://i.servimg.com/u/f31/19/32/37/01/059012.gif" style="top: 4px;position: relative;"/> mis par:</span>');
}
//recacher le bouton
$(this).find('button').remove();
});
}
// l'utilisateur n'est pas l'auteur : montrer les boutons
else{
$(this).find('.fa_like_div').show();
}
var base=$('#text_editor_textarea').sceditor("instance").val();
var liketest=$('span[class="rep-nb"]:first').text();
// dubliquer le bouton à côté de la réponse rapide
$("#quick_reply").before('<div id="fa_like_clone"></div>');
$(".fa_like_div").clone().appendTo("#fa_like_clone");
//LE TEXTE AJOUTE DANS L EDITEUR
var message=" + 1 ";
//LE CODE SMILEY
var pictures=":BEST: ";
//LE TEXTE DE L EDITEUR
var texte="un Best a été ajouté dans l\'éditeur.";
//ajouter un lien autour des boutons vers l'éditeur rapide
$(this).add('#fa_like_clone').find('button.rep-button.fa_like').wrap('<a href="#quickreply"></a>').click(function(){
$(this).unbind();
$(this).unwrap();
alert(''+member+','+texte+'');
if(liketest == 0){
$('#text_editor_textarea').sceditor("instance").insert(base+'\n'+pictures+'\n\n');
}
else {
$('#text_editor_textarea').sceditor("instance").insert(base+'\n'+message+' '+pictures+'\n\n');
}
});
});
};
});
});
Je croise les doigts !!
(EDIT : pardon, j'avais oublié mon message précédent et j'ai fait un double-post )
MlleAlys- Membre actif
- Messages : 5968
Inscrit(e) le : 12/09/2012
Re: Dupliquer un bouton
Tout me semble bon cette fois
Je vais faire des essais complémentaires jusqu'à demain avant de passer en résolu.
Un énorme merci MlleAlys pour tout ce travail.
Je vais faire des essais complémentaires jusqu'à demain avant de passer en résolu.
Un énorme merci MlleAlys pour tout ce travail.
Re: Dupliquer un bouton
Bonjour MlleAlys,
J'ai fait plusieurs tests pour voir si ça collait dans toutes les situations.
Jai juste adapté un peu le css pour essayer de centrer au mieux le bouton like en fonction des situations, mais ça ne fait pas pareil sous mozilla et sous Edge.
Sinon tout est ok pour le bouton dupliqué, sauf dans le cas où l'utilisateur est l'auteur et qu'il y a des like. Dans ce cas, j'avais la liste des membres ayant mis un like.
J'ai donc retiré cette liste dans ce cas.
Voici le code en service sur mon fofo:
Je ne sais pas si c'est perfectible. Si ok pour toi, je passerai en résolu.
Encore un grand merci pour tout.
J'ai fait plusieurs tests pour voir si ça collait dans toutes les situations.
Jai juste adapté un peu le css pour essayer de centrer au mieux le bouton like en fonction des situations, mais ça ne fait pas pareil sous mozilla et sous Edge.
Sinon tout est ok pour le bouton dupliqué, sauf dans le cas où l'utilisateur est l'auteur et qu'il y a des like. Dans ce cas, j'avais la liste des membres ayant mis un like.
J'ai donc retiré cette liste dans ce cas.
Voici le code en service sur mon fofo:
- Code:
$(function(){
$(function(){
// localisation
var fofo=$('a.nav[href^="/f4-"],a.nav[href^="/f5-"],a.nav[href^="/f1-"],a.nav[href^="/f19-"]').length;
if(fofo){
// type de sujet
var typeTopic=$('.topic-title:first').find('img[src="https://i.servimg.com/u/f20/20/11/87/27/annonc10.png"],img[src="https://i.servimg.com/u/f20/20/11/87/27/annonc11.png"],img[src="https://i.servimg.com/u/f20/20/11/87/27/note10.png"]').length;
if(typeTopic)return;
// $editor = $('.sceditor-container');
// if ($editor.hasClass('wysiwygMode')) $editor.removeClass('wysiwygMode').addClass('sourceMode') ;
// utilisateur
var member=_userdata["username"];
// pour chaque premier message
$('div[class*="post--"]:first').each(function(){
// invités
if (_userdata["user_id"] < (0)){
$(this).find('.fa_like_div').wrap('<a title="Si vous souhaitez réagir à ce message, merci de vous connecter ou de vous enregistrer."></a>');
}
// auteur
var speudo=$('div[class*="post--"]:first .author a[href^="/u"]').text() ;
// utilisateur = auteur
if(speudo==member){
// montrer les boutons
$(this).find('.fa_like_div').show().each(function(){
// il n'y a aucun like
var a=$(this).find('.fa_like_list').text().length;
if(a==0){$(this).after('<span class="zerobest">0\n\n <img src="https://i.servimg.com/u/f31/19/32/37/01/059012.gif" style="top: 4px;position: relative;"/> pour le moment.</span>');}
//il y a des likes
else{
var liketest=$('span[class="rep-nb"]:first').text();
$(this).before('<span class="bestmembre">'+liketest+''+" "+'<img src="https://i.servimg.com/u/f31/19/32/37/01/059012.gif" style="top: 4px;position: relative;"/> mis par:</span>');
}
//recacher le bouton
$(this).find('button').remove();
});
}
// l'utilisateur n'est pas l'auteur : montrer les boutons
else{
$(this).find('.fa_like_div').show();
}
var base=$('#text_editor_textarea').sceditor("instance").val();
var liketest=$('span[class="rep-nb"]:first').text();
// dubliquer le bouton à côté de la réponse rapide
$("#quick_reply").before('<div id="fa_like_clone" ></div>');
$(".fa_like_div").clone().appendTo("#fa_like_clone");
//repositionner les boutons
//si aucun like
var a=$(this).find('.fa_like_list').text().length;
if(a==0){
$('#fa_like_clone').css({"width":"230px","padding-top":"15px"});
}
//si like
else{
$('#fa_like_clone').css('width','270px');
// auteur
var speudo=$('div[class*="post--"]:first .author a[href^="/u"]').text() ;
// utilisateur = auteur
if(speudo==member){
$('div#fa_like_clone p.fa_like_list').remove();
}
}
//LE TEXTE AJOUTE DANS L EDITEUR
var message=" + 1 ";
//LE CODE SMILEY
var pictures=":BEST: ";
//LE TEXTE DE L EDITEUR
var texte="un Best va être ajouté dans l\'éditeur. Ne pas oublier de valider votre message.";
//ajouter un lien autour des boutons vers l'éditeur rapide
$(this).add('#fa_like_clone').find('button.rep-button.fa_like').wrap('<a href="#quickreply"></a>').click(function(){
$(this).unbind();
$(this).unwrap();
alert(''+member+','+texte+'');
if(liketest == 0){
$('#text_editor_textarea').sceditor("instance").insert(base+'\n'+pictures+'\n\n');
}
else {
$('#text_editor_textarea').sceditor("instance").insert(base+'\n'+message+' '+pictures+'\n\n');
}
});
});
};
});
});
Je ne sais pas si c'est perfectible. Si ok pour toi, je passerai en résolu.
Encore un grand merci pour tout.
Re: Dupliquer un bouton
Hello,
Je n'ai pas bien compris si tu cherchais à modifier quelque chose en particulier ?
Tu voulais cloner l'indicateur du nombre de likes à côté de l'éditeur dans le cas où l'utilisateur est l'auteur du sujet ? J'avais cru lire ça ce midi mais soit je l'ai imaginer soit tu as changé d'avis ?
Corriger la position sous modzilla/edge ? Pour ce point, je pense que je n'ai de toute façon pas exactement le même rendu sur mo fo test car pas le même style, donc compliqué de donner la solution =/ Après là j'ai de façon très simple inséré une div avant le form de l'éditeur, si vous osuhaitez un peu plus de possibilités pour le positionnement, vous pouvez remplacer par exemple cette partie :
Plutôt que d'utiliser un simple float, vous pourrez alors mettre en forme le positionnement de #fa_like_clone et #quick_reply en vous aidant de #rep-rapide (qui maintenant les contient tous les deux) via le css (positionnement absolu, ou utilisation de flex ou grid ou autre)
Je n'ai pas bien compris si tu cherchais à modifier quelque chose en particulier ?
Tu voulais cloner l'indicateur du nombre de likes à côté de l'éditeur dans le cas où l'utilisateur est l'auteur du sujet ? J'avais cru lire ça ce midi mais soit je l'ai imaginer soit tu as changé d'avis ?
Corriger la position sous modzilla/edge ? Pour ce point, je pense que je n'ai de toute façon pas exactement le même rendu sur mo fo test car pas le même style, donc compliqué de donner la solution =/ Après là j'ai de façon très simple inséré une div avant le form de l'éditeur, si vous osuhaitez un peu plus de possibilités pour le positionnement, vous pouvez remplacer par exemple cette partie :
- Code:
// dubliquer le bouton à côté de la réponse rapide
$("#quick_reply").before('<div id="fa_like_clone" ></div>');
$(".fa_like_div").clone().appendTo("#fa_like_clone");
- Code:
// dubliquer le bouton à côté de la réponse rapide
$("#quick_reply").wrap('<div id="rep-rapide" ></div>');
$("#rep-rapide").append('<div id="fa_like_clone"></div>');
$(".fa_like_div").clone().appendTo("#fa_like_clone");
Plutôt que d'utiliser un simple float, vous pourrez alors mettre en forme le positionnement de #fa_like_clone et #quick_reply en vous aidant de #rep-rapide (qui maintenant les contient tous les deux) via le css (positionnement absolu, ou utilisation de flex ou grid ou autre)
MlleAlys- Membre actif
- Messages : 5968
Inscrit(e) le : 12/09/2012
Re: Dupliquer un bouton
Bonsoir MlleAlys,
Oui oui, je voulais effectivement cloner le bouton des like et ce que tu m'as fait fonctionne à merveille!
Il y avait juste un comportement pas top dans le cas où l'utilisateur est l'auteur et qu'il y a des like. Mais c'est réglé comme expliqué ci-dessus. Tout fonctionne comme ce que j'avais en tête. Les coms que tu as ajouté m'ont bien aidé aussi.
Ton ajout va me faciliter la vie au niveau du css. C'est parfait.
Encore un grand merci pour tout. Je passe en résolu.
Oui oui, je voulais effectivement cloner le bouton des like et ce que tu m'as fait fonctionne à merveille!
Il y avait juste un comportement pas top dans le cas où l'utilisateur est l'auteur et qu'il y a des like. Mais c'est réglé comme expliqué ci-dessus. Tout fonctionne comme ce que j'avais en tête. Les coms que tu as ajouté m'ont bien aidé aussi.
Ton ajout va me faciliter la vie au niveau du css. C'est parfait.
Encore un grand merci pour tout. Je passe en résolu.
Sujets similaires
» Est-il possible de dupliquer un sujet?
» dupliquer un forum
» Dupliquer un forum
» Dupliquer des catégories et des Forums
» Comment dupliquer un widget prédéfini ?
» dupliquer un forum
» Dupliquer un forum
» Dupliquer des catégories et des Forums
» Comment dupliquer un widget prédéfini ?
Forum gratuit : Le forum des forums actifs :: Entraide & Support... :: Problème avec un script, un code :: Archives des problèmes avec un code
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum