Question pour les connaisseurs (modification d'un script)

3 participants

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

Résolu Question pour les connaisseurs (modification d'un script)

Message par papa pig Mer 14 Fév 2024 - 22:37

Détails techniques


Version du forum : ModernBB
Poste occupé : Administrateur
Navigateur(s) concerné(s) : non défini
Personnes concernées par le problème : Tous les utilisateurs
Lien du forum : forumactif

Description du problème

Bonsoir,

J'ai une question pour les fans de codage...
J'utilise des formulaires pour poster des sujets dan certains sous-forums.
Dans un sous-forum particulièrement, j'aimerais que dans le titre apparaisse au début un n° (juste un chiffre)
Concrètement ma question est : est-ce qu'il est possible que par le biais du script, au moment de poster un nouveau sujet (valider l'envoi), on récupère le nombre de topics actuels dans le sus-forum en question et qu'on lui attrbue la valeur "+1" (car ce sujet est le nb+1 ième topic ...

Par exemple :
Sous-forum "Les races de chiens" (/f3-) qui compte 187 sujets.
Le formulaire visant à répertorier une nouvelle race de chien, lorsqu’il serait envoyé dans le forum /f3-, renverrait 187 +1 donc "188" comme identifiant numérique au début du titre du nouveau sujet créé

Quelqu'un saurait me dire quel code insérer dans le script proposé ?

Voici le bas de la page HTML en question :
Code:
<input type="hidden" id="fa-generated-title" value="{{fields1}}" />

  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js" type="text/javascript"></script>
  <script src="https://bipofa.github.io/Forumactif/form-fields-generator.js" type="text/javascript"></script>
  <script type="text/javascript">
    (function ($) {
       'use strict';

       $(window).on('load', function () {
          $('#fa-generated-form').on('submit', function (event) {
         event.preventDefault();
         $(this).find('button[type="submit"]').text('En cours de publication...');
         setTimeout(function () {
               $.post('/post', {
                  subject: $('#fa-generated-title').val().trim(),
                  f: 3,
                  message: $('#fa-generated-message').val().trim(),
                  mode: 'newtopic',
                  tid: $('[name="tid"]:first').val(),
                  post: 1,
               }).done(function () {
                  alert('Le sujet a été posté avec succès ! Vous allez être redirigé sur le nouveau sujet créé !');
                  location.pathname = '/f3-';
               }).fail(function () {
                  alert('Une erreur est survenue ! Réessayez plus tard ! ');
               });
         }, 600);
          });
       });
    }(jQuery));
  </script>

Par avance merci ! aidez moi


Dernière édition par papa pig le Dim 7 Avr 2024 - 22:01, édité 3 fois
papa pig

papa pig
***

Masculin
Messages : 199
Inscrit(e) le : 22/01/2017

http://lepetitsecargot.forumpro.fr
papa pig a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Question pour les connaisseurs (modification d'un script)

Message par papa pig Sam 17 Fév 2024 - 20:18

Bonsoir !
UP Mr. Green
papa pig

papa pig
***

Masculin
Messages : 199
Inscrit(e) le : 22/01/2017

http://lepetitsecargot.forumpro.fr
papa pig a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Question pour les connaisseurs (modification d'un script)

Message par papa pig Dim 18 Fév 2024 - 19:00

Bonsoir,
petit up qui va bien Very Happy merci
papa pig

papa pig
***

Masculin
Messages : 199
Inscrit(e) le : 22/01/2017

http://lepetitsecargot.forumpro.fr
papa pig a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Question pour les connaisseurs (modification d'un script)

Message par papa pig Ven 23 Fév 2024 - 2:01

Bonsoir, up ?
papa pig

papa pig
***

Masculin
Messages : 199
Inscrit(e) le : 22/01/2017

http://lepetitsecargot.forumpro.fr
papa pig a été remercié(e) par l'auteur de ce sujet.
  • 0

Résolu Re: Question pour les connaisseurs (modification d'un script)

Message par Toryudo Ven 23 Fév 2024 - 13:56

Bonjour !

Alors, à condition que vous ayez une version ModernBB pas trop modifiée, voilà qui devrait fonctionner :
Code:
<input type="hidden" id="fa-generated-title" value="{{fields1}}" />

  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js" type="text/javascript"></script>
  <script src="https://bipofa.github.io/Forumactif/form-fields-generator.js" type="text/javascript"></script>
  <script type="text/javascript">
    (function ($) {
      'use strict';

      $(window).on('load', function () {
        $('#fa-generated-form').on('submit', function (event) {
          event.preventDefault();
          $(this).find('button[type="submit"]').text('En cours de publication...');
          setTimeout(function () {
            var nb_sujets = 0;
            $.get('/', function(data){
              nb_sujets += parseInt($(data).find('a[href*="/f3-"').parents('.row').find('.topics').text()) + 1;
              $.post('/post', {
                subject: nb_sujets + ' ' + $('#fa-generated-title').val().trim(),
                f: 3,
                message: $('#fa-generated-message').val().trim(),
                mode: 'newtopic',
                tid: $('[name="tid"]:first').val(),
                post: 1,
              }).done(function () {
                alert('Le sujet a été posté avec succès ! Vous allez être redirigé sur le nouveau sujet créé !');
                location.pathname = '/f3-';
              }).fail(function () {
                alert('Une erreur est survenue ! Réessayez plus tard ! ');
              });
            });
          }, 600);
        });
      });
    }(jQuery));
  </script>

Je vous laisse faire le test !
Toryudo

Toryudo
Aidactif
Aidactif

Masculin
Messages : 1374
Inscrit(e) le : 31/03/2020

https://deus-academia.forumactif.com/
Toryudo a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Question pour les connaisseurs (modification d'un script)

Message par Chacha Jeu 29 Fév 2024 - 9:30

Question pour les connaisseurs (modification d'un script) UmaslZ4Bonjour,

Attention, cela fait 7 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 : 69461
Inscrit(e) le : 21/08/2010

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

Résolu Re: Question pour les connaisseurs (modification d'un script)

Message par Chacha Ven 1 Mar 2024 - 9:12

Question pour les connaisseurs (modification d'un script) 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 : 69461
Inscrit(e) le : 21/08/2010

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

Résolu Re: Question pour les connaisseurs (modification d'un script)

Message par Chacha Dim 24 Mar 2024 - 19:23

Question pour les connaisseurs (modification d'un script) TLjnTcjBonjour,

Le topic est replacé à la demande de l'auteur du sujet.

Pensez à faire un UP au moins une fois par semaine si vous ne voulez pas voir votre sujet déplacé à la corbeille.
Chacha

Chacha
Modéractif
Modéractif

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

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

Résolu Re: Question pour les connaisseurs (modification d'un script)

Message par papa pig Dim 24 Mar 2024 - 20:31

Toryudo a écrit: ... , voilà qui devrait fonctionner ...

Bonsoir,
Merci d'abord à @Chacha pour avoir accédé à ma demande de replacer le sujet.
@Toryudo, je tiens à faire part de ma confusion à toute la communauté, et te présenter mes excuses particulièrement.
Je ne suis pas revenu voir sur le forum les réponses depuis presque un mois, après mon dernier "UP", pris par le travail, et j'ai vu aujourd'hui que tu avais aimablement posté une réponse à mon problème.
Peu importe les excuses que je peux avoir, je n'ai jamais apprécié qu'on ne remercie pas les participants, et ce n'était pas volontaire de ma part. C'est la moindre des politesses.
Alors, merci vivement.

Ceci étant, j'ai évidemment testé le script, et la page du formulaire, à l'essai, reste en mode "traitement en cours... " et le formulaire bloque. Rien ne se passe. Je précise qu'avant il fonctionnait.
C'est sûrement dû au fait que je n'avais pas mis à jour dans mon profil que le forum sur lequel je l'ai implanté est en AwesomeBB et non ModernBB comme c'était jusqu'à ce soir indiqué (je viens de mettre à jour cet oubli).

Bien à vous,
Bonne soirée
papa pig

papa pig
***

Masculin
Messages : 199
Inscrit(e) le : 22/01/2017

http://lepetitsecargot.forumpro.fr
papa pig a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Question pour les connaisseurs (modification d'un script)

Message par papa pig Lun 25 Mar 2024 - 19:15

Bonsoir,
pendant le test, une fois rempli et en validant, le formulaire ne s'envoie pas.
Il indique "En cours de publication"

Cordialement
papa pig

papa pig
***

Masculin
Messages : 199
Inscrit(e) le : 22/01/2017

http://lepetitsecargot.forumpro.fr
papa pig a été remercié(e) par l'auteur de ce sujet.
  • 0

Résolu Re: Question pour les connaisseurs (modification d'un script)

Message par Toryudo Mar 26 Mar 2024 - 10:12

Bonjour !

Pas de problème, on va essayer de continuer à comprendre !
Alors en effet, il y a quelques différences entre AwesomeBB et ModernBB, j'ai donc remodifié le script pour prendre en compte cette information (surtout la 16ème ligne du script, qui récupère l'information du nombre de sujets de ce forum f3 sur la page d'accueil et qui ajoute +1 au nombre obtenu) :
Code:
<input type="hidden" id="fa-generated-title" value="{{fields1}}" />
 
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js" type="text/javascript"></script>
  <script src="https://bipofa.github.io/Forumactif/form-fields-generator.js" type="text/javascript"></script>
  <script type="text/javascript">
    (function ($) {
      'use strict';
 
      $(window).on('load', function () {
        $('#fa-generated-form').on('submit', function (event) {
          event.preventDefault();
          $(this).find('button[type="submit"]').text('En cours de publication...');
          setTimeout(function () {
            var nb_sujets = 0;
            $.get('/', function(data){
              nb_sujets += parseInt($(data).find('a[href*="/f3-"').parents('.forum-section').find('.forum-statistics-topics').text()) + 1;
              $.post('/post', {
                subject: nb_sujets + ' ' + $('#fa-generated-title').val().trim(),
                f: 3,
                message: $('#fa-generated-message').val().trim(),
                mode: 'newtopic',
                tid: $('[name="tid"]:first').val(),
                post: 1,
              }).done(function () {
                alert('Le sujet a été posté avec succès ! Vous allez être redirigé sur le nouveau sujet créé !');
                location.pathname = '/f3-';
              }).fail(function () {
                alert('Une erreur est survenue ! Réessayez plus tard ! ');
              });
            });
          }, 600);
        });
      });
    }(jQuery));
  </script>

Est-ce que ça fonctionne mieux ?
Toryudo

Toryudo
Aidactif
Aidactif

Masculin
Messages : 1374
Inscrit(e) le : 31/03/2020

https://deus-academia.forumactif.com/
Toryudo a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Question pour les connaisseurs (modification d'un script)

Message par papa pig Mar 26 Mar 2024 - 22:43

Bonsoir ! merci beaucoup Toryudo
Hélas, toujours bloqué au stade "En cours de publication..."

J'ai remis le premier code pour voir, et les données se postent bien.
J'ai donc remis ton code ensuite, mais non ça bloque.
papa pig

papa pig
***

Masculin
Messages : 199
Inscrit(e) le : 22/01/2017

http://lepetitsecargot.forumpro.fr
papa pig a été remercié(e) par l'auteur de ce sujet.
  • 0

Résolu Re: Question pour les connaisseurs (modification d'un script)

Message par Toryudo Jeu 28 Mar 2024 - 10:10

Bonjour !

Zut, alors je ne vais pas pouvoir aider davantage sans avoir accès au forum.
Est-ce que vous pourriez l'ouvrir aux invités, de sorte à ce qu'on puisse voir la page qui contient le forum f3 ?
Il y a peut-être un affichage différent, c'est ce que j'aimerais vérifier maintenant !
Toryudo

Toryudo
Aidactif
Aidactif

Masculin
Messages : 1374
Inscrit(e) le : 31/03/2020

https://deus-academia.forumactif.com/
Toryudo a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Question pour les connaisseurs (modification d'un script)

Message par papa pig Ven 29 Mar 2024 - 7:04

Toryudo a écrit:Bonjour !

Zut, alors je ne vais pas pouvoir aider davantage sans avoir accès au forum.
Est-ce que vous pourriez l'ouvrir aux invités, de sorte à ce qu'on puisse voir la page qui contient le forum f3 ?
Il y a peut-être un affichage différent, c'est ce que j'aimerais vérifier maintenant !

Bonjour, entendu, voilà qui est fait.
La page du formulaire de test est ici : https://lepetitsecargot.forumpro.fr/h1-ajout-d-univers
papa pig

papa pig
***

Masculin
Messages : 199
Inscrit(e) le : 22/01/2017

http://lepetitsecargot.forumpro.fr
papa pig a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Question pour les connaisseurs (modification d'un script)

Message par Toryudo Ven 29 Mar 2024 - 11:20

Bonjour !

Hm, donc je vois que vous avez changé f3 par f41 dans le formulaire.
Par contre, je ne vois pas le forum f41 pour l'instant, est-ce qu'il est bien visible pour les invités ?
En fait, de base, le script que j'ai écrit va chercher le nombre de "topics" sur la page d'accueil, mais si ça se trouve, ce forum f41 ne se trouve pas sur la page d'accueil, mais à l'intérieur d'une catégorie ?
Toryudo

Toryudo
Aidactif
Aidactif

Masculin
Messages : 1374
Inscrit(e) le : 31/03/2020

https://deus-academia.forumactif.com/
Toryudo a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Question pour les connaisseurs (modification d'un script)

Message par papa pig Mar 2 Avr 2024 - 21:52

Bonsoir, oups, j'ai peut-être pas donné le bon lien vers la bonne page html. Je suis très pris cette semaine, je regarde pour rectifier ça demain ou jeudi. ☺ merci ! j'ai hâte de corriger ça (effectivement le f3 est un sous-forum d'une catégorie)
Bonne soirée 🙏
papa pig

papa pig
***

Masculin
Messages : 199
Inscrit(e) le : 22/01/2017

http://lepetitsecargot.forumpro.fr
papa pig a été remercié(e) par l'auteur de ce sujet.
  • 0

Résolu Re: Question pour les connaisseurs (modification d'un script)

Message par Toryudo Mer 3 Avr 2024 - 8:08

Bonjour !

Je le vois également, il est dans la catégorie c4. Dans ce cas, le script sera plutôt le suivant :
Code:
<input type="hidden" id="fa-generated-title" value="{{fields1}}" />
 
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js" type="text/javascript"></script>
  <script src="https://bipofa.github.io/Forumactif/form-fields-generator.js" type="text/javascript"></script>
  <script type="text/javascript">
    (function ($) {
      'use strict';
 
      $(window).on('load', function () {
        $('#fa-generated-form').on('submit', function (event) {
          event.preventDefault();
          $(this).find('button[type="submit"]').text('En cours de publication...');
          setTimeout(function () {
            var nb_sujets = 0;
            $.get('/c4-les-univers', function(data){
              nb_sujets += parseInt($(data).find('a[href*="/f3-"').parents('.forum-section').find('.forum-statistics-topics').text()) + 1;
              $.post('/post', {
                subject: nb_sujets + ' ' + $('#fa-generated-title').val().trim(),
                f: 3,
                message: $('#fa-generated-message').val().trim(),
                mode: 'newtopic',
                tid: $('[name="tid"]:first').val(),
                post: 1,
              }).done(function () {
                alert('Le sujet a été posté avec succès ! Vous allez être redirigé sur le nouveau sujet créé !');
                location.pathname = '/f3-';
              }).fail(function () {
                alert('Une erreur est survenue ! Réessayez plus tard ! ');
              });
            });
          }, 600);
        });
      });
    }(jQuery));
  </script>
Toryudo

Toryudo
Aidactif
Aidactif

Masculin
Messages : 1374
Inscrit(e) le : 31/03/2020

https://deus-academia.forumactif.com/
Toryudo a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Question pour les connaisseurs (modification d'un script)

Message par papa pig Sam 6 Avr 2024 - 14:29

Bonjour Toryudo ! merci pour ce travail, hélas toujours le même problème.
J'ai bien modifié le script avec celui juste au-dessus, et toujours, une fois cliqué, le message "en cours de publication..." en lieu et place de "valider"  Question pour les connaisseurs (modification d'un script) 1f610 bizarre
Question pour les connaisseurs (modification d'un script) Captur10
papa pig

papa pig
***

Masculin
Messages : 199
Inscrit(e) le : 22/01/2017

http://lepetitsecargot.forumpro.fr
papa pig a été remercié(e) par l'auteur de ce sujet.
  • 0

Résolu Re: Question pour les connaisseurs (modification d'un script)

Message par Toryudo Dim 7 Avr 2024 - 8:42

Bonjour !

Je ne comprends pas ce que j'ai fait, j'ai perdu un ] en faisant un copier coller au début...
Comme ça, ça devrait être bon cette fois :
Code:
<input type="hidden" id="fa-generated-title" value="{{fields1}}" />
 
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js" type="text/javascript"></script>
  <script src="https://bipofa.github.io/Forumactif/form-fields-generator.js" type="text/javascript"></script>
  <script type="text/javascript">
    (function ($) {
      'use strict';
 
      $(window).on('load', function () {
        $('#fa-generated-form').on('submit', function (event) {
          event.preventDefault();
          $(this).find('button[type="submit"]').text('En cours de publication...');
          setTimeout(function () {
            var nb_sujets = 0;
            $.get('/c4-les-univers', function(data){
              nb_sujets += parseInt($(data).find('a[href*="/f3-"]').parents('.forum-section').find('.forum-statistics-topics').text()) + 1;
              $.post('/post', {
                subject: nb_sujets + ' ' + $('#fa-generated-title').val().trim(),
                f: 3,
                message: $('#fa-generated-message').val().trim(),
                mode: 'newtopic',
                tid: $('[name="tid"]:first').val(),
                post: 1,
              }).done(function () {
                alert('Le sujet a été posté avec succès ! Vous allez être redirigé sur le nouveau sujet créé !');
                location.pathname = '/f3-';
              }).fail(function () {
                alert('Une erreur est survenue ! Réessayez plus tard ! ');
              });
            });
          }, 600);
        });
      });
    }(jQuery));
  </script>
Toryudo

Toryudo
Aidactif
Aidactif

Masculin
Messages : 1374
Inscrit(e) le : 31/03/2020

https://deus-academia.forumactif.com/
Toryudo a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Question pour les connaisseurs (modification d'un script)

Message par papa pig Dim 7 Avr 2024 - 19:28

Enorme !! merci Toryudo c'est génial, exactement ce dont je rêvais Shocked bounce victoire
Gros gros merci ::fleur:: ::fleur:: ::fleur::
papa pig

papa pig
***

Masculin
Messages : 199
Inscrit(e) le : 22/01/2017

http://lepetitsecargot.forumpro.fr
papa pig a été remercié(e) par l'auteur de ce sujet.

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