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

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

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

Verfasst: Mi 6. Apr 2005, 00:25
von Edanis
Besten Dank für die Antwort NobodyBody
die hat mich stützig gemacht. Habe auf den Zustand vor den Plugintests zurückgestellt und noch einmal das Plugin installiert
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
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