01acfa3b40
Type checking / changes (push) Has been cancelled
Type checking / test (push) Has been cancelled
Type checking / typescript-summary (push) Has been cancelled
Node tests / changes (push) Has been cancelled
Node tests / test (push) Has been cancelled
Node tests / test-summary (push) Has been cancelled
Источник: https://github.com/nextcloud/spreed/archive/refs/tags/v22.0.12.tar.gz С этого коммита ветка официального Nextcloud Talk отрезана (решение владельца 2026-07-06). Все дальнейшие изменения — только наши; версии релизов: 22.0.12-f7.N.
59 lines
1.2 KiB
PHP
59 lines
1.2 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
/**
|
|
* SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
|
|
* SPDX-License-Identifier: AGPL-3.0-or-later
|
|
*/
|
|
|
|
namespace OCA\Talk\Events;
|
|
|
|
use OCA\Talk\Participant;
|
|
use OCA\Talk\Room;
|
|
|
|
abstract class ACallStartedEvent extends ARoomModifiedEvent {
|
|
/**
|
|
* @param array<AParticipantModifiedEvent::DETAIL_*, bool|list<string>> $details
|
|
*/
|
|
public function __construct(
|
|
Room $room,
|
|
?\DateTime $newValue,
|
|
protected int $callFlag,
|
|
protected array $details,
|
|
?Participant $actor,
|
|
) {
|
|
parent::__construct(
|
|
$room,
|
|
self::PROPERTY_ACTIVE_SINCE,
|
|
$newValue,
|
|
null,
|
|
$actor,
|
|
);
|
|
}
|
|
|
|
public function getCallFlag(): int {
|
|
return $this->callFlag;
|
|
}
|
|
|
|
/**
|
|
* @param AParticipantModifiedEvent::DETAIL_* $detail
|
|
*/
|
|
public function getDetail(string $detail): ?bool {
|
|
if (!isset($this->details[$detail])) {
|
|
return null;
|
|
}
|
|
return (bool)$this->details[$detail];
|
|
}
|
|
|
|
/**
|
|
* @param AParticipantModifiedEvent::DETAIL_* $detail
|
|
* @return list<string>
|
|
*/
|
|
public function getDetailList(string $detail): array {
|
|
if (!isset($this->details[$detail]) || !is_array($this->details[$detail])) {
|
|
return [];
|
|
}
|
|
return $this->details[$detail];
|
|
}
|
|
}
|