function &_fetch(&$counter, $params) { $tree_array =& parent::_fetch($counter, $params); if (!count($tree_array)) { return array(); } $result = array(); $current_date = date('Y-m-d', time()); $prev_item_key = null; foreach ($tree_array as $id => $tree_item) { $tree_item['is_expanded'] = true; if (!$tree_item['is_last_child']) { $prev_item_parent_id = $tree_item['parent_node_id']; $prev_item_key = $tree_item['id']; } if (!isset($tree_item['start_date'])) { $result[$id] = $tree_item; continue; } if ($tree_item['start_date'] <= $current_date && $tree_item['finish_date'] >= $current_date) { $result[$id] = $data; continue; } if ($tree_item['is_last_child'] && $tree_item['parent_node_id'] == $prev_item_parent_id) { $result[$prev_item_key]['is_last_child'] = true; } } return $result; }
function & _fetch(&$counter, $params) { $tree_array = parent :: _fetch($counter, $params); $group_params['order'] = array('priority' => 'ASC'); $user_groups =& fetch_sub_branch('/root/admin/user_groups', 'user_group', $counter, $group_params); $dataspace =& dataspace_registry :: get('set_group_access'); $groups = $dataspace->get('filter_groups'); if (!is_array($groups) || !count($groups)) return $tree_array; foreach(array_keys($user_groups) as $key) { if (!in_array($key, $groups)) unset($user_groups[$key]); } foreach($tree_array as $id => $node) { $object_id = $node['id']; foreach($user_groups as $group_id => $group_data) { $tree_array[$id]['groups'][$group_id]['selector_name'] = 'policy[' . $object_id . '][' . $group_id . ']'; } } return $tree_array; }
function &_fetch(&$counter, $params) { $tree_array = parent::_fetch($counter, $params); $user_groups =& fetch_sub_branch('/root/user_groups', 'user_group', $counter); foreach ($tree_array as $id => $node) { $object_id = $node['id']; foreach ($user_groups as $group_id => $group_data) { $tree_array[$id]['groups'][$group_id]['read_selector_name'] = 'policy[' . $object_id . '][' . $group_id . '][r]'; $tree_array[$id]['groups'][$group_id]['write_selector_name'] = 'policy[' . $object_id . '][' . $group_id . '][w]'; } } return $tree_array; }
function &_fetch(&$counter, $params) { $result =& parent::_fetch($counter, $params); $uri = new uri($_SERVER['PHP_SELF']); foreach ($result as $key => $data) { if ($uri->compare($data['url'], $url_rest, $query_match)) { if ($url_rest >= 0) { $result[$key]['in_path'] = true; } if ($url_rest == 0) { $result[$key]['selected'] = true; } } } return $result; }
function &_fetch(&$counter, $params) { $result =& parent::_fetch($counter, $params); $uri = new uri($_SERVER['PHP_SELF']); foreach ($result as $key => $data) { if (is_integer($res = $uri->compare_path(new uri($data['url'])))) { if ($res >= 0) { $result[$key]['in_path'] = true; } if ($res == 0) { $result[$key]['selected'] = true; } } } return $result; }
function &_fetch(&$counter, $params) { $result =& parent::_fetch($counter, $params); $requested_uri = new uri($_SERVER['REQUEST_URI']); $nav_uri = new uri(); foreach ($result as $key => $data) { $nav_uri->parse($data['url']); if ($requested_uri->compare_path($nav_uri) === 0) { $result[$key]['selected'] = true; if ($nav_uri->get_query_item('action') !== $requested_uri->get_query_item('action')) { $result[$key]['selected'] = false; } } } return $result; }