Week
'); data = {}; data['week'] = current_week; data['year'] = current_year; data['SortBy'] = 'time'; if (current_teacher > 0) { data['TeacherID'] = current_teacher; } if (current_location > 0) { data['LocationID'] = current_location; } if (current_classtype > 0) { data['ClassTypeID'] = current_classtype; } jQuery.ajax({ type: "POST", dataType: "json", url: url, data: data, //crossDomain: true, success: onPostSuccess, error: onPostError, }); function onPostSuccess(json) {// set locations select values var locations = json.data.locations; set_select_options(jQuery('select#locations'), locations); // set teachers select values var teachers = json.data.teachers; set_select_options(jQuery('select#teachers'), teachers); set_teacher_modals(teachers); // set classtypes select values var classtypes = json.data.classtypes; set_select_options(jQuery('select#classtypes'), classtypes); set_classtype_modals(classtypes); var classes = json.data.classes; if (schedule_display == 'blocks') { set_classes_blocks(classes); } else { set_classes(classes); } } function onPostError(json) { set_error_msg(json['statusText'] + ' - ' + json['responseText']); } function set_select_options(jQueryselect, data) { // empty out, if anything exists jQueryselect.find('option').remove(); // set empty values if (jQueryselect.attr('id') == 'teachers') { empty_text = 'All teachers'; } else if (jQueryselect.attr('id') == 'classtypes') { empty_text = 'All classes'; } else if (jQueryselect.attr('id') == 'locations') { empty_text = 'All locations'; } jQueryselect .append(jQuery('
') .attr('value', 0) .text(empty_text)); // set select values jQuery.each(data, function(i) { var item = data[i]; jQueryselect .append(jQuery('
') .attr('value', item.id) .text(item.Name)); if (jQueryselect.attr('id') == 'teachers') { jQueryselect.val(current_teacher); } else if (jQueryselect.attr('id') == 'classtypes') { jQueryselect.val(current_classtype); } else if (jQueryselect.attr('id') == 'locations') { jQueryselect.val(current_location); } }); // end each loop for setting select items } // end set select_options function set_teacher_modals(data) { jQuery.each(data, function(i) { var item = data[i]; var modal_id = 'modal_teacher_' + item.id; var modal_title = item.Name; var image = ''; var role = ''; var bio = ''; if (item.LinkThumbLarge) { image = ''; } if (item.Role != null) { role = '
' + item.Role + '
'; } if (item.Bio != null) { bio = '
' + item.Bio + '
'; } jQuery('#os-modals').append('\
\
\
\
\
\ \
\
\
\ ' + image + '\
' + modal_title + '
\ ' + role + '\
\ ' + bio + '\
\ \
\
\
\
\
' ); }); // end each loop } // end set_teacher_modals function set_classtype_modals(data) { jQuery.each(data, function(i) { var item = data[i]; var modal_id = 'modal_classtype_' + item.id; var modal_title = item.Name; var image = ''; var description = ''; if (item.LinkThumbLarge) { image = ''; } if (item.Description) { description = item.Description; } jQuery('#os-modals').append('\
\
\
\
\
\ \
\
\
\ ' + image + '\
' + modal_title + '
\
\
' + description + '
\
\ \
\
\
\
\
' ); }); // end each loop } // end set_clastype_modals } // end get_classes function set_error_msg(error_msg) { // remove loading text jQuery('#os-classes').empty(); jQuery('#os-classes').html('
' + error_msg); } function set_classes(classes) { /* * Process info returned by API */ // remove loading text jQuery('#os-classes').empty(); var weekdays = [ 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday' ] ; // set classes in div#os-classes for (i = 0; i < weekdays.length; i++) { var weekday = weekdays[i] var data = classes[weekday].classes var date = classes[weekday].date // console.log(date); var res = date.split('-'); // split the date datestring = res[2] + ' ' + getMonthName(res[1]) + ' ' + res[0]; if ( data.length > 0 ) { jQuery('#os-classes') .append('
\
' + getDayName(i + 1) + ' ' + datestring + '
\
\
') // add header jQuery('div#' + weekday + '_classes') .append('
\
Time
\
Class
\
Level
\
Teacher
\
Location
\
Book
\
'); // add classes jQuery.each(data, function(i) { var item = data[i]; //console.log(item); if (item.Subteacher == true) { subteacher = ' (sub)'; } else { subteacher = ''; } var teacherID = item.TeacherID; var classtypeID = item.ClassTypeID; var teacher_modal_id = 'modal_teacher_' + item.TeacherID; var classtype_modal_id = 'modal_classtype_' + item.ClassTypeID; if (item.Cancelled == true || item.Holiday == true) { row_class = '"os-row openstudio_class"'; cancelled_description = '(Cancelled)'; if (item.Cancelled == true) { cancelled_description = '(Cancelled - ' + item.CancelledDescription + ')'; } if (item.Holiday == true) { cancelled_description = '(Cancelled - ' + item.HolidayDescription + ')'; } classtype_display = item.ClassType + ' \ ' + item.Starttime + ' - ' + item.Endtime + ' \ ' + classtype_display + ' \ ' + item.Level + ' \ ' + teacher_display + ' \ ' + item.Location + ' \ ' + BookingStatus + ' \ \ \ \ \ \ \ \ ' + item.Starttime + ' - ' + item.Endtime + ' \ \ ' + item.Location + ' \
' + cancelled_description + ''; teacher_display = item.Teacher + ' ' + subteacher; } else { row_class = '"os-row openstudio_class"'; classtype_display = item.ClassType; teacher_display = '' + item.Teacher + ' ' + subteacher + ''; }var BookingStatus = item.BookingStatus;if (item.BookingStatus == 'not_yet_open') {BookingStatus = 'Book from
' + item.BookingOpen;} else if (item.BookingStatus == 'ok') {BookingStatus = 'Book';} else if (item.BookingStatus == 'full') {BookingStatus = 'Full';} else {BookingStatus = item.BookingStatus;} jQuery('div#' + weekday + '_classes') .append('' + getDayName(i + 1) + '
' + datestring + '