aboutsummaryrefslogtreecommitdiffstats
path: root/apps/tasks/ajax
diff options
context:
space:
mode:
authorBart Visscher <bartv@thisnet.nl>2012-03-08 22:26:54 +0100
committerBart Visscher <bartv@thisnet.nl>2012-03-08 22:26:54 +0100
commitd1b2c10422692e182c0ec943d3a1925677a83f38 (patch)
tree2c7f63041a8aae53261bbc1f598b42923940e1ce /apps/tasks/ajax
parent8f9c85232508ffb9bda4f5fdeddb3e3630af0ba1 (diff)
downloadnextcloud-server-d1b2c10422692e182c0ec943d3a1925677a83f38.tar.gz
nextcloud-server-d1b2c10422692e182c0ec943d3a1925677a83f38.zip
Tasks: Update task list when adding or updating tasks
Diffstat (limited to 'apps/tasks/ajax')
-rw-r--r--apps/tasks/ajax/addtask.php11
-rw-r--r--apps/tasks/ajax/addtaskform.php8
-rw-r--r--apps/tasks/ajax/edittask.php5
-rw-r--r--apps/tasks/ajax/gettasks.php27
4 files changed, 18 insertions, 33 deletions
diff --git a/apps/tasks/ajax/addtask.php b/apps/tasks/ajax/addtask.php
index c768d3e7d91..0c8cb89e7fa 100644
--- a/apps/tasks/ajax/addtask.php
+++ b/apps/tasks/ajax/addtask.php
@@ -8,11 +8,7 @@ OC_JSON::checkAppEnabled('tasks');
$l10n = new OC_L10N('tasks');
$cid = $_POST['id'];
-$calendar = OC_Calendar_Calendar::findCalendar( $cid );
-if( $calendar === false || $calendar['userid'] != OC_USER::getUser()){
- OC_JSON::error(array('data' => array( 'message' => $l10n->t('This is not your calendar!'))));
- exit();
-}
+$calendar = OC_Calendar_App::getCalendar( $cid );
$errors = OC_Task_App::validateRequest($_POST);
if (!empty($errors)) {
@@ -30,4 +26,7 @@ $tmpl->assign('details',$vcalendar->VTODO);
$tmpl->assign('id',$id);
$page = $tmpl->fetchPage();
-OC_JSON::success(array('data' => array( 'id' => $id, 'page' => $page )));
+$user_timezone = OC_Preferences::getValue(OC_USER::getUser(), 'calendar', 'timezone', date_default_timezone_get());
+$task = OC_Task_App::arrayForJSON($id, $vcalendar->VTODO, $user_timezone);
+
+OC_JSON::success(array('data' => array( 'id' => $id, 'page' => $page, 'task' => $task )));
diff --git a/apps/tasks/ajax/addtaskform.php b/apps/tasks/ajax/addtaskform.php
index 222ccbd79a3..d4a0bb03107 100644
--- a/apps/tasks/ajax/addtaskform.php
+++ b/apps/tasks/ajax/addtaskform.php
@@ -8,8 +8,16 @@ OC_JSON::checkAppEnabled('tasks');
$l10n = new OC_L10N('tasks');
$calendars = OC_Calendar_Calendar::allCalendars(OC_User::getUser(), true);
+$category_options = OC_Calendar_Object::getCategoryOptions($l10n);
+$percent_options = range(0, 100, 10);
+$priority_options = OC_Task_App::getPriorityOptions();
$tmpl = new OC_Template('tasks','part.addtaskform');
$tmpl->assign('calendars',$calendars);
+$tmpl->assign('category_options', $category_options);
+$tmpl->assign('percent_options', $percent_options);
+$tmpl->assign('priority_options', $priority_options);
+$tmpl->assign('details', new OC_VObject('VTODO'));
+$tmpl->assign('categories', array());
$page = $tmpl->fetchPage();
OC_JSON::success(array('data' => array( 'page' => $page )));
diff --git a/apps/tasks/ajax/edittask.php b/apps/tasks/ajax/edittask.php
index a7215ce078f..ae937a7dcab 100644
--- a/apps/tasks/ajax/edittask.php
+++ b/apps/tasks/ajax/edittask.php
@@ -26,4 +26,7 @@ $tmpl->assign('details', $vcalendar->VTODO);
$tmpl->assign('id', $id);
$page = $tmpl->fetchPage();
-OC_JSON::success(array('data' => array( 'id' => $id, 'page' => $page )));
+$user_timezone = OC_Preferences::getValue(OC_USER::getUser(), 'calendar', 'timezone', date_default_timezone_get());
+$task = OC_Task_App::arrayForJSON($id, $vcalendar->VTODO, $user_timezone);
+
+OC_JSON::success(array('data' => array( 'id' => $id, 'page' => $page, 'task' => $task )));
diff --git a/apps/tasks/ajax/gettasks.php b/apps/tasks/ajax/gettasks.php
index 7dc94dacb45..ee871c344cf 100644
--- a/apps/tasks/ajax/gettasks.php
+++ b/apps/tasks/ajax/gettasks.php
@@ -26,32 +26,7 @@ foreach( $calendars as $calendar ){
}
$object = OC_VObject::parse($task['calendardata']);
$vtodo = $object->VTODO;
- $task = array( 'id' => $task['id'] );
- $task['summary'] = $vtodo->getAsString('SUMMARY');
- $task['description'] = $vtodo->getAsString('DESCRIPTION');
- $task['location'] = $vtodo->getAsString('LOCATION');
- $task['categories'] = $vtodo->getAsArray('CATEGORIES');
- $due = $vtodo->DUE;
- if ($due) {
- $due = $due->getDateTime();
- $due->setTimezone(new DateTimeZone($user_timezone));
- $task['due'] = $due->format('Y-m-d H:i:s');
- }
- else {
- $task['due'] = false;
- }
- $task['priority'] = $vtodo->getAsString('PRIORITY');
- $completed = $vtodo->COMPLETED;
- if ($completed) {
- $completed = $completed->getDateTime();
- $completed->setTimezone(new DateTimeZone($user_timezone));
- $task['completed'] = $completed->format('Y-m-d H:i:s');
- }
- else {
- $task['completed'] = false;
- }
- $task['complete'] = $vtodo->getAsString('PERCENT-COMPLETE');
- $tasks[] = $task;
+ $tasks[] = OC_Task_App::arrayForJSON($task['id'], $vtodo, $user_timezone);
}
}