Обновление клиента
This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors
|
||||
* SPDX-FileCopyrightText: 2016 ownCloud, Inc.
|
||||
* SPDX-License-Identifier: AGPL-3.0-only
|
||||
*/
|
||||
|
||||
namespace OCA\Survey_Client\BackgroundJobs;
|
||||
|
||||
use OCP\AppFramework\Utility\ITimeFactory;
|
||||
use OCP\BackgroundJob\QueuedJob;
|
||||
use OCP\IGroupManager;
|
||||
use OCP\Notification\IManager;
|
||||
|
||||
class AdminNotification extends QueuedJob {
|
||||
public function __construct(
|
||||
ITimeFactory $time,
|
||||
protected IManager $manager,
|
||||
protected IGroupManager $groupManager,
|
||||
) {
|
||||
parent::__construct($time);
|
||||
}
|
||||
|
||||
protected function run($argument): void {
|
||||
$notification = $this->manager->createNotification();
|
||||
|
||||
$notification->setApp('survey_client')
|
||||
->setDateTime($this->time->getDateTime())
|
||||
->setSubject('updated')
|
||||
->setObject('dummy', '23');
|
||||
|
||||
$adminGroup = $this->groupManager->get('admin');
|
||||
foreach ($adminGroup->getUsers() as $admin) {
|
||||
$notification->setUser($admin->getUID());
|
||||
$this->manager->notify($notification);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
<?php
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors
|
||||
* SPDX-FileCopyrightText: 2016 ownCloud, Inc.
|
||||
* SPDX-License-Identifier: AGPL-3.0-only
|
||||
*/
|
||||
|
||||
namespace OCA\Survey_Client\BackgroundJobs;
|
||||
|
||||
use OCA\Survey_Client\Collector;
|
||||
use OCP\AppFramework\Http;
|
||||
use OCP\AppFramework\Utility\ITimeFactory;
|
||||
use OCP\BackgroundJob\IJob;
|
||||
use OCP\BackgroundJob\TimedJob;
|
||||
use Psr\Log\LoggerInterface;
|
||||
|
||||
class MonthlyReport extends TimedJob {
|
||||
protected Collector $collector;
|
||||
protected LoggerInterface $logger;
|
||||
|
||||
public function __construct(ITimeFactory $time,
|
||||
Collector $collector,
|
||||
LoggerInterface $logger) {
|
||||
parent::__construct($time);
|
||||
$this->collector = $collector;
|
||||
$this->logger = $logger;
|
||||
// Run all 28 days
|
||||
$this->setInterval(28 * 24 * 60 * 60);
|
||||
// keeping time sensitive to not overload the target server at a single specific time of the day
|
||||
$this->setTimeSensitivity(IJob::TIME_SENSITIVE);
|
||||
}
|
||||
|
||||
protected function run($argument) {
|
||||
$result = $this->collector->sendReport();
|
||||
|
||||
if ($result->getStatus() !== Http::STATUS_OK) {
|
||||
$this->logger->info('Error while sending usage statistic');
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user