function set_privileges() { //load gourp privilegies $gul = new group_user_list(); $group_privilegies = $gul->get_user_groups($this->get_id()); $group_privilegies = array_unique($group_privilegies); $gl = new group_list(); $this->groups =& $gl->get_groups($group_privilegies); $this->privileges = $this->_merge_privileges($this->get_user_privileges(), $gl->merge_privileges($group_privilegies)); if (isset($this->privileges['EDITOR']['Categories']) && is_array($this->privileges['EDITOR']['Categories']) && !empty($this->privileges['EDITOR']['Categories'])) { //merge EDITOR and WRITE if (isset($this->privileges['WRITE']['Categories']) && is_array($this->privileges['WRITE']['Categories'])) { $this->privileges['WRITE']['Categories'] = array_merge($this->privileges['WRITE']['Categories'], $this->privileges['EDITOR']['Categories']); } //merge EDITOR and READ if (isset($this->privileges['READ']['Categories']) && is_array($this->privileges['READ']['Categories'])) { $this->privileges['READ']['Categories'] = array_merge($this->privileges['READ']['Categories'], $this->privileges['EDITOR']['Categories']); } } }