[AwesomeBB] Script pour rafraichissement immediat (réponse rapide) ne fonctionne pas (bis)

3 participants

Page 2 sur 2 Précédent  1, 2

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

Résolu [AwesomeBB] Script pour rafraichissement immediat (réponse rapide) ne fonctionne pas (bis)

Message par Invité Lun 2 Jan 2023 - 21:13

Rappel du premier message :

Détails techniques


Version du forum : AwesomeBB
Poste occupé : Fondateur
Navigateur(s) concerné(s) : Mozilla Firefox
Personnes concernées par le problème : Tous les utilisateurs
Lien du forum : https://gemurama.com/

Description du problème

Bonjour,

Je reviens vers vous à propos de ce script.

C'est suite à ce topic : https://forum.forumactif.com/t407747-awesomebb-script-pour-rafraichissement-immediat-reponse-rapide-ne-fonctionne-pas

Le script a été corrigé....

Code:
<script>
    $(function() {
        let lURL = location.pathname + ' .post-wrap:last',
            posts_by_page = 25,
            lastPage;
        $('#quick-reply-send').click(function(e) {
            e.preventDefault();
            clickQuick_post();
        });

        let getPost = function(url) {
                /*CHARGEMENT DU DERNIER MESSAGE*/
                $('#load_quick_reply').fadeOut('fast');
                $('.newPosts:last').fadeIn('fast').after('<div class="newPosts" style="display: none;"></div>');
                $('#load_quick_reply').load(url, function() {
                    $('#load_quick_reply').fadeIn('fast');
                    $('#quick-reply-send').click(function(e) {
                        e.preventDefault();
                        clickQuick_post();
                    });
                });

            },
            clickQuick_post = function() {
                if (!$('.newPosts').is(':visible')) fixedmenu();
                /*ENVOI DU FORMULAIRE VIA LA REPONSE RAPIDE*/
                let f = $('#quick_reply').serializeArray(),
                    t = $('#quick_reply').attr('action'),
                    posts = $('.post-wrap').size(),
                    m = $('#text_editor_textarea');

                for (let i = 0, j = f.length; i < j; i++){
                    if (f[i]['name'] == 'message'){
                        try {
                            f[i].value = m.sceditor('instance').val();
                        } catch(error){
                            f[i].value = m.val();
                        }
                    }
                }
                f[f.length] = {name: 'post', value: 'send'};

                if (posts == posts_by_page && lastPage == undefined) {
                    pagination(posts_by_page);
                } else if (lastPage != undefined) {
                    pagination(lastPage)
                }
                $.post(t, f, function(xhr) {
                    if (xhr.indexOf('Message enregistré avec succès') == -1) {
                        newMessagePosted();
                    } else {
                        $('.newPosts:last').load(lURL, function() {
                            getPost(location.pathname + ' #load_quick_reply');
                            refreshScript();
                        });
                    }
                });
            },
            refreshScript = function() {
                /*RECHARGEMENT DES SCRIPTS CONCERNANT LES MESSAGES*/
                $.getScript('https://illiweb.com/rs3/14/frm/awesome/main.js');
                setTimeout(function() {
                    $('#quick-reply-avatar').html(_userdata['avatar']);
                    $.getScript('https://illiweb.com/rs3/19/frm/SCEditor/src/instance-sceditor.js');
                }, 600);
                unwrapSelect();
            },
            newMessagePosted = function() {
                /*TRAITEMENT SI UN NOUVEAU MESSAGE A ETE POSTER AVANT LE NOTRE*/
                $('.newPosts:last').load(lURL, function() {
                    refreshScript();
                    $('.newPosts:last').fadeIn('fast').after('<div class="newPosts" style="display: none;"></div>');
                });
                if (!$('#nmp').length) {
                    $('#load_quick_reply').before('<div id="nmp">Un nouveau message a été posté ! Vous pouvez le consulter ci-dessus puis choisir de modifier ou non votre message et l\'envoyer avec le bouton ci-dessous </br><button class="rep-button"><span class="rep-cat"><i class="material-icons">done</i></span><span>POSTER</span></button></div>');
                    $('input[name="lt"]').val(parseInt($('input[name="lt"]').val()) + 1);
                    $.get('/t' + $('input[name="t"]').val() + '-?view=newest', function() {
                        $('#nmp .rep-button').click(function(e) {
                            e.preventDefault();
                            let f = $('#quick_reply').serializeArray(),
                                t = $('#quick_reply').attr('action'),
                                m = $('#text_editor_textarea');

                            for (let i = 0, j = f.length; i < j; i++){
                                if (f[i]['name'] == 'message'){
                                    try {
                                        f[i].value = m.sceditor('instance').val();
                                    } catch(error){
                                        f[i].value = m.val();
                                    }
                                }
                            }
                            f[f.length] = {name: 'post', value: 'send'};

                            $.post(t, f, function() {
                                $('.newPosts:last').load(lURL, function() {
                                    getPost(location.pathname + ' #load_quick_reply', function() {
                                        isLastPage();
                                    });
                                    refreshScript();
                                    $('#nmp').remove();
                                });
                            });
                        });
                    });
                }
            },
            pagination = function(pbp) {
                /*DEFINI L'URL DE LA NOUVELLE PAGE DES MESSAGES A RECUPERER SI ON ATTEINT LE NOMBRE DE MESSAGES DEFINI PAR PAGE*/
                let topic = $('input[name="t"]').val(),
                    path = location.pathname.match(/p[0-9]+/);
                if (path != null) {
                    let page = parseInt(path[0].replace(/p/g, '')) + pbp;
                    if (pbp != posts_by_page) {
                        page = pbp;
                    }
                    lURL = '/t' + topic + 'p' + page.toString() + '- .post-wrap:last';
                } else {
                    lURL = '/t' + topic + 'p' + pbp.toString() + '- .post-wrap:last';
                }
            },
            isLastPage = function() {
                /*AVERTI L'UTILISATEUR QUE SEUL LES NOUVEAUX MESSAGES POSTER EN DERNIERE PAGE (SI IL N'Y EST PAS DEJA) SERONT CHARGE SUR LA PAGE OU IL SE TROUVE*/
                let lp = $('.pagination').length;
                if (lp != 0) {
                    let p = $('.pagination:last').children().children(),
                        pl = p.length - 1,
                        nName = p[pl].nodeName;
                    if (nName != 'STRONG') {
                        $('.quick-reply-textarea-wrap textarea').attr('placeholder', 'Vous utilisez la réponse rapide sans rechargement de page, seul les nouveaux messages postés seront chargés');
                        let topic = $('input[name="t"]').val(),
                            newLoc = (parseInt(p[pl - 1].innerText) - 1) * posts_by_page;
                        lURL = '/t' + topic + 'p' + newLoc + '-';
                        lastPage = newLoc;
                    }
                }
            },
            unwrapSelect = function() {
                /*RETIRE LES NOUVEAUX ELEMENTS INUTILES ET DONNANT UN AFFICHAGE CASSER DU AU RECHARGEMENT DES SCRIPTS*/
                $('.jumpbox-wrap select').unwrap();
                if ($('.quickmod-wrap').length) {
                    $('.quickmod-wrap select').unwrap();
                }
            },
            fixedmenu = function() {
                $('#main-menu ul:last, #main-menu .divider:last').remove();
                $('#main-menu ul:last').remove();
                $('#header-notif').click(e => {
                    $('#notif-menu').toggleClass('visible hidden')
                });
                $('#header-user').click(e => {
                    $('#main-user-menu').toggleClass('visible hidden')
                });
                $('#main-menu-btn').click(e => {
                    $('#main-menu').toggleClass('visible hidden')
                });
            };
        isLastPage();
    }); </script>

