Seite 1 von 1

Rechte für eigenes Plugin

Verfasst: Mo 21. Mär 2005, 21:07
von NobodyBody
Hallo,

hab mir nach der 'Hello World' vorlage ein eigenes Plugin erstellt.
Funktioniert soweit auch ganz gut :)

Wenn ich jetzt bei den Benutzerrechten in den Bereichen nachschaue ist meine Erweiterung auch aufgeführt.

Wie schaff ich es, damit die Rechte meiner Erweiterung nocheinmal
unterteilt wird z.B: wie bei den Artikeln

--->Artikel
------->Artikel online setzen
------->Artikel löschen


Danke :wink:

Verfasst: Di 22. Mär 2005, 10:39
von emergence
siehe con_actions
dort werden die dezitierten rechte für die area definiert...

Verfasst: Do 24. Mär 2005, 15:45
von NobodyBody
Danke, funktioniert :wink:

Verfasst: Di 5. Apr 2005, 19:59
von Edanis
Hallo

Die Plugins sind eine wirklich feine Sache die Idee und Umsetzung hat mich richtig beeindrückt, muss ich mit Respeckt sagen.

Aber jetzt kommt ein aber :)

Es dürfte vielleicht einfach sein aber ich kriege einfach keinen Anschluss.

Wenn ich das Plugin installiere bekomme ich einen Kästchen "Hallo Welt" am Listenende unter Administration/Benuzer/Bereiche. Ob ich es nun bei einem jedem Benutzer aktiviere oder nicht, der kann den Navigtionspunkt "Hallo Welt" sehen und ansteuern.

Ist vielleicht kein Fehler dachte ich, denn unter con_actions wird keine Aktion bei der Installation hinterlegt. Wenn ich dort aber eine Aktion mit dem entsprechenden area-Schlüssel eintrage, bekomme ich ein neues Kästchen (mit einem leeren Namen ?!) in der Liste, das zwar zum Obigen "Hallo Welt" Kästchen gehört aber ich kann auch damit keine Zugriffe auf das Plugin verhindern.

Ist das Verhalten überhaupt normal, habe ich da was schiefgemacht und wenn nicht, wie erreiche ich das das erste Kästchen die Sichtbarkeit und Zugriffe kontrolliert? Ja und wo muss ich den Namen für das zweite Kästchen eintragen, das durch meine Aktion zustande kam?

Ich hoffe mich überhaupt verständlich gemacht zu haben :)

Edward

Verfasst: Di 5. Apr 2005, 20:40
von NobodyBody
Hey,

das 'Hallo Welt' Beispiel sollte schon funktionieren.
Wenn ich einen User die Rechte auf das Plugin nicht gebe, dann erscheit dieser auch unter den Menüpunkt extras nicht.

Beim anderen Fall

--->Artikel
------->Artikel online setzen
------->Artikel löschen


müssen in die Tabelle con_actions noch Einträge gemacht werden. z.B:

Code: Alles auswählen

INSERT INTO con_actions VALUES ('345', '10200', '', 'artikel_online', '', '', '1');
INSERT INTO con_actions VALUES ('346', '10200', '', 'artikel_loeschen', '', '', '1');
In der Datei config.plugin.php habe ich dann noch folgende Einträge:

Code: Alles auswählen

$lngAct["modulname"]["artikel_online"]        = i18n("Artikel online", $plugin_name);
$lngAct["modulname"]["artikel_loeschen"]        = i18n("Artikel löschen", $plugin_name);
Das 'Artikel online' und 'Artikel löschen' muß dann in die Datei 'liga_admin.po' eingetragen werden.


Es kann dann mit

Code: Alles auswählen

$perm->have_perm_area_action('modulname',"artikel_online")
abgefragt werden, ob Berechtigungen bestehen.


Hoffe das hilft ein bischen weiter :wink:

Verfasst: Mi 6. Apr 2005, 00:25
von Edanis
Besten Dank für die Antwort NobodyBody :D

die hat mich stützig gemacht. Habe auf den Zustand vor den Plugintests zurückgestellt und noch einmal das Plugin installiert

:idea:

Anschenend haben meine Tests die DB irgendwie gelockert, ist mir gar nicht aufgefallen dass ich beim Testuser mehr sehen konnte als eingestellt, genau gesagt alle Bereiche (Administratorkästchen waren nicht aktiviert). Jetzt funktioniert es von Anfang an, ich kann das Plugin nur sehen wenn das Kästchen aktiviert ist, wie Du schon sagtest.

Also muss ich meine 'Anschuldigung' zurücknehmen :oops:

Und nochmals danke für die Anleitung, ich ahne schon, sobald ich aus dem Beilspielplugin ein Richtiges gemacht habe, werde ich nochmal auf die zurückkommen müssen :)

MfG, Edward