Example #1
0
        ?>
" />
                                <input type="hidden" name="id" value="<?php 
        echo $stage->data['id'];
        ?>
" />
                                <input type="hidden" name="bank" value="1" />
															</div>
                            <?php 
        break;
    case exrates::WMR:
    case exrates::WMZ:
        require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/wmpay.php";
        require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/pmpay.php";
        $wm = new wmpay();
        $pm = new pmpay();
        ?>
                            <form method="POST" action="https://paymaster.ru/Payment/Init" id="reserveFrm">
															<div>
                                <input type="hidden" name="LMI_MERCHANT_ID" value="<?php 
        echo $pm->merchants[pmpay::MERCHANT_SBR];
        ?>
" />
                                <input type="hidden" name="LMI_PAYMENT_AMOUNT" value="<?php 
        echo round($sbr->reserve_sum, 2);
        ?>
" />
                                <input type="hidden" name="LMI_CURRENCY" value="RUB" />
                                <input type="hidden" name="LMI_PAYMENT_DESC_BASE64" value="<?php 
        echo base64_encode(iconv('CP1251', 'UTF-8', 'Оплата по договору-оферте ' . $sbr->getContractNum() . '. ' . $ndss . '. Счет #' . $account->id . ', логин ' . $sbr->getLogin()));
        ?>
Example #2
0
if (date('i') % 15 == 0) {
    // проверка статусов платежей paymaster при возврате
    require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/pmpay.php";
    $pm = new pmpay();
    if (DEBUG) {
        $pm->setDebugUrl($GLOBALS['host'] . '/norisk2/admin/pm-server-test.php');
    }
    $pm->checkRefund();
}
if (SERVER === 'release') {
    /*
     * @todo: https://beta.free-lance.ru/mantis/view.php?id=29134#c87337
     * 
    require_once($_SERVER['DOCUMENT_ROOT'] . "/classes/qiwipay.php");
    $qiwipay = new qiwipay();
    $qiwipay->checkBillsStatus($error);
    */
    if (date('i') % 10 == 0) {
        // проверка статусов платежей paymaster
        require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/pmpay.php";
        $pm = new pmpay();
        $pm->checkInvoiced();
    }
}
// запускаетс¤ в 0 и 1 минуту каждого часа с начала суток до 5 утра
if (date('i') == 0 && date('H') >= 0 && date('H') <= 5) {
    $log = new log('minutly/' . SERVER . '-%d%m%Y[%H].log', 'w');
    // разморозка ѕ–ќ
    $log->TRACE(payed::freezeUpdateProUsers());
}
professions::autoProlongSpecs();
Example #3
0
 /**
  * Возврат денежных средств.
  * 
  * @global type $DB
  *
  * @param type $payment_id ИД операции в paymaster
  *
  * @return bool
  */
 public function refund($payment_id = null, $stage = null, $debug = false)
 {
     global $DB;
     $log = new log('pmpay/refundPayments-%d%m%Y.log', 'a', '%d.%m.%Y %H:%M:%S : ');
     $log->writeln("payment_id = [{$payment_id}], stage = [{$stage}], debug = [{$debug}]");
     if (!$payment_id) {
         return false;
     }
     require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/pmpay.php';
     require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/exrates.php';
     $pmpay = new pmpay();
     // Возврат осуществляется только при резервировании через WMR
     $sql = 'SELECT * FROM sbr_stages_payouts WHERE stage_id = ?i AND user_id = ?i AND is_refund IS NULL;';
     $row = $DB->row($sql, $stage->id, $stage->sbr->emp_id);
     // Возврат осуществляется только для работодателей
     if ($row) {
         if (DEBUG) {
             $log->writeln('debug_mode = ON');
             $pmpay->setDebugUrl($GLOBALS['host'] . '/norisk2/admin/pm-server-test.php');
         }
         $operation = (array) $pmpay->refundPayments($payment_id, $row['credit_sum']);
         if ($operation && $operation['Status'] != 'FAILURE' && $operation['ErrorCode'] == 0) {
             if ($operation['Status'] == 'EXECUTING' || $operation['Status'] == 'PENDING') {
                 $update = array('is_refund' => false, 'refund_id' => $operation['RefundID']);
                 $this->refundStatusUpdate($update, $row['id']);
             } elseif ($operation['Status'] == 'SUCCESS') {
                 $update = array('is_refund' => true, 'refund_id' => $operation['RefundID'], 'completed' => 'NOW()');
                 $this->refundStatusUpdate($update, $row['id']);
             } else {
                 $update = array('is_refund' => null, 'refund_id' => $operation['RefundID']);
                 $this->refundStatusUpdate($update, $row['id']);
             }
         }
     } else {
         $log = new log('pmpay/refundPayments-%d%m%Y.log', 'a', '%d.%m.%Y %H:%M:%S : ');
         $log->writeln("Ошибка выдачи SQL -- [{$DB->sql}].");
     }
 }
Example #4
0
<?php

define('NO_CSRF', 1);
$reqv = $_POST;
// ƒл¤ автоплатежей, тк мы не знаем u_token_key
require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/pmpay.php';
$account = new pmpay();
if (pmpay::getPaymentBillNO($reqv['LMI_PAYMENT_DESC']) > 0 && $reqv['PAYMENT_BILL_NO'] == '') {
    $reqv['PAYMENT_BILL_NO'] = pmpay::getPaymentBillNO($reqv['LMI_PAYMENT_DESC']);
}
$error = $reqv['LMI_PREREQUEST'] == 1 ? $account->prepare($reqv) : $account->checkdeposit($reqv);
//////////////////////////////
echo $error ? $error : 'YES';
Example #5
0
 /**
  * Вывод страницы по платежным системам WebMoney /bill/webmoney/.
  */
 public function webmoneyAction()
 {
     front::og('tpl')->page = 'index';
     front::og('tpl')->type = 'webmoney';
     front::og('tpl')->script = array('/scripts/bill2.js', 'md5.js');
     require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/pmpay.php';
     $wmpay = new wmpay();
     $pmpay = new pmpay();
     mt_srand();
     $user = new users();
     $user->GetUserByUID(get_uid(0));
     if (date('Ymd') >= 20130301) {
         // #0022399
         $wm_paymaster = 2;
     } else {
         $wm_paymaster = $user->wm_paymaster;
         $is_weekend = in_array(date('w'), array(0, 6));
         if ($wm_paymaster === null || $wm_paymaster == 2 && $is_weekend) {
             // 1:wmr, 2:paymaster
             $wm_paymaster = 1;
             if (!$is_weekend) {
                 $wm_paymaster += mt_rand(1, 100) > 50;
             }
             $user->setWmPaymaster($user->uid, $wm_paymaster);
         }
     }
     front::og('tpl')->_user = $user;
     front::og('tpl')->payment_number = mt_rand(1, 500000);
     front::og('tpl')->wmr_purse = $wmpay->wmzr[1];
     if ($is_paymaster = $wm_paymaster == 2) {
         front::og('tpl')->payment_number = $pmpay->genPaymentNo();
         front::og('tpl')->wmr_purse = $pmpay->merchants[pmpay::MERCHANT_BILL];
     }
     front::og('tpl')->is_paymaster = $is_paymaster;
     front::og('tpl')->display('bill/bill_paysys.tpl');
 }