[gelöst] Zugriffsrechte im Layout nutzen:: Wie frage ich die Gruppe ab ?? Ausblenden von bestimmten Links!  Unten

  • Moin,

    ich bin gerade dabei, das Layout anzupassen in meinen Pagesetter Templates. Meine Frage betrifft aber nicht pagesetter sondern eher den Zikula Core !

    Am folgenden Beispiel dargestellt, lasse ich mit dieser Abfrage in einem Template die Edit-Funktion für die Authoren von Beiträgen erscheinen. (Diese Berechtigung haben normalerweise nur die Chefredakteure bei mir). Damit aber ein Ersteller eines Beitrages auch seine eigenen Beiträge ändern kann, ist dieser Code wichtig.

    Code

    <!--[pnusergetvar name="uid" assign="auth"]-->
                    <!--[if $core.creatorID == $auth]-->...dann kommt editthis usw.

    Ich frage also hier ab, ob der Creator dieses Beitrages angemeldet ist und blende ihm dann den Link ein.

    Ich habe nun mehrere Links im Layout die sich um das Erstellen von Beiträgen in verschiedenen Publikationen drehen. Diese will ich aber nur der "Gruppe" zeigen, die dafür berechtigt ist.
    Dafür bräuchte ich ja nur in der IF Abfrage den betreffenden Namen abzufragen, oder ??
    Ich weis aber nicht, wie die richtige Bezeichnung dafür lautet (und ob es dann funktioniert natürlich auch nicht) . Wäre das "$core.group" ??

    Bin ich auf dem richtigen Weg mit dieser Abfrage ??

    gruss

    skipete

    gruss

    skipete
  • Da habe ich mich gerade selbst überholt !!

    Hier die Lösung:

    Code

    <!--[pnsecauthaction realm="0" comp="Members_List::" inst="::" level="ACCESS_EDIT" assign="auth"]-->

    <!--[if $auth]-->
    ....jetzt das einblenden was erlaubt sein soll für die Gruppe....
    <!--[/if]-->


    Mit diesem Code frage ich jetzt beispielhaft ab, ober der User für das Modul "Members-List" die Berechtigung "Editieren" hat. Wenn ja, wird der Code eingeblendet. Alle anderen sehen das nicht.

    Gruss

    skipete

    gruss

    skipete
  • Genau so funktioniert es icon_smile

    Alternativ geht auch securityutil_checkpermission statt pnsecauthaction. Das ist der Nachfolger, der keinen realm-Parameter mehr braucht. Davon gibt es außerdem auch eine Block-Variante, damit sparst Du auch noch die Zuweisung, die Variable und die if-Abfrage:

    Code

    <!--[securityutil_checkpermission_block comp="Members_List::" inst="::" level="ACCESS_EDIT"]-->
    ....jetzt das einblenden was erlaubt sein soll für die Gruppe....
    <!--[/securityutil_checkpermission_block]-->


    We Guite your project!
    ModuleStudio
    Twitter
  • Hat der securityutil_checkpermission_block auch einen "else" - Zweig ?

    Zikula 1.3.0-dev (Revision 1738)
  • Skipete hat das oben schon beschrieben, wie man das mit dem Else machen würde.

    Gruß Steffen

    "If you want people to RTFM, make a better FM!"
  • das klappt

    Code

    {secauthaction realm="0" comp="SHProjekte:Projekt:" inst=".*" level="ACCESS_READ" assign="auth"}


    das klappt nicht

    Code

    {securityutil_checkpermission comp="SHProjekte:Projekt:" inst=".*" level="ACCESS_READ" assign="auth"}


    Wo ist der Fehler ?

    Torsten.E

    Zikula 1.3.0-dev (Revision 1738)
  • Hi,
    the securityutil does not have the same parameter names, they ought to be written fully icon_smile

    Code

    <!--[securityutil_checkpermission component='News::' instance='::' level='ACCESS_COMMENT' assign='authcomm']-->


    BTW. in zikula 1.3 this be slightly renamed and back to comp and inst again. I have filed a ticket in the core about those param names, since they now change back again.

    Code

    {checkpermission comp="News::" inst=".*" level="ACCESS_ADMIN" assign="auth"}


    Dutch Community, News module, Blanktheme, Menus

Diese Angaben basieren auf den Useraktivitäten der letzten 30 Minuten.