Rechte ändern bei Event-Plugins

Hier können Probleme und alles andere in Deutscher Sprache gelöst werden.
Post Reply
Guest

Rechte ändern bei Event-Plugins

Post by Guest »

Wie kann ich die Rechte von Plugins verändern damit z.B. ein zusätzlicher Nutzer, des Angemeldet ist im Blog, nicht auf das Plugin zugreifen kann. Ein Beispiel. Das Plugin für die Statischen Seiten ist aktiviert und steht im Menü unter Einträge. Jedoch nicht nur für den Admin sonder auch für die Nutzer, somit kann der Nutzer auch das o.g. Plugin aufrufen und es auch benutzen.
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Re: Rechte ändern bei Event-Plugins

Post by garvinhicking »

Solche Features müssen innerhalb des Plugins einprogrammiert werden. Eine Ankoppelung an das bestehende Serendipity-Rechtesystem ist möglich, wird aber bisher von keinem Plugin genutzt.

Falk, der Autor des Staticpage-Plugins, arbeitet derzeit an Version 2 dieses Plugins mit zahlreichen Feature-Veränderungen und einer neuen Architektur, die sich unter anderem diesem Problem annehmen wird. Das kann jedoch noch eine Weile dauern.

Du kannst so lange manuell das Staticpage-Plugin patchen und eine Abfrage einbauen, die das Plugin nur speziellen Usern anzeigt:

Ändere dazu folgenden Code im Plugin:

Code: Select all

                case 'backend_sidebar_entries':
                    $this->setupDB();
                    echo '<li><a href="?serendipity[adminModule]=event_display&serendipity[adminAction]=staticpages">' . STATICPAGE_TITLE . '</a></li>';
                    break;

                case 'backend_sidebar_entries_event_display_staticpages':
                    $this->showBackend();
                    break;
in

Code: Select all

                case 'backend_sidebar_entries':
                    if ($serendipity['authorid'] =! 1 AND $serendipity['authorid'] != 2) return true;
                    $this->setupDB();
                    echo '<li><a href="?serendipity[adminModule]=event_display&serendipity[adminAction]=staticpages">' . STATICPAGE_TITLE . '</a></li>';
                    break;

                case 'backend_sidebar_entries_event_display_staticpages':
                    if ($serendipity['authorid'] =! 1 AND $serendipity['authorid'] != 2) return true;
                    $this->showBackend();
                    break;
Die beiden hinzugekommenen If-Abfragen zeigen das Plugin dann nur für Autor #1 und #2 an.

Viele Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
Guest

Post by Guest »

Danke für deine Hilfe. Mittlerweile ist mir auch aufgefallen, dass der Downloadmanager und die Mediendatenbank die gleichen Probleme haben, oder ich die gleichen Probleme damit habe.
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Post by garvinhicking »

Korrekt -- wie gesagt, bei wenigen Plugins war das bisher erforderlich und es hat sich noch kein freiwilliger gefunden. Du kannst aber jedes Plugin nach dem von mir geschilderten Prinzip für'S erste leicht überarbeiten.

Viele Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
Post Reply