Skip to content

Instantly share code, notes, and snippets.

@Vitexus
Created March 11, 2019 18:23

Revisions

  1. Vitexus created this gist Mar 11, 2019.
    37 changes: 37 additions & 0 deletions FixFlexiBeeFIOCaptions.php
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,37 @@
    <?php

    define('EASE_LOGGER', 'console|syslog|email');
    define('EASE_APPNAME', 'FioCaptions');

    $inc = 'includes/Init.php';
    if (!file_exists($inc)) {
    chdir('..');
    }
    require_once $inc;

    $banker = new \FlexiPeeHP\Banka();
    $downloader = new \FioApi\Downloader(constant('FIO_RO_TOKEN'));

    try {
    $transactionList = $downloader->downloadSince(new \DateTime('-1 day'));
    foreach ($transactionList->getTransactions() as $transaction) {
    $id = $transaction->getId();
    $message = $transaction->getUserMessage();
    if (strlen($message > 20)) {
    $banker->setFilter(['vypisCisDokl' => '00'.$id]);
    $banker->insertToFlexiBee(['id' => 'ext:fio:'.$id, 'popis' => $message]);
    $banker->addStatusMessage(sprintf(_('Updating the Banking Label %s to %s'),
    $id,$message),
    ($banker->lastResponseCode == 201) ? 'success' : 'error' );
    }
    }
    } catch (\GuzzleHttp\Exception\BadResponseException $e) {
    if ($e->getCode() == 409) {
    $banker->addStatusMessage($e->getCode().': '._('You can use one token for API call every 30 seconds'),
    'error');
    }
    if ($e->getCode() == 500) {
    $banker->addStatusMessage($e->getCode().': '._('Server returned 500 Internal Error (probably invalid token?)',
    'error'));
    }
    }