function _aenter(&$v, $init = 0, $add = array()) { global $_actid, $_midarr, $grouptypes, $cotypes; if ($init) { $_actid = $_midarr = array(); } $arr = array('aid', 'mid', 'sid', 'ucid', 'chid', 'mchid', 'mcaid', 'fcaid', 'vid', 'addid', 'fid', 'matid', 'rgid'); foreach ($grouptypes as $x => $y) { $arr[] = 'grouptype' . $x; } if ($add) { $arr = array_merge($arr, $add); } foreach ($arr as $x) { if (isset($v[$x])) { $_midarr[$x] = $v[$x]; } } $arr = array('caid'); foreach ($cotypes as $x => $y) { $arr[] = 'ccid' . $x; } foreach ($arr as $x) { if (isset($v[$x])) { $_midarr[$x] = cnoneid($v[$x]); } } array_unshift($_actid, $_midarr); }
function cn_discount(&$item, $dcmode = 1) { global $catalogs, $cotypes; if (empty($item['aid']) || !$dcmode) { return 0; } $dcarr = array(); if (!empty($item['caid'])) { $catalog = read_cache('catalog', $item['caid'], '', $item['sid']); !empty($catalog['discount']) && ($dcarr[] = $catalog['discount']); } foreach ($cotypes as $coid => $cotype) { //折扣取多选第一个id if ($ccid = cnoneid(@$item["ccid{$coid}"])) { $coclass = read_cache('coclass', $coid, $ccid); !empty($coclass['discount']) && ($dcarr[] = $coclass['discount']); } } $discount = caldiscount($dcarr, $dcmode); return $discount; }