Мне нужно реализовать функциональность часового пояса в моем проекте. Я уже использую Полный календарь на своей странице Visual Force. Я передаю eventsList в качестве входных данных для атрибута событий, который я получаю с сервера (Apex). Это работает только когда я меняю список выбора с локального на UTC и наоборот. Но это не изменится ни для каких других значений часового пояса. Если я задаю полный календарь JSON по умолчанию, то есть - "https://fullcalendar.io/demo-events.json" для атрибута событий. Он работает, как ожидается, для всех часовых поясов.
$('#calendar').fullCalendar({
header: {
left: 'prev,next today',
center: 'title',
right: 'month,agendaWeek,agendaDay,listWeek'
},
navLinks: true, // can click day/week names to navigate views
editable: true,
selectable: true,
eventLimit: true, // allow "more" link when too many events
events: eventsList,
loading: function(bool) {
$('#loading').toggle(bool);
},
eventRender: function(event, el) {
console.log('eventRender');
// render the timezone offset below the event title
if (event.start.hasZone()) {
console.log('hasZone');
el.find('.fc-title').after(
$('<div class="tzo"/>').text(event.start.format('Z'))
);
}
},
}
});
// load the list of available timezones, build the <select> options
$.getJSON('https://fullcalendar.io/demo-timezones.json', function(timezones) {
$.each(timezones, function(i, timezone) {
if (timezone != 'UTC') { // UTC is already in the list
$('#timezone-selector').append(
$("<option/>").text(timezone).attr('value', timezone)
);
}
});
});
// when the timezone selector changes, dynamically change the calendar option
$('#timezone-selector').on('change', function() {
$('#calendar').fullCalendar('option', 'timezone', this.value || false);
});
Ниже приведена структура моего списка событий:
[{"id": "a014P00001vV9BHQA0", "title": "Часовой пояс нового события1", "start": "2019-09-17T04: 00: 00Z", "end": "2019-09-17T05: 45: 00Z "," locTZStart ":" 17.09.2009, 00:00 "," locTZEnd ":" 17.09.2009, 01:45 "," url ":" / apex / EventForm? Id= a014P00001vV9BHQA0" , "редактируемые" ложь "durationEditable": правда, "startEditable": правда, "имя класса": "нуль", "isParked" ложь "IsDeleted" ложь "isNew": "ложь","PresenterCount": 0, "roomBooked": "false", "roomName": "", "typeOfEvent": "Agenda"}]