I'm using jquery week calendar for scheduling some appointments, everything is working great, But I want calendar to start with 6:00am instead of 12:00am. I've checked all jquery's public functions for calendar customization but couldn't find a way to change this. I've checked jquery.weekcalendar.js file too but couldn't find a way (or couldn't understand what to do) to achieve this thing. Is there any way to achieve this or its just not possible for this calendar? any help would be highly appreciated. Thanks.
Asked
Active
Viewed 623 times
0
-
Don't know why -1 ! – Omar Bahir Dec 12 '16 at 11:07
1 Answers
0
You need to businessHours option, start specifies the starting time to display and end specifies the ending time to display.
$('#calendar').weekCalendar({
data: eventData,
firstDayOfWeek: dayOfWeek,
timeslotsPerHour: 4,
allowCalEventOverlap: true,
overlapEventsSeparate: true,
totalEventsWidthPercentInOneColumn: 95,
buttons: false,
title: '',
// ***HERE IS THE OPTION YOU NEED TO USE***
businessHours: { start: 10, end: 22, limitDisplay: true },
height: function ($calendar) {
return $(window).height() - $('h1').outerHeight(true);
},
eventRender: function (calEvent, $event) {
if (calEvent.title == "Booked Slot") {
var classe = $event.attr('class');
$event.attr('class', classe + ' colr');
}
},
resizable: function (calEvent, $event) {
if (calEvent.title == "Booked Slot") {
return false;
}
return true;
},
draggable: function (calEvent, $event) {
if (calEvent.title == "Booked Slot") {
return false;
}
return true;
},
eventNew: function (calEvent, $event) {
debugger;
displayMessage('<strong>Added event</strong><br/>Start: ' + calEvent.start + '<br/>End: ' + calEvent.end);
//alert('You\'ve added a new event. You would capture this event, add the logic for creating a new event with your own fields, data and whatever backend persistence you require.');
var $dialogContent = $("#event_edit_container");
resetForm($dialogContent);
var startField = $dialogContent.find("select[name='start']").val(calEvent.start);
var endField = $dialogContent.find("select[name='end']").val(calEvent.end);
var titleField = $dialogContent.find("input[name='title']");
var bodyField = $dialogContent.find("textarea[name='body']");
$dialogContent.dialog({
modal: true,
title: "New Calendar Event",
close: function () {
$dialogContent.dialog("destroy");
$dialogContent.hide();
$('#calendar').weekCalendar("removeUnsavedEvents");
},
buttons: {
save: function () {
calEvent.id = id;
id++;
calEvent.start = new Date(startField.val());
calEvent.end = new Date(endField.val());
calEvent.title = titleField.val();
calEvent.body = bodyField.val();
$calendar.weekCalendar("removeUnsavedEvents");
$calendar.weekCalendar("updateEvent", calEvent);
$dialogContent.dialog("close");
},
cancel: function () {
$dialogContent.dialog("close");
}
}
}).show();
$dialogContent.find(".date_holder").text($calendar.weekCalendar("formatDate", calEvent.start));
setupStartAndEndTimeFields(startField, endField, calEvent, $calendar.weekCalendar("getTimeslotTimes", calEvent.start));
},
eventDrop: function (calEvent, $event) {
displayMessage('<strong>Moved Event</strong><br/>Start: ' + calEvent.start + '<br/>End: ' + calEvent.end);
},
eventResize: function (calEvent, $event) {
displayMessage('<strong>Resized Event</strong><br/>Start: ' + calEvent.start + '<br/>End: ' + calEvent.end);
},
eventClick: function (calEvent, $event) {
debugger;
displayMessage('<strong>Clicked Event</strong><br/>Start: ' + calEvent.start + '<br/>End: ' + calEvent.end);
if (calEvent.readOnly) {
return;
}
var $dialogContent = $("#event_edit_container");
resetForm($dialogContent);
var startField = $dialogContent.find("select[name='start']").val(calEvent.start);
var endField = $dialogContent.find("select[name='end']").val(calEvent.end);
var titleField = $dialogContent.find("input[name='title']").val(calEvent.title);
var bodyField = $dialogContent.find("textarea[name='body']");
bodyField.val(calEvent.body);
$dialogContent.dialog({
modal: true,
title: "Edit - " + calEvent.title,
close: function () {
$dialogContent.dialog("destroy");
$dialogContent.hide();
$('#calendar').weekCalendar("removeUnsavedEvents");
},
buttons: {
save: function () {
calEvent.start = new Date(startField.val());
calEvent.end = new Date(endField.val());
calEvent.title = titleField.val();
calEvent.body = bodyField.val();
$calendar.weekCalendar("updateEvent", calEvent);
$dialogContent.dialog("close");
},
"delete": function () {
$calendar.weekCalendar("removeEvent", calEvent.id);
$dialogContent.dialog("close");
},
cancel: function () {
$dialogContent.dialog("close");
}
}
}).show();
var startField = $dialogContent.find("select[name='start']").val(calEvent.start);
var endField = $dialogContent.find("select[name='end']").val(calEvent.end);
$dialogContent.find(".date_holder").text($calendar.weekCalendar("formatDate", calEvent.start));
setupStartAndEndTimeFields(startField, endField, calEvent, $calendar.weekCalendar("getTimeslotTimes", calEvent.start));
$(window).resize().resize(); //fixes a bug in modal overlay size ??
},
eventMouseover: function (calEvent, $event) {
displayMessage('<strong>Mouseover Event</strong><br/>Start: ' + calEvent.start + '<br/>End: ' + calEvent.end);
},
eventMouseout: function (calEvent, $event) {
displayMessage('<strong>Mouseout Event</strong><br/>Start: ' + calEvent.start + '<br/>End: ' + calEvent.end);
},
noEvents: function () {
displayMessage('There are no events for this week');
}
});
function displayMessage(message) {
//$('#message').html(message).fadeIn();
}

Murtuza Ali Khan Mohammed
- 479
- 1
- 5
- 18