Register "hört nicht" auf hide_pages=true

Ein CMSimple Support Forum für deutsch sprechende Nutzer und Entwickler
Post Reply
kmsmei
Posts: 93
Joined: Tue Nov 03, 2009 9:03 am

Register "hört nicht" auf hide_pages=true

Post by kmsmei » Sun May 27, 2012 9:06 pm

Hallo mal wieder,

habe gerade eine seltsame Erfahrung mit Register gemacht:

statt wie bisher mit #CMSimple $output.= funktion(parameter);# habe ich die Memberpages der Ordnung halber nun mit {{{PLUGIN:funktion(parameter);}}} eingebunden. Na gut, nicht nur "der Ordnung halber", ich hatte mit dem im Board schon beschriebenen Phänomen zu tun, dass Memberpages im abgemeldeten Zustand bei Eingabe der URL eben doch auftauchten (http://www.cmsimpleforum.com/viewtopic. ... &sk=t&sd=a).

Das eigenartige ist nun, dass mit {{{PLUGIN:funktion(parameter);}}} die Memberpages im Menü angezeigt werden, obwohl hide_pages in der Konfiguration auf true steht. Mit dem #CMSimple $output.= funktion(parameter);# waren die Seiten wie gewünscht verschwunden.

Jemand 'ne Idee? Ich vermute mal Christoph oder Gert könnten wieder helfen. 8-)
Gert schrieb: Aber jetzt ist Pfingsten, der Besuch rückt an, vor Dienstag kann ich hier nicht weitermachen.
Kein Problem, ich stelle mich hinten an - ganz so toll drängelt es dann doch nicht. ;)

Gruß und schöne Rest-Pfingsten
Frank

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

Re: Register "hört nicht" auf hide_pages=true

Post by cmb » Sun May 27, 2012 10:34 pm

Hallo Frank,

ich fürchte ich habe mich in genanntem Thread nicht deutlich genug ausgedrückt:
cmb wrote:dieses Verhalten passiert nur, wenn Du access() per Plugin-Call ({{{PLUGIN:access(...);}}}) oder hi_pd_scripting aufrufst. Wenn Du es mit #CMSimple access(...);# machst, dann werden die Seiten nicht im TOC angezeigt (allerdings konfigurierbar), und beim Direktaufruf erscheint nur eine leere Seite (also ein leerer content()).
cmb wrote: Aber {{{PLUGIN:access(...);}}} funktioniert nicht wie gewünscht, da dann die Seite in der Navigation angezeigt wird.
Darauf hat auch in jenem Thread niemand wirklich reagiert :cry: ;)

Also hier noch mal etwas deutlicher: wie nun access() aufgerufen wird (CMSimple Scripting oder Plugin Call) ist egal, was den Zugriffsschutz angeht; wer kein Recht hat, die Seite zu sehen, wird auf die "access_error" Seite weiter geleitet. Versteckt werden die Seiten aber nicht durch den Aufruf von access(), sondern durch das Vorhandensein eines CMSimple Scripts, das access() enthält (siehe plugins/register/index.php function registerRemoveHiddenPages()).

D.h.: beim Register Plugin funktioniert {{{PLUGIN:access(...);}}} nicht wie gewünscht. Man muss statt dessen #CMSimple access(...);# notieren.

Aber Vorsicht: auf jeder Seite darf immer nur ein #CMSimple ...# stehen (außer #CMSimple hide# -- die zählen nicht mit). Wird nun noch ein weiteres CMSimple Scripting benötigt, dann kann man die beiden wie folgt zusammenfassen:

Code: Select all

#CMSimple access(...); $output .= anderes_plugins(...);#
Christoph

PS: noch sicherer ist es, #CMSimple $output.=access(...);# zu schreiben, falls die Redirection nicht funktioniert.

PPS: seit Register_XH 1.4 stimmen die Angaben in diesem Thread nicht mehr. Nun können die Seiten versteckt werden durch:

Code: Select all

{{{PLUGIN:access(...);}}}
und

Code: Select all

#CMSimple access(...);#
aber nicht mehr

Code: Select all

#CMSimple $output .= access(...);#
Christoph M. Becker – Plugins for CMSimple_XH

kmsmei
Posts: 93
Joined: Tue Nov 03, 2009 9:03 am

Re: Register "hört nicht" auf hide_pages=true

Post by kmsmei » Mon May 28, 2012 9:39 am

Hallo Christoph,

du hast recht. Wie war der Spruch vom "wer lesen kann ist klar im Vorteil..."? Ich habe jetzt noch mal gelesen :( und nehme meine Frage virtuell zurück.

Gruß und Dank
Frank

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

Re: Register "hört nicht" auf hide_pages=true

Post by cmb » Mon May 28, 2012 12:38 pm

Hallo Frank,
kmsmei wrote:Wie war der Spruch vom "wer lesen kann ist klar im Vorteil..."?
So war das nicht gemeint. Der andere Thread war ja schon ein wenig unübersichtlich, und es kam leider nicht klar genug raus, was nun tatsächlich das Problem war. Außerdem ist es ja auch ungewöhnlich, dass {{{PLUGIN:access(...);}}} zwar den Zugriffsschutz für die Seite implementiert, aber diese eben nicht versteckt. Und andererseits: wird #CMSimple access(...);# notiert und ist hide_pages="true", dann wird die Seite zwar versteckt, aber der eigentliche Zugriffsschutz (error_page) greift nicht mehr.

Christoph
Christoph M. Becker – Plugins for CMSimple_XH

Post Reply