Code - Fragen

Ein CMSimple Support Forum für deutsch sprechende Nutzer und Entwickler
frase
Posts: 5085
Joined: Thu Apr 21, 2016 6:32 am
Location: Saxony
Contact:

Re: Code - Fragen

Post by frase » Tue Nov 28, 2017 1:57 pm

lck wrote:a, bitte nicht umsetzen. Mit obigen Code ist es relativ einfach das Backend anders zu gestalten.
Na ja.
cmb on Github wrote:Therefore it appears to be sensible to introduce respective abstractions as soon as possible.
Dann gäbe es vielleicht noch etwas eleganteres (einfacheres).
(Quelle: cmb on Github "... detect where we are")

cmb
Posts: 14225
Joined: Tue Jun 21, 2011 11:04 am
Location: Bingen, RLP, DE
Contact:

Re: Code - Fragen

Post by cmb » Tue Nov 28, 2017 2:07 pm

lck wrote:
cmb wrote:Ja. So in dieser Art ist es auch bei hi_admin gelöst. Das ganze ist im Core ganz fürchterlich gelöst, und wenn wir viewtopic.php?f=29&t=13071 umsetzen würden, dann würden solche Lösungen nicht mehr möglich sein.
Ja, bitte nicht umsetzen. Mit obigen Code ist es relativ einfach das Backend anders zu gestalten. Und man kann sogar bestimmte Bereiche davon ausnehmen, wenn man vor der Variable ein ! setzt. Also zum Beispiel man möchte den Pagemanager im Vorschau-Modus anzeigen, dann braucht man nur $xhpages zu !$xhpages ändern.
Hm, so wie es ist, ist es aber dennoch fragil. Z.B. wurde in XH 1.7 ein eigenständiger Password-Ändern-Screen eingeführt – konsistent zum Rest mit der neuen Variable $xh_change_password. Wenn weitere solche Funktionen eingeführt werden, müsste immer wieder extern nachgebessert werden. Oder wenn z.B. der Linkchecker mal als Plugin ausgelagert wird, dann würde die Verwendung von $validate eine Notice erzeugen. Da sollte also schon eine Abstraktion angeboten werden. Die Frage ist halt wie detailliert diese nutzbar sein müsste. Mir sieht es so aus als ob das was hi_admin bezüglich des Admintemplates konfigurierbar macht, schon eher die Obergrenze darstellt.
Christoph M. Becker – Plugins for CMSimple_XH

frase
Posts: 5085
Joined: Thu Apr 21, 2016 6:32 am
Location: Saxony
Contact:

Re: Code - Fragen

Post by frase » Tue Nov 28, 2017 2:17 pm

cmb wrote:Mir sieht es so aus als ob das was hi_admin bezüglich des Admintemplates konfigurierbar macht, schon eher die Obergrenze darstellt.
Wobei hi_admin im Originalzustand zum Beispiel 'xh_plugins' und 'xh_change_password' noch gar nicht berücksichtgt.
Auch da müsste jeweils nachgebessert werden (bei Neueinführung/Weglassen von Admin-Seiten).

lck
Posts: 2963
Joined: Wed Mar 23, 2011 11:43 am
Contact:

Re: Code - Fragen

Post by lck » Tue Nov 28, 2017 3:58 pm

frase wrote:Wobei hi_admin im Originalzustand zum Beispiel 'xh_plugins' und 'xh_change_password' noch gar nicht berücksichtgt.
Auch da müsste jeweils nachgebessert werden (bei Neueinführung/Weglassen von Admin-Seiten).
Eben, Änderungen wird es immer wieder geben (hoffe ich auch) und die Nachbesserung wäre ja dann, in meinem Code, wirklich minimal.

Aber mal andersrum, Umkehrschluss. Ich binde die adminedit.css standardmäßig zwingend ein, wenn man im Admin-Bereich ist und nicht, wenn ich in der Vorschau bin. Ist das möglich. Problem hierbei ist wahrscheinlich, dass in der Vorschau zwei URL's vorkommen können z.B. ?Start&normal und Start.
„Bevor du den Pfeil der Wahrheit abschießt, tauche die Spitze in Honig!“   👉 Ludwig's XH-Templates for MultiPage & OnePage

frase
Posts: 5085
Joined: Thu Apr 21, 2016 6:32 am
Location: Saxony
Contact:

