summaryrefslogtreecommitdiffstats
path: root/apps/tasks/ajax
diff options
context:
space:
mode:
Diffstat (limited to 'apps/tasks/ajax')
-rw-r--r--apps/tasks/ajax/addtask.php21
-rw-r--r--apps/tasks/ajax/edittask.php26
-rw-r--r--apps/tasks/ajax/edittaskform.php14
-rw-r--r--apps/tasks/ajax/getdetails.php3
4 files changed, 39 insertions, 25 deletions
diff --git a/apps/tasks/ajax/addtask.php b/apps/tasks/ajax/addtask.php
index 434fbc5fdd5..81905666ff3 100644
--- a/apps/tasks/ajax/addtask.php
+++ b/apps/tasks/ajax/addtask.php
@@ -18,20 +18,19 @@ if( $calendar === false || $calendar['userid'] != OC_USER::getUser()){
exit();
}
-$summary = $_POST['summary'];
-
-$vcalendar = new Sabre_VObject_Component('VCALENDAR');
-$vcalendar->add(new Sabre_VObject_Property('PRODID', 'ownCloud Calendar'));
-$vcalendar->add(new Sabre_VObject_Property('VERSION', '2.0'));
-$vtodo = new Sabre_VObject_Component('VTODO');
-$vtodo->add(new Sabre_VObject_Property('SUMMARY',$summary));
-$vtodo->add(new Sabre_VObject_Property('UID',OC_Calendar_Calendar::createUID()));
-$vcalendar->add($vtodo);
+$errors = OC_Task_VTodo::validateRequest($_POST, $l10n);
+if (!empty($errors)) {
+ echo json_encode( array( 'status' => 'error', 'data' => array( 'errors' => $errors )));
+ exit();
+}
+
+$vcalendar = OC_Task_VTodo::createVCalendarFromRequest($_POST);
$id = OC_Calendar_Object::add($cid, $vcalendar->serialize());
-$details = OC_Contacts_Addressbook::structureContact($vtodo);
+$priority_options = OC_Task_VTodo::getPriorityOptions($l10n);
$tmpl = new OC_Template('tasks','part.details');
-$tmpl->assign('details',$details);
+$tmpl->assign('priority_options', $priority_options);
+$tmpl->assign('details',$vcalendar->VTODO);
$tmpl->assign('id',$id);
$page = $tmpl->fetchPage();
diff --git a/apps/tasks/ajax/edittask.php b/apps/tasks/ajax/edittask.php
index f98bcf3f596..9f836f1f8a8 100644
--- a/apps/tasks/ajax/edittask.php
+++ b/apps/tasks/ajax/edittask.php
@@ -24,23 +24,21 @@ if( $calendar === false || $calendar['userid'] != OC_USER::getUser()){
exit();
}
-$summary = $_POST['summary'];
-
-$vtodo = Sabre_VObject_Reader::read($task['calendardata'])->VTODO[0];
-$uid = $vtodo->UID[0]->value;
-
-$vcalendar = new Sabre_VObject_Component('VCALENDAR');
-$vcalendar->add(new Sabre_VObject_Property('PRODID', 'ownCloud Calendar'));
-$vcalendar->add(new Sabre_VObject_Property('VERSION', '2.0'));
-$vtodo = new Sabre_VObject_Component('VTODO');
-$vtodo->add(new Sabre_VObject_Property('SUMMARY',$summary));
-$vtodo->add(new Sabre_VObject_Property('UID', $uid));
-$vcalendar->add($vtodo);
+$errors = OC_Task_VTodo::validateRequest($_POST, $l10n);
+if (!empty($errors)) {
+ echo json_encode( array( 'status' => 'error', 'data' => array( 'errors' => $errors )));
+ exit();
+}
+
+$vcalendar = Sabre_VObject_Reader::read($task['calendardata']);
+OC_Task_VTodo::updateVCalendarFromRequest($_POST, $vcalendar);
OC_Calendar_Object::edit($id, $vcalendar->serialize());
+$priority_options = OC_Task_VTodo::getPriorityOptions($l10n);
$tmpl = new OC_Template('tasks','part.details');
-$tmpl->assign('details',$vtodo);
-$tmpl->assign('id',$id);
+$tmpl->assign('priority_options', $priority_options);
+$tmpl->assign('details', $vcalendar->VTODO);
+$tmpl->assign('id', $id);
$page = $tmpl->fetchPage();
echo json_encode( array( 'status' => 'success', 'data' => array( 'id' => $id, 'page' => $page )));
diff --git a/apps/tasks/ajax/edittaskform.php b/apps/tasks/ajax/edittaskform.php
index 6cc7d2787cf..dc8bb60e64d 100644
--- a/apps/tasks/ajax/edittaskform.php
+++ b/apps/tasks/ajax/edittaskform.php
@@ -25,9 +25,23 @@ if( $calendar === false || $calendar['userid'] != OC_USER::getUser()){
}
$details = Sabre_VObject_Reader::read($task['calendardata'])->VTODO;
+$categories = array();
+if (isset($details->CATEGORIES)){
+ $categories = explode(',', $details->CATEGORIES->value);
+ $categories = array_map('trim', $categories);
+}
+
+$category_options = OC_Calendar_Object::getCategoryOptions($l10n);
+$percent_options = range(0, 100, 10);
+$priority_options = OC_Task_VTodo::getPriorityOptions($l10n);
+
$tmpl = new OC_Template('tasks','part.edittaskform');
+$tmpl->assign('category_options', $category_options);
+$tmpl->assign('percent_options', $percent_options);
+$tmpl->assign('priority_options', $priority_options);
$tmpl->assign('task',$task);
$tmpl->assign('details',$details);
+$tmpl->assign('categories', $categories);
$page = $tmpl->fetchPage();
echo json_encode( array( 'status' => 'success', 'data' => array( 'page' => $page )));
diff --git a/apps/tasks/ajax/getdetails.php b/apps/tasks/ajax/getdetails.php
index d264aeab853..f111a399b36 100644
--- a/apps/tasks/ajax/getdetails.php
+++ b/apps/tasks/ajax/getdetails.php
@@ -14,7 +14,10 @@ if( !OC_User::isLoggedIn()){
$id = $_GET['id'];
$task = OC_Calendar_Object::find($id);
$details = Sabre_VObject_Reader::read($task['calendardata'])->VTODO;
+
+$priority_options = OC_Task_VTodo::getPriorityOptions($l10n);
$tmpl = new OC_Template('tasks','part.details');
+$tmpl->assign('priority_options', $priority_options);
$tmpl->assign('details',$details);
$tmpl->assign('id',$id);
$page = $tmpl->fetchPage();