mirror of
https://github.com/nextcloud/server.git
synced 2026-07-15 21:03:00 -04:00
Merge pull request #29536 from nextcloud/fix/add-full-calendar-path-for-public-write
Fix missing calendar path for public write on Calendars
This commit is contained in:
commit
e1c2c13585
2 changed files with 15 additions and 1 deletions
|
|
@ -33,6 +33,7 @@ use OCP\Calendar\Exceptions\CalendarException;
|
|||
use OCP\Calendar\ICreateFromString;
|
||||
use OCP\Constants;
|
||||
use Sabre\DAV\Exception\Conflict;
|
||||
use function Sabre\Uri\split as uriSplit;
|
||||
|
||||
class CalendarImpl implements ICreateFromString {
|
||||
|
||||
|
|
@ -145,11 +146,19 @@ class CalendarImpl implements ICreateFromString {
|
|||
// so set the custom principal here
|
||||
$plugin->setCurrentPrincipal($this->calendar->getPrincipalURI());
|
||||
|
||||
if (empty($this->calendarInfo['uri'])) {
|
||||
throw new CalendarException('Could not write to calendar as URI parameter is missing');
|
||||
}
|
||||
|
||||
// Build full calendar path
|
||||
[, $user] = uriSplit($this->calendar->getPrincipalURI());
|
||||
$fullCalendarFilename = sprintf('calendars/%s/%s/%s', $user, $this->calendarInfo['uri'], $name);
|
||||
|
||||
$stream = fopen('php://memory', 'rb+');
|
||||
fwrite($stream, $calendarData);
|
||||
rewind($stream);
|
||||
try {
|
||||
$server->server->createFile($name, $stream);
|
||||
$server->server->createFile($fullCalendarFilename, $stream);
|
||||
} catch (Conflict $e) {
|
||||
throw new CalendarException('Could not create new calendar event: ' . $e->getMessage(), 0, $e);
|
||||
} finally {
|
||||
|
|
|
|||
|
|
@ -232,6 +232,11 @@
|
|||
<code>calendarSearch</code>
|
||||
</UndefinedInterfaceMethod>
|
||||
</file>
|
||||
<file src="apps/dav/lib/CalDAV/CalendarImpl.php">
|
||||
<UndefinedFunction occurrences="1">
|
||||
<code>uriSplit($this->calendar->getPrincipalURI())</code>
|
||||
</UndefinedFunction>
|
||||
</file>
|
||||
<file src="apps/dav/lib/CalDAV/CalendarRoot.php">
|
||||
<ParamNameMismatch occurrences="1">
|
||||
<code>$principal</code>
|
||||
|
|
|
|||
Loading…
Reference in a new issue