summaryrefslogtreecommitdiff
path: root/public/js/fullcalendar/examples/external-dragging-builtin.html
diff options
context:
space:
mode:
Diffstat (limited to 'public/js/fullcalendar/examples/external-dragging-builtin.html')
-rw-r--r--public/js/fullcalendar/examples/external-dragging-builtin.html149
1 files changed, 149 insertions, 0 deletions
diff --git a/public/js/fullcalendar/examples/external-dragging-builtin.html b/public/js/fullcalendar/examples/external-dragging-builtin.html
new file mode 100644
index 0000000..78fcd89
--- /dev/null
+++ b/public/js/fullcalendar/examples/external-dragging-builtin.html
@@ -0,0 +1,149 @@
1<!DOCTYPE html>
2<html>
3<head>
4<meta charset='utf-8' />
5<script src='../dist/index.global.js'></script>
6<script>
7
8 document.addEventListener('DOMContentLoaded', function() {
9
10 /* initialize the external events
11 -----------------------------------------------------------------*/
12
13 var containerEl = document.getElementById('external-events-list');
14 new FullCalendar.Draggable(containerEl, {
15 itemSelector: '.fc-event',
16 eventData: function(eventEl) {
17 return {
18 title: eventEl.innerText.trim()
19 }
20 }
21 });
22
23 //// the individual way to do it
24 // var containerEl = document.getElementById('external-events-list');
25 // var eventEls = Array.prototype.slice.call(
26 // containerEl.querySelectorAll('.fc-event')
27 // );
28 // eventEls.forEach(function(eventEl) {
29 // new FullCalendar.Draggable(eventEl, {
30 // eventData: {
31 // title: eventEl.innerText.trim(),
32 // }
33 // });
34 // });
35
36 /* initialize the calendar
37 -----------------------------------------------------------------*/
38
39 var calendarEl = document.getElementById('calendar');
40 var calendar = new FullCalendar.Calendar(calendarEl, {
41 headerToolbar: {
42 left: 'prev,next today',
43 center: 'title',
44 right: 'dayGridMonth,timeGridWeek,timeGridDay,listWeek'
45 },
46 editable: true,
47 droppable: true, // this allows things to be dropped onto the calendar
48 drop: function(arg) {
49 // is the "remove after drop" checkbox checked?
50 if (document.getElementById('drop-remove').checked) {
51 // if so, remove the element from the "Draggable Events" list
52 arg.draggedEl.parentNode.removeChild(arg.draggedEl);
53 }
54 }
55 });
56 calendar.render();
57
58 });
59
60</script>
61<style>
62
63 body {
64 margin-top: 40px;
65 font-size: 14px;
66 font-family: Arial, Helvetica Neue, Helvetica, sans-serif;
67 }
68
69 #external-events {
70 position: fixed;
71 left: 20px;
72 top: 20px;
73 width: 150px;
74 padding: 0 10px;
75 border: 1px solid #ccc;
76 background: #eee;
77 text-align: left;
78 }
79
80 #external-events h4 {
81 font-size: 16px;
82 margin-top: 0;
83 padding-top: 1em;
84 }
85
86 #external-events .fc-event {
87 margin: 3px 0;
88 cursor: move;
89 }
90
91 #external-events p {
92 margin: 1.5em 0;
93 font-size: 11px;
94 color: #666;
95 }
96
97 #external-events p input {
98 margin: 0;
99 vertical-align: middle;
100 }
101
102 #calendar-wrap {
103 margin-left: 200px;
104 }
105
106 #calendar {
107 max-width: 1100px;
108 margin: 0 auto;
109 }
110
111</style>
112</head>
113<body>
114 <div id='wrap'>
115
116 <div id='external-events'>
117 <h4>Draggable Events</h4>
118
119 <div id='external-events-list'>
120 <div class='fc-event fc-h-event fc-daygrid-event fc-daygrid-block-event'>
121 <div class='fc-event-main'>My Event 1</div>
122 </div>
123 <div class='fc-event fc-h-event fc-daygrid-event fc-daygrid-block-event'>
124 <div class='fc-event-main'>My Event 2</div>
125 </div>
126 <div class='fc-event fc-h-event fc-daygrid-event fc-daygrid-block-event'>
127 <div class='fc-event-main'>My Event 3</div>
128 </div>
129 <div class='fc-event fc-h-event fc-daygrid-event fc-daygrid-block-event'>
130 <div class='fc-event-main'>My Event 4</div>
131 </div>
132 <div class='fc-event fc-h-event fc-daygrid-event fc-daygrid-block-event'>
133 <div class='fc-event-main'>My Event 5</div>
134 </div>
135 </div>
136
137 <p>
138 <input type='checkbox' id='drop-remove' />
139 <label for='drop-remove'>remove after drop</label>
140 </p>
141 </div>
142
143 <div id='calendar-wrap'>
144 <div id='calendar'></div>
145 </div>
146
147 </div>
148</body>
149</html>