Tasks: Due date without time support added
This commit is contained in:
parent
1384be4bff
commit
3d68732657
|
@ -23,18 +23,24 @@ switch($property) {
|
||||||
break;
|
break;
|
||||||
case 'due':
|
case 'due':
|
||||||
$due = $_POST['due'];
|
$due = $_POST['due'];
|
||||||
|
$due_date_only = $_POST['date'];
|
||||||
|
$type = null;
|
||||||
if ($due != 'false') {
|
if ($due != 'false') {
|
||||||
try {
|
try {
|
||||||
$timezone = OC_Preferences::getValue(OC_User::getUser(), 'calendar', 'timezone', date_default_timezone_get());
|
$timezone = OC_Preferences::getValue(OC_User::getUser(), 'calendar', 'timezone', date_default_timezone_get());
|
||||||
$timezone = new DateTimeZone($timezone);
|
$timezone = new DateTimeZone($timezone);
|
||||||
$due = new DateTime('@'.$due);
|
$due = new DateTime('@'.$due);
|
||||||
$due->setTimezone($timezone);
|
$due->setTimezone($timezone);
|
||||||
|
$type = Sabre_VObject_Element_DateTime::LOCALTZ;
|
||||||
|
if ($due_date_only) {
|
||||||
|
$type = Sabre_VObject_Element_DateTime::DATE;
|
||||||
|
}
|
||||||
} catch (Exception $e) {
|
} catch (Exception $e) {
|
||||||
OC_JSON::error(array('data'=>array('message'=>OC_Task_App::$l10n->t('Invalid date/time'))));
|
OC_JSON::error(array('data'=>array('message'=>OC_Task_App::$l10n->t('Invalid date/time'))));
|
||||||
exit();
|
exit();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$vtodo->setDateTime('DUE', $due);
|
$vtodo->setDateTime('DUE', $due, $type);
|
||||||
break;
|
break;
|
||||||
case 'complete':
|
case 'complete':
|
||||||
$checked = $_POST['checked'];
|
$checked = $_POST['checked'];
|
||||||
|
|
|
@ -85,8 +85,10 @@ OC.Tasks = {
|
||||||
if (task.due){
|
if (task.due){
|
||||||
var date = new Date(parseInt(task.due)*1000);
|
var date = new Date(parseInt(task.due)*1000);
|
||||||
due.find('.date').datepicker('setDate', date);
|
due.find('.date').datepicker('setDate', date);
|
||||||
|
if (!task.due_date_only) {
|
||||||
due.find('.time').timepicker('setTime', date.getHours()+':'+date.getMinutes());
|
due.find('.time').timepicker('setTime', date.getHours()+':'+date.getMinutes());
|
||||||
}
|
}
|
||||||
|
}
|
||||||
$('<div>')
|
$('<div>')
|
||||||
.addClass('more')
|
.addClass('more')
|
||||||
.append(description)
|
.append(description)
|
||||||
|
@ -186,16 +188,21 @@ OC.Tasks = {
|
||||||
var $date = $(this).parent().children('.date');
|
var $date = $(this).parent().children('.date');
|
||||||
var $time = $(this).parent().children('.time');
|
var $time = $(this).parent().children('.time');
|
||||||
var date = $date.datepicker('getDate');
|
var date = $date.datepicker('getDate');
|
||||||
var time = $time.timepicker('getTime').split(':');
|
var time = $time.val().split(':');
|
||||||
var due;
|
var due, date_only = false;
|
||||||
if (!date || time.length<2){
|
if (!date){
|
||||||
due = false;
|
due = false;
|
||||||
} else {
|
} else {
|
||||||
|
if (time.length==2){
|
||||||
date.setHours(time[0]);
|
date.setHours(time[0]);
|
||||||
date.setMinutes(time[1]);
|
date.setMinutes(time[1]);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
date_only = true;
|
||||||
|
}
|
||||||
due = date.getTime()/1000;
|
due = date.getTime()/1000;
|
||||||
}
|
}
|
||||||
$.post('ajax/update_property.php', {id:task.id, type:'due', due:due}, function(jsondata){
|
$.post('ajax/update_property.php', {id:task.id, type:'due', due:due, date:date_only?1:0}, function(jsondata){
|
||||||
if(jsondata.status != 'success') {
|
if(jsondata.status != 'success') {
|
||||||
task.due = old_due;
|
task.due = old_due;
|
||||||
}
|
}
|
||||||
|
|
|
@ -52,6 +52,7 @@ class OC_Task_App {
|
||||||
$task['categories'] = $vtodo->getAsArray('CATEGORIES');
|
$task['categories'] = $vtodo->getAsArray('CATEGORIES');
|
||||||
$due = $vtodo->DUE;
|
$due = $vtodo->DUE;
|
||||||
if ($due) {
|
if ($due) {
|
||||||
|
$task['due_date_only'] = $due->getDateType() == Sabre_VObject_Element_DateTime::DATE;
|
||||||
$due = $due->getDateTime();
|
$due = $due->getDateTime();
|
||||||
$due->setTimezone(new DateTimeZone($user_timezone));
|
$due->setTimezone(new DateTimeZone($user_timezone));
|
||||||
$task['due'] = $due->format('U');
|
$task['due'] = $due->format('U');
|
||||||
|
|
Loading…
Reference in New Issue