Script complexe pour bouton

5 participants

Page 1 sur 2 1, 2  Suivant

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

Script complexe pour bouton Empty Script complexe pour bouton

Message par photoclic Ven 12 Juil 2024 - 13:48

Bonjour,

No-way m'avait fait un code complexe pour mettre en place un bouton "Vote" qui permet de déplacer la photo d'un sujet vers un autre sujet. cela fonctionne à merveille.
Ce bouton est placé sur les sujets à droite du premier message des sujets.

Il permet donc de voter pour une photo et de la déplacer vers un sujet spécifique crée à cet effet.
Mais sur les sujets, on peut poster d'autres messages et ajouter des photos et le vote ne peut donc se faire que sur la photo du premier message et concerne donc tout le sujet.

Serait-il possible d'avoir ce bouton vote à droite de chaque photo du sujet pour pouvoir voter pour une photo spécifique du sujet.
Le bouton vote n'étant visible que par les membres, je peux fournir par mp un identifiant.

Merci pour votre aide.



Code:

 //Bouton voter sur sujets no-way ttes pages
    //Ne pas interdire les formulaires non officiels dans général->sécurité
    $(function(){
    try{
    var minWidth=200,minHeight=200;
    var activeOn=["f1","f4"];
    /*Ne rien modifier de ce qui suit*/
    tstRegs=[];
    photovote=false;
    $vB=$(".postbody .vote-button:first a").first();
    $poll=$vB.parentsUntil('.vote').parent();
    for( i in activeOn){
      tstRegs.push(new RegExp("^\/"+activeOn[i]+"-","i"));
    }

    $(".pathname-box:first a").each(function(){
    for(i in tstRegs){
      if(photovote=tstRegs[i].test($(this).attr("href")))break;
    }
    });

    if(photovote&&/^\/t\d+-/g.test(document.location.pathname)){

    $.get("/f12-",function(d){
    var coll=[],id_subject=false;
    var $img_s=$vB.parentsUntil(".postbody").parent().find(".content img");
    $img_s.each(function(){
    if(this.width>=minWidth&&this.height>=minHeight)coll.push('[img]'+this.src+'[/img]')}
    );
    /*id_subject ...*/
    $(".announcement .topictitle[href]",d).each(function(){
    if(/^Semaine\W+du\W+\d+/i.test($(this).text()))id_subject=$(this).attr("href").match(/^\/t(\d+)/)[1]});
    if(!coll.length||!id_subject)return;

    $vB.html('<img id="bouton_voter" src="https://i.servimg.com/u/f84/18/97/96/21/bouton10.png" alt="Voter" title="Je vote pour cette photo" />');
    $vB.parentsUntil(".postbody").parent().find(".profile-icons").append($("<li/>"));
    $poll.attr('class','vote-photo');
    $poll.html($vB);
    $poll.appendTo($vB.parentsUntil(".postbody").parent().find(".profile-icons li:last"));
    $vB.click(function(ev){
 //     var auteur=$(this).closest('.postbody').find('.author a[href^="/u"]').text();       
      var auteur=$(this).closest('.postbody').next().find('dl dt span strong').text();
  
    ev.preventDefault();
    $.get($(this).attr("href"));
    $.post('/post',{mode:'reply',t:id_subject,subject:'A voté pour '+auteur+'',message:coll.join('<br />'),post:'Envoyer'});
    $poll.html('<img src="https://2img.net/i/fa/optimisation_fdf/common/buttonok_off.png"  alt="Vote enregistré" title="Vote enregistré" />');
      });
    $('img#bouton_voter').tooltipster({
          animation : 'fade',
          arrow : true,
          speed : 300,
          delay : 300,
          onlyOne : true,
          theme : 'tooltipster-default'
    });
    })
    /***/
    };

    $(".vote").each(function(){
      if(photovote){photovote=0;return}
    $(this).find(".vote-button:first a").html('<img src="https://2img.net/i/fa/empty.gif" alt="Voter" title="Je vote pour ce message" />').click(function(ev){
    ev.preventDefault();
    $.get($(this).attr("href"));
    $(this).parent().html('<img src="https://2img.net/i/fa/optimisation_fdf/common/buttonok_off.png"  alt="Vote enregistré" title="Vote enregistré" />')}
                                                                                                                                                
    );
    $(this).closest(".postbody").find("ul.profile-icons").append("<li />").find("li:last").append($(this).find(".vote-button:first a")).append($(this).find(".vote-bar").length?' <div class="vote-count" title="Nombre de votes positifs">'+$(this).find(".vote-bar").attr("title").replace(/^.*\(([0-9]*) .*?\)$/,"$1"):"")+'</div>';
    $(this).remove()
    }
    )}
    catch(e){
    console.log(e)}
    });
photoclic

photoclic
Membre habitué

Masculin
Messages : 1465
Inscrit(e) le : 20/11/2015

http://photoclic.forum-pro.fr/
photoclic a été remercié(e) par l'auteur de ce sujet.

Script complexe pour bouton Empty Re: Script complexe pour bouton

Message par photoclic Jeu 1 Aoû 2024 - 18:42

Personne parlant le langage de no-way pour m'aider svp.
photoclic

photoclic
Membre habitué

Masculin
Messages : 1465
Inscrit(e) le : 20/11/2015

http://photoclic.forum-pro.fr/
photoclic a été remercié(e) par l'auteur de ce sujet.
  • 0

Script complexe pour bouton Empty Re: Script complexe pour bouton

Message par Bipo Jeu 1 Aoû 2024 - 19:50

Script complexe pour bouton 200.gif?cid=78ff2c8fswvivzakt5q1jm7hqm9avzf0zpku4kiyim4dlhj5&ep=v1_gifs_search&rid=200
@No_way, si tu es dans le coin Smile
Bipo

Bipo
Rédactif
Rédactif

Messages : 3882
Inscrit(e) le : 23/09/2010

Bipo a été remercié(e) par l'auteur de ce sujet.

Script complexe pour bouton Empty Re: Script complexe pour bouton

Message par photoclic Jeu 1 Aoû 2024 - 22:16

Ah ah, merci Bipo cheers
photoclic

photoclic
Membre habitué

Masculin
Messages : 1465
Inscrit(e) le : 20/11/2015

http://photoclic.forum-pro.fr/
photoclic a été remercié(e) par l'auteur de ce sujet.

Script complexe pour bouton Empty Re: Script complexe pour bouton

Message par photoclic Dim 4 Aoû 2024 - 14:26

Au cas où, ne serait-il pas possible de refaire cette fonction en JS maitrisé par Forumactif?
photoclic

photoclic
Membre habitué

Masculin
Messages : 1465
Inscrit(e) le : 20/11/2015

http://photoclic.forum-pro.fr/
photoclic a été remercié(e) par l'auteur de ce sujet.

Script complexe pour bouton Empty Re: Script complexe pour bouton

Message par photoclic Mer 7 Aoû 2024 - 15:02

up
photoclic

photoclic
Membre habitué

Masculin
Messages : 1465
Inscrit(e) le : 20/11/2015

http://photoclic.forum-pro.fr/
photoclic a été remercié(e) par l'auteur de ce sujet.

Script complexe pour bouton Empty Re: Script complexe pour bouton

Message par photoclic Dim 11 Aoû 2024 - 21:54

Up
photoclic

photoclic
Membre habitué

Masculin
Messages : 1465
Inscrit(e) le : 20/11/2015

http://photoclic.forum-pro.fr/
photoclic a été remercié(e) par l'auteur de ce sujet.

Script complexe pour bouton Empty Re: Script complexe pour bouton

Message par كونان2000 Lun 12 Aoû 2024 - 3:55

Bonjour,


Code:
$(function() {
    try {
        var minWidth = 200, minHeight = 200;
        var activeOn = ["f1", "f4"];
        var tstRegs = [];
        var photovote = false;

        for (var i in activeOn) {
            tstRegs.push(new RegExp("^/" + activeOn[i] + "-", "i"));
        }

        $(".pathname-box:first a").each(function() {
            for (var i in tstRegs) {
                if (photovote = tstRegs[i].test($(this).attr("href"))) break;
            }
        });

        if (photovote && /^\/t\d+-/g.test(document.location.pathname)) {
            $.get("/f12-", function(d) {
                var id_subject = false;

                // العثور على معرف الموضوع
                $(".announcement .topictitle[href]", d).each(function() {
                    if (/^Semaine\W+du\W+\d+/i.test($(this).text())) {
                        id_subject = $(this).attr("href").match(/^\/t(\d+)/)[1];
                    }
                });

                if (!id_subject) return;

                // ابحث عن جميع الصور في الموضوع
                $(".postbody .content img").each(function() {
                    if (this.width >= minWidth && this.height >= minHeight) {
                        var $img = $(this);
                        var $voteBtn = $('<a href="#" class="vote-image-button"><img src="https://i.servimg.com/u/f84/18/97/96/21/bouton10.png" alt="Voter" title="Je vote pour cette photo" /></a>');
                        
                        $voteBtn.click(function(ev) {
                            ev.preventDefault();
                            var imageUrl = $img.attr("src");
                            var auteur = $img.closest('.postbody').find('dl dt span strong').text();
                            $.post('/post', {
                                mode: 'reply',
                                t: id_subject,
                                subject: 'A voté pour l\'image de ' + auteur,
                                message: '[img]' + imageUrl + '[/img]',
                                post: 'Envoyer'
                            });
                            $voteBtn.html('<img src="https://2img.net/i/fa/optimisation_fdf/common/buttonok_off.png" alt="Vote enregistré" title="Vote enregistré" />');
                        });

                        $img.after($voteBtn);
                    }
                });

                $('img.vote-image-button').tooltipster({
                    animation: 'fade',
                    arrow: true,
                    speed: 300,
                    delay: 300,
                    onlyOne: true,
                    theme: 'tooltipster-default'
                });
            });
        }

        $(".vote").each(function() {
            $(this).find(".vote-button:first a").html('<img src="https://2img.net/i/fa/empty.gif" alt="Voter" title="Je vote pour ce message" />').click(function(ev) {
                ev.preventDefault();
                $.get($(this).attr("href"));
                $(this).parent().html('<img src="https://2img.net/i/fa/optimisation_fdf/common/buttonok_off.png" alt="Vote enregistré" title="Vote enregistré" />');
            });
            $(this).closest(".postbody").find("ul.profile-icons").append("<li />").find("li:last").append($(this).find(".vote-button:first a")).append($(this).find(".vote-bar").length ? ' <div class="vote-count" title="Nombre de votes positifs">' + $(this).find(".vote-bar").attr("title").replace(/^.*\(([0-9]*) .*?\)$/, "$1") : "") + '</div>');
            $(this).remove();
        });
    } catch (e) {
        console.log(e);
    }
});
كونان2000