Re: Code - Fragen

Post by frase » Tue Nov 28, 2017 4:16 pm

Verstehe ich das richtig?
Du möchtest immer adminedit.css aktiv haben, solange du im Admin-Modus bist?

Dann wäre die Vorschau allerdings anders, als für den Besucher ...

if (XH_ADM && ($normal || $edit || $xhpages || $settings || $action || $validate || $xh_backups || $xh_pagedata || $xh_change_password || $sysinfo || $xh_plugins || wantsAnyPluginAdministration())) {

lck
Posts: 2963
Joined: Wed Mar 23, 2011 11:43 am
Contact:

Re: Code - Fragen

Post by lck » Tue Nov 28, 2017 4:32 pm

frase wrote:Verstehe ich das richtig?
Du möchtest immer adminedit.css aktiv haben, solange du im Admin-Modus bist?
Ja, ausser halt in der Vorschau und das ist halt nicht einfach so zu lösen, indem man $normal hinzufügt. Genau das möchte ich ja nicht!
„Bevor du den Pfeil der Wahrheit abschießt, tauche die Spitze in Honig!“   👉 Ludwig's XH-Templates for MultiPage & OnePage

frase
Posts: 5085
Joined: Thu Apr 21, 2016 6:32 am
Location: Saxony
Contact:

Re: Code - Fragen

Post by frase » Tue Nov 28, 2017 4:37 pm

if (XH_ADM && ($edit || $xhpages || $settings || $action || $validate || $xh_backups || $xh_pagedata || $xh_change_password || $sysinfo || $xh_plugins || wantsAnyPluginAdministration()) && !($xh_pagedata && $normal)) {

Besser?

cmb
Posts: 14225
Joined: Tue Jun 21, 2011 11:04 am
Location: Bingen, RLP, DE
Contact:

Re: Code - Fragen

Post by cmb » Tue Nov 28, 2017 4:41 pm

lck wrote:Eben, Änderungen wird es immer wieder geben (hoffe ich auch) und die Nachbesserung wäre ja dann, in meinem Code, wirklich minimal.
Ja, wäre minimal. Aber zumindest mich nerven solche kleine Nachbesserungen, vor allem wenn sie an mehreren Stellen durchgeführt werden müssen. Die Plugin-Administrationsinkompatibilität habe ich schon gefühlte 231 mal gefixt, und es gibt immer noch Plugins, bei denen das noch aussteht …
lck wrote:
frase wrote:Verstehe ich das richtig?
Du möchtest immer adminedit.css aktiv haben, solange du im Admin-Modus bist?
Ja, ausser halt in der Vorschau und das ist halt nicht einfach so zu lösen, indem man $normal hinzufügt. Genau das möchte ich ja nicht!
Im Template könntest du prüfen, ob $s >= 0 ist; falls ja, dann ist eine reguläre Seite gewählt. Bzw. halt umgekehrt, ob $s < 0 ist; dann handelt es sich um eine spezielle Seite.
Christoph M. Becker – Plugins for CMSimple_XH

lck
Posts: 2963
Joined: Wed Mar 23, 2011 11:43 am
Contact:

Re: Code - Fragen

Post by lck » Tue Nov 28, 2017 4:42 pm

Also, meine Vorstellung wäre so:

Code: Select all

if (XH_ADM && ($edit || $normal || "ausser Vorschau")) {
    echo '<link rel="stylesheet" type="text/css" href="'.$pth['folder']['template'].'adminedit.css">'."\n";
} 
Nachtrag, nicht ganz richtig, eigentlich so (global und nicht in der Vorschau) :

Code: Select all

if (XH_ADM && ("ausser Vorschau")) {
    echo '<link rel="stylesheet" type="text/css" href="'.$pth['folder']['template'].'adminedit.css">'."\n";
} 
„Bevor du den Pfeil der Wahrheit abschießt, tauche die Spitze in Honig!“   👉 Ludwig's XH-Templates for MultiPage & OnePage

frase
Posts: 5085
Joined: Thu Apr 21, 2016 6:32 am
Location: Saxony
Contact:

Re: Code - Fragen

Post by frase » Tue Nov 28, 2017 5:04 pm

Mit meinem 2. Code sieht es bei mir so aus:
Überall das Admin-Template - außer bei Vorschau.

http://fhs.bplaced.net/down/code-2-lck.mp4

Post Reply