Boardunity & Video Forum

Boardunity & Video Forum (https://boardunity.de/)
-   CalitrixWiki Supportforum (https://boardunity.de/calitrixwiki-supportforum-f68.html)
-   -   User sollen nur ihre eigenen Seiten bearbeiten (https://boardunity.de/user-nur-eigenen-seiten-bearbeiten-t3759.html)

Fuenkchen 23.11.2005 04:17

User sollen nur ihre eigenen Seiten bearbeiten
 
Hallo,

ich habe das wirklich tolle CalitrixWiki installiert und schon grafisch angepasst. Langsam steige ich auch in der Funktionsweise durch. Allerdings möchte ich, dass meine User ihre eigenen User-Seiten bearbeiten können - und auch nur ihre jeweils eigenen - aber nicht die anderen Wikiseiten. Ist das irgendwie machbar?

LG
Fünkchen

Bynaus 23.11.2005 10:36

Soviel ich weiss, nur mit relativ grossem Aufwand: Du musst den Usern alle Schreibrechte entziehen, und dann für jeden User seine eigene Usersite über die Rechteverwaltung individuell freigeben. Leider lässt Calitrix (zur Zeit noch?) keine Rechtverwaltung nach Namensräumen zu.

exe 25.11.2005 20:14

Mit den bestehenden Einstellungsmöglichkeiten geht das nicht, bzw. nur so wie von Bynaus beschrieben: allen Mitgliedern die Schreibrechte entziehen und sie dann einzeln für ihre Seiten freischalten.

Fuenkchen 25.11.2005 21:58

OK, ich habe es versucht, aber ich verstehe es nicht.

Bsp. User1 (Gruppe: Mitglieder) soll seine Seite User:User1 bearbeiten dürfen. Also entziehe ich auf der Seite User:User1 allen Mitgliedern die Schreibrechte. Aber wie weise ich jetzt dem User1 seine Seite zu, dass er sie bearbeiten kann. Meint ihr damit "Lokale Zugriffsrechte einer Seite gelten für dieses Mitglied nicht"? Aber kann er dann nicht auch alle anderen besonders beschränkten Seiten bearbeiten?

exe 25.11.2005 23:45

Du hast Recht. Ich hab vorhin nicht genau genug nachgedacht ;) Man kann ja noch gar nicht Rechte für einzelne Mitglieder setzen.

Also: das was du vorhast ist von Haus aus mit dem Wiki nicht möglich. Dazu müsste man dann in den Code eingreifen.

Fuenkchen 26.11.2005 04:16

Und wie der Eingriff im Code aussieht, kannst du auf die Schnelle nicht verraten? *liebguck*

exe 26.11.2005 14:56

Dafür sind 3 kleine Änderungen nötig:

libs/class_core.php, Zeile 696:
Code:

$tpl->assign('canEdit',    $this->hasPerms(PERM_EDIT));
ersetzen durch
Code:

$tpl->assign('canEdit',    $this->hasPerms(PERM_EDIT) || ($this->loggedIn && $this->page['page_namespace'] == $this->cfg['users_namespace'] && $this->user['user_name'] == $this->page['page_name']));
actions/action_edit.php, Zeile 82:
Code:

if(!$this->hasPerms(PERM_EDIT)) {
ersetzen durch
Code:

if(!$this->hasPerms(PERM_EDIT) && !($this->loggedIn && $this->page['page_namespace'] == $this->cfg['users_namespace'] && $this->user['user_name'] == $this->page['page_name'])) {
actions/action_edit.php, Zeile 107:
Code:

if(!$this->hasPerms(PERM_EDIT)) {
ersetzen durch
Code:

if(!$this->hasPerms(PERM_EDIT) && !($this->loggedIn && $this->page['page_namespace'] == $this->cfg['users_namespace'] && $this->user['user_name'] == $this->page['page_name'])) {
Nach diesen Änderungen kann ein eingeloggter Benutzer unabhängig von den Zugriffsrechten seine Userseite ändern. Jetzt musst du nur noch im Adminbereich die Schreibrechte für Mitglieder deaktivieren, dann hast du das gewünschte Verhalten.

Fuenkchen 26.11.2005 18:12

Hui, es klappt... nicht dass ich gezweifelt hätte ;)

Vielen lieben Dank. Wenn unser Wiki auch ordentlich gefüllt ist, bekommt deine Seite auch einen Link!

Bynaus 28.11.2005 11:58

Oh, ich glaube, das muss ich auch gleich ausprobieren... :)


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:24 Uhr.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25