function cacc_arr($coid = 0, $source = 0, $ids = '') { $arr = $coid ? read_cache('coclasses', $coid) : read_cache('acatalogs'); if (!empty($source)) { if ($source == 1) { $ids = array_filter(explode(',', $ids)); $nids = array(); foreach ($ids as $v) { $nids = array_merge($nids, pccidsarr($v, $coid, 1)); } if ($nids) { $nids = array_unique($nids); foreach ($arr as $k => $v) { if (!in_array($k, $nids)) { unset($arr[$k]); } elseif (!in_array($k, $ids)) { $arr[$k]['unsel'] = 1; } } } } elseif (!$coid) { $arr = read_cache('catalogs', '', '', $source < 0 ? abs($source) : 0); } } return $arr; }
} foreach (array('funcs', 'caids', 'mchids', 'fcaids', 'cuids', 'mcuids', 'matids', 'checks') as $var) { ${'a_' . $var} = $a_amconfig[$var] ? explode(',', $a_amconfig[$var]) : array(); } if ($a_amconfig['abcustom'] || !in_array('-1', $a_caids)) { if ($a_amconfig['abcustom']) { $a_ucaids = array_keys($a_amconfig['anodes']); if (!in_array('-1', $a_caids)) { $a_ucaids = array_intersect($a_ucaids, array(0) + $a_caids); } } else { $a_ucaids = array(0) + $a_caids; } $a_vcaids = array(); foreach ($a_ucaids as $v) { $a_vcaids = array_merge($a_vcaids, !$v ? array($v) : pccidsarr($v, 0, 1)); } //所有显示栏目的上级栏目需要显示出来 $a_vcaids = array_unique($a_vcaids); //if(!in_array('-1',$a_caids)) $a_ucaids = array_intersect($a_caids,$a_ucaids); } else { $a_ucaids = $a_vcaids = array(-1, 0); } if ($a_amconfig['fbcustom'] || !in_array('-1', $a_fcaids)) { if ($a_amconfig['fbcustom']) { $a_ufcaids = array_keys($a_amconfig['fnodes']); if (!in_array('-1', $a_fcaids)) { $a_ufcaids = array_intersect($a_ufcaids, $a_fcaids); } } else { $a_ufcaids = $a_fcaids;