Spacc BBS Spacc BBS
    • Categorie
    • Recenti
    • Tag
    • Popolare
    • Mondo
    • Utenti
    • Gruppi
    • Registrati
    • Accedi
    La nuova BBS è in fase Alpha. I post precedenti al 22 luglio 2024 potrebbero non essere trasferibili, ma rimarranno disponibili per la lettura su /old/.

    Use readmore.js for blockquotes

    Pianificato Fissato Bloccato Spostato Uncategorized
    readmorejsjavascriptcustomizecustomizing
    11 Post 5 Autori 26 Visualizzazioni
    Caricamento altri post
    • Da Vecchi a Nuovi
    • Da Nuovi a Vecchi
    • Più Voti
    Rispondi
    • Topic risposta
    Effettua l'accesso per rispondere
    Questa discussione è stata eliminata. Solo gli utenti con diritti di gestione possono vederla.
    • K Questo utente è esterno a questo forum
      klockprat@community.nodebb.org
      ultima modifica di

      Hi!

      I'm migrating from another forum to hosted nodeBB but need som help with one important feature.

      We have some users that make long posts, and when someone quotes, the quote become equally long, this makes it cumbersome to scroll throught the topic.

      Other forums solve this by fading out, and a clickable "read more..." text that expands the big quotes.

      I was hoping to do this as well, but am failing. Mainly I hope due to my lacking knowledge in javascript.

      So I tried uploading readmore.min.js to /assets/uploads/... and added the following to custon javascript:

      function onLoad() {
          require(['/assets/uploads/readmore.min.js']);
          console.log('yeah it works');
          console.log($('blockquote'));
          $('blockquote').readmore();
      }
      
      $(document).ready(onLoad);
      $(window).on('action:ajaxify.end', onLoad);
      

      This gives me the following output in the console:

      86a146b2-755d-45ef-8924-e2b63c5849df-image.png

      Any help is much appreciated!

      Link Preview Image
      K baris@community.nodebb.orgB M downpw@community.nodebb.orgD 9 Risposte Ultima Risposta Rispondi Cita 0
      • K Questo utente è esterno a questo forum
        klockprat@community.nodebb.org @klockprat@community.nodebb.org
        ultima modifica di

        @klockprat I will look inte customizing the template file to achieve this instead

        1 Risposta Ultima Risposta Rispondi Cita 0
        • baris@community.nodebb.orgB Questo utente è esterno a questo forum
          baris@community.nodebb.org @klockprat@community.nodebb.org
          ultima modifica di

          Did you try with this?

          function onLoad() {
              require(['/assets/uploads/readmore.min.js'], function () {
                 console.log('yeah it works');
                 console.log($('blockquote'));
                 $('blockquote').readmore();
              });
          }
          
          $(document).ready(onLoad);
          $(window).on('action:ajaxify.end', onLoad);
          
          1 Risposta Ultima Risposta Rispondi Cita 0
          • M Questo utente è esterno a questo forum
            moshe@community.nodebb.org @klockprat@community.nodebb.org
            ultima modifica di

            Is there a solution to this issue today?
            Does this come as part of the options nodebb?

            1 Risposta Ultima Risposta Rispondi Cita 0
            • M Questo utente è esterno a questo forum
              moshe@community.nodebb.org @klockprat@community.nodebb.org
              ultima modifica di

              @baris
              It looks like this was fixed as part of NODEBB, but was removed in recent versions.

              1 Risposta Ultima Risposta Rispondi Cita 0
              • baris@community.nodebb.orgB Questo utente è esterno a questo forum
                baris@community.nodebb.org @klockprat@community.nodebb.org
                ultima modifica di

                Core no longer uses requirejs so that syntax will no longer work. If you put the readmore.min.js file in public/uploads then you can load it and use it with $.getScript().

                $.getScript('/assets/uploads/readmore.min.js', function () {
                  $('<div>').readmore();
                })
                ```</div>
                1 Risposta Ultima Risposta Rispondi Cita 0
                • M Questo utente è esterno a questo forum
                  moshe@community.nodebb.org @klockprat@community.nodebb.org
                  ultima modifica di

                  @baris I would appreciate a more detailed explanation!
                  I guess I didn't understand the whole thread.
                  Is there a way to add a read more button to very long quotes?
                  If so, what is the whole process you had to do?

                  1 Risposta Ultima Risposta Rispondi Cita 0
                  • downpw@community.nodebb.orgD Questo utente è esterno a questo forum
                    downpw@community.nodebb.org @klockprat@community.nodebb.org
                    ultima modifica di

                    @moshe

                    Why don't use custom javascript in ACP ?

                    1 Risposta Ultima Risposta Rispondi Cita 0
                    • M Questo utente è esterno a questo forum
                      moshe@community.nodebb.org @klockprat@community.nodebb.org
                      ultima modifica di

                      @downpw
                      Where do I download the updated readmore.min.js file?

                      1 Risposta Ultima Risposta Rispondi Cita 0
                      • baris@community.nodebb.orgB Questo utente è esterno a questo forum
                        baris@community.nodebb.org @klockprat@community.nodebb.org
                        ultima modifica di

                        The latest file is here https://github.com/jedfoster/Readmore.js/blob/master/readmore.min.js, I tried using it with the latest version of nodebb and found some issues. Create a pull request with my fixes at https://github.com/jedfoster/Readmore.js/pull/265/changes.

                        So with that updated file in public/uploads folder and the below custom javascript in the ACP it works.

                        $(window).on('action:topic.loaded action:posts.loaded', function() {
                           function enableReadMore() {
                               $('blockquote').readmore({});
                           } 
                           if (!$.readmore) {
                               $.getScript('/foren/assets/uploads/readmore.min.js').then(enableReadMore);
                           } else {
                               enableReadMore();
                           }
                        });
                        

                        readmore.gif

                        Link Preview Image
                        julian@community.nodebb.orgJ 1 Risposta Ultima Risposta Rispondi Cita 0
                        • julian@community.nodebb.orgJ Questo utente è esterno a questo forum
                          julian@community.nodebb.org @baris@community.nodebb.org
                          ultima modifica di

                          @baris don't we already automatically collapse blockquotes?

                          1 Risposta Ultima Risposta Rispondi Cita 0
                          • Primo post
                            Ultimo post