Automatische Links im Chatstream

Fragen zu HTML, CSS, eigenen Erweiterungen etc.
Benutzeravatar
Linus
Moderator
Beiträge: 1124
Registriert: 14.02.2005, 20:31
Wohnort: NRW
Kontaktdaten:

Automatische Links im Chatstream

Ungelesener Beitrag von Linus » 24.02.2016, 11:30

Ich hab mal 1. FC Kellers Script angepasst, um das Intervall zu vermeiden. Spart ein wenig unnötige Last, insbesondere bei langen Chatstreams ;) Außerdem nutzt es jetzt outlink.webkicks.de, um den Referer zu unterdrücken. So richtig toll ist es ja nicht, wenn jede aufgerufene Seite die Stream-URL zu sehen bekommt.. Dafür erfordert es jetzt die Grundscriptsammlung.

Für JS-Dateien:
Script:Zeigen

Code: Alles auswählen

function autoLinkReader(nr, ld) {
    var mytds = document.getElementsByTagName("td");
    if (ld[3].match(/([^"'=]+https?:\/\/[^<>\s']+)/i)) {
        mytds[nr].innerHTML = mytds[nr].innerHTML.replace(/([^"'=]+)(https?:\/\/[^<>\s']+)/i, "$1<a href='https://outlink.webkicks.de/dref.cgi?url=$2' target='_blank'>$2</a>");
    } else {
        mytds[nr].innerHTML = mytds[nr].innerHTML.replace(/([^"'=\/\w\.]+)(\w+\.[a-zA-Z0-9_-]+\.\w\w+[^<>\s']*)/i, "$1<a href='https://outlink.webkicks.de/dref.cgi?url=http://$2' target='_blank'>$2</a>");
    }
}
addStreamReader(autoLinkReader);
Für die Ankündigung:
Script:Zeigen

Code: Alles auswählen

<script type="text/javascript">function autoLinkReader(nr,ld){var mytds=document.getElementsByTagName("td");if(ld[3].match(/([^"'=]+https?:\/\/[^<>\s']+)/i)){mytds[nr].innerHTML=mytds[nr].innerHTML.replace(/([^"'=]+)(https?:\/\/[^<>\s']+)/i,"$1<a href='https://outlink.webkicks.de/dref.cgi?url=$2' target='_blank'>$2</a>");}else{mytds[nr].innerHTML=mytds[nr].innerHTML.replace(/([^"'=\/\w\.]+)(\w+\.[a-zA-Z0-9_-]+\.\w\w+[^<>\s']*)/i,"$1<a href='https://outlink.webkicks.de/dref.cgi?url=http://$2' target='_blank'>$2</a>");}}addStreamReader(autoLinkReader);</script>
Das alte Script solltet ihr bei einer Änderung natürlich ersetzen ;)

Im Prinzip müsste man dieselbe Umstellung von Intervall auf StreamReader für jedes Script machen, was "etwas" mit neuen Stream-Nachrichten macht. Dann kriegt man zumindest die meisten Intervalle weg, sodass nur noch das vom StreamReader selbst übrig bleibt. Wenn also jemand Lust hat.. ;)
Zuletzt geändert von 1. FC Keller am 29.08.2017, 14:04, insgesamt 2-mal geändert.
Grund: Sicherheitsupdate + https-Unterstützung
Kein Support per PN!

kampfhase
Beiträge: 11
Registriert: 26.01.2016, 19:41

Re: Automatische Links im Chatstream

Ungelesener Beitrag von kampfhase » 10.04.2016, 16:29

Hallo,

ich habe jetzt diesen Script und habe den auch bei lima City hochgeladen und dann habe ich den URL ZU JS Datei hinzugefügt und zwar so


URL zu JS die habe ich in der ersten ankündigung gemacht aber der wandelt die links nicht um das man die anklicken kann

Script:Zeigen
<script type="text/javascript" src="/grundscripts.js"></script>
<script type="text/javascript" src="http://kampfhase.lima-city.de/umwandeln.js"></script>
Script:Zeigen
function autoLinkReader(nr, ld) {
var mytds = document.getElementsByTagName("td");
if (ld[3].match(/([^"'=]+http:\/\/[^<>\s]+)/i)) {
mytds[nr].innerHTML = mytds[nr].innerHTML.replace(/([^"'=]+)(http:\/\/[^<>\s]+)/i, "$1<a href='http://outlink.webkicks.de/dref.cgi?url=$2' target='_blank'>$2</a>");
} else {
mytds[nr].innerHTML = mytds[nr].innerHTML.replace(/([^"'=\/\w\.]+)(\w+\.[a-zA-Z0-9_-]+\.\w\w+[^<>\s]*)/i, "$1<a href='http://outlink.webkicks.de/dref.cgi?url=http://$2' target='_blank'>$2</a>");
}
}
addStreamReader(autoLinkReader);

Benutzeravatar
Mogli
Beiträge: 485
Registriert: 18.10.2010, 23:42
Wohnort: Bayern
Kontaktdaten:

Re: Automatische Links im Chatstream

Ungelesener Beitrag von Mogli » 30.08.2016, 13:58

Hallo Linus,
hallo die anderen Skripter! :-)

das Skript wandelt leider nur Links um, die mit "www" beginnen. Kann man das so ändern, dass alle möglichen Links (ftp, ftps, http, https (hab ich noch eine Möglichkeit vergessen?)) umgewandelt werden?

Vielen Dank im voraus.

Schöne Grüße
Mogli

Matityahu_BenAvner
Beiträge: 13
Registriert: 23.07.2017, 20:38
Wohnort: Jerusalem

Re: Automatische Links im Chatstream

Ungelesener Beitrag von Matityahu_BenAvner » 26.07.2017, 21:41

Der Frage schließ ich mich an. Es ist besonders störend, dass das Script bei https links so rummöpt. EIne Bearbeitung des Scripts wäre mehr als erfreulich.

MfG

Maxs
Moderator
Beiträge: 551
Registriert: 09.10.2008, 18:21
Kontaktdaten:

Re: Automatische Links im Chatstream

Ungelesener Beitrag von Maxs » 27.07.2017, 01:55

Probier das mal aus:
Script:Zeigen
Für JS-Dateien:

Code: Alles auswählen

function autoLinkReader(nr, ld) {
    var mytds = document.getElementsByTagName("td");
    if (ld[3].match(/([^"'=]*https?:\/\/[^<>\s']+)/i)) {
        mytds[nr].innerHTML = mytds[nr].innerHTML.replace(/([^"'=]+)(https?:\/\/[^<>\s']+)/i, "$1<a href='http://outlink.webkicks.de/dref.cgi?url=$2' target='_blank'>$2</a>");
    } else {
        mytds[nr].innerHTML = mytds[nr].innerHTML.replace(/([^"'=\/\w\.]+)(\w+\.[a-zA-Z0-9_-]+\.\w\w+[^<>\s]*)/i, "$1<a href='http://outlink.webkicks.de/dref.cgi?url=http://$2' target='_blank'>$2</a>");
    }
}
addStreamReader(autoLinkReader);
Ohne JS-Datei für die Ankündigung:

Code: Alles auswählen

<script type="text/javascript">function autoLinkReader(nr,ld){var mytds=document.getElementsByTagName("td");if(ld[3].match(/([^"'=]*https?:\/\/[^<>\s']+)/i)){mytds[nr].innerHTML=mytds[nr].innerHTML.replace(/([^"'=]+)(https?:\/\/[^<>\s']+)/i,"$1<a href='http://outlink.webkicks.de/dref.cgi?url=$2'target='_blank'>$2</a>");}else{mytds[nr].innerHTML=mytds[nr].innerHTML.replace(/([^"'=\/\w\.]+)(\w+\.[a-zA-Z0-9_-]+\.\w\w+[^<>\s]*)/i,"$1<a href='http://outlink.webkicks.de/dref.cgi?url=http://$2'target='_blank'>$2</a>");}}addStreamReader(autoLinkReader);</script>
Zuletzt geändert von 1. FC Keller am 29.08.2017, 13:57, insgesamt 1-mal geändert.
Grund: kleines Sicherheitsupdate
Wäre es nicht adäquat, den Usus heterogener Termini zu minimieren?

Matityahu_BenAvner
Beiträge: 13
Registriert: 23.07.2017, 20:38
Wohnort: Jerusalem

Re: Automatische Links im Chatstream

Ungelesener Beitrag von Matityahu_BenAvner » 27.07.2017, 12:06

viewtopic.php?t=20710#p138665

Das hier scheint zu funzen. :D

Antworten

Wer ist online?

Mitglieder in diesem Forum: Ahrefs [Bot], Google [Bot] und 28 Gäste