Sauf qu'à force de l'utiliser, nous avons constaté un autre bug.

Cette partie là :

Code:
 ('<div id="nmp">Un nouveau message a été posté ! Vous pouvez le consulter ci-dessus puis choisir de modifier ou non votre message et l\'envoyer avec le bouton ci-dessous </br><button class="rep-button"><span class="rep-cat"><i class="material-icons">done</i></span><span>POSTER</span></button></div>');

Un nouveau message a été posté pendant qu'on écrit. Quand on envoi la réponse, il y a une alerte qui nous demande de confirmer ou non l'envoi.... Malheureusement, quand on choisit d'envoyer notre message, ça ne fonctionne pas, c'est le dernier message du sujet qui apparaît en doublon.   :/

Merci d'avance pour votre aide
Anonymous

Invité
Invité


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

Résolu Re: [AwesomeBB] Script pour rafraichissement immediat (réponse rapide) ne fonctionne pas (bis)

Message par Chacha Mar 21 Fév 2023 - 9:25

pour - [AwesomeBB] Script pour rafraichissement immediat (réponse rapide) ne fonctionne pas (bis) - Page 2 UmaslZ4Bonjour,

Attention, cela fait 6 jours que nous n'avons pas de nouvelles concernant votre demande, si vous ne voulez pas voir votre sujet déplacé à la corbeille, merci de poster dans les 24h qui suivent ce message.

