diff options
Diffstat (limited to 'apps/tasks/ajax/update_property.php')
-rw-r--r-- | apps/tasks/ajax/update_property.php | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/apps/tasks/ajax/update_property.php b/apps/tasks/ajax/update_property.php new file mode 100644 index 00000000000..1916a2eb7b1 --- /dev/null +++ b/apps/tasks/ajax/update_property.php @@ -0,0 +1,36 @@ +<?php +/** + * Copyright (c) 2012 Bart Visscher <bartv@thisnet.nl> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +// Init owncloud +require_once('../../../lib/base.php'); +OC_JSON::checkLoggedIn(); +OC_JSON::checkAppEnabled('tasks'); + +$id = $_POST['id']; +$property = $_POST['type']; +$vcalendar = OC_Calendar_App::getVCalendar( $id ); + +$vtodo = $vcalendar->VTODO; +switch($property) { + case 'summary': + $summary = $_POST['summary']; + $vtodo->setString('SUMMARY', $summary); + break; + case 'complete': + $checked = $_POST['checked']; + OC_Task_App::setComplete($vtodo, $checked ? '100' : '0', null); + break; + default: + OC_JSON::error(array('data'=>array('message'=>'Unknown type'))); + exit(); +} +OC_Calendar_Object::edit($id, $vcalendar->serialize()); + +$user_timezone = OC_Preferences::getValue(OC_USER::getUser(), 'calendar', 'timezone', date_default_timezone_get()); +$task_info = OC_Task_App::arrayForJSON($id, $vtodo, $user_timezone); +OC_JSON::success(array('data' => $task_info)); |