www.gusucode.com > 08CMS空白站群系统 3.3 繁体 UTF-8 > upload/adminm/crexchange.inc.php

    <?php
!defined('M_COM') && exit('No Permission');
load_cache('crprojects,currencys');
if($enable_uc) $outextcredits = unserialize($outextcredits);
if(!submitcheck('bcrexchange')){
	m_guide(4);
	foreach($crprojects as $crpid => $crproject){
		tabheader($currencys[$crproject['scrid']]['cname'].lang('&nbsp;&nbsp; exchangeto &nbsp;&nbsp;').$currencys[$crproject['ecrid']]['cname'],'crexchagne'.$crpid,"adminm.php?action=crexchange");
		trbasic(lang('member current').$currencys[$crproject['scrid']]['cname'],'',$curuser->infos['currency'.$crproject['scrid']],'');
		trbasic(lang('member current').$currencys[$crproject['ecrid']]['cname'],'',$curuser->infos['currency'.$crproject['ecrid']],'');
		trbasic(lang('exchange scale'),'',$crproject['scurrency'].'&nbsp; '.$currencys[$crproject['scrid']]['cname'].'&nbsp; :&nbsp; '.$crproject['ecurrency'].'&nbsp; '.$currencys[$crproject['ecrid']]['cname'],'');
		trbasic(lang('exchange amount').'('.$currencys[$crproject['scrid']]['cname'].')','exchangesource');
		echo "<input type=\"hidden\" name=\"crpid\" value=\"$crpid\">";
		tabfooter('bcrexchange',lang('exchange'));
	}
	if($enable_uc){
		foreach($outextcredits as $k => $v){
			tabheader($currencys[$v['creditsrc']]['cname'].lang('&nbsp;&nbsp; exchangeto &nbsp;&nbsp;').$v['title'],'ocrexchagne'.$k,"adminm.php?action=crexchange");
			trbasic(lang('member current').$currencys[$v['creditsrc']]['cname'],'',$curuser->infos['currency'.$v['creditsrc']],'');
			trbasic(lang('exchange scale'),'',$v['ratiosrc' ].'&nbsp; :&nbsp; '.$v['ratiodesc' ],'');
			trbasic(lang('exchange amount').'('.$currencys[$v['creditsrc']]['cname'].')','exchangesource');
			echo "<input type=\"hidden\" name=\"ocrpid\" value=\"$k\">";
			echo "<input type=\"hidden\" name=\"isout\" value=\"1\">";
			tabfooter('bcrexchange',lang('exchange'));
		}
	}

}else{
	if(empty($isout)){
		(empty($crpid) || empty($crprojects[$crpid])) && mcmessage(lang('please point currency exchange project'));
		$exchangesource = max(0,intval($exchangesource));
		!$exchangesource && mcmessage(lang('please input exchange amount'));
		$crproject = $crprojects[$crpid];
		($exchangesource < $crproject['scurrency']) && mcmessage(lang('exchange amount cannot smaller exchange base'));
		($exchangesource > $curuser->infos['currency'.$crproject['scrid']]) && mcmessage(lang('exchange amount cannot larger having amount'));
		$num = floor($exchangesource / $crproject['scurrency']);
		$curuser->updatecrids(array($crproject['scrid'] => -$crproject['scurrency'] * $num),0,lang('currency exchange currency'));
		$curuser->updatecrids(array($crproject['ecrid'] => $crproject['ecurrency'] * $num),0,lang('currency exchange currency'));
		$curuser->updatedb();
		mcmessage(lang('currency exchange finish'),"adminm.php?action=crexchange");
	}else{
		empty($outextcredits[$ocrpid]) && mcmessage(lang('please point UCenter currency exchange item'));
		$exchangesource = max(0,intval($exchangesource));
		!$exchangesource && mcmessage(lang('please input exchange amount'));
		$outcredit = $outextcredits[$ocrpid];
		($exchangesource < $outcredit['ratiosrc']) && mcmessage(lang('exchange amount cannot smaller exchange base'));
		($exchangesource > $curuser->infos['currency'.$outcredit['creditsrc']]) && mcmessage(lang('exchange amount cannot larger having amount'));
		$num = floor($exchangesource / $outcredit['ratiosrc']);
		require_once M_ROOT.'./include/ucenter/config.inc.php';
		require_once M_ROOT.'./uc_client/client.php';
		$ucresult = uc_get_user($curuser->infos['mname']);
		if(!is_array($ucresult)) mcmessage(lang('noucuser'));
		$uid = $ucresult[0];
		$ucresult = uc_credit_exchange_request($uid,$outcredit['creditsrc'],$outcredit['creditdesc'],$outcredit['appiddesc'],$outcredit['ratiodesc'] * $num);
		if(!$ucresult) mcmessage(lang('currency exchange failed'),"adminm.php?action=crexchange");
		$curuser->updatecrids(array($outcredit['creditsrc'] => -$outcredit['ratiosrc'] * $num),0,lang('currency exchange currency'));
		$curuser->updatedb();
		mcmessage(lang('currency exchange finish'),"adminm.php?action=crexchange");
	}
}
?>