mirror of
https://github.com/nextcloud/server.git
synced 2024-07-24 21:34:53 +02:00
Merge pull request #17148 from nextcloud/always-provide-color-to-default-personal-calendar
Always provide theme color for default personal calendar
This commit is contained in:
commit
8ebbd91909
@ -31,6 +31,7 @@ namespace OCA\DAV;
|
||||
use OCA\DAV\CalDAV\CalDavBackend;
|
||||
use OCA\DAV\CardDAV\CardDavBackend;
|
||||
use OCA\DAV\CardDAV\SyncService;
|
||||
use OCP\Defaults;
|
||||
use OCP\IUser;
|
||||
use OCP\IUserManager;
|
||||
use OCP\Util;
|
||||
@ -59,6 +60,9 @@ class HookManager {
|
||||
/** @var array */
|
||||
private $addressBooksToDelete = [];
|
||||
|
||||
/** @var Defaults */
|
||||
private $themingDefaults;
|
||||
|
||||
/** @var EventDispatcherInterface */
|
||||
private $eventDispatcher;
|
||||
|
||||
@ -66,11 +70,13 @@ class HookManager {
|
||||
SyncService $syncService,
|
||||
CalDavBackend $calDav,
|
||||
CardDavBackend $cardDav,
|
||||
Defaults $themingDefaults,
|
||||
EventDispatcherInterface $eventDispatcher) {
|
||||
$this->userManager = $userManager;
|
||||
$this->syncService = $syncService;
|
||||
$this->calDav = $calDav;
|
||||
$this->cardDav = $cardDav;
|
||||
$this->themingDefaults = $themingDefaults;
|
||||
$this->eventDispatcher = $eventDispatcher;
|
||||
}
|
||||
|
||||
@ -156,6 +162,8 @@ class HookManager {
|
||||
try {
|
||||
$this->calDav->createCalendar($principal, CalDavBackend::PERSONAL_CALENDAR_URI, [
|
||||
'{DAV:}displayname' => CalDavBackend::PERSONAL_CALENDAR_NAME,
|
||||
'{http://apple.com/ns/ical/}calendar-color' => $this->themingDefaults->getColorPrimary(),
|
||||
'components' => 'VEVENT'
|
||||
]);
|
||||
} catch (\Exception $ex) {
|
||||
\OC::$server->getLogger()->logException($ex);
|
||||
|
@ -34,6 +34,7 @@ use OCA\DAV\CalDAV\CalDavBackend;
|
||||
use OCA\DAV\CardDAV\CardDavBackend;
|
||||
use OCA\DAV\CardDAV\SyncService;
|
||||
use OCA\DAV\HookManager;
|
||||
use OCP\Defaults;
|
||||
use OCP\IL10N;
|
||||
use OCP\IUser;
|
||||
use OCP\IUserManager;
|
||||
@ -75,6 +76,13 @@ class HookManagerTest extends TestCase {
|
||||
->disableOriginalConstructor()
|
||||
->getMock();
|
||||
|
||||
/** @var Defaults | \PHPUnit\Framework\MockObject\MockObject $syncService */
|
||||
$defaults = $this->getMockBuilder(Defaults::class)
|
||||
->disableOriginalConstructor()
|
||||
->getMock();
|
||||
|
||||
$defaults->expects($this->once())->method('getColorPrimary')->willReturn('#745bca');
|
||||
|
||||
/** @var CalDavBackend | \PHPUnit\Framework\MockObject\MockObject $cal */
|
||||
$cal = $this->getMockBuilder(CalDavBackend::class)
|
||||
->disableOriginalConstructor()
|
||||
@ -82,7 +90,11 @@ class HookManagerTest extends TestCase {
|
||||
$cal->expects($this->once())->method('getCalendarsForUserCount')->willReturn(0);
|
||||
$cal->expects($this->once())->method('createCalendar')->with(
|
||||
'principals/users/newUser',
|
||||
'personal', ['{DAV:}displayname' => 'Personal']);
|
||||
'personal', [
|
||||
'{DAV:}displayname' => 'Personal',
|
||||
'{http://apple.com/ns/ical/}calendar-color' => '#745bca',
|
||||
'components' => 'VEVENT'
|
||||
]);
|
||||
|
||||
/** @var CardDavBackend | \PHPUnit\Framework\MockObject\MockObject $card */
|
||||
$card = $this->getMockBuilder(CardDavBackend::class)
|
||||
@ -93,7 +105,7 @@ class HookManagerTest extends TestCase {
|
||||
'principals/users/newUser',
|
||||
'contacts', ['{DAV:}displayname' => 'Contacts']);
|
||||
|
||||
$hm = new HookManager($userManager, $syncService, $cal, $card, $this->eventDispatcher);
|
||||
$hm = new HookManager($userManager, $syncService, $cal, $card, $defaults, $this->eventDispatcher);
|
||||
$hm->firstLogin($user);
|
||||
}
|
||||
|
||||
@ -113,6 +125,11 @@ class HookManagerTest extends TestCase {
|
||||
->disableOriginalConstructor()
|
||||
->getMock();
|
||||
|
||||
/** @var Defaults | \PHPUnit\Framework\MockObject\MockObject $syncService */
|
||||
$defaults = $this->getMockBuilder(Defaults::class)
|
||||
->disableOriginalConstructor()
|
||||
->getMock();
|
||||
|
||||
/** @var CalDavBackend | \PHPUnit\Framework\MockObject\MockObject $cal */
|
||||
$cal = $this->getMockBuilder(CalDavBackend::class)
|
||||
->disableOriginalConstructor()
|
||||
@ -127,7 +144,7 @@ class HookManagerTest extends TestCase {
|
||||
$card->expects($this->once())->method('getAddressBooksForUserCount')->willReturn(1);
|
||||
$card->expects($this->never())->method('createAddressBook');
|
||||
|
||||
$hm = new HookManager($userManager, $syncService, $cal, $card, $this->eventDispatcher);
|
||||
$hm = new HookManager($userManager, $syncService, $cal, $card, $defaults, $this->eventDispatcher);
|
||||
$hm->firstLogin($user);
|
||||
}
|
||||
|
||||
@ -147,6 +164,12 @@ class HookManagerTest extends TestCase {
|
||||
->disableOriginalConstructor()
|
||||
->getMock();
|
||||
|
||||
/** @var Defaults | \PHPUnit\Framework\MockObject\MockObject $syncService */
|
||||
$defaults = $this->getMockBuilder(Defaults::class)
|
||||
->disableOriginalConstructor()
|
||||
->getMock();
|
||||
$defaults->expects($this->once())->method('getColorPrimary')->willReturn('#745bca');
|
||||
|
||||
/** @var CalDavBackend | \PHPUnit\Framework\MockObject\MockObject $cal */
|
||||
$cal = $this->getMockBuilder(CalDavBackend::class)
|
||||
->disableOriginalConstructor()
|
||||
@ -154,7 +177,11 @@ class HookManagerTest extends TestCase {
|
||||
$cal->expects($this->once())->method('getCalendarsForUserCount')->willReturn(0);
|
||||
$cal->expects($this->once())->method('createCalendar')->with(
|
||||
'principals/users/newUser',
|
||||
'personal', ['{DAV:}displayname' => 'Personal']);
|
||||
'personal', [
|
||||
'{DAV:}displayname' => 'Personal',
|
||||
'{http://apple.com/ns/ical/}calendar-color' => '#745bca',
|
||||
'components' => 'VEVENT'
|
||||
]);
|
||||
|
||||
/** @var CardDavBackend | \PHPUnit\Framework\MockObject\MockObject $card */
|
||||
$card = $this->getMockBuilder(CardDavBackend::class)
|
||||
@ -165,7 +192,7 @@ class HookManagerTest extends TestCase {
|
||||
'principals/users/newUser',
|
||||
'contacts', ['{DAV:}displayname' => 'Contacts']);
|
||||
|
||||
$hm = new HookManager($userManager, $syncService, $cal, $card, $this->eventDispatcher);
|
||||
$hm = new HookManager($userManager, $syncService, $cal, $card, $defaults, $this->eventDispatcher);
|
||||
$hm->firstLogin($user);
|
||||
}
|
||||
|
||||
@ -187,6 +214,11 @@ class HookManagerTest extends TestCase {
|
||||
$syncService->expects($this->once())
|
||||
->method('deleteUser');
|
||||
|
||||
/** @var Defaults | \PHPUnit\Framework\MockObject\MockObject $syncService */
|
||||
$defaults = $this->getMockBuilder(Defaults::class)
|
||||
->disableOriginalConstructor()
|
||||
->getMock();
|
||||
|
||||
/** @var CalDavBackend | \PHPUnit\Framework\MockObject\MockObject $cal */
|
||||
$cal = $this->getMockBuilder(CalDavBackend::class)
|
||||
->disableOriginalConstructor()
|
||||
@ -206,7 +238,7 @@ class HookManagerTest extends TestCase {
|
||||
]);
|
||||
$card->expects($this->once())->method('deleteAddressBook');
|
||||
|
||||
$hm = new HookManager($userManager, $syncService, $cal, $card, $this->eventDispatcher);
|
||||
$hm = new HookManager($userManager, $syncService, $cal, $card, $defaults, $this->eventDispatcher);
|
||||
$hm->preDeleteUser(['uid' => 'newUser']);
|
||||
$hm->postDeleteUser(['uid' => 'newUser']);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user