Page 12 of 15

Re: Highlight plugin calls

Posted: Thu Sep 27, 2018 4:42 pm
by cmb
manu wrote:
Thu Sep 27, 2018 4:29 pm
Jetzt läuft es vom Reslutat her aber der replace beim save läuft doppelt so viel mal durch als nötig.
Sieht so aus als ob der GetContent Listener zweimal mit e.save == true aufgerufen wird. Hätte dann also nichts mit dem .replace zu tun.

Re: Highlight plugin calls

Posted: Fri Sep 28, 2018 6:08 am
by manu
mit nur einem Aufruf im content läuft er nur einmal durch, bei zwei Aufrufen im content 4 mal. Das macht mich etwas stutzig.

Re: Highlight plugin calls

Posted: Fri Sep 28, 2018 1:36 pm
by cmb
manu wrote:
Fri Sep 28, 2018 6:08 am
mit nur einem Aufruf im content läuft er nur einmal durch, bei zwei Aufrufen im content 4 mal. Das macht mich etwas stutzig.
Ich hab's gerade noch mal mit dem aktuellsten Stand versucht, und nachdem ich die Problemchen des cleanup Commits behoben hatte, war es wieder wie gestern: beim Speichern wird unabhängig von der Anzahl der Pluginaufrufe der GetContent-Listener zweimal mit e.save aufgerufen (Chrome, FireFox und Edge). Das konnte ich feststellen, indem ich für diese Zeile einen Breakpoint gesetzt habe. Warum das so ist, ist mir nicht klar, aber ich könnte mir gut vorstellen, dass es nichts mit dem xhplugincall Plugin zu tun hat.

Re: Highlight plugin calls

Posted: Wed Oct 03, 2018 8:42 pm
by Tata
Versucht den Plugin mit diesem Stylesheet

Code: Select all

.xhplugincall {
	color: #c00;
	padding: .4rem 2rem;
	background-image: url('no_edit.png');
	background-repeat: no-repeat;
	background-position: left;
	background-color: #ffffa5;
	position: relative;
	}
.xhplugincall:hover:after{
	content: "DON'T TOUCH THE PLUGIN CALL UNLESS YOU KNOW WHAT ARE YOU DOING!!!";
	background: #f00;
	color: #fff;
	padding: .4rem 0;
	text-align: center;
	width: 100%;
	border: 2px solid black;
	position: absolute;
	top: 0;
	left: 0;
	}
