Jacek Kowalski
2026-03-31 797f70689539add5d9a891f8234a29b29a79cf3d
Synchronize client's email & phone
2 files modified
25 ■■■■■ changed files
manifest.json 2 ●●● patch | view | raw | blame | history
src/ContractorSynchronizer.php 23 ●●●●● patch | view | raw | blame | history
manifest.json
@@ -5,7 +5,7 @@
        "displayName": "wFirma.pl integration",
        "description": "Synchronizes customers and invoices with Polish invoicing system wFirma.pl",
        "url": "https://github.com/jacekkow/ucrm-wfirma",
        "version": "5.0",
        "version": "5.1",
        "ucrmVersionCompliancy": {
            "min": "4.0.0",
            "max": null
src/ContractorSynchronizer.php
@@ -3,6 +3,7 @@
namespace SIPL\UCRM\wFirma;
use Webit\WFirmaSDK\Contractors as Contractors;
use Webit\WFirmaSDK\Contractors\ContactDetails;
use Webit\WFirmaSDK\Payments as Payments;
class ContractorSynchronizer extends Synchronizer {
@@ -95,6 +96,28 @@
            }
        }
        $email = NULL;
        $phone = NULL;
        foreach ($client['contacts'] as $contact) {
            if ($contact['isContact']) {
                $email = $contact['email'];
                $phone = strtr($contact['phone'], ['+' => '00']);
                break;
            }
        }
        $contactDetails = new ContactDetails(
            $phone,
            $contractor->contactDetails()->skype(),
            $contractor->contactDetails()->fax(),
            $email,
            $contractor->contactDetails()->url(),
        );
        if ($contractor->contactDetails() != $contactDetails) {
            $changed = TRUE;
            $contractor->changeContactDetails($contactDetails);
        }
        $paymentSettings = new Contractors\PaymentSettings(
            $client['invoiceMaturityDays'],
            Payments\PaymentMethod::transfer(),