Jacek Kowalski
2026-02-16 478aa15a9dcf86dff9408694f4450244f217cbe9
public.php
@@ -2,7 +2,16 @@
require_once(__DIR__ . '/vendor/autoload.php');
try {
   require_once(__DIR__ . '/hook_enable.php');
   if (isset($_GET['barcode'])) {
      header('Content-Type: image/svg+xml');
      echo (new \chillerlan\QRCode\QRCode(new \chillerlan\QRCode\QROptions([
         'outputBase64' => false,
         'addQuietzone' => false,
         'drawLightModules' => false,
         'connectPaths' => true,
      ])))->render($_GET['barcode']);
      die();
   }
   $helper = new \SIPL\UCRM\wFirma\UcrmHelper();
   $event = $helper->getCurrentEvent();
@@ -15,21 +24,32 @@
   } elseif ($event['entity'] === 'client') {
      $synchronizer = new \SIPL\UCRM\wFirma\ContractorSynchronizer($wFirmaApi, $helper);
   } elseif ($event['entity'] === 'invoice') {
      $qrSync = new \SIPL\UCRM\wFirma\InvoiceQrCodeSynchronizer($helper);
      $qrSync->synchronize($event['entityId'], $event['extraData']['entityBeforeEdit'] ?? null);
      $synchronizer = new \SIPL\UCRM\wFirma\InvoiceSynchronizer($wFirmaApi, $helper);
   } elseif ($event['entity'] === 'payment') {
      $synchronizer = new \SIPL\UCRM\wFirma\PaymentSynchronizer($wFirmaApi, $helper);
   } elseif ($event['entity'] === 'webhook') {
      echo 'Webhook OK!';
      echo 'Webhook OK! UCRM version: ' . $helper->getVersion();
      die();
   } else {
      echo 'Nothing to do with entity ' . $event['entity'];
      die();
   }
   if ($synchronizer->synchronize($event['entityId'])) {
      echo 'Object synchronized';
   if ($event['changeType'] === 'delete') {
      if($synchronizer->delete($event['extraData']['entity'])) {
         echo 'Object deleted';
      } else {
         echo 'Nothing to do';
      }
   } else {
      echo 'Nothing to do';
      if ($synchronizer->synchronize($event['entityId'])) {
         echo 'Object synchronized';
      } else {
         echo 'Nothing to do';
      }
   }
} catch (Exception $e) {
   header('HTTP/1.1 500 Internal Server Error');