calendar: revert back to UTC strings for dates due to better legibility. Strip timezone info from UTC string and always treat values as UTC.
This commit is contained in:
parent
da7912b879
commit
407b02bde8
@ -278,11 +278,11 @@ class Cdav extends Controller {
|
|||||||
$allday = $_REQUEST['allday'];
|
$allday = $_REQUEST['allday'];
|
||||||
|
|
||||||
$title = $_REQUEST['title'];
|
$title = $_REQUEST['title'];
|
||||||
$start = datetime_convert($tz, 'UTC', $_REQUEST['dtstart']);
|
$start = datetime_convert('UTC', 'UTC', $_REQUEST['dtstart']);
|
||||||
$dtstart = new \DateTime($start);
|
$dtstart = new \DateTime($start);
|
||||||
|
|
||||||
if($_REQUEST['dtend']) {
|
if($_REQUEST['dtend']) {
|
||||||
$end = datetime_convert($tz, 'UTC', $_REQUEST['dtend']);
|
$end = datetime_convert('UTC', 'UTC', $_REQUEST['dtend']);
|
||||||
$dtend = new \DateTime($end);
|
$dtend = new \DateTime($end);
|
||||||
}
|
}
|
||||||
$description = $_REQUEST['description'];
|
$description = $_REQUEST['description'];
|
||||||
@ -369,10 +369,10 @@ class Cdav extends Controller {
|
|||||||
|
|
||||||
$uri = $_REQUEST['uri'];
|
$uri = $_REQUEST['uri'];
|
||||||
$title = $_REQUEST['title'];
|
$title = $_REQUEST['title'];
|
||||||
$start = datetime_convert($tz, 'UTC', $_REQUEST['dtstart']);
|
$start = datetime_convert('UTC', 'UTC', $_REQUEST['dtstart']);
|
||||||
$dtstart = new \DateTime($start);
|
$dtstart = new \DateTime($start);
|
||||||
if($_REQUEST['dtend']) {
|
if($_REQUEST['dtend']) {
|
||||||
$end = datetime_convert($tz, 'UTC', $_REQUEST['dtend']);
|
$end = datetime_convert('UTC', 'UTC', $_REQUEST['dtend']);
|
||||||
$dtend = new \DateTime($end);
|
$dtend = new \DateTime($end);
|
||||||
}
|
}
|
||||||
$description = $_REQUEST['description'];
|
$description = $_REQUEST['description'];
|
||||||
@ -442,10 +442,10 @@ class Cdav extends Controller {
|
|||||||
$allday = $_REQUEST['allday'];
|
$allday = $_REQUEST['allday'];
|
||||||
|
|
||||||
$uri = $_REQUEST['uri'];
|
$uri = $_REQUEST['uri'];
|
||||||
$start = datetime_convert($tz, 'UTC', $_REQUEST['dtstart']);
|
$start = datetime_convert('UTC', 'UTC', $_REQUEST['dtstart']);
|
||||||
$dtstart = new \DateTime($start);
|
$dtstart = new \DateTime($start);
|
||||||
if($_REQUEST['dtend']) {
|
if($_REQUEST['dtend']) {
|
||||||
$end = datetime_convert($tz, 'UTC', $_REQUEST['dtend']);
|
$end = datetime_convert('UTC', 'UTC', $_REQUEST['dtend']);
|
||||||
$dtend = new \DateTime($end);
|
$dtend = new \DateTime($end);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -21,7 +21,7 @@ class Channel_calendar extends \Zotlabs\Web\Controller {
|
|||||||
$event_hash = ((x($_POST,'event_hash')) ? $_POST['event_hash'] : '');
|
$event_hash = ((x($_POST,'event_hash')) ? $_POST['event_hash'] : '');
|
||||||
|
|
||||||
$xchan = ((x($_POST,'xchan')) ? dbesc($_POST['xchan']) : '');
|
$xchan = ((x($_POST,'xchan')) ? dbesc($_POST['xchan']) : '');
|
||||||
$uid = local_channel();
|
$uid = local_channel();
|
||||||
|
|
||||||
// only allow editing your own events.
|
// only allow editing your own events.
|
||||||
if(($xchan) && ($xchan !== get_observer_hash()))
|
if(($xchan) && ($xchan !== get_observer_hash()))
|
||||||
@ -34,8 +34,8 @@ class Channel_calendar extends \Zotlabs\Web\Controller {
|
|||||||
|
|
||||||
$adjust = intval($_POST['adjust']);
|
$adjust = intval($_POST['adjust']);
|
||||||
|
|
||||||
$start = (($adjust) ? datetime_convert($tz, 'UTC', escape_tags($_REQUEST['dtstart'])) : datetime_convert('UTC', 'UTC', escape_tags($_REQUEST['dtstart'])));
|
$start = datetime_convert('UTC', 'UTC', escape_tags($_REQUEST['dtstart']));
|
||||||
$finish = (($adjust) ? datetime_convert($tz, 'UTC', escape_tags($_REQUEST['dtend'])) : datetime_convert('UTC', 'UTC', escape_tags($_REQUEST['dtend'])));
|
$finish = datetime_convert('UTC', 'UTC', escape_tags($_REQUEST['dtend']));
|
||||||
|
|
||||||
$summary = escape_tags(trim($_POST['summary']));
|
$summary = escape_tags(trim($_POST['summary']));
|
||||||
$desc = escape_tags(trim($_POST['desc']));
|
$desc = escape_tags(trim($_POST['desc']));
|
||||||
|
@ -58,7 +58,7 @@ $(document).ready(function() {
|
|||||||
dayNamesShort: aStr['dayNamesShort'],
|
dayNamesShort: aStr['dayNamesShort'],
|
||||||
allDayText: aStr['allday'],
|
allDayText: aStr['allday'],
|
||||||
|
|
||||||
snapDuration: '00:15:00',
|
snapDuration: '00:05:00',
|
||||||
|
|
||||||
dateClick: function(info) {
|
dateClick: function(info) {
|
||||||
if(new_event.id) {
|
if(new_event.id) {
|
||||||
@ -77,7 +77,7 @@ $(document).ready(function() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
var dtend = new Date(info.date.toISOString());
|
var dtend = new Date(info.date.toUTCString());
|
||||||
if(allday) {
|
if(allday) {
|
||||||
dtend.setDate(dtend.getDate() + 1);
|
dtend.setDate(dtend.getDate() + 1);
|
||||||
}
|
}
|
||||||
@ -93,14 +93,14 @@ $(document).ready(function() {
|
|||||||
$('#id_description').attr('disabled', false);
|
$('#id_description').attr('disabled', false);
|
||||||
$('#id_location').attr('disabled', false);
|
$('#id_location').attr('disabled', false);
|
||||||
$('#calendar_select').val($("#calendar_select option:first").val()).attr('disabled', false);
|
$('#calendar_select').val($("#calendar_select option:first").val()).attr('disabled', false);
|
||||||
$('#id_dtstart').val(info.date.toISOString());
|
$('#id_dtstart').val(info.date.toUTCString().slice(0, -4));
|
||||||
$('#id_dtend').val(dtend ? dtend.toISOString() : '');
|
$('#id_dtend').val(dtend ? dtend.toUTCString().slice(0, -4) : '');
|
||||||
$('#id_description').val('');
|
$('#id_description').val('');
|
||||||
$('#id_location').val('');
|
$('#id_location').val('');
|
||||||
$('#event_submit').val('create_event').html('{{$create}}');
|
$('#event_submit').val('create_event').html('{{$create}}');
|
||||||
$('#event_delete').hide();
|
$('#event_delete').hide();
|
||||||
|
|
||||||
new_event = { id: new_event_id, title: 'New event', start: $('#id_dtstart').val(), end: $('#id_dtend').val(), allDay: info.allDay, editable: true, color: '#bbb' };
|
new_event = { id: new_event_id, title: 'New event', start: info.date.toUTCString(), end: dtend ? dtend.toUTCString() : '', allDay: info.allDay, editable: true, color: '#bbb' };
|
||||||
calendar.addEvent(new_event);
|
calendar.addEvent(new_event);
|
||||||
},
|
},
|
||||||
|
|
||||||
@ -164,8 +164,8 @@ $(document).ready(function() {
|
|||||||
$('#id_timezone_select').val(event.extendedProps.timezone);
|
$('#id_timezone_select').val(event.extendedProps.timezone);
|
||||||
$('#id_location').val(event.extendedProps.location);
|
$('#id_location').val(event.extendedProps.location);
|
||||||
$('#id_categories').tagsinput('add', event.extendedProps.categories);
|
$('#id_categories').tagsinput('add', event.extendedProps.categories);
|
||||||
$('#id_dtstart').val(dtstart.toISOString());
|
$('#id_dtstart').val(dtstart.toUTCString().slice(0, -4));
|
||||||
$('#id_dtend').val(dtend.toISOString());
|
$('#id_dtend').val(dtend.toUTCString().slice(0, -4));
|
||||||
$('#id_description').val(event.extendedProps.description);
|
$('#id_description').val(event.extendedProps.description);
|
||||||
$('#id_location').val(event.extendedProps.location);
|
$('#id_location').val(event.extendedProps.location);
|
||||||
$('#event_submit').val('update_event').html('{{$update}}');
|
$('#event_submit').val('update_event').html('{{$update}}');
|
||||||
@ -217,8 +217,8 @@ $(document).ready(function() {
|
|||||||
var dtend = new Date(info.event._instance.range.end);
|
var dtend = new Date(info.event._instance.range.end);
|
||||||
|
|
||||||
$('#id_title').val(event.title);
|
$('#id_title').val(event.title);
|
||||||
$('#id_dtstart').val(dtstart.toISOString());
|
$('#id_dtstart').val(dtstart.toUTCString().slice(0, -4));
|
||||||
$('#id_dtend').val(dtend.toISOString());
|
$('#id_dtend').val(dtend.toUTCString().slice(0, -4));
|
||||||
|
|
||||||
event_id = event.extendedProps.item ? event.extendedProps.item.id : 0;
|
event_id = event.extendedProps.item ? event.extendedProps.item.id : 0;
|
||||||
event_xchan = event.extendedProps.item ? event.extendedProps.item.event_xchan : '';
|
event_xchan = event.extendedProps.item ? event.extendedProps.item.event_xchan : '';
|
||||||
@ -232,8 +232,8 @@ $(document).ready(function() {
|
|||||||
'preview': 0,
|
'preview': 0,
|
||||||
'summary': event.title,
|
'summary': event.title,
|
||||||
'timezone_select': event.extendedProps.timezone,
|
'timezone_select': event.extendedProps.timezone,
|
||||||
'dtstart': dtstart.toISOString(),
|
'dtstart': dtstart.toUTCString().slice(0, -4),
|
||||||
'dtend': dtend.toISOString(),
|
'dtend': dtend.toUTCString().slice(0, -4),
|
||||||
'adjust': event.allDay ? 0 : 1,
|
'adjust': event.allDay ? 0 : 1,
|
||||||
'categories': event.extendedProps.categories,
|
'categories': event.extendedProps.categories,
|
||||||
'desc': event.extendedProps.description,
|
'desc': event.extendedProps.description,
|
||||||
@ -249,8 +249,8 @@ $(document).ready(function() {
|
|||||||
'id[]': event.extendedProps.calendar_id,
|
'id[]': event.extendedProps.calendar_id,
|
||||||
'uri': event.extendedProps.uri,
|
'uri': event.extendedProps.uri,
|
||||||
'timezone_select': event.extendedProps.timezone,
|
'timezone_select': event.extendedProps.timezone,
|
||||||
'dtstart': dtstart ? dtstart.toISOString() : '',
|
'dtstart': dtstart ? dtstart.toUTCString().slice(0, -4) : '',
|
||||||
'dtend': dtend ? dtend.toISOString() : '',
|
'dtend': dtend ? dtend.toUTCString().slice(0, -4) : '',
|
||||||
'allday': event.allDay ? 1 : 0
|
'allday': event.allDay ? 1 : 0
|
||||||
})
|
})
|
||||||
.fail(function() {
|
.fail(function() {
|
||||||
@ -266,8 +266,8 @@ $(document).ready(function() {
|
|||||||
var dtend = new Date(info.event._instance.range.end);
|
var dtend = new Date(info.event._instance.range.end);
|
||||||
|
|
||||||
$('#id_title').val(event.title);
|
$('#id_title').val(event.title);
|
||||||
$('#id_dtstart').val(dtstart.toISOString());
|
$('#id_dtstart').val(dtstart.toUTCString().slice(0, -4));
|
||||||
$('#id_dtend').val(dtend.toISOString());
|
$('#id_dtend').val(dtend.toUTCString().slice(0, -4));
|
||||||
|
|
||||||
event_id = event.extendedProps.item ? event.extendedProps.item.id : 0;
|
event_id = event.extendedProps.item ? event.extendedProps.item.id : 0;
|
||||||
event_xchan = event.extendedProps.item ? event.extendedProps.item.event_xchan : '';
|
event_xchan = event.extendedProps.item ? event.extendedProps.item.event_xchan : '';
|
||||||
@ -281,8 +281,8 @@ $(document).ready(function() {
|
|||||||
'preview': 0,
|
'preview': 0,
|
||||||
'summary': event.title,
|
'summary': event.title,
|
||||||
'timezone_select': event.extendedProps.timezone,
|
'timezone_select': event.extendedProps.timezone,
|
||||||
'dtstart': dtstart.toISOString(),
|
'dtstart': dtstart.toUTCString().slice(0, -4),
|
||||||
'dtend': dtend.toISOString(),
|
'dtend': dtend.toUTCString().slice(0, -4),
|
||||||
'adjust': event.allDay ? 0 : 1,
|
'adjust': event.allDay ? 0 : 1,
|
||||||
'categories': event.extendedProps.categories,
|
'categories': event.extendedProps.categories,
|
||||||
'desc': event.extendedProps.description,
|
'desc': event.extendedProps.description,
|
||||||
@ -298,8 +298,8 @@ $(document).ready(function() {
|
|||||||
'id[]': event.extendedProps.calendar_id,
|
'id[]': event.extendedProps.calendar_id,
|
||||||
'uri': event.extendedProps.uri,
|
'uri': event.extendedProps.uri,
|
||||||
'timezone_select': event.extendedProps.timezone,
|
'timezone_select': event.extendedProps.timezone,
|
||||||
'dtstart': dtstart ? dtstart.toISOString() : '',
|
'dtstart': dtstart ? dtstart.toUTCString().slice(0, -4) : '',
|
||||||
'dtend': dtend ? dtend.toISOString() : '',
|
'dtend': dtend ? dtend.toUTCString().slice(0, -4) : '',
|
||||||
'allday': event.allDay ? 1 : 0
|
'allday': event.allDay ? 1 : 0
|
||||||
})
|
})
|
||||||
.fail(function() {
|
.fail(function() {
|
||||||
@ -367,8 +367,8 @@ $(document).ready(function() {
|
|||||||
|
|
||||||
$('#calendar_select').val('channel_calendar').attr('disabled', true);
|
$('#calendar_select').val('channel_calendar').attr('disabled', true);
|
||||||
$('#id_title').val(resource.summary);
|
$('#id_title').val(resource.summary);
|
||||||
$('#id_dtstart').val(new Date(resource.dtstart).toISOString());
|
$('#id_dtstart').val(new Date(resource.dtstart).toUTCString().slice(0, -4));
|
||||||
$('#id_dtend').val(new Date(resource.dtend).toISOString());
|
$('#id_dtend').val(new Date(resource.dtend).toUTCString().slice(0, -4));
|
||||||
$('#id_categories').tagsinput('add', '{{$categories}}'),
|
$('#id_categories').tagsinput('add', '{{$categories}}'),
|
||||||
$('#id_description').val(resource.description);
|
$('#id_description').val(resource.description);
|
||||||
$('#id_location').val(resource.location);
|
$('#id_location').val(resource.location);
|
||||||
|
Reference in New Issue
Block a user