Si votre sujet est résolu, merci d'éditer votre premier message et de cocher l'icône « résolu »
Chacha

Chacha
Modéractif
Modéractif

Masculin
Messages : 69474
Inscrit(e) le : 21/08/2010

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

Résolu Re: [AwesomeBB] Script pour rafraichissement immediat (réponse rapide) ne fonctionne pas (bis)

Message par Invité Mar 21 Fév 2023 - 15:17

Merci, je relance Smile
Anonymous

Invité
Invité


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

Résolu Re: [AwesomeBB] Script pour rafraichissement immediat (réponse rapide) ne fonctionne pas (bis)

Message par Invité Sam 25 Fév 2023 - 9:34

Je relance Smile
Anonymous

Invité
Invité


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

Résolu Re: [AwesomeBB] Script pour rafraichissement immediat (réponse rapide) ne fonctionne pas (bis)

Message par Invité Jeu 2 Mar 2023 - 10:59

Je relance à nouveau, en espérant avoir quelques news Smile
Anonymous

Invité
Invité


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

Résolu Re: [AwesomeBB] Script pour rafraichissement immediat (réponse rapide) ne fonctionne pas (bis)

Message par Chacha Mer 8 Mar 2023 - 9:28

pour - [AwesomeBB] Script pour rafraichissement immediat (réponse rapide) ne fonctionne pas (bis) - Page 2 UmaslZ4Bonjour,

Attention, cela fait 6 jours que nous n'avons pas de nouvelles concernant votre demande, si vous ne voulez pas voir votre sujet déplacé à la corbeille, merci de poster dans les 24h qui suivent ce message.

Si votre sujet est résolu, merci d'éditer votre premier message et de cocher l'icône « résolu »
Chacha

Chacha
Modéractif
Modéractif

Masculin
Messages : 69474
Inscrit(e) le : 21/08/2010

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

Résolu Re: [AwesomeBB] Script pour rafraichissement immediat (réponse rapide) ne fonctionne pas (bis)

Message par Invité Mer 8 Mar 2023 - 11:27

Je relance, merci Smile
Anonymous

Invité
Invité


Invité a été remercié(e) par l'auteur de ce sujet.
  • 0

Résolu Re: [AwesomeBB] Script pour rafraichissement immediat (réponse rapide) ne fonctionne pas (bis)

Message par Bipo Dim 12 Mar 2023 - 8:30

Bonjour @Zlork,

Je me permets de passer sur votre sujet pour tagguer @Self qui n'est pas repassé sur le FdF depuis le 2 février 2023 :

Self a écrit:Bonjour Zlork, je suis conscient que l'attente est longue mais j'explore toute les pistes que je peux pour faire ce que vous demandez, cela à coté de ce que je dois faire dans ma vie personnelle, parfois j'avance bien, parfois j'avance pas beaucoup continuez de UP le sujet régulièrement afin qu'il ne soit pas archivé, je passerai vous donner des nouvelles de temps en temps.

En espérant que Self se porte bien flower !

Bon dimanche sur Forumactif.
Bipo.
Bipo

Bipo
Rédactif
Rédactif

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

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

Résolu Re: [AwesomeBB] Script pour rafraichissement immediat (réponse rapide) ne fonctionne pas (bis)

Message par Chacha Sam 18 Mar 2023 - 9:18

pour - [AwesomeBB] Script pour rafraichissement immediat (réponse rapide) ne fonctionne pas (bis) - Page 2 UmaslZ4Bonjour,

