function cnodesfromcnc(&$cnconfig, $sid = 0) { global $db, $tblprefix; $cncid = $cnconfig['cncid']; $idsarr = cfgs2ids($cnconfig['configs'], $sid); $cnodes1 = array(); $i = 0; foreach ($idsarr as $k => $ids) { if (!$i && empty($ids)) { return $cnodes1; } if (empty($ids)) { unset($idsarr[$k]); } $i++; } $i = 0; $j = count($idsarr) - 1; foreach ($idsarr as $k => $ids) { $kvar = !$k ? 'caid' : 'ccid' . $k; if (!$i) { foreach ($ids as $id) { $k2 = $kvar . '=' . $id; save_cnode($k2, $sid, $cncid); $cnodes1[$k2] = ''; } } else { foreach ($cnodes1 as $k1 => $v1) { foreach ($ids as $id) { $k2 = $k1 . '&' . $kvar . '=' . $id; save_cnode($k2, $sid, $cncid); if ($i != $j) { $cnodes1[$k2] = ''; } } } } $i++; } unset($idsarr, $ids); return; }
} $sqlstr .= ',' . $k . "='" . $a_field->newvalue . "'"; if ($arr = multi_val_arr($a_field->newvalue, $v)) { foreach ($arr as $x => $y) { $sqlstr .= ',' . $k . '_' . $x . "='{$y}'"; } } } $c_upload->saveuptotal(1); $db->query("INSERT INTO {$tblprefix}coclass SET \n\t\t\t\t{$sqlstr0},\n\t\t\t\tcoid='{$coid}' \n\t\t\t\t{$sqlstr}\n\t\t\t\t"); if ($ccid = $db->insert_id()) { if (!empty($autocnode)) { $sids = array_merge(array(0), array_keys($subsites)); foreach ($sids as $k) { if ($cncid = relate_cncid($coid, $ccid, $coclassnew['level'], $k, 1)) { save_cnode("ccid{$coid}={$ccid}", $k, $cncid); } } } $c_upload->closure(1, $ccid, 'coclass'); $enamearr[] = $coclassnew['dirname']; $ok++; } } unset($a_field, $c_upload); if ($ok && !empty($autocnode)) { $sids = array_merge(array(0), array_keys($subsites)); foreach ($sids as $k) { updatecache('cnconfigs', '', $k); updatecache('cnodes', 1, $k); }
$sqlstr .= ',' . $k . "='" . $a_field->newvalue . "'"; if ($arr = multi_val_arr($a_field->newvalue, $v)) { foreach ($arr as $x => $y) { $sqlstr .= ',' . $k . '_' . $x . "='{$y}'"; } } } if (!empty($a_field->error)) { continue; } $c_upload->saveuptotal(1); $db->query("INSERT INTO {$tblprefix}catalogs SET \n\t\t\t\t\t\ttitle='{$catalognew['title']}', \n\t\t\t\t\t\tdirname='{$catalognew['dirname']}', \n\t\t\t\t\t\tsid='{$sid}', \n\t\t\t\t\t\tlevel='{$catalognew['level']}', \n\t\t\t\t\t\tchids='{$catalognew['chids']}', \n\t\t\t\t\t\tisframe='{$catalognew['isframe']}',\n\t\t\t\t\t\tapmid='{$catalognew['apmid']}',\n\t\t\t\t\t\trpmid='{$catalognew['rpmid']}',\n\t\t\t\t\t\tcrpmid='{$catalognew['crpmid']}',\n\t\t\t\t\t\tdpmid='{$catalognew['dpmid']}',\n\t\t\t\t\t\tawardcp='{$catalognew['awardcp']}',\n\t\t\t\t\t\ttaxcp='{$catalognew['taxcp']}',\n\t\t\t\t\t\tftaxcp='{$catalognew['ftaxcp']}',\n\t\t\t\t\t\tallowsale='{$catalognew['allowsale']}',\n\t\t\t\t\t\tallowfsale='{$catalognew['allowfsale']}',\n\t\t\t\t\t\ttpls='{$catalognew['tpls']}',\n\t\t\t\t\t\tcustomurl='{$catalognew['customurl']}',\n\t\t\t\t\t\tpid='{$catalognew['pid']}'\n\t\t\t\t\t\t{$sqlstr}\n\t\t\t\t\t\t"); //自动生成节点 if ($caid = $db->insert_id()) { if (!empty($autocnode) && ($cncid = relate_cncid(0, $caid, $catalognew['level'], $sid, 1))) { save_cnode("caid={$caid}", $sid, $cncid, $catalognew['tpls']); } $enamearr[] = $catalognew['dirname']; $ok++; } $c_upload->closure(1, $caid, 'catalogs'); } if ($ok && !empty($autocnode)) { updatecache('cnconfigs', '', $sid); updatecache('cnodes', 1, $sid); } unset($a_field, $c_upload); adminlog(lang('batch_catalog')); updatecache('catalogs', '', $sid); amessage($ok ? $ok == $i - 1 ? 'catalogaddfinish' : 'batch_catalog_some' : 'batch_catalog_bad', axaction(6, "?entry=catalogs&action=catalogedit{$param_suffix}"), $ok); }