示例#1
0
 public static function checkConfig()
 {
     payqr_config::$secretKeyIn = trim(payqr_config::$secretKeyIn);
     payqr_config::$secretKeyOut = trim(payqr_config::$secretKeyOut);
     payqr_config::$logFile = trim(payqr_config::$logFile);
     payqr_config::$merchantID = trim(payqr_config::$merchantID);
     if (payqr_config::$secretKeyIn == "") {
         throw new payqr_exeption("Поле payqr_config::secretKeyIn не может быть пустым, проверьте конфигурацию библиотеки PayQR");
     }
     if (payqr_config::$secretKeyOut == "") {
         throw new payqr_exeption("Поле payqr_config::secretKeyOut не может быть пустым, проверьте конфигурацию библиотеки PayQR");
     }
     if (payqr_config::$enabledLog && payqr_config::$logFile == "") {
         throw new payqr_exeption("Поле payqr_config::logFile не может быть пустым, проверьте конфигурацию библиотеки PayQR");
     }
     if (payqr_config::$merchantID == "") {
         throw new payqr_exeption("Поле payqr_config::merchantID не может быть пустым, проверьте конфигурацию библиотеки PayQR");
     }
 }
示例#2
0
$rest = $modx->getService('rest', 'rest.modRestService', '', array('basePath' => dirname(__FILE__) . '/Controllers/', 'controllerClassSeparator' => '', 'controllerClassPrefix' => 'Payqr', 'xmlRootNode' => 'response'));
// Prepare the request
$rest->prepare();
// Make sure the user has the proper permissions, send the user a 401 error if not
if (!$rest->checkPermissions()) {
    $rest->sendUnauthorized(true);
}
//
require_once $modx->getOption('payqr_core_path', null, $modx->getOption('core_path') . 'components/payqr/') . 'model/payqr/Payqr/payqr_config.php';
$payqr_button = new payqr_button($modx, []);
$config = $payqr_button->getPayqrItems();
$payqrConfig = payqr_config::init($config['merchant_id'], $config['secret_key_in'], $config['secret_key_out']);
if (isset($config['log_url']) && !empty($config['log_url'])) {
    payqr_config::$enabledLog = true;
    $log_file_name = pathinfo($config['log_url']);
    payqr_config::setLogFile($log_file_name['basename']);
}
payqr_logs::addEnter();
try {
    $Payqr = new payqr_receiver();
    // создаем объект payqr_receiver
    $Payqr->receiving();
    // получаем идентификатор счета на оплату в PayQR
    // проверяем тип уведомления от PayQR
    switch ($Payqr->getType()) {
        case 'invoice.deliverycases.updating':
            // нужно вернуть в PayQR список способов доставки для покупателя
            require_once PAYQR_HANDLER . 'invoice.deliverycases.updating.php';
            break;
        case 'invoice.pickpoints.updating':
            // нужно вернуть в PayQR список пунктов самовывоза для покупателя