Attention, cela fait 10 jours que nous n'avons pas de nouvelles concernant votre demande, si vous ne voulez pas voir votre sujet déplacé à la corbeille, merci de poster dans les 24h qui suivent ce message.

Si votre sujet est résolu, merci d'éditer votre premier message et de cocher l'icône « résolu »
Chacha

Chacha
Modéractif
Modéractif

Masculin
Messages : 69474
Inscrit(e) le : 21/08/2010

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

Résolu Re: [AwesomeBB] Script pour rafraichissement immediat (réponse rapide) ne fonctionne pas (bis)

Message par Invité Sam 18 Mar 2023 - 15:42

Je relance toujours Smile

Je ne relancerai pas éternellement mais j'espère avoir les améliorations un jour Smile
Anonymous

Invité
Invité


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

Résolu Re: [AwesomeBB] Script pour rafraichissement immediat (réponse rapide) ne fonctionne pas (bis)

Message par Chacha Ven 24 Mar 2023 - 9:14

pour - [AwesomeBB] Script pour rafraichissement immediat (réponse rapide) ne fonctionne pas (bis) - Page 2 UmaslZ4Bonjour,

Attention, cela fait 6 jours que nous n'avons pas de nouvelles concernant votre demande, si vous ne voulez pas voir votre sujet déplacé à la corbeille, merci de poster dans les 24h qui suivent ce message.

Si votre sujet est résolu, merci d'éditer votre premier message et de cocher l'icône « résolu »
Chacha

Chacha
Modéractif
Modéractif

Masculin
Messages : 69474
Inscrit(e) le : 21/08/2010

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

Résolu Re: [AwesomeBB] Script pour rafraichissement immediat (réponse rapide) ne fonctionne pas (bis)

Message par Invité Ven 24 Mar 2023 - 14:10

Je relance, j'espère avoir des nouvelles Smile
Anonymous

Invité
Invité


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

Résolu Re: [AwesomeBB] Script pour rafraichissement immediat (réponse rapide) ne fonctionne pas (bis)

Message par Invité Mer 29 Mar 2023 - 10:39

Je relance.

Pour rappel, ce que je souhaite :

Quand il y a plusieurs messages qui sont envoyés pendant qu'on écrit, seul le dernier message posté apparaît quand on envoie le notre. Si possible, j'aimerais donc que tous les messages se chargent.

Aussi j'aimerais que quand on envoie le dernier message de la page, qu'on soit redirigé vers la nouvelle page automatiquement. Et pour les personnes qui ne se trouve pas sur la dernière page du sujet, éventuellement cacher la réponse rapide (avec une alerte comme quoi il y a eu une nouvelle page de créé). Je sais que ce n'est pas vraiment le but du script mais je pense que c'est plus pratique à l'utilisation.

Merci par avance
Anonymous

Invité
Invité


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

Résolu Re: [AwesomeBB] Script pour rafraichissement immediat (réponse rapide) ne fonctionne pas (bis)

Message par Invité Lun 3 Avr 2023 - 9:20

Je relance
Anonymous

Invité
Invité


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

Résolu Re: [AwesomeBB] Script pour rafraichissement immediat (réponse rapide) ne fonctionne pas (bis)

Message par Invité Mar 4 Avr 2023 - 20:53

Je relance Smile

N'ayant pas de nouvelles de Self, vraiment personne pour prendre le relai ? Sad
Anonymous

Invité
Invité


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

Résolu Re: [AwesomeBB] Script pour rafraichissement immediat (réponse rapide) ne fonctionne pas (bis)

Message par Chacha Mer 12 Avr 2023 - 9:24

pour - [AwesomeBB] Script pour rafraichissement immediat (réponse rapide) ne fonctionne pas (bis) - Page 2 8djze9qBonjour,

Nous n'avons plus de nouvelle de l'auteur de ce sujet depuis plus de 8 jours. Nous considérons donc ce problème comme résolu ou abandonné. La prochaine fois, merci de nous tenir au courant de l'évolution de votre problème, ou pensez à faire un UP régulièrement !

Ce sujet est archivé afin de ne pas perdre les réponses apportées.
Chacha

Chacha
Modéractif
Modéractif

Masculin
Messages : 69474
Inscrit(e) le : 21/08/2010

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

Page 2 sur 2 Précédent  1, 2

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