From 75649c8430a3540003c9ba37182070c568664d12 Mon Sep 17 00:00:00 2001 From: naomiaro <naomiaro@gmail.com> Date: Wed, 2 Feb 2011 01:02:31 -0500 Subject: [PATCH] added ability to change slot widths on the calendar to see small shows. --- .../schedule/full-calendar-functions.js | 40 +++++++++++++++++++ public/js/airtime/schedule/schedule.js | 3 +- 2 files changed, 42 insertions(+), 1 deletion(-) diff --git a/public/js/airtime/schedule/full-calendar-functions.js b/public/js/airtime/schedule/full-calendar-functions.js index 337be235d..1651d042a 100644 --- a/public/js/airtime/schedule/full-calendar-functions.js +++ b/public/js/airtime/schedule/full-calendar-functions.js @@ -21,6 +21,46 @@ function dayClick(date, allDay, jsEvent, view) { var x; } +function viewDisplay( view ) { + + if(view.name === 'agendaDay' || view.name === 'agendaWeek') { + + var select = $('.schedule_change_slots'); + var calendarEl = this; + + if(select.length === 0) { + + select = $('<select class="schedule_change_slots"/>') + .append('<option value="5">5 min</option>') + .append('<option value="10">10 min</option>') + .append('<option value="15">15 min</option>') + .append('<option value="30">30 min</option>') + .append('<option value="60">60 min</option>') + .change(function(){ + var x = $(this).val(); + var opt = view.calendar.options; + opt.slotMinutes = parseInt(x); + opt.events = getFullCalendarEvents; + $(calendarEl).fullCalendar('destroy'); + $(calendarEl).fullCalendar(opt); + + var mainHeight = document.documentElement.clientHeight - 200 - 50; + $(calendarEl).fullCalendar('option', 'contentHeight', mainHeight); + $(calendarEl).fullCalendar('render'); + }); + + $('.fc-header-left tbody tr:first') + .append('<td><span class="fc-header-space"></span></td>') + .append('<td></td>') + .find('td:last') + .append(select); + + var slotMin = view.calendar.options.slotMinutes; + $('.schedule_change_slots option[value="'+slotMin+'"]').attr('selected', 'selected'); + } + } +} + function eventRender(event, element, view) { //element.qtip({ // content: event.description diff --git a/public/js/airtime/schedule/schedule.js b/public/js/airtime/schedule/schedule.js index cc26e1647..2ec0ebe9c 100644 --- a/public/js/airtime/schedule/schedule.js +++ b/public/js/airtime/schedule/schedule.js @@ -206,10 +206,11 @@ $(document).ready(function() { agenda: 'H:mm{ - H:mm}', month: 'H:mm{ - H:mm}' }, - + events: getFullCalendarEvents, //callbacks (in full-calendar-functions.js) + viewDisplay: viewDisplay, dayClick: dayClick, eventRender: eventRender, eventAfterRender: eventAfterRender,