triggers.html 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  2. <html>
  3. <head>
  4. <script type='text/javascript' src='../src/_loader.js?debug'></script>
  5. <script type='text/javascript'>
  6. /*
  7. TODO:
  8. this file demonstrates a bug, unrelated to triggers, where starting off in a small window,
  9. changing to agendaWeek, maximizing the window, switching to month causes the last column of
  10. events to be misaligned (don't stretch all the way right)
  11. this happens due to agendaWeek being taller than month before the switch back
  12. */
  13. var date = new Date();
  14. var d = date.getDate();
  15. var m = date.getMonth();
  16. var y = date.getFullYear();
  17. $(document).ready(function() {
  18. $('#calendar').fullCalendar({
  19. //weekends: false,
  20. //defaultView: 'agendaWeek',
  21. header: {
  22. left: 'prev,next today',
  23. center: 'title',
  24. right: 'month,agendaWeek,basicWeek,agendaDay,basicDay'
  25. },
  26. editable: true,
  27. weekMode: 'variable',
  28. //isRTL: true,
  29. viewDisplay: function(view) {
  30. console.log('viewDisplay');
  31. console.log(view.start + ' - ' + view.end);
  32. console.log(view.visStart + ' - ' + view.visEnd);
  33. //console.log(view);
  34. //console.log(this);
  35. },
  36. //loading: // see sources.html
  37. windowResize: function(view) {
  38. console.log('windowResize - ' + view.title);
  39. //console.log(this);
  40. },
  41. minTime: '5',
  42. maxTime: '21:30',
  43. dayClick: function(dayDate, allDay, ev, view) {
  44. //alert(dayDate);
  45. console.log('dayClick - ' + dayDate + ', allDay:' + allDay + ' - ' + view.title);
  46. //console.log(ev);
  47. //console.log(this);
  48. },
  49. selectable: true,
  50. select: function(start, end, allDay) {
  51. console.log('select', start, end, allDay);
  52. },
  53. unselect: function() {
  54. console.log('unselect');
  55. },
  56. eventRender: function(event, element, view) {
  57. if (event.id == 888) {
  58. return false;
  59. }
  60. else if (event.id == 777) {
  61. return $("<div style='background:green'>").text(event.title);
  62. }
  63. else if (event.id == 999) {
  64. element.css('border-color', 'red');
  65. //console.log('renderEvent (' + event.title + ') - ' + view.title);
  66. }
  67. },
  68. eventAfterRender: function(event, element, view) {
  69. //console.log('after render for "' + event.title + '":');
  70. //console.log(element);
  71. },
  72. eventClick: function(event, jsEvent, view) {
  73. console.log('EVENT CLICK ' + event.title);
  74. //console.log(jsEvent);
  75. //console.log(view);
  76. //console.log(this);
  77. //return false;
  78. },
  79. eventMouseover: function(event, jsEvent, view) {
  80. console.log('MOUSEOVER ' + event.title);
  81. //console.log(jsEvent);
  82. //console.log(view);
  83. //console.log(this);
  84. },
  85. eventMouseout: function(event, jsEvent, view) {
  86. console.log('MOUSEOUT ' + event.title);
  87. //console.log(jsEvent);
  88. //console.log(view);
  89. //console.log(this);
  90. },
  91. eventDragStart: function(event, jsEvent, ui, view) {
  92. console.log('DRAG START ' + event.title);
  93. console.log(this);
  94. },
  95. eventDragStop: function(event, jsEvent, ui, view) {
  96. console.log('DRAG STOP ' + event.title);
  97. console.log(this);
  98. },
  99. eventDrop: function(event, dayDelta, minuteDelta, allDay, revertFunc, jsEvent, ui, view) {
  100. console.log('DROP ' + event.title);
  101. console.log(dayDelta + ' days');
  102. console.log(minuteDelta + ' minutes');
  103. console.log('allday: ' + allDay);
  104. //setTimeout(function() {
  105. // revertFunc();
  106. //}, 2000);
  107. //console.log(jsEvent);
  108. //console.log(ui);
  109. //console.log(view.title);
  110. //console.log(this);
  111. },
  112. eventResizeStart: function(event, jsEvent, ui, view) {
  113. console.log('RESIZE START ' + event.title);
  114. //console.log(this);
  115. },
  116. eventResizeStop: function(event, jsEvent, ui, view) {
  117. console.log('RESIZE STOP ' + event.title);
  118. //console.log(this);
  119. },
  120. eventResize: function(event, dayDelta, minuteDelta, revertFunc, jsEvent, ui, view) {
  121. console.log('RESIZE!! ' + event.title);
  122. console.log(dayDelta + ' days');
  123. console.log(minuteDelta + ' minutes');
  124. //setTimeout(function() {
  125. // revertFunc();
  126. //}, 2000);
  127. //console.log(jsEvent);
  128. //console.log(ui);
  129. //console.log(view.title);
  130. //console.log(this);
  131. },
  132. events: [
  133. {
  134. title: 'All Day Event',
  135. start: new Date(y, m, 1)
  136. },
  137. {
  138. title: 'Long Event',
  139. start: new Date(y, m, d-5),
  140. end: new Date(y, m, d-2)
  141. },
  142. {
  143. id: 999,
  144. title: 'Repeating Event',
  145. start: new Date(y, m, d-3, 16, 0),
  146. allDay: false
  147. },
  148. {
  149. id: 999,
  150. title: 'Repeating Event',
  151. start: new Date(y, m, d+4, 16, 0),
  152. allDay: false
  153. },
  154. {
  155. id: 888,
  156. title: 'Meeting',
  157. start: new Date(y, m, d, 10, 30),
  158. allDay: false
  159. },
  160. {
  161. id: 777,
  162. title: 'Lunch',
  163. start: new Date(y, m, d, 12, 0),
  164. end: new Date(y, m, d, 14, 0),
  165. allDay: false
  166. },
  167. {
  168. title: 'Birthday Party',
  169. start: new Date(y, m, d+1, 19, 0),
  170. end: new Date(y, m, d+1, 22, 30),
  171. allDay: false
  172. },
  173. {
  174. title: 'Click for Google',
  175. start: new Date(y, m, 28),
  176. end: new Date(y, m, 29),
  177. url: 'http://google.com/'
  178. }
  179. ]
  180. });
  181. });
  182. </script>
  183. </head>
  184. <body style='font-size:12px'>
  185. <div id='calendar' style='width:75%;margin:20px auto 0;font-family:arial'></div>
  186. </body>
  187. </html>