function _loadgroups($filename) { global $html; $groups=new ini(); $groups->autoconvert=FALSE; if ($groups->open($filename) != FALSE) { //Wenn es Gruppen gibt, initialisieren wir das Grouparray //Leider lässt Subversion auch Zugriff auf Pfade für User zu, //die keiner Gruppe angehören $result=$groups->read_values("groups"); if (is_array($result)) { foreach($result as $group=>$users) { //Zur späteren Erleichterung der verwaltung //Setzen wir im Array den Index und den Inhalt gleich $members=explode(",",$users); foreach ($members as $member) { $this->usergroups[$group][$member]=$member; } } } //Weiterhin liegen in diese Datei die einzelnen Rechte für Pfade //Dazu lesen wir einfach alle Sectionen und und entfernen die //Gruppensection. Ein @ vor einem Namen definiert eine Gruppe, //die diesem Pfad zugeordnet ist. * mein alle User $result=$groups->read_sections(); if (is_array($result)!=FALSE) { foreach ($result as $userpath) { if (strtolower($userpath)!="groups") { $rights=$groups->read_values($userpath); //Nun haben wir alle Pfade mit ihren Zuordnungen als //Array vorliegen. Um weiterhin leichter damit arbeiten //zu können, wandeln wir die Klartextrechte in Flags um if (is_array($rights)!=FALSE) { foreach ($rights as $user=>$mode) { $mymode=SVN_HAS_NONE; $mode=strtolower($mode); if (strpos($mode,"r")!==FALSE) $mymode|=SVN_HAS_READ; if (strpos($mode,"w")!==FALSE) $mymode|=SVN_HAS_WRITE; $this->pathgroups[$userpath][$user]=$mymode; } } } } } } $groups->destroy(); }