FullCalendar: как сохранить / отправить измененные события в БД или службу на eventDrop (node.js) - PullRequest
0 голосов
/ 27 октября 2019

У меня есть объект FullCalendar, интегрированный в мое решение node.js, и он принимает события через json от службы REST, обращенной к базе данных.

Как я могу сохранить обновленные события обратно в центральную базу данных один разони перетаскиваются в новый временной интервал (на eventDrop)?

global.js

document.addEventListener('DOMContentLoaded', function() {
  var calendarEl = document.getElementById('calendar'); 
  var calendar = new FullCalendar.Calendar(calendarEl, {
        defaultView: "timeGridWeek",
        height: "auto",
        slotDuration: "00:60:00",
        navLinks: true,
        events: '/classes/jsonlist',
        plugins: [ 'dayGrid', 'timeGrid', 'interaction' ],
        editable: true,
        eventDrop: function(info) {
          var new_event_start_time = info.event.start.toLocaleTimeString();
          if (!confirm("Are you sure you want to move it to "+new_event_start_time+" ?")) {
            info.revert();
          };
//        Update database record for the event
//
        var xhr = $.ajax({
          url: "/classes/jsonset",
          type: "POST",
          contentType: "application/json",
          data: JSON.stringify( { 'id': info.event.id, 'url': info.event.url, 'title': info.event.title,'new_start': info.event.start } ),
          timeout: 5000
        }).done(function( msg ){
              alert( "Data Saved: " + msg );
        });           

        }
      }
    );
  calendar.render();
});
...