View file modules/donats/plugins/go.php

File size: 2.47Kb
<?php
  
$sum = intval(db::get_column("SELECT SUM(`SUM`) FROM `DONATS_USERS` WHERE `D_ID` = ?", [$donats['ID']]));

if ($donats['ACT'] == 1) {
  
  error('Необходимая сумма уже собрана');
  redirect('/m/donats/show/?id='.$donats['ID']);
  
}
  
if (post('go')){
  
  valid::create(array(
    
    'DU_NAME' => ['nm', 'text', [0, 120], 'Сообщение', 0],
    'DU_SUM' => ['sm', 'number', [1, 50000], 'Сумма']
  
  ));
  
  if ((user('MONEY') - config('DONATS_MIN')) < DU_SUM){
    
    error(lg('Перевод не выполнен: на счету должно оставаться не менее %s после перевода', money(config('DONATS_MIN'), 2)));
    redirect('/m/donats/show/?id='.$donats['ID'].'&get=go&'.TOKEN_URL);
    
  }
  
  db::get_set("UPDATE `USERS` SET `MONEY` = ? WHERE `ID` = ? LIMIT 1", [(user('MONEY') - DU_SUM), user('ID')]);
  db::get_add("INSERT INTO `DONATS_USERS` (`D_ID`, `NAME`, `USER_ID`, `SUM`, `TIME`) VALUES (?, ?, ?, ?, ?)", [$donats['ID'], DU_NAME, user('ID'), DU_SUM, TM]);
  
  $mess = lg('Поздравляем! Пользователь %s пожертвовал %s в вашем сборе %s', '[b]'.user::login_mini(user('ID')).'[/b]', '[b]'.money(DU_SUM, 2).'[/b]', '[url=/m/donats/show/?id='.$donats['ID'].']'.esc($donats['NAME']).'[/url]');
  messages::get(config('SYSTEM'), $donats['USER_ID'], $mess, 0);
  
  if (($sum + DU_SUM) >= $donats['MAX_SUM']) {
    
    db::get_set("UPDATE `DONATS` SET `ACT` = ? WHERE `ID` = ? LIMIT 1", [1, $donats['ID']]);
    
  }
  
  success('Вы успешно пожертвовали. Пользователю отправлено сообщение');
  redirect('/m/donats/show/?id='.$donats['ID']);
  
}
  
?>
<div class='list-body'>  
<div class='list-menu'><center>
<a href='/m/donats/show/?id=<?=$donats['ID']?>'><b><?=tabs($donats['NAME'])?></b></a>
</center></div>
<div class='list-menu'>
<b><?=lg('Баланс аккаунта')?>: <?=money(user('MONEY'), 3)?></b><br />
</div>
</div>

<div class='list'>
<form method='post' class='ajax-form' action='/m/donats/show/?id=<?=$donats['ID']?>&get=go&<?=TOKEN_URL?>'>
<?=html::input('nm', 'Сообщение', null, null, null, 'form-control-100', 'text', null, 'text-width')?>
<?=html::input('sm', 'Сумма', null, null, null, 'form-control-50', 'number', null, 'money')?>
<?=html::button('button ajax-button', 'go', 'plus', 'Пожертвовать')?>
</form>
</div>
<?

back('/m/donats/show/?id='.$donats['ID']);
acms_footer();