2012-02-20 10:26:22 +00:00
|
|
|
<?php
|
|
|
|
/**
|
|
|
|
* Copyright (c) 2011 Bart Visscher <bartv@thisnet.nl>
|
|
|
|
* This file is licensed under the Affero General Public License version 3 or
|
|
|
|
* later.
|
|
|
|
* See the COPYING-README file.
|
|
|
|
*/
|
2012-04-17 17:31:29 +00:00
|
|
|
|
2012-05-03 10:23:29 +00:00
|
|
|
OCP\JSON::checkLoggedIn();
|
2012-02-20 10:26:22 +00:00
|
|
|
|
|
|
|
$id = $_POST['id'];
|
|
|
|
|
2012-04-08 02:37:26 +00:00
|
|
|
$access = OC_Calendar_App::getaccess($id, OC_Calendar_App::EVENT);
|
|
|
|
if($access != 'owner' && $access != 'rw'){
|
2012-05-03 10:23:29 +00:00
|
|
|
OCP\JSON::error(array('message'=>'permission denied'));
|
2012-02-22 09:42:33 +00:00
|
|
|
exit;
|
|
|
|
}
|
|
|
|
|
2012-04-10 19:53:39 +00:00
|
|
|
$vcalendar = OC_Calendar_App::getVCalendar($id, false, false);
|
2012-02-20 10:26:22 +00:00
|
|
|
$vevent = $vcalendar->VEVENT;
|
|
|
|
|
|
|
|
$delta = new DateInterval('P0D');
|
|
|
|
$delta->d = $_POST['dayDelta'];
|
|
|
|
$delta->i = $_POST['minuteDelta'];
|
|
|
|
|
|
|
|
OC_Calendar_App::isNotModified($vevent, $_POST['lastmodified']);
|
|
|
|
|
|
|
|
$dtend = OC_Calendar_Object::getDTEndFromVEvent($vevent);
|
|
|
|
$end_type = $dtend->getDateType();
|
|
|
|
$dtend->setDateTime($dtend->getDateTime()->add($delta), $end_type);
|
|
|
|
unset($vevent->DURATION);
|
|
|
|
|
2012-02-24 21:20:40 +00:00
|
|
|
$vevent->setDateTime('LAST-MODIFIED', 'now', Sabre_VObject_Property_DateTime::UTC);
|
|
|
|
$vevent->setDateTime('DTSTAMP', 'now', Sabre_VObject_Property_DateTime::UTC);
|
2012-02-20 10:26:22 +00:00
|
|
|
|
2012-04-10 19:53:39 +00:00
|
|
|
OC_Calendar_Object::edit($id, $vcalendar->serialize());
|
2012-02-20 10:26:22 +00:00
|
|
|
$lastmodified = $vevent->__get('LAST-MODIFIED')->getDateTime();
|
2012-06-16 07:48:07 +00:00
|
|
|
OCP\JSON::success(array('lastmodified'=>(int)$lastmodified->format('U')));
|