Новая реализация курсов валют.

This commit is contained in:
2023-08-10 17:04:23 +03:00
parent f4a66a1147
commit deac9203bd
7 changed files with 421 additions and 509 deletions
+111 -165
View File
@@ -1,175 +1,121 @@
<?php
if(!defined('GAME')) {
die();
}
?>
<script type="text/javascript" src="js/jquery.js"></script>
<script>
var nlevel = 0;
var from = Array('+', ' ', '#');
var to = Array('%2B', '+', '%23');
use Core\Config;
use Core\Db;
use Model\EkrExchangeRates;
function w(login,id,align,klan,level,online,city,battle){
var s='';
if(online != "") {
if (city!="") {
s+='<img src=//img.new-combats.tech/1x1.gif width="20" height="15" alt="В другом городе" />';
} else {
s+='<a href="javascript:top.chat.addto(\''+login+'\',\'private\');"><img src=//img.new-combats.tech/i/lock.gif width="20" height="15" alt="Приватно" /></a>';
}
if (city!="") {
s+='<img title="'+city+'" src="//img.new-combats.tech/i/city_ico/'+city+'.gif" width="17" height="15" />';
}
s+=' <img src="//img.new-combats.tech/i/align/align'+align+'.gif" width="12" height="15" />';
if (klan!='') {s+='<a href="/encicl/klan/'+klan+'.html" target="_blank"><img src="//img.new-combats.tech/i/clan/'+klan+'.gif" width="24" height="15" /></a>'}
s+='<a href="javascript:top.chat.addto(\''+login+'\',\'to\');">'+login+'</a>['+level+']<a href="/info/'+id+'" target="_blank"><img src="//img.new-combats.tech/i/inf_capitalcity.gif" width="12" height="11" alt="Информация о персонаже" /></a>';
if (city!="") {
s+=" - нет в этом городе";
} else {
s+=' - '+online;
}
} else {
s+='<img src="//img.new-combats.tech/i/offline.gif" width="20" height="15" border="0" alt="Нет в клубе" />';
if (city!="") {
s+='<img title="'+city+'" src="//img.new-combats.tech/i/city_ico/'+city+'.gif" width="17" height="15" />';
}
if (align == "") align="0";
s+=' <img src="//img.new-combats.tech/i/align/align'+align+'.gif" width="12" height="15" />';
if (klan!='') {s+='<a href="https://<?= $c['host']; ?>/encicl/clan/'+klan+'.html" target="_blank"><img src="//img.new-combats.tech/i/klan/'+klan+'.gif" width="24" height="15" /></a>'}
if (level) {
if (nlevel==0) {
nlevel=1; s="<br />"+s;
}
s+='<font color=gray><b>'+login+'</b>['+level+']<a href="/info/'+id+'" target="_blank"><img src="//img.new-combats.tech/i/inf.gif" width="12" height="11" alt="Информация о персонаже" /></a> - Нет в клубе';
} else {
if (nlevel==1) {
nlevel=2; s="<br />"+s;
}
mlogin = login;
for(var i=0;i<from.length;++i) while(mlogin.indexOf(from[i])>=0) mlogin= mlogin.replace(from[i],to[i]);
s+='<font color=gray><i>'+login+'</i> <a href="/info/'+mlogin+'" target="_blank"><img src="//img.new-combats.tech/i/inf_.gif" width="12" height="11" alt="Информация о персонаже" /></a> - нет в этом городе';
}
s+='</font>';
}
document.write(s+'<br />');
}
</script>
<div id=hint4 class=ahint></div>
<TABLE cellspacing=0 cellpadding=2 width=100%>
<TR>
<TD style="width: 40%; vertical-align: top; "><br />
<TABLE cellspacing=0 cellpadding=2 style="width: 100%; ">
<TR>
<TD align=center><h4>Алхимики</h4></TD>
</TR>
<TR>
<TD bgcolor=efeded nowrap><SCRIPT>
<?php
$data = mysql_query("SELECT `id`, `login`, `align`, `level`, `battle`, `online`, `city`, (select `name` from `room` WHERE `id` = users.`room`) as `room` FROM `users` WHERE `align` = '50' order by online DESC, login asc;");
$i = 0;
while($a = mysql_fetch_array($data))
function getAlchemistsAsJsString(): string
{
if ($a['online']>(time()-120))
{
$online = $a['room'];
$id = $a['id'];
$level = $a['level'];
$battle = $a['battle'];
}elseif($a['online']<(time()-120))
{
$online = '';
$id = '';
$level = '';
$battle = '';
}
//w( login, id, align, klan, level, online, city, battle){
$citya = $a['city'];
if($a['city']==$u->info['city'])
{
$citya = '';
}
echo 'w("'.$a['login'].'","'.$id.'","'.$a['align'].'","","'.$level.'","'.$online.'","'.$citya.'","'.$battle.'");';
$i++;
$result = '';
$sql = 'select id, login, align, level, online, (select name from room where id = room) as room from users where align = 50 order by online desc, align';
$rows = Db::getRows($sql);
foreach ($rows as $row) {
if ($row['online'] <= time() - 120) {
$row['id'] = '';
$row['level'] = '';
$row['online'] = '';
}
// generate: w(login,id,level,online);
$result .= "w({$row['login']},{$row['id']},{$row['level']},{$row['online']});";
}
return $result;
}
$pl = mysql_fetch_array(mysql_query('SELECT * FROM `bank_table` ORDER BY `time` DESC LIMIT 1'));
$exchangeToday = new EkrExchangeRates();
$alchemists = getAlchemistsAsJsString();
?>
</SCRIPT>
<?php
if( $i == 0 ) {
echo '<center>Нет ни одного назначенного Алхимика</cetner>';
}
?>
<TR>
<TD style="text-align: left; "><small>Курс покупки ЕвроКредитов: <b>1</b> eкр. = <b><?=round($pl['cur'],2)?> </b>руб.<br>
Курс обмена ЕвроКредитов: <b>1</b> екр = <b><?=$c['ecrtocr']?></b> кр.<br>
<?php
if($c['crtoecr']>0) {
?>
Курс обмена Кредитов: <?=$c['crtoecr']?> кр = 1 екр.<br>
<?php
}
?>Продают еврокредиты и прочие платные услуги сервиса<BR>Вы можете отправить им личное сообщение, даже если Вы и Алхимик находитесь в разных городах</small></div></TD>
</TR>
<TR>
<TD style="text-align: left; ">&nbsp;</TD>
</TR>
</TABLE>
<script src="/js/jquery.js"></script>
<script>
let nlevel = 0;
<br />
function w(login, id, level, online) {
let s = '';
const imagehost = '<?= Config::img() ?>';
const alchemistAlign = 50;
<table>
<tr>
<td valign="top"><fieldset>
<legend><b>Курс еврокредита к мировой валюте</b> </legend>
<table width="100%" border="0" cellpadding="2" cellspacing="0">
<?php
if(isset($pl['id'])) {
?>
<tr>
<td><small>Данные на <b><?=date('d.m.y H:i',$pl['time'])?></b> без учета комиссий</small></td>
</tr>
<?php
$pl['RUB'] = 40;
$i = 0;
$true = array(
array('USD', 'долларов США'),
array('EUR', 'ЕВРО'),
array('RUB','российских рублей'),
array('UAH','укр. гривен'),
array('BYR','белорусских рублей'),
array('AZN','азербайджанских манат'),
array('GBP','англ. фунтов стерлингов')
);
while($i < count($true)) {
?>
<tr>
<td><span>1 екр. = </span><span style="display:inline-block;width:100px"><b><?=round( ($pl['cur']/$pl[$true[$i][0]]) , 4 )?></b></span><span><?=$true[$i][1]?></span></td>
</tr>
<?php
$i++;
}
}else{
?>
<tr>
<td><small><center><font color=grey>Не удалось получить информацию</font></center></small></td>
</tr>
<?php } ?>
</table>
</fieldset></td>
</tr>
if (online) {
s += '<a href="javascript:top.chat.addto(\'' + login + '\',\'private\');"><img src="' + imagehost + '/i/lock.gif" alt="Приватно"></a>';
s += ' <img src="' + imagehost + '/i/align/align' + alchemistAlign + '.gif" alt="">';
s += '<a href="javascript:top.chat.addto(\'' + login + '\',\'to\');">' + login + '</a>[' + level + ']' +
'<a href="/info/' + id + '" target="_blank"><img src="' + imagehost + '/i/inf_capitalcity.gif" alt="Информация о персонаже"></a>';
s += ' - ' + online;
} else {
s += '<img src="' + imagehost + '/i/offline.gif" alt="Нет в клубе">';
s += ' <img src="' + imagehost + '/i/align/align' + alchemistAlign + '.gif" alt="">';
if (nlevel === 0) {
nlevel = 1;
s = "<br>" + s;
}
s += '<span style="color:gray;">' +
'<b>' + login + '</b>[' + level + ']<a href="/info/' + id + '" target="_blank"><img src="' + imagehost + '/i/inf.gif" alt="Информация о персонаже"></a> - Нет в клубе' +
'</span>';
}
document.write(s + '<br>');
}
</script>
<div id=hint4 class=ahint></div>
<table style="width: 100%;" role="none">
<tr>
<td style="width: 40%; vertical-align: top; "><br>
<table style="width: 100%;" role="none">
<TR>
<td style="text-align: center;"><h4>Алхимики</h4></td>
</TR>
<TR>
<td style="background-color: lavender; white-space: nowrap;">
<?php if (!empty($alchemists)): ?>
<script><?= getAlchemistsAsJsString() ?></script>
<?php else: ?>
<div style="text-align: center;">Нет ни одного назначенного Алхимика</div>
<?php endif; ?>
</td>
<tr>
<td>
<div style="font-size: xx-small;">
Курс покупки ЕвроКредитов: <b>1</b> eкр. = <b><?= $exchangeToday->oneEkrInRUB() ?> </b>руб.<br>
Курс обмена ЕвроКредитов: <b>1</b> екр = <b><?= Config::EKR_TO_KR_EXCHANGE ?></b> кр.<br>
<?php if (Config::KR_TO_EKR_EXCHANGE > 0): ?>
Курс обмена Кредитов: <?= Config::KR_TO_EKR_EXCHANGE ?> кр = 1 екр.<br>
<?php endif; ?>
Продают еврокредиты и прочие платные услуги сервиса<BR>
</div>
</td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
</table>
<br>
<table style="width: 100%; border: 0;">
<caption><b>Курс еврокредита к мировой валюте</b></caption>
<tr>
<th><small>Данные на <?= $exchangeToday->date() ?> без учета комиссий</small></th>
</tr>
<tr>
<td>
<span>1 екр. = </span>
<span style="display:inline-block;width:100px;font-weight: bold;"><?= $exchangeToday->oneEkrInUSD() ?></span>
<span>долларов США</span>
</td>
</tr>
<tr>
<td>
<span>1 екр. = </span>
<span style="display:inline-block;width:100px;font-weight: bold;"><?= $exchangeToday->oneEkrInRUB() ?></span>
<span>российских рублей</span>
</td>
</tr>
</table>
</td>
<td style="width: 5%; vertical-align: top; ">&nbsp;</td>
<td style="width: 25%; vertical-align: top; text-align: right;">
<button class="btn" onclick="location.href='/main.php?alh&rnd=<?= mt_rand() ?>'">Обновить</button>
<button class="btn" onclick="location.href='/main.php'">Вернуться</button>
</td>
</tr>
</table>
</TD>
<TD style="width: 5%; vertical-align: top; ">&nbsp;</TD>
<TD style="width: 25%; vertical-align: top; text-align: right; "><INPUT class="btn" type='button' value='Обновить' style='width: 100px' onclick='location="/main.php?alh&rnd=<?=$code?>"';'>
&nbsp;<INPUT TYPE=button value="Вернуться" class="btn" style="width: 100px" onclick='location="/main.php"'></TD>
</TR>
</TABLE>
<DIV>
<?= $c['counters']; ?>
</DIV>