Use uri as displayname

This commit is contained in:
Thomas Müller 2015-11-16 21:01:27 +01:00
parent a0b649442c
commit e4568234a5
2 changed files with 13 additions and 20 deletions

View File

@ -169,19 +169,13 @@ class CalDavBackend extends AbstractBackend implements SyncSupport, Subscription
* @return void * @return void
*/ */
function createCalendar($principalUri, $calendarUri, array $properties) { function createCalendar($principalUri, $calendarUri, array $properties) {
$fieldNames = [
'principaluri',
'uri',
'synctoken',
'transparent',
'components'
];
$values = [ $values = [
'principaluri' => $principalUri, 'principaluri' => $principalUri,
'uri' => $calendarUri, 'uri' => $calendarUri,
'synctoken' => 1, 'synctoken' => 1,
'transparent' => 0, 'transparent' => 0,
'components' => 'VEVENT,VTODO' 'components' => 'VEVENT,VTODO',
'displayname' => $calendarUri
]; ];
// Default value // Default value
@ -199,22 +193,16 @@ class CalDavBackend extends AbstractBackend implements SyncSupport, Subscription
foreach($this->propertyMap as $xmlName=>$dbName) { foreach($this->propertyMap as $xmlName=>$dbName) {
if (isset($properties[$xmlName])) { if (isset($properties[$xmlName])) {
$values[$dbName] = $properties[$xmlName]; $values[$dbName] = $properties[$xmlName];
$fieldNames[] = $dbName;
} }
} }
$query = $this->db->getQueryBuilder(); $query = $this->db->getQueryBuilder();
$query->insert('calendars') $query->insert('calendars');
->values([ foreach($values as $column => $value) {
'principaluri' => $query->createNamedParameter($values['principaluri']), $query->setValue($column, $query->createNamedParameter($value));
'uri' => $query->createNamedParameter($values['uri']), }
'synctoken' => $query->createNamedParameter($values['synctoken']), $query->execute();
'transparent' => $query->createNamedParameter($values['transparent']),
'components' => $query->createNamedParameter($values['components']),
])
->execute();
} }
/** /**

View File

@ -249,14 +249,19 @@ EOD;
} }
private function createTestCalendar() { private function createTestCalendar() {
$this->backend->createCalendar(self::UNIT_TEST_USER, 'Example', []); $this->backend->createCalendar(self::UNIT_TEST_USER, 'Example', [
'{http://apple.com/ns/ical/}calendar-color' => '#1C4587FF'
]);
$calendars = $this->backend->getCalendarsForUser(self::UNIT_TEST_USER); $calendars = $this->backend->getCalendarsForUser(self::UNIT_TEST_USER);
$this->assertEquals(1, count($calendars)); $this->assertEquals(1, count($calendars));
$this->assertEquals(self::UNIT_TEST_USER, $calendars[0]['principaluri']); $this->assertEquals(self::UNIT_TEST_USER, $calendars[0]['principaluri']);
/** @var SupportedCalendarComponentSet $components */ /** @var SupportedCalendarComponentSet $components */
$components = $calendars[0]['{urn:ietf:params:xml:ns:caldav}supported-calendar-component-set']; $components = $calendars[0]['{urn:ietf:params:xml:ns:caldav}supported-calendar-component-set'];
$this->assertEquals(['VEVENT','VTODO'], $components->getValue()); $this->assertEquals(['VEVENT','VTODO'], $components->getValue());
$color = $calendars[0]['{http://apple.com/ns/ical/}calendar-color'];
$this->assertEquals('#1C4587FF', $color);
$this->assertEquals('Example', $calendars[0]['uri']); $this->assertEquals('Example', $calendars[0]['uri']);
$this->assertEquals('Example', $calendars[0]['{DAV:}displayname']);
$calendarId = $calendars[0]['id']; $calendarId = $calendars[0]['id'];
return $calendarId; return $calendarId;