WIP with option and result types

This commit is contained in:
2024-06-25 18:37:00 -04:00
parent dfd9a873f8
commit 1d5a3c1c7a
16 changed files with 302 additions and 136 deletions

View File

@@ -37,10 +37,13 @@ function refresh_all(): void
foreach (Feed::retrieveAll()->items() as /** @var Feed $feed */ $feed) {
$result = Feed::refreshFeed($feed->id, $feed->url);
$userKey = "$feed->user_id";
if (!key_exists($userKey, $users)) $users[$userKey] = Find::byId(Table::USER, $feed->user_id, User::class);
if (array_key_exists('error', $result)) {
if (!key_exists($userKey, $users)) {
$users[$userKey] = Find::byId(Table::USER, $feed->user_id, User::class)
->getOrElse(new User(email: 'user-not-found'));
}
if ($result->error()->isDefined()) {
printfn('ERR (%s) %s', $users[$userKey]->email, $feed->url);
printfn(' %s', $result['error']);
printfn(' %s', $result->error()->get());
} else {
printfn('OK (%s) %s', $users[$userKey]->email, $feed->url);
}