كونان2000
**

Autre / Ne pas divulguer
Messages : 97
Inscrit(e) le : 18/08/2021

https://anime.forumperso.com/
كونان2000 a été remercié(e) par l'auteur de ce sujet.

Script complexe pour bouton Empty Re: Script complexe pour bouton

Message par Lixyr Lun 12 Aoû 2024 - 9:18

Bonjour,

Petite précision, @كونان2000

// العثور على معرف الموضوع

Je ne suis pas sûre que Photoclic puisse lire ce genre de commentaire. Pouvez-vous les traduire pour plus de simplicité ?


Pour faciliter les recherches, mettez un titre explicite.
Remerciez Script complexe pour bouton 976083691 le message qui vous a aidé pour que celui-ci soit mis en évidence.
Épinglez votre sujet en résolu Script complexe pour bouton 3592387030 pour prévenir la modération.

Script complexe pour bouton Baston10
Lixyr

Lixyr
Aidactive
Aidactive

Féminin
Messages : 7435
Inscrit(e) le : 22/07/2010

https://forum.forumactif.com
Lixyr a été remercié(e) par l'auteur de ce sujet.

Script complexe pour bouton Empty Re: Script complexe pour bouton

Message par photoclic Lun 12 Aoû 2024 - 11:23

Bonjour Lixyr et Conan2000.

@Lixyr Pour le texte commenté, gogol est une aide précieuse Very Happy

@كونان2000 Merci pour ton aide.
En mettant ton code, le bouton "Vote" n'apparait pas sur le premier message, il y a à la place un +.
Ce + apparait aussi sur les messages où il n'y a pas de photos.
Il n'est par contre pas présent sur les autres messages où il y a des photos.
Quand je clique sur le +, ça me dit que le vote a bien été pris en compte, mais la photo n'est pas copiée dans le forum /f12.
photoclic

photoclic
Membre habitué

Masculin
Messages : 1465
Inscrit(e) le : 20/11/2015

http://photoclic.forum-pro.fr/
photoclic a été remercié(e) par l'auteur de ce sujet.

Script complexe pour bouton Empty Re: Script complexe pour bouton

Message par كونان2000 Lun 12 Aoû 2024 - 17:31

Lixyr a écrit:Bonjour,

Petite précision, @"كونان2000"

  // العثور على معرف الموضوع

Je ne suis pas sûre que Photoclic puisse lire ce genre de commentaire. Pouvez-vous les traduire pour plus de simplicité ?
Bonjour Lixyr

