Index: branches/unlabeled/unlabeled-1.59.2/kernel/include/category.php =================================================================== diff -u -r7837 -r7880 --- branches/unlabeled/unlabeled-1.59.2/kernel/include/category.php (.../category.php) (revision 7837) +++ branches/unlabeled/unlabeled-1.59.2/kernel/include/category.php (.../category.php) (revision 7880) @@ -633,25 +633,44 @@ { global $objPermCache; - if (!is_array($allgroups)) { + $dacl = array(); + if(!is_array($allgroups)) + { global $objGroups; $allgroups = $objGroups->GetAllGroupList(); } + for($i=0;$iPermissions->GetPermId($PermName); $pc = $objPermCache->GetPerm($this->Get("CategoryId"),$PermId); - if (is_object($pc)) { + if(is_object($pc)) + { $pc->Set("ACL",$aval); + $pc->Set("DACL",$dval); $pc->Update(); } - else { - $objPermCache->AddPermCache($this->Get("CategoryId"),$PermId,$aval); - } + else + $objPermCache->AddPermCache($this->Get("CategoryId"),$PermId,$aval,$dval); + //$this->Update(); } @@ -672,8 +691,8 @@ function UpdateACL() { - $q = 'INSERT INTO '.TABLE_PREFIX.'PermCache (CategoryId, PermId, ACL) - SELECT '.$this->UniqueId().', PermId, ACL + $q = 'INSERT INTO '.TABLE_PREFIX.'PermCache (CategoryId, PermId, ACL, DACL) + SELECT '.$this->UniqueId().', PermId, ACL, DACL FROM '.TABLE_PREFIX.'PermCache WHERE CategoryId = '.$this->Get('ParentId'); $this->Conn->Query($q);