Nur habe ich nicht gefunden, wie den Text lokalisieren. Es müsste irgendwie in plugin.min.js hin.
Bei mir sieht es etwa so (der Aufruf wird bei "hover" mit der Warnung bedeckt)
xhplugincall_warning.jpg
Noch habe ich gefunden, dass alles funktioniert nur mit aktivierter init_... Datei. Wird eine andere gewählt (medium, full, etc., die z.B. keine "xhplugincall" Ikone zeigt, ist der Pluginaufruf ungeschützt. Die Lösung ist im Prinzip einfach - man braucht nur "xhplugincall" in alle init_*.js unter "plugins:" reingeben (nur nicht in toolbars).
Für mich bedeutet es z.B. in init_fontawesome.js den Plugin und Ikone geben, dann die Webseite komplet aufbauen und nachdem sie fertig ist, zu z.B. init_flexible.js umschalten. Damit riskiere ich nicht, dass der Webmaster die reingegebene Pluginsaufrufe beschädigt.
Es gibt, ja, Fälle, wo man mit den Aufrufen arbeiten braucht. Nach meiner Erfahrung ist es aber seltener, als die Ausfälle, die ich korigieren müsste.

Re: Highlight plugin calls

Posted: Thu Oct 04, 2018 6:01 am
by frase
Tata wrote:
Wed Oct 03, 2018 8:42 pm
Nur habe ich nicht gefunden, wie den Text lokalisieren. Es müsste irgendwie in plugin.min.js hin.
Bei mir sieht es etwa so (der Aufruf wird bei "hover" mit der Warnung bedeckt)
Ich sehe kaum eine Möglichkeit, Texte in CSS-Dateien zu lokalisieren.
Das scheint für dich und deine Kunden eine gute individuelle Lösung zu sein - allgemein gültig wird sie wohl nicht.

Und: Du solltest vielleicht nicht so viel Zeit und Mühe in den TinyMCE4 investieren.
Christoph hat bereits auf die Ankündigung des TinyMCE5 hingewiesen. Und das scheint wirklich spannend zu werden.

Re: Highlight plugin calls

Posted: Thu Oct 04, 2018 6:47 am
by Tata
Das mit den Variablen in CSS ist mir absuolut 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 1:10 pm
by Tata
Doch eine Lösung gefunden (absolut unprofesionell).
1. ein style_??.für jede Sprache erstellen mit

Code: Select all

.xhplugincall:hover:after{
	content: "AUFRUF NICHT ANGREIFEN, SOLANGE SIE NICHT WISSEN, WAS SIE TUN!!!";

...;}
2. in plugin.min.js erweitern

Code: Select all

editor.settings.content_css += ', ' + url + '/style.css';
zu

Code: Select all

editor.settings.content_css += ', ' + url + '/style_' + lang + '.css';

Re: Highlight plugin calls

Posted: Thu Oct 04, 2018 6:59 pm
by lck
Tata wrote:
Thu Oct 04, 2018 1:10 pm
1. ein style_??.für jede Sprache erstellen mit ...
Es geht auch mit einer css-Datei per CSS Pseudoklasse :lang

Code: Select all

.xhplugincall:hover:after {
	content: "";
	... /* Globale Angaben */
}
:lang(de) .xhplugincall:hover:after {
	content: "AUFRUF NICHT ANGREIFEN, SOLANGE SIE NICHT WISSEN, WAS SIE TUN!!!";
}
:lang(fr) .xhplugincall:hover:after {
	content: "...";
}
:lang(sk) .xhplugincall:hover:after {
	content: "...";
}
:lang(it) .xhplugincall:hover:after {
	content: "...";
}

Re: Highlight plugin calls

Posted: Thu Oct 04, 2018 7:20 pm
by Tata
Hm, jetzt habe ich
in plugin.min.js die Zeile zurück gestellt

Code: Select all

editor.settings.content_css += ', ' + url + '/style.css';
und in style.css

Code: Select all

.xhplugincall {
	color: #c00;
	padding: .4rem 2rem;
	background-image: url('no_edit.png');
	background-repeat: no-repeat;
	background-position: left;
	background-color: #ffffa5;
	position: relative;
	}
.xhplugincall:hover:after{
	content: "";
	background: #f00;
	color: #fff;
	font-weight: bold;
	padding: .4rem 0;
	text-align: center;
	width: 100%;
	border: 2px solid black;
	position: absolute;
	top: 0;
	left: 0;
	}

:lang(de) .xhplugincall:hover:after {
	content: "AUFRUF NICHT ANGREIFEN, SOLANGE SIE NICHT WISSEN, WAS SIE TUN!!!";
}
:lang(en) .xhplugincall:hover:after {
	content: "DON'T TOUCH THE PLUGIN CALL UNLESS YOU KNOW WHAT ARE YOU DOING!!!";
}
:lang(sk) .xhplugincall:hover:after {
	content: "NEDOTÝKAJ SA PRÍKAZU, POKIAĽ NEVIEŠ, ČO ROBÍŠ!!!";
}
Es kommt aber immer nur die
"AUFRUF NICHT ANGREIFEN, SOLANGE SIE NICHT WISSEN, WAS SIE TUN!!!"
Cash ausgeräumt, browser restartet... Keine Änderung.

Re: Highlight plugin calls

Posted: Thu Oct 04, 2018 7:33 pm
by lck
Tata wrote:
Thu Oct 04, 2018 7:20 pm
Es kommt aber immer nur die
"AUFRUF NICHT ANGREIFEN, SOLANGE SIE NICHT WISSEN, WAS SIE TUN!!!"
Voraussetzung ist natürlich, dass das lang Attribut in der template.htm angegeben ist:

Code: Select all

<!DOCTYPE html>
<html lang="<?php echo $sl;?>">
...