<?
if (isset($ID)) {
  $ads = $sql -> fetch("SELECT * FROM `ads` WHERE `id` = '$ID' LIMIT 1");
}

if (!isset($ads['id'])){
  die('К сожалению заказ не найден либо он был удален');
}

if ($level > 0 && $ads['id_user'] != $user['id']){
  die('Счет не принадлежит вам');
}

if (isset($_POST['LMI_PREREQUEST'])) {
  
  if (trim($_POST['LMI_PAYEE_PURSE']) != $system['wmpurse']) {
    die('Ошибка(1): Неверный кошелек получателя системы');
  }

  if ($sql -> selectCount("SELECT COUNT(*) FROM `ads` WHERE `id` = '" . intval($_POST['LMI_PAYMENT_NO']) . "'") == 0) {
    die('Ошибка(2): Номер счета не найден');
  }

  $ads = $sql -> fetch("SELECT * FROM `ads` WHERE `id` = '" . intval($_POST['LMI_PAYMENT_NO']) . "' LIMIT 1");

  if (trim($_POST['LMI_PAYMENT_AMOUNT']) == null || trim($_POST['LMI_PAYMENT_AMOUNT']) < $ads['wmr']) {
    die('Ошибка(3): Не указанна сумма перевода, либо она менее ' . $ads['wmr'] . ' wmr.');
  }

  if ($ads['pays'] != '0') {
    die('Ошибка(4): Cчет уже оплачен ранее');
  }
  
  if ($ads['id_user'] != $_POST['id_user']) {
    die('Ошибка(5): Номер выписанного счета, не принадлежит вам');
  }
  
  die('YES');
} elseif (isset($_POST['LMI_HASH'])) {
  
  $common_string = $_POST['LMI_PAYEE_PURSE'].$_POST['LMI_PAYMENT_AMOUNT'].$_POST['LMI_PAYMENT_NO'].$_POST['LMI_MODE'].$_POST['LMI_SYS_INVS_NO'].$_POST['LMI_SYS_TRANS_NO'].$_POST['LMI_SYS_TRANS_DATE'].$system['secret_key'].$_POST['LMI_PAYER_PURSE'].$_POST['LMI_PAYER_WM'];
  
  $hash = strtoupper(hash('sha256', $common_string)); 

  if($hash != $_POST['LMI_HASH']) {
    die('Ошибка доступа');
  }
  
  $id_user = intval($_POST['id_user']);
  $purse = $_POST['LMI_PAYER_PURSE'];
  $wmid = abs($_POST['LMI_PAYER_WM']);
  
  // Счет
  $ads = $sql -> fetch("SELECT * FROM `ads` WHERE `id` = '" . intval($_POST['LMI_PAYMENT_NO']) . "' LIMIT 1");
  
  if ($ads['id_goods'] != 0 && $ads['type'] == 'goods') {
    $ads['time_last'] = (time() + ($ads['days'] * 60 * 60 * 24));
    $msglog = "Заказ рекламы для товара [url=?func=shop.goods&id=" . $ads['id_goods'] . "]" . $ads['name'] . "[/url]\rПлатежные реквизиты: WMID " . $wmid . ", WM кошелек " . $purse;
  } else {
    $msglog = "Заказ рекламы для сайта [url=http://" . $ads['url'] . "]" . $ads['url'] . "[/url]\rПлатежные реквизиты: WMID " . $wmid . ", WM кошелек " . $purse;
  }
  
	$sql -> insert("INSERT INTO `billing_log` (`wmid`, `purse`, `time`, `type`, `id_user`, `coins`, `msg`) VALUES ('$wmid', '" . $sql->esc($purse) . "', '$time', 'service', '$id_user', '-" . $ads['wmr'] . "', '$msglog')");
  
  // Обновление информации счета
  $sql -> update("UPDATE `ads` SET `pays` = '1', `time_pays` = '$time', `time_last` = '$ads[time_last]' WHERE `id` = '$ads[id]' LIMIT 1");
  exit;
}

if (isset($_GET['pays']) && $_GET['pays'] == 'balans') {
  if ($level > 0 && $ads['id_user'] == $user['id']) {
    if ($user['wmr'] >= $ads['wmr']) {
      
      if ($ads['id_goods'] != 0 && $ads['type'] == 'goods') {
        $ads['time_last'] = (time() + ($ads['days'] * 60 * 60 * 24));
        $msglog = "Заказ рекламы для товара [url=?func=shop.goods&id=" . $ads['id_goods'] . "]" . $ads['name'] . "[/url]\rПлатежные реквизиты: [b]Внутренний баланс[/b]";
      } else {
        $msglog = "Заказ рекламы для сайта [url=http://" . $ads['url'] . "]" . $ads['url'] . "[/url]\rПлатежные реквизиты: [b]Внутренний баланс[/b]";
      }
  
      $sql -> insert("INSERT INTO `billing_log` (`wmid`, `purse`, `time`, `type`, `id_user`, `coins`, `msg`) VALUES ('', '', '$time', 'service', '$user[id]', '-" . $ads['wmr'] . "', '$msglog')");
      
      // Обновление информации счета
      $sql -> update("UPDATE `ads` SET `pays` = '1', `time_pays` = '$time', `time_last` = '$ads[time_last]' WHERE `id` = '$ads[id]' LIMIT 1");
      
      // Cписание средств
      $sql -> update("UPDATE `users` SET `wmr` = `wmr` - '$ads[wmr]' WHERE `id` = '$user[id]' LIMIT 1");
      
      $_SESSION['message'] = 'Счет успешно оплачен';
      header('Location: ?func=' . $func . '&id=' . $ID . '&success');
      exit;
    }
  }
}

