if ($_G['setting']['creditstransextra'][5] != -1 && $tradelog['credit']) { if ($tradelog['credit'] > getuserprofile('extcredits' . $_G['setting']['creditstransextra'][5])) { showmessage('trade_credit_lack'); } updatemembercount($tradelog['buyerid'], array($_G['setting']['creditstransextra'][5] => -$tradelog['credit'])); } $trade = C::t('forum_trade')->fetch_goods($tradelog['tid'], $tradelog['pid']); if ($_G['uid'] && $currentcredit < $discountcredit && $tradelog['discount']) { showmessage('trade_credits_no_enough', '', array('credittitle' => $_G['setting']['extcredits'][$_G['setting']['creditstrans']]['title'])); } $pay = array(); $pay['commision'] = 0; $transport = $tradelog['transport']; $transportfee = 0; trade_setprice(array('fee' => $fee, 'trade' => $trade, 'transport' => $transport), $price, $pay, $transportfee); $payurl = trade_payurl($pay, $trade, $tradelog); $paytype = 0; if ($apitype == 'alipay') { $paytype = 1; } elseif ($apitype == 'tenpay') { $paytype = 2; } C::t('forum_tradelog')->update($orderid, array('paytype' => $paytype)); showmessage('trade_directtopay', $payurl); } if (submitcheck('offlinesubmit') && in_array($_GET['offlinestatus'], trade_offline($tradelog, 0))) { loaducenter(); $ucresult = uc_user_login($_G['username'], $_GET['password']); list($tmp['uid']) = daddslashes($ucresult); if ($tmp['uid'] <= 0) { showmessage('trade_password_error', 'forum.php?mod=trade&orderid=' . $orderid);
$settings[$setting['skey']] = $setting['svalue']; } if (!empty($checktype)) { require_once DISCUZ_ROOT . './api/trade/api_tenpay.php'; if ($checktype == 'credit') { dheader('location: ' . credit_payurl(1, $orderid)); } elseif ($checktype == 'virtualgoods') { $pay = array('logistics_type' => 'VIRTUAL'); $trade = array('subject' => $lang['ec_tenpay_check_virtualgoodssubject'], 'itemtype' => 1, 'tenpayaccount' => $settings['ec_tenpay_opentrans_chnid']); $tradelog = array('orderid' => 'TEST' . dgmdate(TIMESTAMP, 'YmdHis') . random(18), 'baseprice' => 1, 'number' => 1, 'transportfee' => 0); dheader('location: ' . trade_payurl($pay, $trade, $tradelog)); } elseif ($checktype == 'goods') { $pay = array('logistics_type' => 'EMS', 'transport' => 'SELLER_PAY'); $trade = array('subject' => $lang['ec_tenpay_check_goodssubject'], 'itemtype' => 1, 'tenpayaccount' => $settings['ec_tenpay_opentrans_chnid']); $tradelog = array('orderid' => 'TEST' . dgmdate(TIMESTAMP, 'YmdHis') . random(18), 'baseprice' => 1, 'number' => 1, 'transportfee' => 0); dheader('location: ' . trade_payurl($pay, $trade, $tradelog)); } exit; } if (!submitcheck('tenpaysubmit')) { shownav('extended', 'nav_ec'); showsubmenu('nav_ec', array(array('nav_ec_config', 'setting&operation=ec', 0), array('nav_ec_tenpay', 'ec&operation=tenpay', 1), array('nav_ec_alipay', 'ec&operation=alipay', 0), array('nav_ec_credit', 'ec&operation=credit', 0), array('nav_ec_orders', 'ec&operation=orders', 0), array('nav_ec_tradelog', 'tradelog', 0), array('nav_ec_inviteorders', 'ec&operation=inviteorders', 0))); showtips('ec_tenpay_tips'); showformheader('ec&operation=tenpay'); showtableheader('', 'nobottom'); showtitle('ec_tenpay_opentrans'); showsetting('ec_tenpay_opentrans_chnid', 'settingsnew[ec_tenpay_opentrans_chnid]', $settings['ec_tenpay_opentrans_chnid'], 'text'); $tenpay_securitycodemask = $settings['ec_tenpay_opentrans_key'] ? $settings['ec_tenpay_opentrans_key'][0] . '********' . substr($settings['ec_tenpay_opentrans_key'], -4) : ''; showsetting('ec_tenpay_opentrans_key', 'settingsnew[ec_tenpay_opentrans_key]', $tenpay_securitycodemask, 'text'); showtitle('ec_tenpay'); showsetting('ec_tenpay_direct', 'settingsnew[ec_tenpay_direct]', $settings['ec_tenpay_direct'], 'radio');