Example #1
0
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;
}
Example #2
0
 }
 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;