Inserire la Fonte se un utente usa copia/incolla sul forum

2 partecipanti

Astuzia Inserire la Fonte se un utente usa copia/incolla sul forum

Messaggio Da the crow Ven 26 Ago 2011 - 23:55

Inserire la Fonte se un utente usa copia/incolla sul forum


Con il seguente tutorial andremo a modificare la funzione Copia del browser in modo che se un utente cerca di copiare qualcosa dal nostro forum, potrà farlo, ma si porterà dietro anche la fonte da cui ha copiato - con il riferimento in fondo al contenuto copiato.

Installazione del codice Javascript

Il procedimento è molto semplice, andiamo verso Pannello di amministrazione ► Moduli ► HTML & Javascript ► Gestione del codice Javascript - assicuriamoci che la gestone sia attiva e creiamo un nuovo codice con queste impostazioni:

  • Titolo: a tua scelta
  • Dove: a tua scelta: In tutte le pagine, oppure solo Negli argomenti
  • Codice:
    Codice:
    $("body").bind('copy', function (e) {
    var copyright_end = " :copyright: Il mio forum";
    var read_more = "Leggi tutto a: ";

        if (typeof window.getSelection == "undefined") return; //IE8 or earlier...

        var body_element = document.getElementsByTagName('body')[0];
        var selection = window.getSelection();

        //if the selection is short let's not annoy our users
        if (("" + selection).length < 30) return;

        //create a div outside of the visible area
        var newdiv = document.createElement('div');
        newdiv.style.position = 'absolute';
        newdiv.style.left = '-99999px';
        body_element.appendChild(newdiv);
        newdiv.appendChild(selection.getRangeAt(0).cloneContents());

        //we need a <pre> tag workaround
        //otherwise the text inside "pre" loses all the line breaks!
        if (selection.getRangeAt(0).commonAncestorContainer.nodeName == "PRE") {
            newdiv.innerHTML = "<pre>" + newdiv.innerHTML + "</pre>";
        }

        newdiv.innerHTML += "<br /><br />"+read_more+" <a href='"
            + document.location.href + "'>"
            + document.location.href + "</a>"+copyright_end;

        selection.selectAllChildren(newdiv);
        window.setTimeout(function () { body_element.removeChild(newdiv); }, 200);
    });


Modifiche e personalizzazione

Sarà possibile modificare il contenuto visualizzato, prima e dopo il link, modificando due variabili nel codice javascript:

var copyright_end indica il testo visualizzato PRIMA, ad esempio Fonte: oppure Leggi di più sull'articolo originale:
var read_more indica il testo visualizzato DOPO il link, può essere qualunque contenuto, ad esempio il nome del forum

Potete mostrare il nome della pagina da cui è stato prelevato utilizzando , ad esempio:
Codice:
var copyright_end = " :copyright: "+document.title;




Ultima modifica di Niko il Lun 18 Gen 2021 - 18:05 - modificato 1 volta. (Motivazione : Nuova risorsa aggiornata)
the crow
the crow
Veterano dello staff
Veterano dello staff

Sesso : Maschio
Età : 33
Messaggi : 8782
Località : Roma

https://aiuto.forumattivo.it/forum

A Niko piace questo messaggio.

the crow è stato ringraziato dall'autore di questo topic.

Astuzia Re: Inserire la Fonte se un utente usa copia/incolla sul forum

Messaggio Da Niko Lun 18 Gen 2021 - 18:06

.Inserire la Fonte se un utente usa copia/incolla sul forum HURHAdp.Il tutorial è stato aggiornato con una risorsa più moderna e funzionante :good:

Il codice javascript è supportato da tutte le versioni di Forumattivo: phpBB3, phpBB2, Invision, PunBB, AwesomeBB, ModernBB :bene:

Ci vediamo su Forumattivo Wink
Niko
Niko
Moderatore
Moderatore

Sesso : Maschio
Età : 28
Messaggi : 9573
Località : Provincia di Varese

https://www.fmcodes.net/
Niko è stato ringraziato dall'autore di questo topic.

Visualizza l'argomento precedente Visualizza l'argomento successivo Torna in alto

- Argomenti simili

 
Permessi in questa sezione del forum:
Non puoi rispondere agli argomenti in questo forum.