[pmwiki-users-de] CondAuth und if auth

Sebastian Schneider sesc at unibw.de
Di Jun 16 03:09:32 CDT 2009


Hallo!

Ich bin gestern auf ein kleines Problem im Zusammenhang mit CondAuth
gestoßen:

Ich schreibe gerade ein "Rezept", welches -ähnlich wie das
ExternalLinks-Rezept hinter einem Link ein kleines Schloss-Symbol
anzeigt, wenn die Seite zum Lesen durch ein Passwort geschützt ist.

Dazu habe ich folgende Methode:

function makeLockedLink($pagename, $target, $txt, $suffix) {
   global $PubDirUrl;
 
   if ( CondAuth( $target, 'read' )  )
     return MakeLink($pagename, $target, $txt,$suffix);
   else
     return MakeLink($pagename, $target, $txt,"&nbsp;<img src=".$PubDirUrl."/icons/lock.png>".$suffix);

}

Das Problem bei obiger Methode ist, dass CondAuth immer true
zurückliefert, unabhängig davon ob ich das Passwort auf der betreffenden
Seite bereits eingegeben habe.

Ein Test mit:

(:if auth read <Seite>:) read
(:ifend:)

hingegen funktioniert tadellos, d.h. erst nachdem ich das Passwort auf
<Seite> eingegeben habe, erscheint der Text read, ansonsten nicht.

Ich dachte, dass CondAuth und if auth, die gleiche Logik verfolgen.

Danke schonmal für Eure Tipps,

Sebastian Schneider