diff options
author | Bart Visscher <bartv@thisnet.nl> | 2011-12-09 21:41:21 +0100 |
---|---|---|
committer | Bart Visscher <bartv@thisnet.nl> | 2011-12-09 21:41:21 +0100 |
commit | 76c37792cb322338f73f25a559a2ccfe5ae8b59d (patch) | |
tree | e57ee4db0e664abc5ab84188ea2731cd4f75ac35 /apps/tasks/lib | |
parent | 487c23e27f6b562fb96eda980776b32398908932 (diff) | |
download | nextcloud-server-76c37792cb322338f73f25a559a2ccfe5ae8b59d.tar.gz nextcloud-server-76c37792cb322338f73f25a559a2ccfe5ae8b59d.zip |
WIP
Diffstat (limited to 'apps/tasks/lib')
-rw-r--r-- | apps/tasks/lib/vtodo.php | 62 |
1 files changed, 17 insertions, 45 deletions
diff --git a/apps/tasks/lib/vtodo.php b/apps/tasks/lib/vtodo.php index 925ad77dea1..967f5b87a54 100644 --- a/apps/tasks/lib/vtodo.php +++ b/apps/tasks/lib/vtodo.php @@ -39,7 +39,7 @@ class OC_Task_VTodo extends OC_Calendar_Object{ '9' => $l10n->t('9=lowest'), ); } - public static function validateRequest($request, $l10n) + public static function validateRequest($request, $l10n=null) { $errors = array(); if($request['summary'] == ''){ @@ -102,7 +102,7 @@ class OC_Task_VTodo extends OC_Calendar_Object{ public static function updateVCalendarFromRequest($request, $vcalendar) { $summary = $request['summary']; - $categories = $request['categories']; + $categories = isset($request["categories"]) ? $request["categories"] : array(); $priority = $request['priority']; $percent_complete = $request['percent_complete']; $completed = $request['completed']; @@ -110,55 +110,28 @@ class OC_Task_VTodo extends OC_Calendar_Object{ $due = $request['due']; $description = $request['description']; - $now = new DateTime(); - $vtodo = $vcalendar->VTODO[0]; - - $last_modified = new Sabre_VObject_Element_DateTime('LAST-MODIFIED'); - $last_modified->setDateTime($now, Sabre_VObject_Element_DateTime::UTC); - $vtodo->__set('LAST-MODIFIED', $last_modified); - - $dtstamp = new Sabre_VObject_Element_DateTime('DTSTAMP'); - $dtstamp->setDateTime($now, Sabre_VObject_Element_DateTime::UTC); - $vtodo->DTSTAMP = $dtstamp; - - $vtodo->SUMMARY = $summary; - - if ($location != '') { - $vtodo->LOCATION = $location; - }else{ - unset($vtodo->LOCATION); - } - - if ($categories != '') { - $vtodo->CATEGORIES = join(',',$categories); - }else{ - unset($vtodo->CATEGORIES); - } + $vtodo = $vcalendar->VTODO; - if ($priority != '') { - $vtodo->PRIORITY = $priority; - }else{ - unset($vtodo->PRIORITY); - } + $vtodo->setDateTime('LAST-MODIFIED', 'now', Sabre_VObject_Element_DateTime::UTC); + $vtodo->setDateTime('DTSTAMP', 'now', Sabre_VObject_Element_DateTime::UTC); + $vtodo->setString('SUMMARY', $summary); - if ($description != '') { - $vtodo->DESCRIPTION = $description; - }else{ - unset($vtodo->DESCRIPTION); - } + $vtodo->setString('LOCATION', $location); + $vtodo->setString('DESCRIPTION', $description); + $vtodo->setString('CATEGORIES', join(',', $categories)); + $vtodo->setString('PRIORITY', $priority); if ($due) { - $due_property = new Sabre_VObject_Element_DateTime('DUE'); - $timezone = OC_Preferences::getValue(OC_USER::getUser(), "calendar", "timezone", "Europe/London"); + $timezone = OC_Preferences::getValue(OC_USER::getUser(), 'calendar', 'timezone', date_default_timezone_get()); $timezone = new DateTimeZone($timezone); - $due_property->setDateTime(new DateTime($due, $timezone)); - $vtodo->DUE = $due_property; + $due = new DateTime($due, $timezone); + $vtodo->setDateTime('DUE', $due); } else { unset($vtodo->DUE); } if (!empty($percent_complete)) { - $vtodo->__set('PERCENT-COMPLETE', $percent_complete); + $vtodo->setString('PERCENT-COMPLETE', $percent_complete); }else{ $vtodo->__unset('PERCENT-COMPLETE'); } @@ -171,11 +144,10 @@ class OC_Task_VTodo extends OC_Calendar_Object{ $completed = null; } if ($completed) { - $completed_property = new Sabre_VObject_Element_DateTime('COMPLETED'); - $timezone = OC_Preferences::getValue(OC_USER::getUser(), "calendar", "timezone", "Europe/London"); + $timezone = OC_Preferences::getValue(OC_USER::getUser(), 'calendar', 'timezone', date_default_timezone_get()); $timezone = new DateTimeZone($timezone); - $completed_property->setDateTime(new DateTime($completed, $timezone)); - $vtodo->COMPLETED = $completed_property; + $completed = new DateTime($completed, $timezone); + $vtodo->setDateTime('COMPLETED', $completed); } else { unset($vtodo->COMPLETED); } |