/**
  * Kontrola provedeni platby uzivatele
  * - verifikace parametru z redirectu
  * - kontrola provedeni platby
  *
  * @param long $paymentSessionId - identifikator platby
  * @param long $eshopGoId - identifikator uzivatele - GoId
  * @param string $variableSymbol - identifikator objednavky
  * @param int $totalPriceInCents - celkova cena objednavky v halerich
  * @param string $productName - popis objednavky zobrazujici se na platebni brane
  * @param string $secret - kryptovaci heslo pridelene uzivateli
  *
  * @return $result
  *  result["code"] 		  - kod vysledku volani
  *  result["description"] - popis vysledku volani
  */
 public static function isBuyerPaymentDone($paymentSessionId, $buyerGoId, $variableSymbol, $totalPriceInCents, $productName, $secret)
 {
     $result = array();
     try {
         //inicializace WS
         ini_set("soap.wsdl_cache_enabled", "0");
         $go_client = new SoapClient(GopayConfig::ws(), array());
         //sestaveni dotazu na stav platby
         $sessionEncryptedSignature = GopayHelper::encrypt(GopayHelper::hash(GopayHelper::concatPaymentSession((double) $buyerGoId, (double) $paymentSessionId, $secret)), $secret);
         $payment_session = array("buyerGoId" => (double) $buyerGoId, "paymentSessionId" => (double) $paymentSessionId, "encryptedSignature" => $sessionEncryptedSignature);
         /*
          * Kontrola stavu platby na strane GoPay prostrednictvim WS
          */
         $payment_status = $go_client->__call('paymentStatusGW2', array('paymentSessionInfo' => $payment_session));
         $result["description"] = $payment_status->resultDescription;
         $result["code"] = $payment_status->sessionState;
         /*
          * Kontrola zaplacenosti objednavky, verifikace parametru objednavky
          */
         if (!GopayHelper::checkBuyerPaymentStatus($payment_status, 'PAYMENT_DONE', (double) $buyerGoId, $variableSymbol, (int) $totalPriceInCents, $productName, $secret)) {
             /*
              * Platba neprobehla korektne
              */
             $result["code"] = GopayHelper::FAILED;
         }
     } catch (SoapFault $f) {
         /*
          * Chyba v komunikaci s GoPay serverem
          */
         $result["code"] = GopayHelper::FAILED;
         $result["description"] = GopayHelper::FAILED;
     }
     return $result;
 }