firefly-iii/app/lib/FireflyIII/Event/TransactionJournal.php

57 lines
1.6 KiB
PHP
Raw Normal View History

<?php
namespace FireflyIII\Event;
use Illuminate\Events\Dispatcher;
2014-12-13 14:59:02 -06:00
/**
* Class TransactionJournal
*
* @package FireflyIII\Event
*/
class TransactionJournal
{
2014-12-13 14:59:02 -06:00
/**
* @param \TransactionJournal $journal
*/
public function store(\TransactionJournal $journal)
{
2014-12-13 15:54:52 -06:00
/** @var \FireflyIII\Database\RecurringTransaction\RecurringTransaction $repository */
$repository = \App::make('FireflyIII\Database\RecurringTransaction\RecurringTransaction');
$set = $repository->get();
/** @var \RecurringTransaction $entry */
foreach ($set as $entry) {
$repository->scan($entry, $journal);
}
}
/**
* @param Dispatcher $events
*/
public function subscribe(Dispatcher $events)
{
// triggers when others are updated.
$events->listen('transactionJournal.store', 'FireflyIII\Event\TransactionJournal@store');
$events->listen('transactionJournal.update', 'FireflyIII\Event\TransactionJournal@update');
}
2014-12-13 14:59:02 -06:00
/**
* @param \TransactionJournal $journal
*/
public function update(\TransactionJournal $journal)
{
2014-12-13 15:54:52 -06:00
/** @var \FireflyIII\Database\RecurringTransaction\RecurringTransaction $repository */
$repository = \App::make('FireflyIII\Database\RecurringTransaction\RecurringTransaction');
$set = $repository->get();
$journal->recurring_transaction_id = null;
$journal->save();
/** @var \RecurringTransaction $entry */
foreach ($set as $entry) {
$repository->scan($entry, $journal);
}
}
}