$system['title'] = 'Страница оплаты услуги';
require SYS . 'header.php';

if ($level > 0 && $ads['pays'] == 1) {
?>
  <div class="alert alert-success" style="margin: 2px;">
    <center>
      <img src="<?= ICONS?>big_ok.png" /> Счет <?= (isset($_GET['success']) ? 'успешно' : 'уже')?> оплачен!<br /><br />
      <a href="?func=user.main" class="btn">Перейти в кабинет</a>
    </center>
  </div>
<?
} elseif ($level > 0 && isset($_GET['fail']) && $ads['pays'] == 0) {
?>
  <div class="alert alert-error" style="margin: 2px;">
    <center>
      <img src="<?= ICONS?>big_err.png" /> Платеж по счету не прошел!<br /><br />
      <a href="?func=<?= $func?>&amp;id=<?= $ads['id']?>" class="btn">Повторить попытку</a>
    </center>
  </div>
<?
} elseif ($level > 0) {
?>
<div class="nav2">
<table class="table table-bordered" style="margin: 2px;">
  <tr>
    <td>
    <b>Cчет №<?= $ads['id']?></b>
    </td>
    <td>
    <b><span class="on"><?= text($ads['name'])?> | <?= ($ads['id_goods'] == 0 ? text($ads['url']) : 'ID товара: ' . $ads['id_goods'])?></span></b>
    </td>
  </tr>
  
  <? if ($user['wmr'] >= $ads['wmr']) { ?>
  <tr>
   <td style="width: 90px;">&nbsp;&nbsp;&nbsp;&nbsp;<b style="font-size: 30">&gt;&gt;&gt;</td>
    <td>
    <b>:: Внутренний баланс</b><br /><br />
    
    На счету: <b><?= $user['wmr']?> wmr</b><br /><br />
    
    <a href="?func=<?= $func?>&amp;id=<?= $ads['id']?>&amp;pays=balans" class="btn">Оплатить <?= $ads['wmr']?> WMR</a>
    </td>
  </tr>
  
  <? } ?>
  <?
  
  ?>
  <tr>
   <td style="width: 90px;"><img src="/_images/images/logo_wm.gif" /></td>
    <td>
    <b>:: WebMoney</b><br /><br />
    
    Тип операции: <b>Оплата услуги</b><br /><br />
    
    <b>Кошелек:</b><br />
    WMR: <?= $system['wmpurse']?> (к оплате <?= $ads['wmr']?> WMR)<br />
    
    <form action="https://merchant.webmoney.ru/lmi/payment.asp" method="POST" style="margin: 2px;">
      <fieldset>
        <input type=hidden name="LMI_PAYMENT_AMOUNT" value="<?= $ads['wmr']?>">
        <input type=hidden name="LMI_PAYMENT_DESC_BASE64" value="<?= base64_encode('Оплата рекламы | ' . text($ads['name']))?>">
        <input type=hidden name="LMI_PAYEE_PURSE" value="<?= $system['wmpurse']?>">
        <input type=hidden name="LMI_RESULT_URL" value="http://<?= urlencode($_SERVER['HTTP_HOST'])?>/index.php?func=<?= $func?>&amp;id=<?= $ads['id']?>">
        <input type=hidden name="LMI_FAIL_URL" value="http://<?= urlencode($_SERVER['HTTP_HOST'])?>/index.php?func=<?= $func?>&amp;id=<?= $ads['id']?>&amp;fail">
        <input type=hidden name="LMI_SUCCESS_URL" value="http://<?= urlencode($_SERVER['HTTP_HOST'])?>/index.php?func=<?= $func?>&amp;id=<?= $ads['id']?>&amp;success">
        <input type=hidden name="LMI_PAYMENT_NO" value="<?= $ads['id']?>">
        <input type=hidden name="id_user" value="<?= $user['id']?>">
       <button type="submit" class="btn">Оплатить <?= $ads['wmr']?> WMR</button>
      </fieldset>
    </form>
    </td>
  </tr>

<?  

?>
</table>
</div>
<?
} else {
?>
  <div class="alert alert-error" style="margin: 2px;">
    <center>
      <img src="<?= ICONS?>big_err.png" /> Вы не авторизованы на нашем сайте!<br /><br />
      <a href="?func=user.auth" class="btn">Авторизация</a>
    </center>
  </div>
<?
}

if ($level > 0) {
?>
<div class="foot">
&laquo; <a href="?func=service.nopays&amp;id=<?= $user['id']?>">Список счетов</a>
</div>  
<?
}
?>