Oh , j'ai oublié de changer la langue !   Sueur froide
La traduction correcte était : (//  Trouver l'identifiant du sujet) ( // العثور على معرف الموضوع)

Merci pour le rappel, je ferai plus attention la prochaine fois !  Very Happy






photoclic a écrit:Bonjour Lixyr et Conan2000.

@Lixyr Pour le texte commenté, gogol est une aide précieuse Very Happy

@كونان2000 Merci pour ton aide.
En mettant ton code, le bouton "Vote" n'apparait pas sur le premier message, il y a à la place un +.
Ce + apparait aussi sur les messages où il n'y a pas de photos.
Il n'est par contre pas présent sur les autres messages où il y a des photos.
Quand je clique sur le +, ça me dit que le vote a bien été pris en compte, mais la photo n'est pas copiée dans le forum /f12.

Bonjour photoclic
J'ai apporté deux modifications au code

Code:

 //Bouton voter sur sujets no-way ttes pages
    //Ne pas interdire les formulaires non officiels dans général->sécurité
    $(function(){
    try{
    var minWidth=200,minHeight=200;
    var activeOn=["f1","f4"];
    /*Ne rien modifier de ce qui suit*/
    tstRegs=[];
    photovote=false;
    $vB=$(".postbody .vote-button:first a");
    $poll=$vB.parentsUntil('.vote').parent();
    for( i in activeOn){
      tstRegs.push(new RegExp("^\/"+activeOn[i]+"-","i"));
    }
 
    $(".pathname-box:first a").each(function(){
    for(i in tstRegs){
      if(photovote=tstRegs[i].test($(this).attr("href")))break;
    }
    });
 
    if(photovote&&/^\/t\d+-/g.test(document.location.pathname)){
 
    $.get("/f12-",function(d){
    var coll=[],id_subject=false;
    var $img_s=$vB.parentsUntil(".postbody").parent().find(".content img");
    $img_s.each(function(){
    if(this.width>=minWidth&&this.height>=minHeight)coll.push('[img]'+this.src+'[/img]')}
    );
    /*id_subject ...*/
    $(".announcement .topictitle[href]",d).each(function(){
    if(/^Semaine\W+du\W+\d+/i.test($(this).text()))id_subject=$(this).attr("href").match(/^\/t(\d+)/)[1]});
    if(!coll.length||!id_subject)return;
 
    $vB.html('<img id="bouton_voter" src="https://i.servimg.com/u/f84/18/97/96/21/bouton10.png" alt="Voter" title="Je vote pour cette photo" />');
    $vB.parentsUntil(".postbody").parent().find(".profile-icons").append($("<li/>"));
    $poll.attr('class','vote-photo');
    $poll.html($vB);
    $poll.appendTo($vB.parentsUntil(".postbody").parent().find(".profile-icons li:last"));
    $vB.click(function(ev){
 //     var auteur=$(this).closest('.postbody').find('.author a[href^="/u"]').text();      
      var auteur=$(this).closest('.postbody').next().find('dl dt span strong').text();
  
    ev.preventDefault();
    $.get($(this).attr("href"));
    $.post('/post',{mode:'reply',t:id_subject,subject:'A voté pour '+auteur+'',message:coll.join('<br />'),post:'Envoyer'});
    $poll.html('<img src="https://2img.net/i/fa/optimisation_fdf/common/buttonok_off.png"  alt="Vote enregistré" title="Vote enregistré" />');
      });
    $('img#bouton_voter').tooltipster({
          animation : 'fade',
          arrow : true,
          speed : 300,
          delay : 300,
          onlyOne : true,
          theme : 'tooltipster-default'
    });
    })
    /***/
    };
 
    $(".vote").each(function(){
      if(photovote){photovote=0;return}
    $(this).find(".vote-button:first a").html('<img src="https://2img.net/i/fa/empty.gif" alt="Voter" title="Je vote pour ce message" />').click(function(ev){
    ev.preventDefault();
    $.get($(this).attr("href"));
    $(this).parent().html('<img src="https://2img.net/i/fa/optimisation_fdf/common/buttonok_off.png"  alt="Vote enregistré" title="Vote enregistré" />')}
                                                                                                                                                
    );
    $(this).closest(".postbody").find("ul.profile-icons").append("<li />").find("li:last").append($(this).find(".vote-button:first a")).append($(this).find(".vote-bar").length?' <div class="vote-count" title="Nombre de votes positifs">'+$(this).find(".vote-bar").attr("title").replace(/^.*\(([0-9]*) .*?\)$/,"$1"):"")+'</div>';
    $(this).remove()
    }
    )}
    catch(e){
    console.log(e)}
    });

Si le premier ne fonctionne pas, utilisez le second
Code:

 //Bouton voter sur sujets no-way ttes pages
    //Ne pas interdire les formulaires non officiels dans général->sécurité
    $(function(){
    try{
    var minWidth=200,minHeight=200;
    var activeOn=["f1","f4"];
    /*Ne rien modifier de ce qui suit*/
    tstRegs=[];
    photovote=false;
    $vB=$(".postbody .vote-button a").first();
    $poll=$vB.parentsUntil('.vote').parent();
    for( i in activeOn){
      tstRegs.push(new RegExp("^\/"+activeOn[i]+"-","i"));
    }
 
    $(".pathname-box:first a").each(function(){
    for(i in tstRegs){
      if(photovote=tstRegs[i].test($(this).attr("href")))break;
    }
    });
 
    if(photovote&&/^\/t\d+-/g.test(document.location.pathname)){
 
    $.get("/f12-",function(d){
    var coll=[],id_subject=false;
    var $img_s=$vB.parentsUntil(".postbody").parent().find(".content img");
    $img_s.each(function(){
    if(this.width>=minWidth&&this.height>=minHeight)coll.push('[img]'+this.src+'[/img]')}
    );
    /*id_subject ...*/
    $(".announcement .topictitle[href]",d).each(function(){
    if(/^Semaine\W+du\W+\d+/i.test($(this).text()))id_subject=$(this).attr("href").match(/^\/t(\d+)/)[1]});
    if(!coll.length||!id_subject)return;
 
    $vB.html('<img id="bouton_voter" src="https://i.servimg.com/u/f84/18/97/96/21/bouton10.png" alt="Voter" title="Je vote pour cette photo" />');
    $vB.parentsUntil(".postbody").parent().find(".profile-icons").append($("<li/>"));
    $poll.attr('class','vote-photo');
    $poll.html($vB);
    $poll.appendTo($vB.parentsUntil(".postbody").parent().find(".profile-icons li:last"));
    $vB.click(function(ev){
 //     var auteur=$(this).closest('.postbody').find('.author a[href^="/u"]').text();      
      var auteur=$(this).closest('.postbody').next().find('dl dt span strong').text();
  
    ev.preventDefault();
    $.get($(this).attr("href"));
    $.post('/post',{mode:'reply',t:id_subject,subject:'A voté pour '+auteur+'',message:coll.join('<br />'),post:'Envoyer'});
    $poll.html('<img src="https://2img.net/i/fa/optimisation_fdf/common/buttonok_off.png"  alt="Vote enregistré" title="Vote enregistré" />');
      });
    $('img#bouton_voter').tooltipster({
          animation : 'fade',
          arrow : true,
          speed : 300,
          delay : 300,
          onlyOne : true,
          theme : 'tooltipster-default'
    });
    })
    /***/
    };
 
    $(".vote").each(function(){
      if(photovote){photovote=0;return}
    $(this).find(".vote-button:first a").html('<img src="https://2img.net/i/fa/empty.gif" alt="Voter" title="Je vote pour ce message" />').click(function(ev){
    ev.preventDefault();
    $.get($(this).attr("href"));
    $(this).parent().html('<img src="https://2img.net/i/fa/optimisation_fdf/common/buttonok_off.png"  alt="Vote enregistré" title="Vote enregistré" />')}
                                                                                                                                                
    );
    $(this).closest(".postbody").find("ul.profile-icons").append("<li />").find("li:last").append($(this).find(".vote-button:first a")).append($(this).find(".vote-bar").length?' <div class="vote-count" title="Nombre de votes positifs">'+$(this).find(".vote-bar").attr("title").replace(/^.*\(([0-9]*) .*?\)$/,"$1"):"")+'</div>';
    $(this).remove()
    }
    )}
    catch(e){
    console.log(e)}
    });
كونان2000

كونان2000
**

Autre / Ne pas divulguer
Messages : 97
Inscrit(e) le : 18/08/2021

https://anime.forumperso.com/
كونان2000 a été remercié(e) par l'auteur de ce sujet.

Script complexe pour bouton Empty Re: Script complexe pour bouton

Message par photoclic Lun 12 Aoû 2024 - 17:57

Re bonjour كونان2000,

Avec ces 2 nouveaux codes, le bouton "Vote" n'apparait toujours pas à droite des photos il y a à la place un +.
Ce + apparait aussi sur tous les messages y compris où il n'y a pas de photos.

Quand je clique sur le +, ça me dit que le vote a bien été pris en compte, mais la photo n'est pas copiée dans le forum /f12.

Je n'avais pas précisé que je suis en phpbb3. Je ne sais pas si cela a une conséquence.

Edit: J'ai remis le script original pour le moment sur mon forum.

Re-Edit: J'ai refait un essai avec ces 2 nouveaux codes car je n'avais pas vidé le cache.
Donc en fait le bouton vote est bien là sur le premier message et uniquement là. En fait cela n'a rien changé par rapport au fonctionnement initial.
J'ai remis le script original pour le moment sur mon forum.
photoclic

photoclic
Membre habitué

Masculin
Messages : 1465
Inscrit(e) le : 20/11/2015

http://photoclic.forum-pro.fr/
photoclic a été remercié(e) par l'auteur de ce sujet.

Script complexe pour bouton Empty Re: Script complexe pour bouton

Message par كونان2000 Lun 12 Aoû 2024 - 20:17

Bonjour photoclic

Désolé, j'ai fait une erreur dans les modifications précédentes

Le nouveau code fonctionne bien dans mon forum de test
Code:
$(function(){
    try {
        var minWidth = 200, minHeight = 200;
        var activeOn = ["f1", "f4"];
        var tstRegs = [];
        var photovote = false;
        var $voteButtons = $(".postbody .vote-button a");

        for (var i in activeOn) {
            tstRegs.push(new RegExp("^\/" + activeOn[i] + "-", "i"));
        }

        $(".pathname-box:first a").each(function(){
            for (var i in tstRegs) {
                if (photovote = tstRegs[i].test($(this).attr("href"))) break;
            }
        });

        // إظهار الزر في جميع المساهمات
        $voteButtons.each(function(){
            var $vB = $(this);
            var $poll = $vB.parentsUntil('.vote').parent();
            
            var $img_s = $vB.parentsUntil(".postbody").parent().find(".content img");
            var coll = [];
            $img_s.each(function(){
                if (this.width >= minWidth && this.height >= minHeight) {
                    coll.push('[img]' + this.src + '[/img]');
                }
            });

            // تغيير الزر للتصويت
            $vB.html('<img id="bouton_voter" src="https://i.servimg.com/u/f84/18/97/96/21/bouton10.png" alt="Voter" title="Je vote pour cette photo" />');
            $vB.parentsUntil(".postbody").parent().find(".profile-icons").append($("<li/>"));
            $poll.attr('class', 'vote-photo');
            $poll.html($vB);
            $poll.appendTo($vB.parentsUntil(".postbody").parent().find(".profile-icons li:last"));
            
            $vB.click(function(ev){
                var auteur = $(this).closest('.postbody').next().find('dl dt span strong').text();
                ev.preventDefault();
                $.get($(this).attr("href"));
                $.post('/post', {
                    mode: 'reply',
                    t: id_subject,
                    subject: 'A voté pour ' + auteur,
                    message: coll.join('<br />'),
                    post: 'Envoyer'
                });
                $poll.html('<img src="https://2img.net/i/fa/optimisation_fdf/common/buttonok_off.png" alt="Vote enregistré" title="Vote enregistré" />');
            });

            $('img#bouton_voter').tooltipster({
                animation: 'fade',
                arrow: true,
                speed: 300,
                delay: 300,
                onlyOne: true,
                theme: 'tooltipster-default'
            });
        });

        $(".vote").each(function(){
            $(this).find(".vote-button a").html('<img src="https://2img.net/i/fa/empty.gif" alt="Voter" title="Je vote pour ce message" />').click(function(ev){
                ev.preventDefault();
                $.get($(this).attr("href"));
                $(this).parent().html('<img src="https://2img.net/i/fa/optimisation_fdf/common/buttonok_off.png" alt="Vote enregistré" title="Vote enregistré" />');
            });

            $(this).closest(".postbody").find("ul.profile-icons").append("<li />").find("li:last").append($(this).find(".vote-button a")).append($(this).find(".vote-bar").length ? ' <div class="vote-count" title="Nombre de votes positifs">' + $(this).find(".vote-bar").attr("title").replace(/^.*\(([0-9]*) .*?\)$/, "$1") : "") + '</div>';
            $(this).remove();
        });
    } catch(e) {
        console.log(e);
    }
});
كونان2000

كونان2000
**

Autre / Ne pas divulguer
Messages : 97
Inscrit(e) le : 18/08/2021

https://anime.forumperso.com/
كونان2000 a été remercié(e) par l'auteur de ce sujet.
  • 0

Script complexe pour bouton Empty Re: Script complexe pour bouton

Message par photoclic Lun 12 Aoû 2024 - 21:28

Tu n'as pas a être désolé كونان2000. Bien gentil de m'aider pour cette demande et je t'en remercie, s'agissant d'un sujet complexe.

Alors avec ce dernier code:
. Quand on clique sur le bouton vote, la photo n'est pas postée dans le sujet du forum f/12
. Le bouton vote apparait sur tous les messages exceptés ceux qui ont un smiley. C'est à dire qu'il est sur les messages avec grandes images et les messages où il n'y a que du texte.
Les boutons votes apparaissent sur tous les forums alors qu'ils ne devraient apparaitre que sur les forums f/1 et f/4.

J'ai remis le script original pour le moment sur mon forum.
photoclic

photoclic
Membre habitué

Masculin
Messages : 1465
Inscrit(e) le : 20/11/2015

http://photoclic.forum-pro.fr/
photoclic a été remercié(e) par l'auteur de ce sujet.

Script complexe pour bouton Empty Re: Script complexe pour bouton

Message par كونان2000 Lun 12 Aoû 2024 - 23:29

Bonjour photoclic
Avez-vous apporté des modifications aux modèles viewtopic_body ?
كونان2000

كونان2000
**

Autre / Ne pas divulguer
Messages : 97
Inscrit(e) le : 18/08/2021

https://anime.forumperso.com/
كونان2000 a été remercié(e) par l'auteur de ce sujet.

Script complexe pour bouton Empty Re: Script complexe pour bouton

Message par photoclic Lun 12 Aoû 2024 - 23:37

Le template viewtopic_body:
Code:

<!-- retrait bouton panneau latéral -->
        <style>
        img.M14_open_Panneau {opacity: 0;}
         
        /*décalage bouton héberger une image*/ 
      .sceditor-button-servimg {margin-left: 25%!important;} 
 
      /*Re-Affichage widget Dernières images*/
      #footer_widgets{display:flex;}
 
         
        </style>

<!-- Compte à rebours vote -->
        <style>
        /*Compte à rebours 2*/
        #CompteTxt {margin-right: 115px;}
        #Compte {margin: 2px -18.28%;}
        #Compte,#CompteTxt {position: relative;float: right;top: 6px;line-height: 30px;}
        #Compte div,#CompteTxt div{position: relative;float: left;margin-left: 5px;line-height: 25px;color: #3bd9eb;}
        #Compte div span{font-size:12px;text-align:center;color:#e2660a;}   
        .titre{margin-top: -5px;} 
         
      @media screen and (max-device-width:1024px){   
      #annoncesujet {margin: 0 70px !important;}
      .titre1 {margin-left: -45px !important;}
      #Compte {margin:2px -15% !important;}
   } 
        </style>
<!-- Fin Compte à rebours vote -->

        <!-- Position hauteur flèche et widgets dans sujets-->
        <style>
        .widget-arrow.isleft {margin-top: 434px;}
        #content-container div#left {margin-top: 460px;}
        </style>

        <!-- Position boutons nouveau et répondre -->
        <style>
        .buttons {margin: 15px 0 0 80px;position: relative;}
        </style>

        <script type="text/javascript">
        //<![CDATA[
        var multiquote_img_off = '{JS_MULTIQUOTE_IMG_OFF}', multiquote_img_on = '{JS_MULTIQUOTE_IMG_ON}', _atr = '{JS_DIR}addthis/', _ati = '{PATH_IMG_FA}addthis/'{ADDTHIS_LANG}, addthis_localize = { share_caption: "{L_SHARE_CAPTION}", email: "{L_EMAIL}", email_caption: "{L_EMAIL_CAPTION}", favorites: "{L_SHARE_BOOKMARKS}", print: "{L_PRINT}", more: "{L_MORE}" };

        $(function(){
            if(typeof(_atc) == "undefined") {
                _atc = {  };
            }
        });

        var hiddenMsgLabel = { visible:'{JS_HIDE_HIDDEN_MESSAGE}', hidden:'{JS_SHOW_HIDDEN_MESSAGE}' };
        showHiddenMessage = function(id)
        {
            try
            {
                var regId = parseInt(id, 10);
                if( isNaN(regId) ) { regId = 0; }

                if( regId > 0)
                {
                    $('.post--' + id).toggle(0, function()
                {
                    if( $(this).is(":visible") )
                    {
                      $('#hidden-title--' + id).html(hiddenMsgLabel.visible);
                    }
                    else
                    {
                      $('#hidden-title--' + id).html(hiddenMsgLabel.hidden);
                    }
                });
                }
            }
            catch(e) { }

          return false;
        };

        //]]>
        </script>
                             
        <br/><div class="M14_lAstSujets"><div></div></div>
       
        <div class="boutons_list">
        <ul class="linklist">
        <!-- BEGIN switch_user_logged_in -->
          <br/><br/>
                <!-- Ajout bouton Voir la page Facebook -->
                <li style="display: inline-block;"> • <a style="font-weight: bold;border: 1px solid #626262;border-radius:.3em;-moz-border-radius:.3em;-webkit-border-radius:.3em;padding: 0px 5px 3px 5px;" target="_blank" title="Aller sur la page Facebook du Clic" href="https://www.facebook.com/Photoclic/">La page Facebook du clic</a> • </li>
               
          <li><a style="font-weight: bold;border: 1px solid #626262;border-radius:.3em;-moz-border-radius:.3em;-webkit-border-radius:.3em;padding: 0px 5px 3px 5px;background: #177887;color: #fff;" href="{U_SEARCH_NEW}">Les nouveaux messages</a></li>
        <li>&nbsp;•&nbsp;<a style="font-weight: bold;border: 1px solid #626262;border-radius:.3em;-moz-border-radius:.3em;-webkit-border-radius:.3em;padding: 0px 5px 0px 5px;" target="_blank"title="Voir les dernières photos partagées" href="/images">Les dernières photos</a></li>       
          <li class="sansrep"> • <a style="font-weight: bold;border: 1px solid #626262;border-radius:.3em;-moz-border-radius:.3em;-webkit-border-radius:.3em;padding: 0px 5px 3px 5px;" href="{U_SEARCH_UNANSWERED}">Les messages sans réponses</a></li>     
                <li class="rightside"> • <a style="border: 1px solid #626262;border-radius:.3em;-moz-border-radius:.3em;-webkit-border-radius:.3em;padding: 0px 5px 3px 5px;" href="{U_SEARCH_SELF}">{L_SEARCH_SELF}</a></li> 

          <li class="rightside"> • <a style="border: 1px solid #626262;border-radius:.3em;-moz-border-radius:.3em;-webkit-border-radius:.3em;padding: 0px 5px 3px 5px;" href="{U_MARK_READ}" accesskey="m">{L_MARK_FORUMS_READ}</a></li>
                <br/><br/><br/>
          <!-- END switch_user_logged_in -->
        </ul>
        </div>

            <h1 class="page-title" style="display:none;">
                  <a href="{TOPIC_URL}">{TOPIC_TITLE}</a>           
                </h1>

        <div style="position:relative;top: 90px; width: 1px;" id="M14_aNcHoR"></div>

        <div class="topic-actions">
        <!-- BEGIN switch_push_direct_send -->&nbsp;<span id="push-bell" title="{switch_push_direct_send.L_PUSH_SEND}"style="font-size: 1.5em;margin: 15px;position: absolute;"></span><!-- END switch_push_direct_send -->
                   
          <div class="buttons">

        <!-- BEGIN switch_user_authpost -->
                  <a href="{U_POST_NEW_TOPIC}" rel="nofollow"><img src="{POST_IMG}" class="{POST_IMG_CLASS}" alt="{L_POST_NEW_TOPIC}" /></a> 
          <!--            <a href="{U_POST_NEW_TOPIC}" accesskey="n" rel="nofollow"><img style="display:none;" src="https://i.imgur.com/DmZrfKT.png" id="bouton_poster" alt="{L_POST_NEW_TOPIC}" /></a>  -->
                <!-- END switch_user_authpost -->
               
              <!-- BEGIN switch_user_authreply -->
              <a href="{U_POST_REPLY_TOPIC}"><img src="{REPLY_IMG}" class="i_reply" alt="{L_POST_REPLY_TOPIC}" /></a>
              <!-- END switch_user_authreply -->
          </div>
         
          <p class="right">
                <!-- BEGIN switch_twitter_btn -->
                <span>
                    <a href="https://twitter.com/share" class="twitter-share-button" data-via="{TWITTER}">Tweet</a>
                    <script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+'://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js,fjs);}}(document, 'script', 'twitter-wjs');</script>
                </span>
                <!-- END switch_twitter_btn -->
              <!-- BEGIN switch_fb_likebtn -->
              <script>(function(d, s, id) {
                var js, fjs = d.getElementsByTagName(s)[0];
                if (d.getElementById(id)) return;
                js = d.createElement(s); js.id = id;
                js.src = "https://connect.facebook.net/{LANGUAGE}/all.js#xfbml=1";
                fjs.parentNode.insertBefore(js, fjs);
              }(document, 'script', 'facebook-jssdk'));</script>
              <span class="fb-like" data-href="{FORUM_URL}{TOPIC_URL}" data-layout="button_count" data-action="like" data-show-faces="false" data-share="false"></span>
              <!-- END switch_fb_likebtn -->
          </p>
       
          <div class="clear"></div>
        </div>
       
                    <div class="pathname-box" style="display:none;">
                    <p>
                      <a class="nav" href="{U_INDEX}"><span>{L_INDEX}</span></a>
                      {NAV_CAT_DESC}
                    </p>
                    </div>

        <!-- Compte à rebours vote -->
        <div id="CompteTxt"></div>
        <div id="Compte"></div>


              <div id="M14_ariane" class="pathname-box ariane">
                          <p class="M14_ariane">
                                <a class="nav" href="{U_INDEX}"><span>Accueil</span></a>
                                <!--{NAV_SEP}<a class="nav" href="{U_ALBUM}"><span>{L_ALBUM}</span></a>-->
                                {NAV_CAT_DESC}
                                <a class="nav" href="{TOPIC_URL}">{TOPIC_TITLE}</a>
                         
              <script type="text/javascript">
                    jQuery('.ariane').html(jQuery('.ariane').html().replace(/::/g,' ')).removeClass('ariane');
                    </script>           
                        </p>
                      </div>

          <a id="M14" style="position: relative;top: -190px;"></a>

<span class="participant">
{POSTERS_LIST}
</span>

        <!-- BEGIN topicpagination -->
       
<p class="M14_paginTopIc pagination">{PAGINATION}</p>

        <!-- END topicpagination -->

        <div class="clear"></div>
        {POLL_DISPLAY} 
       
        <!-- BEGIN postrow -->
          <!-- BEGIN hidden -->
              <div class="post {postrow.hidden.ROW_COUNT}">
                <div class="inner">
                    <span class="corners-top"><span></span></span>
                    <p style="text-align:center">{postrow.hidden.MESSAGE}</p>
                    <div class="clear"></div>
                    <span class="corners-bottom"><span></span></span>
                </div>
              </div>
          <!-- END hidden -->
       
          <!-- BEGIN displayed -->
                <div id="p{postrow.displayed.U_POST_ID}" class="M14_post post {postrow.displayed.ROW_COUNT}{postrow.displayed.ONLINE_IMG_NEW} post--{postrow.displayed.U_POST_ID}"{postrow.displayed.THANK_BGCOLOR} style="{postrow.displayed.DISPLAYABLE_STATE}">
                <div class="inner"><span class="corners-top"><span></span></span>
                               
                <!--  Ancrage des sujets  -->                     
          <!--<div class="M14_anchonext" style="position: relative; top: -105px; width: 1px;" id="{postrow.displayed.U_POST_ID}"></div>      -->

            <div class="M14_anchonext" style="position: relative; top: -145px;margin-top:40px; width: 1px;" id="{postrow.displayed.U_POST_ID}"></div> 
                                                   
              <!-- Affichage des numéros de message -->
          <div class="postNumberContainer"><a href="{postrow.displayed.POST_URL}" class="postNumber">#{postrow.displayed.COUNT_POSTS}</a></div>
                                                       
                                  <div class="postbody">

                    <ul class="profile-icons">
                                        <li>{postrow.displayed.THANK_IMG}</li>
                                                                                                           
                      <li>{postrow.displayed.MULTIQUOTE_IMG}</li>
  <!-- Bouton Transmettre par mp -->                                   
<!--    <img class="post2pm" data-pid="{postrow.displayed.U_POST_ID}" src="https://i.servimg.com/u/f31/19/32/37/01/abouto10.png" title="Transmettre par MP" alt="Transmettre par MP" />              -->
                                       
                      <li>{postrow.displayed.QUOTE_IMG}</li>
                      <li>{postrow.displayed.EDIT_IMG}</li>
                      <li>{postrow.displayed.DELETE_IMG}</li>
                      <li>{postrow.displayed.IP_IMG}</li>
                      <li>{postrow.displayed.REPORT_IMG_NEW}</li>
           
                    <!-- Debut bouton ajouter aux favoris -->                         
                        <li id="M14_FavORiTebis"><a href="/search?add_favourite={TOPIC_ID}&search_id=favouritesearch" rel="nofollow"><img style="margin-top:-3px;" src="https://i.servimg.com/u/f31/19/32/37/01/36125814.png" title= "Ajouter à vos favoris"/></a></li>                 
                        <!-- Fin bouton ajouter aux favoris -->                           
                                       
                  </ul>
                                   
                  <div class="avatarBlog"></div>             
                                   
                    <h2 class="topic-title">{postrow.displayed.ICON}<a href="{postrow.displayed.POST_URL}">{postrow.displayed.POST_SUBJECT}</a></h2>                   
                    <p class="author"><img src="{postrow.displayed.MINI_POST_IMG}" alt="{postrow.displayed.L_MINI_POST_ALT}" title="{postrow.displayed.L_MINI_POST_ALT}" /> {postrow.displayed.POSTER_NAME}                                 
              <!--    {postrow.displayed.POSTER_NAME}    posté    -->                                 
                    <span class="M14_time">{postrow.displayed.POST_DATE_NEW}</span>
                    <span class="M14_time_get"></span>
                    </p>                               
                    <div class="clearfix"></div>
                           
                    <!-- BEGIN switch_vote_active -->
                    <div class="vote gensmall">
                      <!-- BEGIN switch_vote -->
                      <div class="vote-button"><a href="{postrow.displayed.switch_vote_active.switch_vote.U_VOTE_PLUS}">+</a></div>
                      <!-- END switch_vote -->

                      <!-- BEGIN switch_bar -->
                      <div class="vote-bar" title="{postrow.displayed.switch_vote_active.L_VOTE_TITLE}">
                          <!-- BEGIN switch_vote_plus -->
                          <div class="vote-bar-plus" style="height:40px;"></div>
                          <!-- END switch_vote_plus -->

                          <!-- BEGIN switch_vote_minus -->
                          <div class="vote-bar-minus" style="height:{postrow.displayed.switch_vote_active.switch_bar.switch_vote_minus.HEIGHT_MINUS}px;"></div>
                          <!-- END switch_vote_minus -->
                      </div>
                      <!-- END switch_bar -->

                      <!-- BEGIN switch_no_bar -->
                      <div title="{postrow.displayed.switch_vote_active.L_VOTE_TITLE}" class="vote-no-bar">----</div>
                      <!-- END switch_no_bar -->

                      <!-- BEGIN switch_vote -->
                      <div class="vote-button"><a href="{postrow.displayed.switch_vote_active.switch_vote.U_VOTE_MINUS}">-</a></div>
                      <!-- END switch_vote -->
                    </div>
                    <!-- END switch_vote_active -->

                    <div style="display:none"></div>
                    <div class="content clearfix">
                                       
                                      <!-- pour bouton copie lien photo -->
                                          <div class="M14_reception_photos" style="display:none"></div>
                                       
                      <div>{postrow.displayed.MESSAGE}</div>
                          <!-- BEGIN switch_attachments -->
                          <dl class="attachbox">
                            <dt>{postrow.displayed.switch_attachments.L_ATTACHMENTS}</dt>
                            <dd class="attachments">
                                <!-- BEGIN switch_post_attachments -->
                                <dl class="file clearfix">
                                  <dt>
                                      <img src="{postrow.displayed.switch_attachments.switch_post_attachments.U_IMG}" alt=""/>
                                  </dt>
                                  <dd>
                                      <!-- BEGIN switch_dl_att -->
                                      <span><a class="postlink" href="{postrow.displayed.switch_attachments.switch_post_attachments.switch_dl_att.U_ATTACHMENT}">{postrow.displayed.switch_attachments.switch_post_attachments.switch_dl_att.ATTACHMENT}</a> {postrow.displayed.switch_attachments.switch_post_attachments.switch_dl_att.ATTACHMENT_DEL}</span>
                                      <!-- END switch_dl_att -->

                                      <!-- BEGIN switch_no_dl_att -->
                                      <span>{postrow.displayed.switch_attachments.switch_post_attachments.switch_no_dl_att.ATTACHMENT} {postrow.displayed.switch_attachments.switch_post_attachments.switch_no_dl_att.ATTACHMENT_DEL}</span>
                                      <!-- END switch_no_dl_att -->

                                      <!-- BEGIN switch_no_comment -->
                                      <span>{postrow.displayed.switch_attachments.switch_post_attachments.switch_no_comment.ATTACHMENT_COMMENT}</span>
                                      <!-- END switch_no_comment -->

                                      <!-- BEGIN switch_no_dl_att -->
                                      <span><strong>{postrow.displayed.switch_attachments.switch_post_attachments.switch_no_dl_att.TEXT_NO_DL}</strong></span>
                                      <!-- END switch_no_dl_att -->

                                      <span>({postrow.displayed.switch_attachments.switch_post_attachments.FILE_SIZE}) {postrow.displayed.switch_attachments.switch_post_attachments.NB_DL}</span>
                                  </dd>
                                </dl>
                                <!-- END switch_post_attachments -->
                            </dd>
                          </dl>
                          <!-- END switch_attachments -->
                    </div>
                           
                    <span class="edited_post">{postrow.displayed.EDITED_MESSAGE}</span>
                                 
                    <!-- BEGIN switch_signature -->
                    <div class="signature_div" id="sig{postrow.displayed.U_POST_ID}">{postrow.displayed.SIGNATURE_NEW}</div>
                    <!-- END switch_signature -->
                                 
                                                                 
            <div class="M14_Thank_Cont">
            <div><span class="M14_Texte_liste">Le membre suivant remercie  </span>
            <span class="M14_ThankUser"></span> pour ce sujet: <a target="_blank" href="" class="M14_Thank_link"></a><br />
            </div>
            <div class="M14_Thank_list"><div></div></div>
            </div>
                                                                 
                </div>

                <div class="postprofile" id="profile{postrow.displayed.U_POST_ID}">
                    <!-- div class="online2"></div-->
                    <dl>
                    <dt>                         
            <span class="M14_member_Info"></span>                   
            <strong class="M14_member" style="font-size:1.2em">           
            {postrow.displayed.POSTER_NAME}</strong>
                       
            <div class="M14_TogProfil">
            <span class="M14_avatar">{postrow.displayed.POSTER_AVATAR}</span>
           
            <li><a class="M14_link" target="_blank">Profil</a></li>
            <li><a class="M14_link" target="_blank">Statistiques</a></li>
            <li><a class="M14_link" target="_blank">MP</a></li>
            <li><a class="M14_link" target="_blank">Messages</a></li>
            <li><a class="M14_link" target="_blank">Sujets</a></li>
            <li><a class="M14_link" target="_blank">Participation</a></li>
           
            <!-- visiteurs retiré --      <li><a class="M14_link"target="_blank">Visiteurs</a></li>    ---->
            <!-- Message sur profil retiré --      <li><a class="M14_link"target="_blank">Message sur profil</a></li>    ---->

            </div>
            <br />
              {postrow.displayed.POSTER_AVATAR}
                                               
            <br />                                       
                      </dt>
                      <dd class="M14_rang">{postrow.displayed.POSTER_RANK_NEW}</dd>
                      <dd class="M14_rang">{postrow.displayed.RANK_IMAGE}</dd>

                      <dd {postrow.displayed.AWARDS_SHOW} class="dd_award {postrow.displayed.PROFILE_POSITION}">
                      {postrow.displayed.AWARDS}
          </dd>
          <dd class="award_more"></dd>
                     
                      <dd><br /></dd>
                      <dd>
                          <!-- BEGIN profile_field -->
                                                                   
  <span class="M14_blocSpan">{postrow.displayed.profile_field.LABEL}
  <span class="value">{postrow.displayed.profile_field.CONTENT}</span>
  {postrow.displayed.profile_field.SEPARATOR}</span>
                       
                          <!-- END profile_field -->
                          {postrow.displayed.POSTER_RPG}
                      </dd>
                      <dd><br /></dd>
                      <dd>
                          {postrow.displayed.PROFILE_IMG} {postrow.displayed.PM_IMG} {postrow.displayed.EMAIL_IMG}<!-- BEGIN contact_field --> {postrow.displayed.contact_field.CONTENT}<!-- END contact_field -->
                      </dd>
                    </dl>
                </div>

                <div class="clear"></div>
                               
      <!--  <a href="#top">{L_BACK_TO_TOP}</a> <a href="#bottom">{L_GOTO_DOWN}</a>  -->
                                                         
                <span class="corners-bottom"><span></span></span></div>
                      <!-- 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 -->
         
    </div>
              <!-- BEGIN first_post_br -->
              <hr id="first-post-br" />
              <!-- END first_post_br -->
          <!-- END displayed -->
        <!-- END postrow -->

          <a name="bottomtitle"></a> 


        <div class="clear"></div>
       
        <div class="noprint">

        <!-- BEGIN switch_user_logged_in -->
       
        <!-- BEGIN watchtopic -->

        <li class="rightside" style="float:right;">  {S_WATCH_TOPIC}<br /></li>

        <!-- END watchtopic -->
        <!-- END switch_user_logged_in -->
        </div>

        <hr />
              <div id="M14_ariane" class="pathname-box ariane">
              <p class="M14_ariane">
              <a class="nav" href="{U_INDEX}"><span>Accueil</span></a>
              <!--{NAV_SEP}<a class="nav" href="{U_ALBUM}"><span>{L_ALBUM}</span></a>-->
              {NAV_CAT_DESC}
              <a class="nav" href="{TOPIC_URL}">{TOPIC_TITLE}</a>
                         
              <script type="text/javascript">
              jQuery('.ariane').html(jQuery('.ariane').html().replace(/::/g,' ')).removeClass('ariane');
              </script>           
              </p>
              </div>

        <!-- BEGIN promot_trafic -->
        <div class="post row2" id="ptrafic_close" style="display:none;font-size:1.3em;line-height:1.4em">
          <span class="corners-top"><span></span></span>
          <span class="gensmall"><a href="javascript:ShowHideLayer('ptrafic_open','ptrafic_close');"><img src="{TABS_MORE_IMG}" alt="+" align="" border="0" /></a></span>
          <span class="ptrafic"> {PROMOT_TRAFIC_TITLE}</span>
          <span class="corners-bottom"><span></span></span>
        </div>
                <div class="post row2" id="ptrafic_open" style="display:'';font-size:1.3em;line-height:1.4em">
          <span class="corners-top"><span></span></span>
          <span class="gensmall"><a href="javascript:ShowHideLayer('ptrafic_open','ptrafic_close');"><img src="{TABS_LESS_IMG}" alt="-" align="" border="0" /></a></span>
          <span class="ptrafic"> {PROMOT_TRAFIC_TITLE}</span>
          <div class="clear"></div>
          <div>
              <!-- BEGIN link -->
              » <a href="{promot_trafic.link.U_HREF}" title="{promot_trafic.link.TITLE}" rel="nofollow">{promot_trafic.link.TITLE}</a><br />
              <!-- END link -->
          </div>
          <span class="corners-bottom"><span></span></span>
        </div>
        <!-- END promot_trafic -->

        <!-- BEGIN switch_forum_rules -->
        <div class="post row1" id="forum_rules">
          <span class="corners-top"><span></span></span>
          <div class="h3"> {L_FORUM_RULES}</div>
          <div class="clear"></div>
          <table class="postbody">
              <tr>
                <!-- BEGIN switch_forum_rule_image -->
                <td class="logo">
                <img src="{RULE_IMG_URL}" alt="" />
                </td>
                <!-- END switch_forum_rule_image -->
                <td class="rules content">
                {RULE_MSG}
                </td>
              </tr>
          </table>
          <span class="corners-bottom"><span></span></span>
        </div>
        <!-- END switch_forum_rules -->

        <!-- BEGIN switch_user_logged_in -->
        <a name="quickreply"></a>
        {QUICK_REPLY_FORM}
        <!-- END switch_user_logged_in -->

        <hr />

        <!-- BEGIN topicpagination -->
        <p class="pagination">{PAGINATION}</p>
        <!-- END topicpagination -->

        <div class="clear"></div>
 
 <form action="{S_JUMPBOX_ACTION}" method="get" name="jumpbox" onsubmit="if(document.jumpbox.f.value == -1){return false;}">
 <fieldset class="vf_jumpbox">
 <label>{L_JUMP_TO}:&nbsp;</label>
 {S_JUMPBOX_SELECT}&nbsp;
 <input class="button2" type="submit" value="{L_GO}" />
 </fieldset>
 </form>
</div>
 

        <!-- BEGIN viewtopic_bottom -->
        <form method="get" action="{S_FORM_MOD_ACTION}">
        <fieldset class="quickmod">
          <input type="hidden" name="t" value="{TOPIC_ID}" />

          <!-- <input type="hidden" name="sid" value="{S_SID}" /> -->
          <input type="hidden" name="{SECURE_ID_NAME}" value="{SECURE_ID_VALUE}" />
          <label>{L_MOD_TOOLS}: </label>
          {S_SELECT_MOD}&nbsp;
          <input class="button2" type="submit" value="{L_GO}" />
        </fieldset>
        </form>
        <div class="clear"></div>
        <p class="right">{S_TOPIC_ADMIN}</p>
        <!-- END viewtopic_bottom -->

        <!-- BEGIN show_permissions -->

          <div class="h3">{L_TABS_PERMISSIONS}</div>
          {S_AUTH_LIST}
        <!-- END show_permissions -->

        <!-- BEGIN switch_image_resize -->
        <script type="text/javascript">
        //<![CDATA[
        $(resize_images({ 'selector' : '.postbody .content', 'max_width' : {switch_image_resize.IMG_RESIZE_WIDTH}, 'max_height' : {switch_image_resize.IMG_RESIZE_HEIGHT} }));
        //]]>
        </script>
        <!-- END switch_image_resize -->

        <!-- Laisse le bouton favori uniquement sur 1ier message -->
            <script type="text/javascript">
              $(function(){
              if(_userdata["user_id"] < (0)){$('li#M14_FavORiTebis').remove();}
              $('ul.profile-icons:not(:first)').find('li#M14_FavORiTebis').remove();
              });
            </script>

<!-- BEGIN switch_push_direct_send -->
<div id="push-answer" class="jqmWindow"></div>
<script src="{JQUERY_DIR}jqmodal/jqmodal.js" type="text/javascript"></script>
<script>
    //<![CDATA[
    $(document).ready(function() {
        $('#push-answer').jqm({toTop: true});
 
        $('#push-bell').click(function () {
            return sendWebPush({TOPIC_ID});
        });
 
        function sendWebPush(tId) {
            $.get("/ajax_push.php?topicID=" + tId).done(showPushAnswer);
        }
 
        function showPushAnswer(data) {
            $('#push-answer').html(data).jqmShow();
            $('.jqmOverlay').bgiframe();
            $('#push-answer').bgiframe();
        }
    });
    //]]>
</script>
<!-- END switch_push_direct_send -->
photoclic

photoclic
Membre habitué

Masculin
Messages : 1465
Inscrit(e) le : 20/11/2015

http://photoclic.forum-pro.fr/
photoclic a été remercié(e) par l'auteur de ce sujet.

Script complexe pour bouton Empty Re: Script complexe pour bouton

Message par كونان2000 Mar 13 Aoû 2024 - 15:39

Lorsque j'ai installé le  template viewtopic_body et le script JavaScript de votre forum sur mon forum de test, cela n'a pas fonctionné. C'est étrange. Peut-être y a-t-il quelque chose qui manque ?


Script complexe pour bouton Ocia_a25
https://i.servimg.com/u/f30/20/35/61/89/ocia_a25.jpg
كونان2000

كونان2000
**

Autre / Ne pas divulguer
Messages : 97
Inscrit(e) le : 18/08/2021

https://anime.forumperso.com/
كونان2000 a été remercié(e) par l'auteur de ce sujet.
  • 0

Script complexe pour bouton Empty Re: Script complexe pour bouton

Message par photoclic Mar 13 Aoû 2024 - 17:19

Bonjour,

Après longue recherche, pour que cela fonctionne il faut que:
. le forum f/12 existe (ou autre, mais faudrait changer le n° dans le script (voir ligne 34) et
. que dans ce forum il y ait un sujet en note dont le titre commence par exemple par Semaine du 10 au 17 aout (voir ligne 32)
photoclic

photoclic
Membre habitué

Masculin
Messages : 1465
Inscrit(e) le : 20/11/2015

http://photoclic.forum-pro.fr/
photoclic a été remercié(e) par l'auteur de ce sujet.

Script complexe pour bouton Empty Re: Script complexe pour bouton

Message par كونان2000 Mar 13 Aoû 2024 - 21:29

J'ai essayé, mais cela n'a pas fonctionné pour moi   Assomé

Je suis vraiment désolé, photoclic,   je n'ai pas pu t'aider à modifier ton code. Peut-être que dans ton cas, il te faudrait un programmeur qui maîtrise bien le français pour pouvoir t'assister.

::fleur:: ::fleur::
كونان2000

كونان2000
**

Autre / Ne pas divulguer
Messages : 97
Inscrit(e) le : 18/08/2021

https://anime.forumperso.com/
كونان2000 a été remercié(e) par l'auteur de ce sujet.
  • 0

Script complexe pour bouton Empty Re: Script complexe pour bouton

Message par photoclic Mar 13 Aoû 2024 - 22:40

Ah, vraiment dommage car il me semble que tu n'étais pas si loin du but pour les 3 points soulevés ICI.

.Pour le premier point, ajouter la partie du code originel qui poste la photo dans le forum f/12.
.Pour le second point, dans cette ligne de code:
Code:
if(this.width>=minWidth&&this.height>=minHeight)coll.push('[img]'+this.src+'[/img]')}
Ajouter la condition "et qu'une image est présente".
.Pour le dernier point bien vérifier qu'on est bien sur les forum f/1 et f/4 pour mettre le bouton vote.

Tout ça est bien théorique car je n'y connais pas grand chose en programmation  Very Happy

Peut-être que quelqu'un ici saura aller plus loin.
En tout cas, un grand merci pour ton temps passé.
photoclic

photoclic
Membre habitué

Masculin
Messages : 1465
Inscrit(e) le : 20/11/2015

http://photoclic.forum-pro.fr/
photoclic a été remercié(e) par l'auteur de ce sujet.

Script complexe pour bouton Empty Re: Script complexe pour bouton

Message par كونان2000 Mer 14 Aoû 2024 - 5:19

Bonjour photoclic

J'ai fait quelques tests sur le code

Essayez le code suivant et dites-moi le résultat
Code:
//Bouton voter sur sujets no-way ttes pages
    //Ne pas interdire les formulaires non officiels dans général->sécurité
    $(function(){
    try{
    var minWidth=200,minHeight=200;
    var activeOn=["f1","f4"];
    /*Ne rien modifier de ce qui suit*/
    tstRegs=[];
    photovote=false;
    $vB=$(".postbody .vote-button:first a").first();
    $poll=$vB.parentsUntil('.vote').parent();
    for( i in activeOn){
      tstRegs.push(new RegExp("^\/"+activeOn[i]+"-","i"));
    }
 
    $(".pathname-box:first a").each(function(){
    for(i in tstRegs){
      if(photovote=tstRegs[i].test($(this).attr("href")))break;
    }
    });
 
    if(photovote&&/^\/t\d+-/g.test(document.location.pathname)){
 
    $.get("/f12-",function(d){
    var coll=[],id_subject=false;
    var $img_s=$vB.parentsUntil(".postbody").parent().find(".content img");
    $img_s.each(function(){
    if(this.width>=minWidth&&this.height>=minHeight)coll.push('[img]'+this.src+'[/img]')}
    );
    /*id_subject ...*/
    $(".announcement .topictitle[href]",d).each(function(){
    if(/^Semaine\W+du\W+\d+/i.test($(this).text()))id_subject=$(this).attr("href").match(/^\/t(\d+)/)[1]});
    if(!coll.length||!id_subject)return;
 
    $vB.html('<img id="bouton_voter" src="https://i.servimg.com/u/f84/18/97/96/21/bouton10.png" alt="Voter" title="Je vote pour cette photo" />');
    $vB.parentsUntil(".postbody").parent().find(".profile-icons").append($("<li/>"));
    $poll.attr('class','vote-photo');
    $poll.html($vB);
    $poll.appendTo($vB.parentsUntil(".postbody").parent().find(".profile-icons li:last"));
    $vB.click(function(ev){
 //     var auteur=$(this).closest('.postbody').find('.author a[href^="/u"]').text();      
      var auteur=$(this).closest('.postbody').next().find('dl dt span strong').text();
  
    ev.preventDefault();
    $.get($(this).attr("href"));
    $.post('/post',{mode:'reply',t:id_subject,subject:'A voté pour '+auteur+'',message:coll.join('<br />'),post:'Envoyer'});
    $poll.html('<img src="https://2img.net/i/fa/optimisation_fdf/common/buttonok_off.png"  alt="Vote enregistré" title="Vote enregistré" />');
      });
    $('img#bouton_voter').tooltipster({
          animation : 'fade',
          arrow : true,
          speed : 300,
          delay : 300,
          onlyOne : true,
          theme : 'tooltipster-default'
    });
    })
    /***/
    };
 
    $(".vote").each(function(){
      if(photovote){photovote=0;return}
    $(this).find(".vote-button:last a").html('<img src="https://2img.net/i/fa/empty.gif" alt="Voter" title="Je vote pour ce message" />').click(function(ev){
    ev.preventDefault();
    $.get($(this).attr("href"));
    $(this).parent().html('<img src="https://2img.net/i/fa/optimisation_fdf/common/buttonok_off.png"  alt="Vote enregistré" title="Vote enregistré" />')}
                                                                                                                                                
    );
    $(this).closest(".postbody").find("ul.profile-icons").append("<li />").find("li:first").append($(this).find(".vote-button:last a")).append($(this).find(".vote-bar").length?' <div class="vote-count" title="Nombre de votes positifs">'+$(this).find(".vote-bar").attr("title").replace(/^.*\(([0-9]*) .*?\)$/,"$1"):"")+'</div>';
    $(this).show()
    }
    )}
    catch(e){
    console.log(e)}
    });
كونان2000

كونان2000
**

Autre / Ne pas divulguer
Messages : 97
Inscrit(e) le : 18/08/2021

https://anime.forumperso.com/
كونان2000 a été remercié(e) par l'auteur de ce sujet.

Script complexe pour bouton Empty Re: Script complexe pour bouton

Message par photoclic Mer 14 Aoû 2024 - 11:19

Bonjour,

Avec ce dernier code, il y a un + sur tous les messages des sujets, y compris sur le premier message.
Le bouton vote n'apparait pas.
Pas grave. Peut-être qu'une aide complémentaire arrivera.
photoclic

photoclic
Membre habitué

Masculin
Messages : 1465
Inscrit(e) le : 20/11/2015

http://photoclic.forum-pro.fr/
photoclic a été remercié(e) par l'auteur de ce sujet.

Script complexe pour bouton Empty Re: Script complexe pour bouton

Message par كونان2000 Mer 14 Aoû 2024 - 17:22

Nouvelle tentative  Very Happy

Essayez le code suivant et dites-moi le résultat
Code:
//Bouton voter sur sujets no-way ttes pages
    //Ne pas interdire les formulaires non officiels dans général->sécurité
    $(function(){
    try{
    var minWidth=200,minHeight=200;
    var activeOn=["f1","f4"];
    /*Ne rien modifier de ce qui suit*/
    tstRegs=[];
    photovote=false;
    $vB=$(".postbody .vote-button:first a").first();
    $poll=$vB.parentsUntil('.vote').parent();
    for( i in activeOn){
      tstRegs.push(new RegExp("^\/"+activeOn[i]+"-","i"));
    }
 
    $(".pathname-box:first a").each(function(){
    for(i in tstRegs){
      if(photovote=tstRegs[i].test($(this).attr("href")))break;
    }
    });
 
    if(photovote&&/^\/t\d+-/g.test(document.location.pathname)){
 
    $.get("/f12-",function(d){
    var coll=[],id_subject=false;
    var $img_s=$vB.parentsUntil(".postbody").parent().find(".content img");
    $img_s.each(function(){
    if(this.width>=minWidth&&this.height>=minHeight)coll.push('[img]'+this.src+'[/img]')}
    );
    /*id_subject ...*/
    $(".announcement .topictitle[href]",d).each(function(){
    if(/^Semaine\W+du\W+\d+/i.test($(this).text()))id_subject=$(this).attr("href").match(/^\/t(\d+)/)[1]});
    if(!coll.length||!id_subject)return;
 
    $vB.html('<img id="bouton_voter" src="https://i.servimg.com/u/f84/18/97/96/21/bouton10.png" alt="Voter" title="Je vote pour cette photo" />');
    $vB.parentsUntil(".postbody").parent().find(".profile-icons").append($("<li/>"));
    $poll.attr('class','vote-photo');
    $poll.html($vB);
    $poll.appendTo($vB.parentsUntil(".postbody").parent().find(".profile-icons li:last"));
    $vB.click(function(ev){
 //     var auteur=$(this).closest('.postbody').find('.author a[href^="/u"]').text();      
      var auteur=$(this).closest('.postbody').next().find('dl dt span strong').text();
  
    ev.preventDefault();
    $.get($(this).attr("href"));
    $.post('/post',{mode:'reply',t:id_subject,subject:'A voté pour '+auteur+'',message:coll.join('<br />'),post:'Envoyer'});
    $poll.html('<img src="https://2img.net/i/fa/optimisation_fdf/common/buttonok_off.png"  alt="Vote enregistré" title="Vote enregistré" />');
      });
    $('img#bouton_voter').tooltipster({
          animation : 'fade',
          arrow : true,
          speed : 300,
          delay : 300,
          onlyOne : true,
          theme : 'tooltipster-default'
    });
    })
    /***/
    };
 
    $(".vote").each(function(){
      if(photovote){photovote=0;return}
    $(this).find(".vote-button:last a").html('<img src="https://2img.net/i/fa/empty.gif" alt="Voter" title="Je vote pour ce message" />').click(function(ev){
    ev.preventDefault();
    $.get($(this).attr("href"));
    $(this).parent().html('<img src="https://2img.net/i/fa/optimisation_fdf/common/buttonok_off.png"  alt="Vote enregistré" title="Vote enregistré" />')}
                                                                                                                                                
    );
    $(this).closest(".postbody").find("ul.profile-icons").append("<li />").find("li:first").append($(this).find(".vote-button:last a")).append($(this).find(".vote-bar").length?' <div class="vote-count" title="Nombre de votes positifs">'+$(this).find(".vote-bar").attr("title").replace(/^.*\(([0-9]*) .*?\)$/,"$1"):"")+'</div>';
    $(this).Hide()
    }
    )}
    catch(e){
    console.log(e)}
    });
      
      
      
      
      
      
      
$(function() {
        var css = '.vote .vote-button { display: none;}';
        $('<style>')
            .prop('type', 'text/css')
            .html(css)
            .appendTo('head');
});
   $(function() {
    if ($('a.nav[href^="/f1-"]').length || $('a.nav[href^="/f4-"]').length) {
        $(".vote .vote-button").css({
            "display": "block"
        });
    }
});
 $(function() {
    if ($('a.nav[href^="/f1-"]').length || $('a.nav[href^="/f4-"]').length) {
        $(".vote .vote-button a").css({
            "background-image": "url('https://i.servimg.com/u/f84/18/97/96/21/bouton10.png')",
            "background-size": "100% 100%",
            "display": "block" ,
          "width": "60px",
          "height": "25px"
        });
    }
});
كونان2000

كونان2000
**

Autre / Ne pas divulguer
Messages : 97
Inscrit(e) le : 18/08/2021

https://anime.forumperso.com/
كونان2000 a été remercié(e) par l'auteur de ce sujet.

Script complexe pour bouton Empty Re: Script complexe pour bouton

Message par photoclic Mer 14 Aoû 2024 - 17:39

Avec ce dernier code, il y a le bouton vote en double sur quasiment chaque message.
S'il y a plusieurs messages comportant des photos, seul le clic sur le bouton vote du premier message poste la photo dans le forum f/12.

Pour tes essais, je voulais préciser aussi que le bouton vote n'apparait pas pour le membre qui a posté ses photos, ce qui est normal.
On ne peut voter que sur les photos des autres membres.


Dernière édition par photoclic le Mer 14 Aoû 2024 - 22:24, édité 1 fois
photoclic

photoclic
Membre habitué

Masculin
Messages : 1465
Inscrit(e) le : 20/11/2015

http://photoclic.forum-pro.fr/
photoclic a été remercié(e) par l'auteur de ce sujet.

Script complexe pour bouton Empty Re: Script complexe pour bouton

Message par كونان2000 Mer 14 Aoû 2024 - 22:16

Pas sûr mais essayez avec le code suivant   Visage neutre
:
Code:
//Bouton voter sur sujets no-way ttes pages
    //Ne pas interdire les formulaires non officiels dans général->sécurité
    $(function(){
    try{
    var minWidth=200,minHeight=200;
    var activeOn=["f1","f4"];
    /*Ne rien modifier de ce qui suit*/
    tstRegs=[];
    photovote=false;
    $vB=$(".postbody .vote-button a");
    $poll=$vB.parentsUntil('.vote').parent();
    for( i in activeOn){
      tstRegs.push(new RegExp("^\/"+activeOn[i]+"-","i"));
    }
 
    $(".pathname-box a").each(function(){
    for(i in tstRegs){
      if(photovote=tstRegs[i].test($(this).attr("href")))break;
    }
    });
 
    if(photovote&&/^\/t\d+-/g.test(document.location.pathname)){
 
    $.get("/f12-",function(d){
    var coll=[],id_subject=false;
    var $img_s=$vB.parentsUntil(".postbody").parent().find(".content img");
    $img_s.each(function(){
    if(this.width>=minWidth&&this.height>=minHeight)coll.push('[img]'+this.src+'[/img]')}
    );
    /*id_subject ...*/
    $(".announcement .topictitle[href]",d).each(function(){
    if(/^Semaine\W+du\W+\d+/i.test($(this).text()))id_subject=$(this).attr("href").match(/^\/t(\d+)/)[1]});
    if(!coll.length||!id_subject)return;
 
    $vB.html('<img id="bouton_voter" src="https://i.servimg.com/u/f84/18/97/96/21/bouton10.png" alt="Voter" title="Je vote pour cette photo" />');
    $vB.parentsUntil(".postbody").parent().find(".profile-icons").append($("<li/>"));
    $poll.attr('class','vote-photo');
    $poll.html($vB);
    $poll.appendTo($vB.parentsUntil(".postbody").parent().find(".profile-icons li:last"));
    $vB.click(function(ev){
 //     var auteur=$(this).closest('.postbody').find('.author a[href^="/u"]').text();      
      var auteur=$(this).closest('.postbody').next().find('dl dt span strong').text();
  
    ev.preventDefault();
    $.get($(this).attr("href"));
    $.post('/post',{mode:'reply',t:id_subject,subject:'A voté pour '+auteur+'',message:coll.join('<br />'),post:'Envoyer'});
    $poll.html('<img src="https://2img.net/i/fa/optimisation_fdf/common/buttonok_off.png"  alt="Vote enregistré" title="Vote enregistré" />');
      });
    $('img#bouton_voter').tooltipster({
          animation : 'fade',
          arrow : true,
          speed : 300,
          delay : 300,
          onlyOne : true,
          theme : 'tooltipster-default'
    });
    })
    /***/
    };
 
    $(".vote").each(function(){
      if(photovote){photovote=0;return}
    $(this).find(".vote-button:last a").html('<img src="https://2img.net/i/fa/empty.gif" alt="Voter" title="Je vote pour ce message" />').click(function(ev){
    ev.preventDefault();
    $.get($(this).attr("href"));
    $(this).parent().html('<img src="https://2img.net/i/fa/optimisation_fdf/common/buttonok_off.png"  alt="Vote enregistré" title="Vote enregistré" />')}
                                                                                                                                                
    );
    $(this).closest(".postbody").find("ul.profile-icons").append("<li />").find("li:first").append($(this).find(".vote-button:last a")).append($(this).find(".vote-bar").length?' <div class="vote-count" title="Nombre de votes positifs">'+$(this).find(".vote-bar").attr("title").replace(/^.*\(([0-9]*) .*?\)$/,"$1"):"")+'</div>';
    $(this).Hide()
    }
    )}
    catch(e){
    console.log(e)}
    });
      
      
      
$(function() {
        var css = '.vote .vote-button { display: none;}';
        $('<style>')
            .prop('type', 'text/css')
            .html(css)
            .appendTo('head');
});
 $(function() {
        var css = 'vote .vote-button a { color: #0000;}';
        $('<style>')
            .prop('type', 'text/css')
            .html(css)
            .appendTo('head');
});    
   $(function() {
    if ($('a.nav[href^="/f1-"]').length || $('a.nav[href^="/f4-"]').length) {
        $(".vote .vote-button").css({
            "display": "block"
        });
    }
});
 $(function() {
    if ($('a.nav[href^="/f1-"]').length || $('a.nav[href^="/f4-"]').length) {
        $(".vote .vote-button a").css({
            "background-image": "url('https://i.servimg.com/u/f84/18/97/96/21/bouton10.png')",
            "background-size": "100% 100%",
            "display": "block" ,
          "width": "60px",
          "position": "relative",
            "z-index": "99999999999" ,
          "right": "30px",
          "height": "25px"
        });
    }
});
كونان2000

كونان2000
**

Autre / Ne pas divulguer
Messages : 97
Inscrit(e) le : 18/08/2021

https://anime.forumperso.com/
كونان2000 a été remercié(e) par l'auteur de ce sujet.

Script complexe pour bouton Empty Re: Script complexe pour bouton

Message par photoclic Mer 14 Aoû 2024 - 22:31

Là il y a un bouton vote sur le premier message, et 2 boutons vote sur tous les autres messages.
photoclic

photoclic
Membre habitué

Masculin
Messages : 1465
Inscrit(e) le : 20/11/2015

http://photoclic.forum-pro.fr/
photoclic a été remercié(e) par l'auteur de ce sujet.

Script complexe pour bouton Empty Re: Script complexe pour bouton

Message par كونان2000 Mer 14 Aoû 2024 - 22:58

photoclic a écrit:Là il y a un bouton vote sur le premier message, et 2 boutons vote sur tous les autres messages.
Cela signifie-t-il que le code fonctionne, mais que le problème est qu'il y a deux boutons de vote dans d'autres messages ?
كونان2000

كونان2000
**

Autre / Ne pas divulguer
Messages : 97
Inscrit(e) le : 18/08/2021

https://anime.forumperso.com/
كونان2000 a été remercié(e) par l'auteur de ce sujet.

Script complexe pour bouton Empty Re: Script complexe pour bouton

Message par photoclic Mer 14 Aoû 2024 - 23:11

Non, car le bouton vote est sur tous les messages, m^me sur les messages sans photos et en double.

j'ai vu que vous avez fait un vote sur mon forum, il y avait mon script d'origine.
J'ai mis votre dernier script là pour que vous puissiez voir ce que cela donne.
photoclic

photoclic
Membre habitué

Masculin
Messages : 1465
Inscrit(e) le : 20/11/2015

http://photoclic.forum-pro.fr/
photoclic a été remercié(e) par l'auteur de ce sujet.

Script complexe pour bouton Empty Re: Script complexe pour bouton

Message par كونان2000 Mer 14 Aoû 2024 - 23:40

révision

Code:
//Bouton voter sur sujets no-way ttes pages
    //Ne pas interdire les formulaires non officiels dans général->sécurité
    $(function(){
    try{
    var minWidth=200,minHeight=200;
    var activeOn=["f1","f4"];
    /*Ne rien modifier de ce qui suit*/
    tstRegs=[];
    photovote=false;
    $vB=$(".postbody .vote-button a");
    $poll=$vB.parentsUntil('.vote').parent();
    for( i in activeOn){
      tstRegs.push(new RegExp("^\/"+activeOn[i]+"-","i"));
    }
 
    $(".pathname-box a").each(function(){
    for(i in tstRegs){
      if(photovote=tstRegs[i].test($(this).attr("href")))break;
    }
    });
 
    if(photovote&&/^\/t\d+-/g.test(document.location.pathname)){
 
    $.get("/f12-",function(d){
    var coll=[],id_subject=false;
    var $img_s=$vB.parentsUntil(".postbody").parent().find(".content img");
    $img_s.each(function(){
    if(this.width>=minWidth&&this.height>=minHeight)coll.push('[img]'+this.src+'[/img]')}
    );
    /*id_subject ...*/
    $(".announcement .topictitle[href]",d).each(function(){
    if(/^Semaine\W+du\W+\d+/i.test($(this).text()))id_subject=$(this).attr("href").match(/^\/t(\d+)/)[1]});
    if(!coll.length||!id_subject)return;
 
    $vB.html('<img id="bouton_voter" src="https://i.servimg.com/u/f84/18/97/96/21/bouton10.png" alt="Voter" title="Je vote pour cette photo" />');
    $vB.parentsUntil(".postbody").parent().find(".profile-icons").append($("<li/>"));
    $poll.attr('class','vote-photo');
    $poll.html($vB);
    $poll.appendTo($vB.parentsUntil(".postbody").parent().find(".profile-icons li:last"));
    $vB.click(function(ev){
 //     var auteur=$(this).closest('.postbody').find('.author a[href^="/u"]').text();      
      var auteur=$(this).closest('.postbody').next().find('dl dt span strong').text();
  
    ev.preventDefault();
    $.get($(this).attr("href"));
    $.post('/post',{mode:'reply',t:id_subject,subject:'A voté pour '+auteur+'',message:coll.join('<br />'),post:'Envoyer'});
    $poll.html('<img src="https://2img.net/i/fa/optimisation_fdf/common/buttonok_off.png"  alt="Vote enregistré" title="Vote enregistré" />');
      });
    $('img#bouton_voter').tooltipster({
          animation : 'fade',
          arrow : true,
          speed : 300,
          delay : 300,
          onlyOne : true,
          theme : 'tooltipster-default'
    });
    })
    /***/
    };
 
    $(".vote").each(function(){
      if(photovote){photovote=0;return}
    $(this).find(".vote-button:last a").html('<img src="https://2img.net/i/fa/empty.gif" alt="Voter" title="Je vote pour ce message" />').click(function(ev){
    ev.preventDefault();
    $.get($(this).attr("href"));
    $(this).parent().html('<img src="https://2img.net/i/fa/optimisation_fdf/common/buttonok_off.png"  alt="Vote enregistré" title="Vote enregistré" />')}
                                                                                                                                                
    );
    $(this).closest(".postbody").find("ul.profile-icons").append("<li />").find("li:first").append($(this).find(".vote-button:last a")).append($(this).find(".vote-bar").length?' <div class="vote-count" title="Nombre de votes positifs">'+$(this).find(".vote-bar").attr("title").replace(/^.*\(([0-9]*) .*?\)$/,"$1"):"")+'</div>';
    $(this).Hide()
    }
    )}
    catch(e){
    console.log(e)}
    });
      
      
 $(function() {
        var css = '.vote-button:last-of-type { display: none !important;}';
        $('<style>')
            .prop('type', 'text/css')
            .html(css)
            .appendTo('head');
});    
$(function() {
        var css = '.vote .vote-button { display: none;}';
        $('<style>')
            .prop('type', 'text/css')
            .html(css)
            .appendTo('head');
});
 $(function() {
        var css = '.vote-button a { color: #0000 !important;}';
        $('<style>')
            .prop('type', 'text/css')
            .html(css)
            .appendTo('head');
});    
   $(function() {
    if ($('a.nav[href^="/f1-"]').length || $('a.nav[href^="/f4-"]').length) {
        $(".vote .vote-button").css({
            "display": "block"
        });
    }
});
 $(function() {
    if ($('a.nav[href^="/f1-"]').length || $('a.nav[href^="/f4-"]').length) {
        $(".vote .vote-button a").css({
            "background-image": "url('https://i.servimg.com/u/f84/18/97/96/21/bouton10.png')",
            "background-size": "100% 100%",
            "display": "block" ,
          "width": "60px",
          "position": "relative",
            "z-index": "99999999999" ,
          "right": "50px",
          "bottom": "40px",
          "height": "25px"
        });
    }
});
كونان2000

كونان2000
**

Autre / Ne pas divulguer
Messages : 97
Inscrit(e) le : 18/08/2021

https://anime.forumperso.com/
كونان2000 a été remercié(e) par l'auteur de ce sujet.

Script complexe pour bouton Empty Re: Script complexe pour bouton

Message par photoclic Mer 14 Aoû 2024 - 23:45

J'ai mis votre dernier script sur mon forum pour que vous puissiez voir ce que cela fait.
Le bouton vote est sur tous les messages y compris ceux qui n'ont pas de photos.
Et les photos ne sont pas postés sur le forum f/12 quand on clique sur le bouton vote.

Edit: je remettrais le script d'origine dans une demie heure.
photoclic

photoclic
Membre habitué

Masculin
Messages : 1465
Inscrit(e) le : 20/11/2015

http://photoclic.forum-pro.fr/
photoclic a été remercié(e) par l'auteur de ce sujet.

Page 1 sur 2 1, 2  Suivant

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

- Sujets similaires

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