Page 13 of 15

Re: Highlight plugin calls

Posted: Thu Oct 04, 2018 7:48 pm
by Tata
lck wrote:
Thu Oct 04, 2018 7:33 pm
Voraussetzung ist natürlich, dass das lang Attribut in der template.htm angegeben ist:
Das war im Template nicht. Doch hat es nichts geändert. Die Texte sind sogar gar nicht gezeigt.
Im Archive ist die benutzte init-Datei und der Plugin.

Re: Highlight plugin calls

Posted: Thu Oct 04, 2018 7:57 pm
by Tata
Respektiert TinyMCE4 das $sl überhaupt? Im Plugin ist definiert nur

Code: Select all

	var lang = document.getElementsByTagName("html")[0].getAttribute("lang");
	if (lang !== 'en')

Re: Highlight plugin calls

Posted: Thu Oct 04, 2018 8:34 pm
by Tata
Tata wrote:
Thu Oct 04, 2018 6:47 am
Das mit den Variablen in CSS ist mir absolut klar. Und ich habe einige Scripts, die "onmouseover" für DIVs oder (im unseren Fall ".tagname.")ermöglichen, aber ich habe nicht geschafft, sie in den Plugin eizubauen. Dartum nur die Lösung mit CSS. Jetzt überlege ich noch, dass ich villeicht schaffe stylesheet_??.css.
@TinyMCE:
Ja, ich habe den Artikel gelesen und, erhlich zu sagen, der Trend (nicht nur in TinyMCE, Windows, leider auch MAC), gefählt mir optich nicht besonders. Mal abwarten, wie die Verbesserungen und Erweiterungen funktionieren werden.

Re: Highlight plugin calls

Posted: Thu Oct 04, 2018 9:16 pm
by cmb
Tata wrote:
Thu Oct 04, 2018 7:57 pm
Respektiert TinyMCE4 das $sl überhaupt? Im Plugin ist definiert nur

Code: Select all

	var lang = document.getElementsByTagName("html")[0].getAttribute("lang");
	if (lang !== 'en')
Von den PHP-Variablen weiß JS nichts. Statt $sl kannst du hier wohl lang verwenden.

Re: Highlight plugin calls

Posted: Thu Oct 04, 2018 9:30 pm
by Tata
cmb wrote:
Thu Oct 04, 2018 9:16 pm
Von den PHP-Variablen weiß JS nichts. Statt $sl kannst du hier wohl lang verwenden.
Das ist das, das ich meinte. Im plugin.min.js steht

Code: Select all

var lang = ...
hin mach es nun keinen Sinn $sl zu stellen. Da wird wohl der ":lang" Selector nicht helfen.

Re: Highlight plugin calls

Posted: Fri Oct 05, 2018 9:39 am
by cmb
Tata wrote:
Thu Oct 04, 2018 9:30 pm
Das ist das, das ich meinte. Im plugin.min.js steht

Code: Select all

var lang = ...
hin mach es nun keinen Sinn $sl zu stellen. Da wird wohl der ":lang" Selector nicht helfen.
lang wird gemäß dem lang Attribut des html Elements initialisiert. Das sollte also gut mit dem :lang Pseudo-Selektor harmonieren.

Re: Highlight plugin calls

Posted: Fri Oct 05, 2018 10:23 am
by Tata
Funktioniert leider nicht. Der "hover" rote Block zwar erscheint, aber ohne dem "content".
DOWNLOAD

Re: Highlight plugin calls

Posted: Fri Oct 05, 2018 11:50 am
by frase
In style.css muss es heißen:

Code: Select all

:lang(sk).xhplugincall:hover:after {
	content: "NEDOTÝKAŤ SA PRÍKAZU, POKIAĽ NEVIEŠ, ČO CHCEŠ UROBIŤ!!!";
	}
:lang(de).xhplugincall:hover:after {
	content: "AUFRUF NICHT ANGREIFEN, SOLANGE NICHT KLAR, WAS MAN MACHT!!!" !important;
	}		
:lang(en).xhplugincall:hover:after {
	content: "DON'T TOUCH THE PLUGIN CALL UNLESS YOU KNOW WHAT ARE YOU DOING!!!";
	}
Das heißt:
zwischen :lang(xx) und der Klasse darf kein Leerzeichen sein.
Und bei <span> ist kein Platz, um die Texte anzuzeigen.

BTW:
Die Texte im JS und in deinen Sprachdateien stimmen nicht überein. Deshalb wird (das andere) auch nicht richtig übersetzt.

Re: Highlight plugin calls

Posted: Fri Oct 05, 2018 12:22 pm
by Tata
frase wrote:
Fri Oct 05, 2018 11:50 am
Das heißt:
zwischen :lang(xx) und der Klasse darf kein Leerzeichen sein.
Der Code reinkopiert - kein Effekt :? Aber egal, es ist nicht so wichtig, nur dass es wieder etwas gibt, das ich nicht erklären kann ;) Mit den 3 css ist es auch ganz einfach.
frase wrote:Und bei <span> ist kein Platz, um die Texte anzuzeigen.
Ja, darüber habe ich nicht überlegt.
frase wrote: BTW:
Die Texte im JS und in deinen Sprachdateien stimmen nicht überein. Deshalb wird (das andere) auch nicht richtig übersetzt.
Danke, ist schon korigiert.

Re: Highlight plugin calls

Posted: Fri Oct 05, 2018 12:38 pm
by cmb
Das Problem scheint darin zu liegen, dass der TinyMCE normalerweise einen Iframe erzeugt, und bei diesem ist kein lang Attribut gesetzt. Das CSS kann also nicht greifen. Die JS lang Variable wird hingegen initialisiert, bevor der Iframe erzeugt wird. Passt also doch nicht zusammen. Eine saubere Lösung fällt mir zunächst nicht ein. Aber wenn man vor dieser Zeile die folgende einfügt:

Code: Select all

editor.getDoc().getElementsByTagName("html")[0].lang = lang;
Dann erscheint nachdem man auf den Insert/Edit-Plugincall-Schalter geklickt hat, der gewünschte Text.