/**
  * функция проверяет параметры полученные от сервера intellectmoney в оповещении о платеже ($_POST)
  * Проверяется наличие всех необходимых полей, услуга и ее стоимость
  * @param (array) $arrData - массив параметров ($_POST от сервера intellectmoney)
  * @param (array) $arrTariffs - тарифная сетка intellectmoney
  * @return bool
  */
 static function checkResultParams(&$arrData, &$arrTariffs)
 {
     // проверяем порциями, чтобы было читабельнее
     if (empty($arrData['LMI_PAYEE_PURSE']) || $arrData['LMI_PAYEE_PURSE'] != INTELLECTMONEY_CONF_PAYEE_PURSE) {
         return false;
     }
     if (empty($arrData['LMI_PAYMENT_AMOUNT']) || empty($arrData['LMI_PAYMENT_NO'])) {
         return false;
     }
     if (empty($arrData['LMI_SYS_INVS_NO']) || empty($arrData['LMI_SYS_TRANS_NO'])) {
         return false;
     }
     if (empty($arrData['LMI_HASH']) || empty($arrData['LMI_SYS_TRANS_DATE'])) {
         return false;
     }
     if (empty($arrData['SERVICE'])) {
         return false;
     }
     // проверяем подпись
     if (self::refSign($arrData) != strtoupper($arrData['LMI_HASH'])) {
         return false;
     }
     // проверяем услугу и ее цену в тарифной сетке
     $payments = new payments();
     $service = $payments->explodeServiceString($arrData['SERVICE']);
     if (!in_array($service[0], $arrTariffs) || $arrData['LMI_PAYMENT_AMOUNT'] != $arrTariffs[$service[0]]) {
         return false;
     }
     return true;
 }
 /**
  * функция проверяет параметры полученные от сервера webmoney в оповещении о платеже ($_POST)
  * Проверяется наличие всех необходимых полей, услуга и ее стоимость
  *
  * @param (array) $arrData - массив параметров ($_POST от сервера Webmoney)
  * @param (array) $arrTariffs - тарифная сетка Webmoney
  * 
  * @return bool
  */
 static function checkResultParams(&$arrData, &$arrTariffs)
 {
     // проверяем порциями, чтобы было читабельнее
     if (!isset($arrData['LMI_PAYEE_PURSE']) || !$arrData['LMI_PAYEE_PURSE'] || $arrData['LMI_PAYEE_PURSE'] !== WEBMONEY_CONF_PAYEE_PURSE) {
         return false;
     }
     if (!isset($arrData['LMI_PAYMENT_AMOUNT']) || !$arrData['LMI_PAYMENT_AMOUNT'] || !isset($arrData['LMI_PAYMENT_NO']) || !$arrData['LMI_PAYMENT_NO']) {
         return false;
     }
     if (!isset($arrData['LMI_SYS_INVS_NO']) || !$arrData['LMI_SYS_INVS_NO'] || !isset($arrData['LMI_SYS_TRANS_NO']) || !$arrData['LMI_SYS_TRANS_NO']) {
         return false;
     }
     if (!isset($arrData['LMI_MODE']) || !isset($arrData['LMI_PAYER_WM']) || !$arrData['LMI_PAYER_WM'] || !isset($arrData['LMI_PAYER_PURSE']) || !$arrData['LMI_PAYER_PURSE']) {
         return false;
     }
     if (!isset($arrData['LMI_HASH']) || !$arrData['LMI_HASH'] || !isset($arrData['LMI_SYS_TRANS_DATE']) || !$arrData['LMI_SYS_TRANS_DATE']) {
         return false;
     }
     if (!isset($arrData['LMI_PAYMENT_DESC']) || !$arrData['LMI_PAYMENT_DESC'] || !isset($arrData['SERVICE']) || !$arrData['SERVICE']) {
         return false;
     }
     // проверяем подпись
     if (webmoney::refSign($arrData) != $arrData['LMI_HASH']) {
         return false;
     }
     // проверяем услугу и ее цену в тарифной сетке
     $payments = new payments();
     $service = $payments->explodeServiceString($arrData['SERVICE']);
     if (!in_array($service[0], $arrTariffs) || $arrData['LMI_PAYMENT_AMOUNT'] != $arrTariffs[$service[0]]) {
         return false;
     }
     return true;
 }