bug fixes and subscription improvements

This commit is contained in:
Dennis Eichhorn 2023-04-25 01:51:28 +00:00
parent 00057a7a2d
commit 83757a469d
2 changed files with 64 additions and 0 deletions

View File

@ -30,6 +30,35 @@
} }
} }
} }
},
"1008000002": {
"name": "Inform users",
"description": {
"en": "Inform users about changes",
"de": "Informiere Nutzer über Änderungen"
},
"function_type": "Api",
"function": "informUsers",
"module": "OnlineResourceWatcher",
"inputs": [
"unit",
"{*}"
],
"outputs": [
"resources[]",
"{*}"
],
"settings": {
"unit": {
"type": "input",
"subtype": "number",
"default": null,
"title": {
"en": "Unit",
"de": "Unit"
}
}
}
} }
} }
} }

View File

@ -186,6 +186,41 @@ final class ApiController extends Controller
$this->fillJsonResponse($request, $response, NotificationLevel::OK, 'Resources', 'Resources were checked.', null); $this->fillJsonResponse($request, $response, NotificationLevel::OK, 'Resources', 'Resources were checked.', null);
} }
/**
* Inform users about changed resources
*
* @param mixed $var Generic variable
*
* @return void
*
* @since 1.0.0
*/
public function informUsers(mixed $var = null) : void
{
$dateTime = new \DateTime('now');
$dateTime = $dateTime->modify('-1 hour');
$reports = ReportMapper::getAll()
->where('status', ReportStatus::CHANGE)
->where('createdAt', $dateTime, '>=')
->execute();
foreach ($reports as $report) {
// @todo: get templates
// @todo: get users to inform
// @todo: inform users
}
}
/**
* Checks resources for changes
*
* @param mixed $var Generic variable
*
* @return array
*
* @since 1.0.0
*/
public function checkResources(mixed $var = null) : array public function checkResources(mixed $var = null) : array
{ {
$changed = []; $changed = [];