piggyBankRepetitions()->get(); if ($reps->count() == 1) { return $reps->first(); } if ($reps->count() == 0) { throw new FireflyException('Should always find a piggy bank repetition.'); } // should filter the one we need: $repetitions = $reps->filter( function (\PiggyBankRepetition $rep) use ($date) { if ($date >= $rep->startdate && $date <= $rep->targetdate) { return $rep; } return null; } ); if ($repetitions->count() == 0) { return null; } return $repetitions->first(); } /** * Returns all objects. * * @return Collection */ public function get() { return $this->getUser()->piggyBanks()->where('repeats', 0)->orderBy('name')->get(); } }