1// MEC Single Event Displayer 2var mecSingleEventDisplayer = 3{ 4 getSinglePage: function(id, occurrence, time, ajaxurl, layout, image_popup) 5 { 6 if(jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 7 jQuery('.mec-modal-result').addClass('mec-modal-preloader'); 8 9 jQuery.ajax( 10 { 11 url: ajaxurl, 12 data: "action=mec_load_single_page&id=" + id + (occurrence != null ? "&occurrence=" + occurrence : "") + (time != null ? "&time=" + time : "") + "&layout=" + layout, 13 type: "get", 14 success: function(response) 15 { 16 jQuery('.mec-modal-result').removeClass("mec-modal-preloader"); 17 jQuery.featherlight(response); 18 19 setTimeout(function() 20 { 21 if(typeof grecaptcha !== 'undefined' && jQuery('#g-recaptcha').length > 0) 22 { 23 grecaptcha.render("g-recaptcha", { 24 sitekey: mecdata.recapcha_key 25 }); 26 } 27 }, 1000); 28 29 if(image_popup != 0) 30 { 31 if(jQuery('.featherlight-content .mec-events-content a img').length > 0) 32 { 33 jQuery('.featherlight-content .mec-events-content a img').each(function() 34 { 35 jQuery(this).closest('a').attr('data-featherlight', 'image'); 36 }); 37 } 38 } 39 else 40 { 41 jQuery('.featherlight-content .mec-events-content a img').remove(); 42 jQuery('.featherlight-content .mec-events-content img').remove(); 43 } 44 45 if(typeof mecdata.enableSingleFluent != 'undefined' && mecdata.enableSingleFluent) mecFluentSinglePage(); 46 }, 47 error: function () { } 48 }); 49 } 50}; 51 52var mec_search_callback1; 53var mec_search_callback2; 54 55// MEC SEARCH FORM PLUGIN 56(function ($) { 57 $.fn.mecSearchForm = function (options) { 58 if(typeof settings != 'undefined') console.log(settings.callback); 59 // Default Options 60 var settings = $.extend({ 61 // These are the defaults. 62 id: 0, 63 refine: 0, 64 ajax_url: '', 65 search_form_element: '', 66 atts: '', 67 callback: function () { } 68 }, options); 69 70 if(typeof mec_search_callback1 === 'undefined') mec_search_callback1 = settings.callback; 71 else if(typeof mec_search_callback2 === 'undefined') mec_search_callback2 = settings.callback; 72 73 var $event_cost_min = $("#mec_sf_event_cost_min_" + settings.id); 74 var $event_cost_max = $("#mec_sf_event_cost_max_" + settings.id); 75 var $time_start = $("#mec_sf_timepicker_start_" + settings.id); 76 var $time_end = $("#mec_sf_timepicker_end_" + settings.id); 77 var $s = $("#mec_sf_s_" + settings.id); 78 var $address = $("#mec_sf_address_s_" + settings.id); 79 var $date_start = $('#mec_sf_date_start_' + settings.id); 80 var $date_end = $('#mec_sf_date_end_' + settings.id); 81 var $event_type = $('#mec_sf_event_type_' + settings.id); 82 var $event_type_2 = $('#mec_sf_event_type_2_' + settings.id); 83 var $attribute = $('#mec_sf_attribute_' + settings.id); 84 var $reset = $("#mec_search_form_" + settings.id + '_reset'); 85 var last_field; 86 87 // Trigger 88 trigger(); 89 90 $s.on('change', function (e) { 91 last_field = 's'; 92 search(); 93 }); 94 95 $address.on('change', function (e) { 96 last_field = 'address'; 97 search(); 98 }); 99 100 $event_cost_min.on('change', function (e) { 101 last_field = 'cost-min'; 102 $event_cost_max.attr('min', $(this).val()); 103 search(); 104 }); 105
106 $event_cost_max.on('change', function (e) { 107 last_field = 'cost-max'; 108 $event_cost_min.attr('max', $(this).val()); 109 search(); 110 }); 111 112 // Timepicker 113 if ($time_start.length) { 114 var format = (($time_start.data('format') === 12) ? 'hh:mm p' : 'HH:mm'); 115 $time_start.timepicker( 116 { 117 timeFormat: format, 118 minTime: new Date(0, 0, 0, 0, 0, 0), 119 maxTime: new Date(0, 0, 0, 23, 55, 0), 120 interval: 5, 121 dropdown: false, 122 change: function () { 123 last_field = 'time-start'; 124 search(); 125 } 126 }); 127 128 $time_end.timepicker( 129 { 130 timeFormat: format, 131 minTime: new Date(0, 0, 0, 0, 0, 0), 132 maxTime: new Date(0, 0, 0, 23, 55, 0), 133 interval: 5, 134 dropdown: false, 135 change: function () { 136 last_field = 'time-end'; 137 search(); 138 } 139 }); 140 } 141 142 var $month = $("#mec_sf_month_" + settings.id); 143 var $year = $("#mec_sf_year_" + settings.id); 144 var $month_or_year = $("#mec_sf_month_" + settings.id + ', ' + "#mec_sf_year_" + settings.id); 145 146 $month_or_year.on('change', function (e) { 147 last_field = 'date-dropdown'; 148 149 var mec_month_val = $month.val(); 150 var mec_year_val = $year.val(); 151 152 if ((mec_month_val !== 'none' && mec_year_val !== 'none') || ((mec_month_val === 'none' && mec_year_val === 'none'))) search(); 153 }); 154 155 $date_end.on('change', function () { 156 last_field = 'date-end'; 157 search(); 158 }); 159 160 $event_type.on('change', function (e) { 161 last_field = 'event-type'; 162 search(); 163 }); 164 165 $event_type_2.on('change', function (e) { 166 last_field = 'event-type-2'; 167 search(); 168 }); 169 170 $attribute.on('change', function (e) { 171 last_field = 'attribute'; 172 search(); 173 }); 174 175 if (settings.fields && settings.fields.length > 0) { 176 for (var k in settings.fields) { 177 $("#mec_sf_" + settings.fields[k] + '_' + settings.id).on('change', function (e) { 178 search(); 179 }); 180 } 181 } 182 183 // Reset 184 if ($reset.length) { 185 $reset.on('click', function (e) { 186 reset(); 187 }); 188 } 189 190 function trigger() { 191 $("#mec_sf_category_" + settings.id).off('change').on('change', function (e) { 192 last_field = 'category'; 193 search(); 194 }); 195 196 $("#mec_sf_location_" + settings.id).off('change').on('change', function (e) { 197 last_field = 'location'; 198 search(); 199 }); 200 201 $("#mec_sf_organizer_" + settings.id).off('change').on('change', function (e) { 202 last_field = 'organizer'; 203 search(); 204 }); 205 206 $("#mec_sf_speaker_" + settings.id).off('change').on('change', function (e) { 207 last_field = 'speaker'; 208 search(); 209 }); 210 211 $("#mec_sf_tag_" + settings.id).off('change').on('change', function (e) { 212 last_field = 'tag'; 213 search(); 214 }); 215 216 $("#mec_sf_label_" + settings.id).off('change').on('change', function (e) { 217 last_field = 'label'; 218 search(); 219 }); 220 } 221 222 function search() { 223 var $category = $("#mec_sf_category_" + settings.id); 224 var $location = $("#mec_sf_location_" + settings.id); 225 var $organizer = $("#mec_sf_organizer_" + settings.id); 226 var $speaker = $("#mec_sf_speaker_" + settings.id); 227 var $tag = $("#mec_sf_tag_" + settings.id); 228 var $label = $("#mec_sf_label_" + settings.id); 229 230 var s = $s.length ? $s.val() : ''; 231 var address = $address.length ? $address.val() : ''; 232 var location = $location.length ? $location.val() : ''; 233 var organizer = $organizer.length ? $organizer.val() : ''; 234 var speaker = $speaker.length ? $speaker.val() : ''; 235 var tag = $tag.length ? $tag.val() : ''; 236 var label = $label.length ? $label.val() : '';
237 var month = $month.length ? $month.val() : ''; 238 var year = $year.length ? $year.val() : ''; 239 var event_type = $event_type.length ? $event_type.val() : ''; 240 var event_type_2 = $event_type_2.length ? $event_type_2.val() : ''; 241 var attribute = $attribute.length ? $attribute.val() : ''; 242 243 var start = $date_start.length ? $date_start.val() : ''; 244 var end = $date_end.length ? $date_end.val() : ''; 245 246 var cost_min = $event_cost_min.length ? $event_cost_min.val() : ''; 247 var cost_max = $event_cost_max.length ? $event_cost_max.val() : ''; 248 249 var time_start = $time_start.length ? $time_start.val() : ''; 250 var time_end = $time_end.length ? $time_end.val() : ''; 251 252 var category; 253 if ($category.prop('tagName') && $category.prop('tagName').toLowerCase() === 'div') { 254 category = ''; 255 $category.find($('select')).each(function () { 256 category += $(this).val() + ','; 257 }); 258 } 259 else category = $category.length ? $category.val() : ''; 260 261 if (year === 'none' && month === 'none') { 262 year = ''; 263 month = ''; 264 } 265 266 var addation_attr = ''; 267 if (settings.fields && settings.fields.length > 0) { 268 for (var k in settings.fields) { 269 var field = '#mec_sf_' + settings.fields[k] + '_' + settings.id; 270 var val = $(field).length ? $(field).val() : ''; 271 272 addation_attr += '&sf[' + settings.fields[k] + ']=' + val; 273 } 274 } 275 276 // Search Parameters 277 var sf = 'sf[s]=' + s + '&sf[address]=' + address + '&sf[cost-min]=' + cost_min + '&sf[cost-max]=' + cost_max + '&sf[time-start]=' + time_start + '&sf[time-end]=' + time_end + '&sf[month]=' + month + '&sf[year]=' + year + '&sf[start]=' + start + '&sf[end]=' + end + '&sf[category]=' + category + '&sf[location]=' + location + '&sf[organizer]=' + organizer + '&sf[speaker]=' + speaker + '&sf[tag]=' + tag + '&sf[label]=' + label + '&sf[event_type]=' + event_type + '&sf[event_type_2]=' + event_type_2 + '&sf[attribute]=' + attribute + addation_attr; 278 279 // Refine Parameters 280 if (settings.refine) refine(sf); 281 282 // Attributes 283 var atts = settings.atts + '&' + sf; 284 285 // Search 286 if(typeof mec_search_callback1 !== 'undefined') mec_search_callback1(atts); 287 if(typeof mec_search_callback2 !== 'undefined') mec_search_callback2(atts); 288 } 289 290 function reset() { 291 var $category = $("#mec_sf_category_" + settings.id); 292 var $location = $("#mec_sf_location_" + settings.id); 293 var $organizer = $("#mec_sf_organizer_" + settings.id); 294 var $speaker = $("#mec_sf_speaker_" + settings.id); 295 var $tag = $("#mec_sf_tag_" + settings.id); 296 var $label = $("#mec_sf_label_" + settings.id); 297 298 if ($category.length && $category.prop('tagName') && $category.prop('tagName').toLowerCase() === 'div') { 299 $category.find($('select')).each(function () { 300 $(this).val(null).trigger('change'); 301 }); 302 } 303 else if ($category.length) $category.val(null); 304 305 if ($location.length) $location.val(null); 306 if ($organizer.length) $organizer.val(null); 307 if ($speaker.length) $speaker.val(null); 308 if ($tag.length) $tag.val(null); 309 if ($label.length) $label.val(null); 310 if ($s.length) $s.val(null); 311 if ($address.length) $address.val(null); 312 if ($month.length) $month.val(null); 313 if ($year.length) $year.val(null); 314 if ($event_cost_min.length) $event_cost_min.val(null); 315 if ($event_cost_max.length) $event_cost_max.val(null); 316 if ($date_start.length) $date_start.val(null); 317 if ($date_end.length) $date_end.val(null); 318 if ($time_start.length) $time_start.val(null); 319 if ($time_end.length) $time_end.val(null); 320 321 // Search Again 322 setTimeout(function () { 323 search(); 324 }, 200); 325 } 326 327 function refine(sf) { 328 var $category = $("#mec_sf_category_" + settings.id); 329 var $location = $("#mec_sf_location_" + settings.id); 330 var $organizer = $("#mec_sf_organizer_" + settings.id); 331 var $speaker = $("#mec_sf_speaker_" + settings.id); 332 var $tag = $("#mec_sf_tag_" + settings.id); 333 var $label = $("#mec_sf_label_" + settings.id); 334 335 var category_type; 336 if ($category.length && $category.prop('tagName') && $category.prop('tagName').toLowerCase() === 'div') category_type = 'checkboxes'; 337 else if ($category.length) category_type = 'dropdown'; 338 339 $.ajax( 340 { 341 url: settings.ajax_url, 342 data: "action=mec_refine_search_items&" + sf + '&last_field=' + last_field + '&category_type=' + category_type + '&id=' + settings.id, 343 dataType: "json", 344 type: "post", 345 success: function (response) { 346 // Categories 347 if (typeof response.categories !== 'undefined' && response.categories !== '') { 348 // Checkboxes 349 if ($category.length && $category.prop('tagName') && $category.prop('tagName').toLowerCase() === 'div') { 350 $category.html(response.categories); 351 } 352 // Dropdown 353 else if ($category.length) { 354 $category.replaceWith(response.categories) 355 } 356 357 // Categories Search bar 358 if ( jQuery(".mec-searchbar-category-wrap select").length > 0 ) jQuery(".mec-searchbar-category-wrap select").select2(); 359 } 360 361 // Locations 362 if (typeof response.locations !== 'undefined' && response.locations !== '') { 363 $location.replaceWith(response.locations) 364 } 365 366 // Organizers 367 if (typeof response.organizers !== 'undefined' && response.organizers !== '') { 368 $organizer.replaceWith(response.organizers) 369 } 370 371 // Speakers 372 if (typeof response.speakers !== 'undefined' && response.speakers !== '') { 373 $speaker.replaceWith(response.speakers) 374 } 375 376 // Labels 377 if (typeof response.labels !== 'undefined' && response.labels !== '') { 378 $label.replaceWith(response.labels) 379 } 380 381 // Tags 382 if (typeof response.tags !== 'undefined' && response.tags !== '') { 383 $tag.replaceWith(response.tags) 384 } 385 386 // Trigger 387 trigger(); 388 }, 389 error: function () { } 390 }); 391 } 392 }; 393}(jQuery)); 394 395jQuery(document).ready(function ($) { 396 // Select2 397 if ( jQuery(".mec-fes-form-cntt #mec-location select").length > 0 ) jQuery(".mec-fes-form-cntt #mec-location select").select2(); 398 if ( jQuery(".mec-fes-form-cntt #mec-organizer select").length > 0 ) jQuery(".mec-fes-form-cntt #mec-organizer select").select2(); 399 // Location select2 400 if ( jQuery("#mec_location_id").length > 0 ) jQuery("#mec_location_id").select2(); 401 // Organizer Select2 402 if ( jQuery("#mec_organizer_id").length > 0 ) jQuery("#mec_organizer_id").select2(); 403 // Categories Search bar 404 if ( jQuery(".mec-searchbar-category-wrap select").length > 0 ) jQuery(".mec-searchbar-category-wrap select").select2(); 405 406 jQuery(".mec-search-form.mec-totalcal-box").find(".mec-search-reset-button").parents().eq(2).addClass("mec-there-reset-button"); 407 408 jQuery(".mec-search-form.mec-totalcal-box").find(".mec-minmax-event-cost").parent().find(".mec-text-address-search").addClass("with-mec-cost"); 409 jQuery(".mec-search-form.mec-totalcal-box").find(".mec-text-address-search").parent().find(".mec-minmax-event-cost").addClass("with-mec-address"); 410 411 /** New Searchbar JS */
412 jQuery(".mec-full-calendar-search-ends").find(".mec-text-input-search").parent().find(".mec-tab-loader").removeClass("col-md-12").addClass("col-md-6"); 413 jQuery(".mec-search-form.mec-totalcal-box").find(".mec-text-input-search").parent().find(".mec-date-search").parent().find(".mec-text-input-search").addClass("col-md-6"); 414 jQuery(".mec-search-form.mec-totalcal-box").find(".mec-text-input-search").parent().find(".mec-time-picker-search").parent().find(".mec-text-input-search").addClass("col-md-6"); 415 jQuery(".mec-full-calendar-search-ends").find(".mec-text-input-search").addClass("col-md-12").parent().find(".mec-time-picker-search").addClass("col-md-6"); 416 jQuery(".mec-search-form.mec-totalcal-box").find(".mec-date-search").parent().find(".mec-time-picker-search").addClass("with-mec-date-search"); 417 jQuery(".mec-search-form.mec-totalcal-box").find(".mec-time-picker-search").parent().find(".mec-date-search").addClass("with-mec-time-picker"); 418}); 419 420// MEC FULL CALENDAR PLUGIN 421(function ($) { 422 $.fn.mecFullCalendar = function (options) { 423 // Default Options 424 var settings = $.extend({ 425 // These are the defaults. 426 id: 0, 427 atts: '', 428 ajax_url: '', 429 sf: {}, 430 skin: '', 431 }, options); 432 433 // Set onclick Listeners 434 setListeners(); 435 436 mecFluentCurrentTimePosition(); 437 mecFluentCustomScrollbar(); 438 439 var sf; 440 441 function setListeners() { 442 // Search Widget 443 if (settings.sf.container !== '') { 444 sf = $(settings.sf.container).mecSearchForm({ 445 id: settings.id, 446 refine: settings.sf.refine, 447 ajax_url: settings.ajax_url, 448 atts: settings.atts, 449 callback: function (atts) { 450 settings.atts = atts; 451 search(); 452 } 453 }); 454 } 455 456 // Add the onclick event 457 $("#mec_skin_" + settings.id + " .mec-totalcal-box .mec-totalcal-view span:not(.mec-fluent-more-views-icon):not(.mec-fluent-more-views-content)").on('click', function (e) { 458 e.preventDefault(); 459 var skin = $(this).data('skin'); 460 var mec_month_select = $('#mec_sf_month_' + settings.id); 461 var mec_year_select = $('#mec_sf_year_' + settings.id); 462 463 if (mec_year_select.val() == 'none') { 464 mec_year_select.find('option').each(function () { 465 var option_val = $(this).val(); 466 if (option_val == mecdata.current_year) mec_year_select.val(option_val); 467 }); 468 } 469 470 if (mec_month_select.val() == 'none') { 471 mec_month_select.find('option').each(function () { 472 var option_val = $(this).val(); 473 if (option_val == mecdata.current_month) mec_month_select.val(option_val); 474 }); 475 } 476 477 if (skin == 'list' || skin == 'grid' || skin == 'agenda') { 478 var mec_filter_none = '<option class="mec-none-item" value="none">' + $('#mec-filter-none').val() + '</option>'; 479 if (mec_month_select.find('.mec-none-item').length == 0) mec_month_select.prepend(mec_filter_none); 480 if (mec_year_select.find('.mec-none-item').length == 0) mec_year_select.prepend(mec_filter_none); 481 } 482 else { 483 if (mec_month_select.find('.mec-none-item').length != 0) mec_month_select.find('.mec-none-item').remove(); 484 if (mec_year_select.find('.mec-none-item').length != 0) mec_year_select.find('.mec-none-item').remove(); 485 } 486 487 $("#mec_skin_" + settings.id + " .mec-totalcal-box .mec-totalcal-view span").removeClass('mec-totalcalview-selected') 488 $(this).addClass('mec-totalcalview-selected'); 489 if ($(this).closest('.mec-fluent-more-views-content').length > 0) { 490 $('.mec-fluent-more-views-icon').addClass('active'); 491 $('.mec-fluent-more-views-content').removeClass('active'); 492 } else { 493 $('.mec-fluent-more-views-icon').removeClass('active'); 494 } 495 496 loadSkin(skin); 497 }); 498 } 499 500 function loadSkin(skin) { 501 // Set new Skin 502 settings.skin = skin; 503 504 // Add Loading Class 505 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 506 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 507 508 $.ajax({
509 url: settings.ajax_url, 510 data: "action=mec_full_calendar_switch_skin&skin=" + skin + "&" + settings.atts + "&apply_sf_date=1&sed=" + settings.sed_method, 511 dataType: "json", 512 type: "post", 513 success: function (response) { 514 $("#mec_full_calendar_container_" + settings.id).html(response); 515 516 // Remove loader 517 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 518 519 // Focus First Active Day 520 mecFocusDay(settings); 521 522 mecFluentCurrentTimePosition(); 523 mecFluentCustomScrollbar(); 524 525 jQuery(document).trigger( 'mec_load_skin_success', $("#mec_full_calendar_container_" + settings.id) ); 526 }, 527 error: function () { } 528 }); 529 } 530 531 function search() { 532 // Add Loading Class 533 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 534 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 535 536 $.ajax({
537 url: settings.ajax_url, 538 data: "action=mec_full_calendar_switch_skin&skin=" + settings.skin + "&" + settings.atts + "&apply_sf_date=1", 539 dataType: "json", 540 type: "post", 541 success: function (response) { 542 $("#mec_full_calendar_container_" + settings.id).html(response); 543 544 // Remove loader 545 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 546 547 // Focus First Active Day 548 mecFocusDay(settings); 549 550 // Focus First Active Week 551 mec_focus_week(settings.id); 552 553 mecFluentCurrentTimePosition(); 554 mecFluentCustomScrollbar(); 555 556 jQuery(document).trigger( 'mec_search_success', $("#mec_full_calendar_container_" + settings.id) ); 557 }, 558 error: function () { } 559 }); 560 } 561 }; 562 563}(jQuery)); 564 565// MEC YEARLY VIEW PLUGIN 566(function ($) { 567 $.fn.mecYearlyView = function (options) { 568 var active_year; 569 570 // Default Options 571 var settings = $.extend({ 572 // These are the defaults. 573 today: null, 574 id: 0, 575 events_label: 'Events', 576 event_label: 'Event', 577 year_navigator: 0, 578 atts: '', 579 next_year: {}, 580 sf: {}, 581 ajax_url: '', 582 }, options); 583 584 mecFluentYearlyUI(settings.id, settings.year_id); 585 586 // Initialize Year Navigator 587 if (settings.year_navigator) initYearNavigator(); 588 589 // Set onclick Listeners 590 setListeners(); 591 592 // load more 593 $(document).on("click", "#mec_skin_events_" + settings.id + " .mec-load-more-button", function () { 594 var year = $(this).parent().parent().parent().data('year-id'); 595 loadMoreButton(year); 596 }); 597 598 // Search Widget 599 if (settings.sf.container !== '') { 600 sf = $(settings.sf.container).mecSearchForm({ 601 id: settings.id, 602 refine: settings.sf.refine, 603 ajax_url: settings.ajax_url, 604 atts: settings.atts, 605 callback: function (atts) { 606 settings.atts = atts; 607 active_year = $('.mec-yearly-view-wrap .mec-year-navigator').filter(function () { 608 return $(this).css('display') == "block"; 609 }); 610 active_year = parseInt(active_year.find('h2').text()); 611 search(active_year); 612 } 613 }); 614 } 615 616 function initYearNavigator() { 617 // Add onclick event 618 $("#mec_skin_" + settings.id + " .mec-load-year").off("click").on("click", function () { 619 var year = $(this).data("mec-year"); 620 setYear(year); 621 }); 622 } 623 624 function search(year) { 625 // Add Loading Class 626 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 627 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 628 629 $.ajax({
630 url: settings.ajax_url, 631 data: "action=mec_yearly_view_load_year&mec_year=" + year + "&" + settings.atts + "&apply_sf_date=1", 632 dataType: "json", 633 type: "post", 634 success: function (response) { 635 active_year = response.current_year.year; 636 637 // Append Year 638 $("#mec_skin_events_" + settings.id).html('<div class="mec-year-container" id="mec_yearly_view_year_' + settings.id + '_' + response.current_year.id + '" data-year-id="' + response.current_year.id + '">' + response.year + '</div>'); 639 640 // Append Year Navigator 641 $("#mec_skin_" + settings.id + " .mec-yearly-title-sec").append('<div class="mec-year-navigator" id="mec_year_navigator_' + settings.id + '_' + response.current_year.id + '">' + response.navigator + '</div>'); 642 643 // Re-initialize Year Navigator 644 initYearNavigator(); 645 646 // Set onclick Listeners 647 setListeners(); 648 649 // Toggle Year 650 toggleYear(response.current_year.id); 651 652 // Remove loading Class 653 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 654 655 mecFluentYearlyUI(settings.id, active_year); 656 mecFluentCustomScrollbar(); 657 658 }, 659 error: function () { } 660 }); 661 } 662 663 function setYear(year, do_in_background) { 664 if (typeof do_in_background === "undefined") do_in_background = false; 665 666 var year_id = year; 667 active_year = year; 668 669 // Year exists so we just show it 670 if ($("#mec_yearly_view_year_" + settings.id + "_" + year_id).length) { 671 // Toggle Year 672 toggleYear(year_id); 673 mecFluentCustomScrollbar(); 674 } else { 675 if (!do_in_background) { 676 // Add Loading Class 677 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 678 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 679 } 680 681 $.ajax({
682 url: settings.ajax_url, 683 data: "action=mec_yearly_view_load_year&mec_year=" + year + "&" + settings.atts + "&apply_sf_date=0", 684 dataType: "json", 685 type: "post", 686 success: function (response) { 687 // Append Year 688 $("#mec_skin_events_" + settings.id).append('<div class="mec-year-container" id="mec_yearly_view_year_' + settings.id + '_' + response.current_year.id + '" data-year-id="' + response.current_year.id + '">' + response.year + '</div>'); 689 690 // Append Year Navigator 691 $("#mec_skin_" + settings.id + " .mec-yearly-title-sec").append('<div class="mec-year-navigator" id="mec_year_navigator_' + settings.id + '_' + response.current_year.id + '">' + response.navigator + '</div>'); 692 693 // Re-initialize Year Navigator 694 initYearNavigator(); 695 696 // Set onclick Listeners 697 setListeners(); 698 699 if (!do_in_background) { 700 // Toggle Year 701 toggleYear(response.current_year.id); 702 703 // Remove loading Class 704 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 705 706 // Set Year Filter values in search widget 707 $("#mec_sf_year_" + settings.id).val(year); 708 } else { 709 $("#mec_yearly_view_year_" + settings.id + "_" + response.current_year.id).hide(); 710 $("#mec_year_navigator_" + settings.id + "_" + response.current_year.id).hide(); 711 } 712 mecFluentYearlyUI(settings.id, year); 713 if (!do_in_background) { 714 mecFluentCustomScrollbar(); 715 } 716 }, 717 error: function () { } 718 }); 719 } 720 } 721 722 function toggleYear(year_id) { 723 // Toggle Year Navigator 724 $("#mec_skin_" + settings.id + " .mec-year-navigator").hide(); 725 $("#mec_year_navigator_" + settings.id + "_" + year_id).show(); 726 727 // Toggle Year 728 $("#mec_skin_" + settings.id + " .mec-year-container").hide(); 729 $("#mec_yearly_view_year_" + settings.id + "_" + year_id).show(); 730 } 731 732 var sf; 733 734 function setListeners() { 735 // Single Event Method 736 if (settings.sed_method != '0') { 737 sed(); 738 } 739 740 // Yearly view 741 $("#mec_skin_" + settings.id + " .mec-has-event a").on('click', function (e) { 742 e.preventDefault(); 743 744 var des = $(this).attr('href'); 745 var visible = $(des).is(':visible'); 746 if (!visible) { 747 var year = $(des).parents('.mec-year-container').data('year-id'); 748 if (year) { 749 750 while (!visible) { 751 loadMoreButton(year); 752 753 visible = $(des).is(':visible'); 754 } 755 } 756 } 757 758 $('.mec-events-agenda').removeClass('mec-selected'); 759 $(des).closest('.mec-events-agenda').addClass('mec-selected'); 760 761 var scrollTopVal = $(des).closest('.mec-events-agenda').offset().top - 35; 762 if ($(this).closest('.mec-fluent-wrap').length > 0) { 763 var parent = jQuery(this).closest('.mec-fluent-wrap').find('.mec-yearly-agenda-sec'); 764 scrollTopVal = parent.scrollTop() + ($(des).closest('.mec-events-agenda').offset().top - parent.offset().top); 765 jQuery(this).closest('.mec-fluent-wrap').find('.mec-yearly-agenda-sec').getNiceScroll(0).doScrollTop(scrollTopVal - 15, 120); 766 } 767 else { 768 $('html, body').animate({ 769 scrollTop: scrollTopVal 770 }, 300); 771 } 772 }); 773 } 774 775 function sed() { 776 // Single Event Display 777 $("#mec_skin_" + settings.id + " .mec-agenda-event-title a").off('click').on('click', function (e) { 778 var sed_method = $(this).attr('target'); 779 if ('_blank' === sed_method) { 780 781 return; 782 } 783 e.preventDefault(); 784 var href = $(this).attr('href'); 785 786 var id = $(this).data('event-id'); 787 var occurrence = get_parameter_by_name('occurrence', href); 788 var time = get_parameter_by_name('time', href); 789 790 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 791 }); 792 } 793 794 function loadMoreButton(year) { 795 var $max_count, $current_count = 0; 796 $max_count = $("#mec_yearly_view_year_" + settings.id + "_" + year + " .mec-yearly-max").data('count'); 797 $current_count = $("#mec_yearly_view_year_" + settings.id + "_" + year + " .mec-util-hidden").length; 798 799 if ($current_count > 10) { 800 for (var i = 0; i < 10; i++) { 801 $("#mec_yearly_view_year_" + settings.id + "_" + year + " .mec-util-hidden").slice(0, 2).each(function () { 802 $(this).removeClass('mec-util-hidden'); 803 }); 804 } 805 } 806 807 if ($current_count < 10 && $current_count != 0) { 808 for (var j = 0; j < $current_count; j++) { 809 $("#mec_yearly_view_year_" + settings.id + "_" + year + " .mec-util-hidden").slice(0, 2).each(function () { 810 $(this).removeClass('mec-util-hidden'); 811 $("#mec_yearly_view_year_" + settings.id + "_" + year + " .mec-load-more-wrap").css('display', 'none'); 812 }); 813 } 814 } 815 } 816 }; 817 818}(jQuery)); 819 820 821// MEC GENERAL CALENDAR VIEW PLUGIN 822(function ($) { 823 $.fn.mecGeneralCalendarView = function (options) { 824 // Default Options 825 var settings = $.extend({ 826 // These are the defaults. 827 id: 0, 828 atts: '', 829 ajax_url: '', 830 }, options); 831 832 // Set onclick Listeners 833 setListeners(); 834 835 function setListeners() { 836 // Single Event Method 837 if (settings.sed_method != '0') { 838 sed(); 839 } 840 } 841 function sed() { 842 // Single Event Display
843 $("#mec_skin_" + settings.id + " .fc-daygrid-event").off('click').on('click', function (e) { 844 e.preventDefault(); 845 var sed_method = $(this).attr('target'); 846 if ('_blank' === sed_method || '_self' === sed_method || 'no' === sed_method) { 847 848 return; 849 } 850 e.preventDefault(); 851 var href = $(this).attr('href'); 852 853 var id = $(this).data('event-id'); 854 var occurrence = get_parameter_by_name('occurrence', href); 855 var time = get_parameter_by_name('time', href); 856 857 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 858 }); 859 } 860 }; 861 862}(jQuery)); 863 864// MEC MONTHLY VIEW PLUGIN 865(function ($) { 866 $.fn.mecMonthlyView = function (options) { 867 var active_month; 868 var active_year; 869 870 // Default Options 871 var settings = $.extend({ 872 // These are the defaults. 873 today: null, 874 id: 0, 875 events_label: 'Events', 876 event_label: 'Event', 877 month_navigator: 0, 878 atts: '', 879 active_month: {}, 880 next_month: {}, 881 sf: {}, 882 ajax_url: '', 883 }, options); 884 885 // Initialize Month Navigator 886 if (settings.month_navigator) initMonthNavigator(); 887 888 active_month = settings.active_month.month; 889 active_year = settings.active_month.year; 890 891 // Set onclick Listeners 892 setListeners(); 893 894 // Search Widget 895 if (settings.sf.container !== '') { 896 sf = $(settings.sf.container).mecSearchForm({ 897 id: settings.id, 898 refine: settings.sf.refine, 899 ajax_url: settings.ajax_url, 900 atts: settings.atts, 901 callback: function (atts) { 902 settings.atts = atts; 903 search(active_year, active_month); 904 } 905 }); 906 } 907 908 function initMonthNavigator() { 909 // Remove the onclick event 910 $("#mec_skin_" + settings.id + " .mec-load-month").off("click"); 911 912 // Add onclick event 913 $("#mec_skin_" + settings.id + " .mec-load-month").on("click", function () { 914 var year = $(this).data("mec-year"); 915 var month = $(this).data("mec-month"); 916 917 setMonth(year, month, false, true); 918 }); 919 } 920 921 function search(year, month) { 922 // Add Loading Class 923 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 924 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 925 926 $.ajax({
927 url: settings.ajax_url, 928 data: "action=mec_monthly_view_load_month&mec_year=" + year + "&mec_month=" + month + "&" + settings.atts + "&apply_sf_date=1", 929 dataType: "json", 930 type: "post", 931 success: function (response) { 932 active_month = response.current_month.month; 933 active_year = response.current_month.year; 934 935 // Append Month 936 $("#mec_skin_events_" + settings.id).html('<div class="mec-month-container" id="mec_monthly_view_month_' + settings.id + '_' + response.current_month.id + '" data-month-id="' + response.current_month.id + '">' + response.month + '</div>'); 937 938 // Append Month Navigator 939 $("#mec_skin_" + settings.id + " .mec-skin-monthly-view-month-navigator-container").html('<div class="mec-month-navigator" id="mec_month_navigator_' + settings.id + '_' + response.current_month.id + '">' + response.navigator + '</div>'); 940 941 // Append Events Side 942 $("#mec_skin_" + settings.id + " .mec-calendar-events-side").html('<div class="mec-month-side" id="mec_month_side_' + settings.id + '_' + response.current_month.id + '">' + response.events_side + '</div>'); 943 944 // Re-initialize Month Navigator 945 initMonthNavigator(); 946 947 // Set onclick Listeners 948 setListeners(); 949 950 // Toggle Month 951 toggleMonth(response.current_month.id); 952 953 jQuery(document).trigger('load_calendar_data'); 954 955 // Remove loading Class 956 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 957 958 }, 959 error: function () { } 960 }); 961 } 962 963 function setMonth(year, month, do_in_background, navigator_click) { 964 if (typeof do_in_background === "undefined") do_in_background = false; 965 navigator_click = navigator_click || false; 966 var month_id = year + "" + month; 967 968 if (!do_in_background) { 969 active_month = month; 970 active_year = year; 971 } 972 973 // Month exists so we just show it 974 if ($("#mec_monthly_view_month_" + settings.id + "_" + month_id).length) { 975 // Toggle Month 976 toggleMonth(month_id); 977 } else { 978 if (!do_in_background) { 979 980 // Add Loading Class 981 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 982 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 983 } 984 985 $.ajax({
986 url: settings.ajax_url, 987 data: "action=mec_monthly_view_load_month&mec_year=" + year + "&mec_month=" + month + "&" + settings.atts + "&apply_sf_date=0" + "&navigator_click=" + navigator_click, 988 dataType: "json", 989 type: "post", 990 success: function (response) { 991 // Append Month 992 $("#mec_skin_events_" + settings.id).append('<div class="mec-month-container" id="mec_monthly_view_month_' + settings.id + '_' + response.current_month.id + '" data-month-id="' + response.current_month.id + '">' + response.month + '</div>'); 993 994 // Append Month Navigator 995 $("#mec_skin_" + settings.id + " .mec-skin-monthly-view-month-navigator-container").append('<div class="mec-month-navigator" id="mec_month_navigator_' + settings.id + '_' + response.current_month.id + '">' + response.navigator + '</div>'); 996 997 // Append Events Side 998 $("#mec_skin_" + settings.id + " .mec-calendar-events-side").append('<div class="mec-month-side" id="mec_month_side_' + settings.id + '_' + response.current_month.id + '">' + response.events_side + '</div>'); 999 1000 // Re-initialize Month Navigator 1001 initMonthNavigator(); 1002 1003 // Set onclick Listeners 1004 setListeners(); 1005 1006 if (!do_in_background) { 1007 // Toggle Month 1008 toggleMonth(response.current_month.id); 1009 1010 // Remove loading Class 1011 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 1012 1013 1014 // Set Month Filter values in search widget 1015 $("#mec_sf_month_" + settings.id).val(month); 1016 $("#mec_sf_year_" + settings.id).val(year); 1017 } else { 1018 $("#mec_monthly_view_month_" + settings.id + "_" + response.current_month.id).hide(); 1019 $("#mec_month_navigator_" + settings.id + "_" + response.current_month.id).hide(); 1020 $("#mec_month_side_" + settings.id + "_" + response.current_month.id).hide(); 1021 } 1022 if (typeof custom_month !== undefined) var custom_month; 1023 if (typeof custom_month != undefined) { 1024 if (custom_month == 'true') { 1025 $(".mec-month-container .mec-calendar-day").removeClass('mec-has-event'); 1026 $(".mec-month-container .mec-calendar-day").removeClass('mec-selected-day'); 1027 $('.mec-calendar-day').unbind('click'); 1028 } 1029 } 1030 1031 jQuery(document).trigger('load_calendar_data'); 1032 1033 }, 1034 error: function () { } 1035 }); 1036 } 1037 } 1038 1039 function toggleMonth(month_id) { 1040 var active_month = $("#mec_skin_" + settings.id + " .mec-month-container-selected").data("month-id"); 1041 var active_day = $("#mec_monthly_view_month_" + settings.id + "_" + active_month + " .mec-selected-day").data("day"); 1042 1043 if (active_day <= 9) active_day = "0" + active_day; 1044 1045 // Toggle Month Navigator 1046 $("#mec_skin_" + settings.id + " .mec-month-navigator").hide(); 1047 $("#mec_month_navigator_" + settings.id + "_" + month_id).show(); 1048 1049 // Toggle Month 1050 $("#mec_skin_" + settings.id + " .mec-month-container").hide(); 1051 $("#mec_monthly_view_month_" + settings.id + "_" + month_id).show(); 1052 1053 // Add selected class 1054 $("#mec_skin_" + settings.id + " .mec-month-container").removeClass("mec-month-container-selected"); 1055 $("#mec_monthly_view_month_" + settings.id + "_" + month_id).addClass("mec-month-container-selected"); 1056 1057 // Toggle Events Side 1058 $("#mec_skin_" + settings.id + " .mec-month-side").hide(); 1059 $("#mec_month_side_" + settings.id + "_" + month_id).show(); 1060 } 1061 1062 var sf; 1063 1064 function setListeners() { 1065 // Remove the onclick event 1066 $("#mec_skin_" + settings.id + " .mec-has-event").off("click"); 1067 1068 // Add the onclick event 1069 $("#mec_skin_" + settings.id + " .mec-has-event").on('click', function (e) { 1070 // define variables 1071 var $this = $(this), 1072 data_mec_cell = $this.data('mec-cell'),
1073 month_id = $this.data('month'); 1074 1075 if (settings.display_all == 0) { 1076 e.preventDefault(); 1077 1078 $("#mec_monthly_view_month_" + settings.id + "_" + month_id + " .mec-calendar-day").removeClass('mec-selected-day'); 1079 $this.addClass('mec-selected-day'); 1080 1081 $('#mec_month_side_' + settings.id + '_' + month_id + ' .mec-calendar-events-sec:not([data-mec-cell=' + data_mec_cell + '])').slideUp(); 1082 $('#mec_month_side_' + settings.id + '_' + month_id + ' .mec-calendar-events-sec[data-mec-cell=' + data_mec_cell + ']').slideDown(); 1083 1084 $('#mec_monthly_view_month_' + settings.id + '_' + month_id + ' .mec-calendar-events-sec:not([data-mec-cell=' + data_mec_cell + '])').slideUp(); 1085 $('#mec_monthly_view_month_' + settings.id + '_' + month_id + ' .mec-calendar-events-sec[data-mec-cell=' + data_mec_cell + ']').slideDown(); 1086 } 1087 else { 1088 $("#mec_monthly_view_month_" + settings.id + "_" + month_id + " .mec-calendar-day").removeClass('mec-selected-day'); 1089 $this.addClass('mec-selected-day'); 1090 } 1091 }); 1092 1093 mec_tooltip(); 1094 1095 // Single Event Method 1096 if (settings.sed_method != '0') { 1097 sed(); 1098 } 1099 1100 if (settings.style == 'novel') { 1101 if ($('.mec-single-event-novel').length > 0) { 1102 $('.mec-single-event-novel').colourBrightness(); 1103 $('.mec-single-event-novel').each(function () { 1104 $(this).colourBrightness() 1105 }); 1106 } 1107 } 1108 } 1109 1110 function sed() { 1111 // Single Event Display 1112 $("#mec_skin_" + settings.id + " .mec-event-title a,#mec_skin_" + settings.id + " .event-single-link-novel,#mec_skin_" + settings.id + " .mec-monthly-tooltip").off('click').on('click', function (e) { 1113 var sed_method = $(this).attr('target'); 1114 if ('_blank' === sed_method) { 1115 1116 return; 1117 } 1118 e.preventDefault(); 1119 var href = $(this).attr('href'); 1120 1121 var id = $(this).data('event-id'); 1122 var occurrence = get_parameter_by_name('occurrence', href); 1123 var time = get_parameter_by_name('time', href); 1124 1125 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 1126 }); 1127 1128 } 1129 1130 function mec_tooltip() { 1131 if ($('.mec-monthly-tooltip').length >= 1) { 1132 if (Math.max(document.documentElement.clientWidth, window.innerWidth || 0) > 768) { 1133 $('.mec-monthly-tooltip').tooltipster({ 1134 theme: 'tooltipster-shadow', 1135 interactive: true, 1136 delay: 100, 1137 minWidth: 350, 1138 maxWidth: 350 1139 }); 1140 if (settings.sed_method != '0') { 1141 sed(); 1142 } 1143 } else { 1144 var touchtime = 0; 1145 $(".mec-monthly-tooltip").on("click", function (event) { 1146 event.preventDefault(); 1147 if (touchtime == 0) { 1148 $('.mec-monthly-tooltip').tooltipster({ 1149 theme: 'tooltipster-shadow', 1150 interactive: true, 1151 delay: 100, 1152 minWidth: 350, 1153 maxWidth: 350, 1154 trigger: "custom", 1155 triggerOpen: { 1156 click: true, 1157 tap: true 1158 }, 1159 triggerClose: { 1160 click: true, 1161 tap: true 1162 } 1163 }); 1164 touchtime = new Date().getTime(); 1165 } else { 1166 if (((new Date().getTime()) - touchtime) < 200) { 1167 var el = $(this); 1168 var link = el.attr("href"); 1169 window.location = link; 1170 touchtime = 0; 1171 } else { 1172 touchtime = new Date().getTime(); 1173 } 1174 } 1175 }); 1176 } 1177 } 1178 } 1179 }; 1180 1181}(jQuery)); 1182 1183// MEC WEEKLY VIEW PLUGIN 1184(function ($) {
1185 $.fn.mecWeeklyView = function (options) { 1186 var active_year; 1187 var active_month; 1188 var active_week; 1189 var active_week_number; 1190 1191 // Default Options 1192 var settings = $.extend({ 1193 // These are the defaults. 1194 today: null, 1195 week: 1, 1196 id: 0, 1197 current_year: null, 1198 current_month: null, 1199 changeWeekElement: '.mec-load-week', 1200 month_navigator: 0, 1201 atts: '', 1202 ajax_url: '', 1203 sf: {} 1204 }, options); 1205 1206 // Set Active Time 1207 active_year = settings.current_year; 1208 active_month = settings.current_month; 1209 1210 // Search Widget 1211 if (settings.sf.container !== '') { 1212 $(settings.sf.container).mecSearchForm({ 1213 id: settings.id, 1214 refine: settings.sf.refine, 1215 ajax_url: settings.ajax_url, 1216 atts: settings.atts, 1217 callback: function (atts) { 1218 settings.atts = atts; 1219 search(active_year, active_month, active_week); 1220 } 1221 }); 1222 } 1223 1224 // Set The Week 1225 setThisWeek(settings.month_id + settings.week); 1226 1227 // Set Listeners 1228 setListeners(); 1229 1230 // Initialize Month Navigator 1231 if (settings.month_navigator) initMonthNavigator(settings.month_id); 1232 1233 function setListeners() { 1234 $(settings.changeWeekElement).off('click').on('click', function (e) { 1235 var week = $('#mec_skin_' + settings.id + ' .mec-weekly-view-week-active').data('week-id'); 1236 var max_weeks = $('#mec_skin_' + settings.id + ' .mec-weekly-view-week-active').data('max-weeks'); 1237 var new_week_number = active_week_number; 1238 1239 if ($(this).hasClass('mec-previous-month')) { 1240 week = parseInt(week) - 1; 1241 new_week_number--; 1242 } else { 1243 week = parseInt(week) + 1; 1244 new_week_number++; 1245 } 1246 1247 if (new_week_number <= 1 || new_week_number >= max_weeks) { 1248 // Disable Next/Previous Button 1249 $(this).css({ 1250 'opacity': .6, 1251 'cursor': 'default' 1252 }); 1253 $(this).find('i').css({ 1254 'opacity': .6, 1255 'cursor': 'default' 1256 }); 1257 } else { 1258 // Enable Next/Previous Buttons 1259 $('#mec_skin_' + settings.id + ' .mec-load-week, #mec_skin_' + settings.id + ' .mec-load-week i').css({ 1260 'opacity': 1, 1261 'cursor': 'pointer' 1262 }); 1263 } 1264 1265 // Week is not in valid range 1266 if (new_week_number === 0 || new_week_number > max_weeks) { } else { 1267 setThisWeek(week); 1268 } 1269 }); 1270 1271 // Single Event Method 1272 if (settings.sed_method != '0') { 1273 sed(); 1274 } 1275 } 1276 1277 function setThisWeek(week, auto_focus) { 1278 if (typeof auto_focus === 'undefined') auto_focus = false; 1279 1280 // Week is not exists 1281 if (!$('#mec_weekly_view_week_' + settings.id + '_' + week).length) { 1282 return setThisWeek((parseInt(week) - 1)); 1283 } 1284 1285 // Set week to active in week list 1286 $('#mec_skin_' + settings.id + ' .mec-weekly-view-week').removeClass('mec-weekly-view-week-active'); 1287 $('#mec_weekly_view_week_' + settings.id + '_' + week).addClass('mec-weekly-view-week-active'); 1288 $('#mec_weekly_view_top_week_' + settings.id + '_' + week).addClass('mec-weekly-view-week-active'); 1289 1290 // Show related events 1291 $('#mec_skin_' + settings.id + ' .mec-weekly-view-date-events').addClass('mec-util-hidden'); 1292 $('.mec-weekly-view-week-' + settings.id + '-' + week).removeClass('mec-util-hidden'); 1293 $('#mec_skin_' + settings.id + ' .mec-calendar-row').addClass('mec-util-hidden'); 1294 $('#mec_skin_' + settings.id + ' .mec-calendar-row[data-week=' + week % 10 + ']').removeClass('mec-util-hidden'); 1295 1296 active_week = week; 1297 active_week_number = $('#mec_skin_' + settings.id + ' .mec-weekly-view-week-active').data('week-number'); 1298 1299 $('#mec_skin_' + settings.id + ' .mec-calendar-d-top').find('.mec-current-week').find('span').remove(); 1300 $('#mec_skin_' + settings.id + ' .mec-calendar-d-top').find('.mec-current-week').append('<span>' + active_week_number + '</span>'); 1301 1302 if (active_week_number === 1) { 1303 // Disable Previous Button 1304 $('#mec_skin_' + settings.id + ' .mec-previous-month.mec-load-week').css({ 1305 'opacity': .6, 1306 'cursor': 'default' 1307 }); 1308 $('#mec_skin_' + settings.id + ' .mec-previous-month.mec-load-week').find('i').css({ 1309 'opacity': .6, 1310 'cursor': 'default' 1311 }); 1312 } 1313 1314 // Go To Event Week
1315 if (auto_focus) mec_focus_week(settings.id); 1316 1317 mecFluentCustomScrollbar(); 1318 } 1319 1320 function initMonthNavigator(month_id) { 1321 $('#mec_month_navigator' + settings.id + '_' + month_id + ' .mec-load-month').off('click'); 1322 $('#mec_month_navigator' + settings.id + '_' + month_id + ' .mec-load-month').on('click', function () { 1323 var year = $(this).data('mec-year'); 1324 var month = $(this).data('mec-month'); 1325 1326 setMonth(year, month, active_week, true); 1327 }); 1328 } 1329 1330 function search(year, month, week, navigation_click) { 1331 var week_number = (String(week).slice(-1)); 1332 1333 // Add Loading Class 1334 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 1335 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 1336 1337 $.ajax({ 1338 url: settings.ajax_url, 1339 data: "action=mec_weekly_view_load_month&mec_year=" + year + "&mec_month=" + month + "&mec_week=" + week_number + "&" + settings.atts + "&apply_sf_date=1", 1340 dataType: "json", 1341 type: "post", 1342 success: function (response) { 1343 // Remove Loading Class 1344 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 1345 1346 // Append Month 1347 $("#mec_skin_events_" + settings.id).html('<div class="mec-month-container" id="mec_weekly_view_month_' + settings.id + '_' + response.current_month.id + '">' + response.month + '</div>'); 1348 1349 // Append Month Navigator 1350 $("#mec_skin_" + settings.id + " .mec-skin-weekly-view-month-navigator-container").html('<div class="mec-month-navigator" id="mec_month_navigator' + settings.id + '_' + response.current_month.id + '">' + response.navigator + '</div>'); 1351 1352 // Set Listeners 1353 setListeners(); 1354 1355 // Toggle Month 1356 toggleMonth(response.current_month.id); 1357 1358 // Set active week 1359 setThisWeek(response.week_id, true); 1360 mecFluentCustomScrollbar(); 1361 }, 1362 error: function () { } 1363 }); 1364 } 1365 1366 function setMonth(year, month, week, navigation_click) { 1367 var month_id = '' + year + month; 1368 var week_number = (String(week).slice(-1)); 1369 1370 active_month = month; 1371 active_year = year; 1372 navigation_click = navigation_click || false; 1373 1374 // Month exists so we just show it 1375 if ($("#mec_weekly_view_month_" + settings.id + "_" + month_id).length) { 1376 // Toggle Month 1377 toggleMonth(month_id); 1378 1379 // Set active week 1380 setThisWeek('' + month_id + week_number); 1381 mecFluentCustomScrollbar(); 1382 } else { 1383 // Add Loading Class 1384 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 1385 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 1386 1387 $.ajax({
1388 url: settings.ajax_url, 1389 data: "action=mec_weekly_view_load_month&mec_year=" + year + "&mec_month=" + month + "&mec_week=" + week_number + "&" + settings.atts + "&apply_sf_date=0" + "&navigator_click=" + navigation_click, 1390 dataType: "json", 1391 type: "post", 1392 success: function (response) { 1393 // Remove Loading Class 1394 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 1395 1396 $('#mec_skin_' + settings.id + ' .mec-calendar-d-top h3').after(response.topWeeks); 1397 1398 // Append Month 1399 $("#mec_skin_events_" + settings.id).append('<div class="mec-month-container" id="mec_weekly_view_month_' + settings.id + '_' + response.current_month.id + '">' + response.month + '</div>'); 1400 1401 // Append Month Navigator 1402 $("#mec_skin_" + settings.id + " .mec-skin-weekly-view-month-navigator-container").append('<div class="mec-month-navigator" id="mec_month_navigator' + settings.id + '_' + response.current_month.id + '">' + response.navigator + '</div>'); 1403 1404 // Set Listeners 1405 setListeners(); 1406 1407 // Toggle Month 1408 toggleMonth(response.current_month.id); 1409 1410 // Set active week 1411 setThisWeek(response.week_id, true); 1412 1413 // Set Month Filter values in search widget 1414 $("#mec_sf_month_" + settings.id).val(month); 1415 $("#mec_sf_year_" + settings.id).val(year); 1416 mecFluentCustomScrollbar(); 1417 }, 1418 error: function () { } 1419 }); 1420 } 1421 } 1422 1423 function toggleMonth(month_id) { 1424 // Show related events 1425 $('#mec_skin_' + settings.id + ' .mec-month-container').addClass('mec-util-hidden'); 1426 $('#mec_weekly_view_month_' + settings.id + '_' + month_id).removeClass('mec-util-hidden'); 1427 1428 $('#mec_skin_' + settings.id + ' .mec-month-navigator').addClass('mec-util-hidden'); 1429 $('#mec_month_navigator' + settings.id + '_' + month_id).removeClass('mec-util-hidden'); 1430 1431 // Initialize Month Navigator 1432 if (settings.month_navigator) initMonthNavigator(month_id); 1433 } 1434 1435 function sed() { 1436 // Single Event Display 1437 $("#mec_skin_" + settings.id + " .mec-event-title a").off('click').on('click', function (e) { 1438 var sed_method = $(this).attr('target'); 1439 if ('_blank' === sed_method) { 1440 1441 return; 1442 } 1443 e.preventDefault(); 1444 var href = $(this).attr('href'); 1445 1446 var id = $(this).data('event-id'); 1447 var occurrence = get_parameter_by_name('occurrence', href); 1448 var time = get_parameter_by_name('time', href); 1449 1450 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 1451 }); 1452 } 1453 }; 1454 1455}(jQuery)); 1456 1457// MEC DAILY VIEW PLUGIN 1458(function ($) { 1459 $.fn.mecDailyView = function (options) { 1460 var active_month; 1461 var active_year; 1462 var active_day; 1463 1464 // Default Options 1465 var settings = $.extend({ 1466 // These are the defaults. 1467 today: null, 1468 id: 0, 1469 changeDayElement: '.mec-daily-view-day', 1470 events_label: 'Events', 1471 event_label: 'Event', 1472 month_navigator: 0, 1473 atts: '', 1474 ajax_url: '', 1475 sf: {}, 1476 }, options); 1477 1478 active_month = settings.month; 1479 active_year = settings.year; 1480 active_day = settings.day; 1481 1482 mecFluentCustomScrollbar(); 1483 1484 // Set Today 1485 setToday(settings.today); 1486 1487 // Set Listeners 1488 setListeners(); 1489 1490 // Initialize Month Navigator 1491 if (settings.month_navigator) initMonthNavigator(settings.month_i
1491d); 1492 1493 // Initialize Days Slider 1494 initDaysSlider(settings.month_id); 1495 1496 // Slider first event day focus when page load. 1497 mecFocusDay(settings); 1498 1499 // Search Widget 1500 if (settings.sf.container !== '') { 1501 $(settings.sf.container).mecSearchForm({ 1502 id: settings.id, 1503 refine: settings.sf.refine, 1504 ajax_url: settings.ajax_url, 1505 atts: settings.atts, 1506 callback: function (atts) { 1507 settings.atts = atts; 1508 search(active_year, active_month, active_day); 1509 } 1510 }); 1511 } 1512 1513 function setListeners() { 1514 $(settings.changeDayElement).on('click', function () { 1515 var today = $(this).data('day-id'); 1516 setToday(today); 1517 mecFluentCustomScrollbar(); 1518 }); 1519 1520 // Single Event Method 1521 if (settings.sed_method != '0') { 1522 sed(); 1523 } 1524 } 1525 1526 var current_monthday; 1527 1528 function setToday(today) { 1529 // For caring about 31st, 30th and 29th of some months 1530 if (!$('#mec_daily_view_day' + settings.id + '_' + today).length) { 1531 setToday(parseInt(today) - 1); 1532 return false; 1533 } 1534 1535 // Set day to active in day list 1536 $('.mec-daily-view-day').removeClass('mec-daily-view-day-active mec-color'); 1537 $('#mec_daily_view_day' + settings.id + '_' + today).addClass('mec-daily-view-day-active mec-color'); 1538 1539 // Show related events 1540 $('.mec-daily-view-date-events').addClass('mec-util-hidden'); 1541 $('#mec_daily_view_date_events' + settings.id + '_' + today).removeClass('mec-util-hidden'); 1542 $('.mec-daily-view-events').addClass('mec-util-hidden'); 1543 $('#mec-daily-view-events' + settings.id + '_' + today).removeClass('mec-util-hidden'); 1544 1545 // Set today label 1546 var weekday = $('#mec_daily_view_day' + settings.id + '_' + today).data('day-weekday'); 1547 var monthday = $('#mec_daily_view_day' + settings.id + '_' + today).data('day-monthday'); 1548 var count = $('#mec_daily_view_day' + settings.id + '_' + today).data('events-count'); 1549 var month_id = $('#mec_daily_view_day' + settings.id + '_' + today).data('month-id'); 1550 1551 $('#mec_today_container' + settings.id + '_' + month_id).html('<h2>' + monthday + '</h2><h3>' + weekday + '</h3><div class="mec-today-count">' + count + ' ' + (count > 1 ? settings.events_label : settings.event_label) + '</div>'); 1552 1553 if (monthday <= 9) current_monthday = '0' + monthday; 1554 else current_monthday = monthday; 1555 } 1556 1557 function initMonthNavigator(month_id) { 1558 $('#mec_month_navigator' + settings.id + '_' + month_id + ' .mec-load-month').off('click'); 1559 $('#mec_month_navigator' + settings.id + '_' + month_id + ' .mec-load-month').on('click', function () { 1560 var year = $(this).data('mec-year'); 1561 var month = $(this).data('mec-month'); 1562 1563 setMonth(year, month, current_monthday, true); 1564 }); 1565 } 1566 1567 function initDaysSlider(month_id, day_id) { 1568 // Set Global Month Id
1569 mec_g_month_id = month_id; 1570 1571 // Check RTL website 1572 var owl_rtl = $('body').hasClass('rtl') ? true : false; 1573 1574 // Init Days slider 1575 var owl = $("#mec-owl-calendar-d-table-" + settings.id + "-" + month_id); 1576 owl.owlCarousel({ 1577 responsiveClass: true, 1578 responsive: { 1579 0: { 1580 items: owl.closest('.mec-fluent-wrap').length > 0 ? 3 : 2, 1581 }, 1582 479: { 1583 items: 4, 1584 }, 1585 767: { 1586 items: 7, 1587 }, 1588 960: { 1589 items: 14, 1590 }, 1591 1000: { 1592 items: 19, 1593 }, 1594 1200: { 1595 items: 22, 1596 } 1597 }, 1598 dots: false, 1599 loop: false, 1600 rtl: owl_rtl, 1601 }); 1602 1603 // Custom Navigation Events 1604 $("#mec_daily_view_month_" + settings.id + "_" + month_id + " .mec-table-d-next").click(function (e) { 1605 e.preventDefault(); 1606 owl.trigger('next.owl.carousel'); 1607 }); 1608 1609 $("#mec_daily_view_month_" + settings.id + "_" + month_id + " .mec-table-d-prev").click(function (e) { 1610 e.preventDefault(); 1611 owl.trigger('prev.owl.carousel'); 1612 }); 1613 1614 if (typeof day_id === 'undefined') day_id = $('.mec-daily-view-day-active').data('day-id'); 1615 1616 var today_str = day_id.toString().substring(6, 8); 1617 var today_int = parseInt(today_str); 1618 1619 owl.trigger('owl.goTo', [today_int]); 1620 } 1621 1622 function search(year, month, day) { 1623 // Add Loading Class 1624 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 1625 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 1626 1627 $.ajax({
1628 url: settings.ajax_url, 1629 data: "action=mec_daily_view_load_month&mec_year=" + year + "&mec_month=" + month + "&mec_day=" + day + "&" + settings.atts + "&apply_sf_date=1", 1630 dataType: "json", 1631 type: "post", 1632 success: function (response) { 1633 // Remove Loading Class 1634 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 1635 1636 // Append Month 1637 $("#mec_skin_events_" + settings.id).html('<div class="mec-month-container" id="mec_daily_view_month_' + settings.id + '_' + response.current_month.id + '">' + response.month + '</div>'); 1638 1639 // Append Month Navigator 1640 $("#mec_skin_" + settings.id + " .mec-calendar-a-month.mec-clear").html('<div class="mec-month-navigator" id="mec_month_navigator' + settings.id + '_' + response.current_month.id + '">' + response.navigator + '</div>'); 1641 1642 // Set Listeners 1643 setListeners(); 1644 1645 active_year = response.current_month.year; 1646 active_month = response.current_month.month; 1647 1648 // Toggle Month 1649 toggleMonth(response.current_month.id, '' + active_year + active_month + active_day); 1650 1651 // Set Today 1652 setToday('' + active_year + active_month + active_day); 1653 1654 // Focus First Active Day 1655 mecFocusDay(settings); 1656 mecFluentCustomScrollbar(); 1657 }, 1658 error: function () { } 1659 }); 1660 } 1661 1662 function setMonth(year, month, day, navigation_click) { 1663 var month_id = '' + year + month; 1664 1665 active_month = month; 1666 active_year = year; 1667 active_day = day; 1668 navigation_click = navigation_click || false; 1669 1670 // Month exists so we just show it 1671 if ($("#mec_daily_view_month_" + settings.id + "_" + month_id).length) { 1672 // Toggle Month 1673 toggleMonth(month_id); 1674 1675 // Set Today 1676 setToday('' + month_id + day); 1677 } else { 1678 // Add Loading Class 1679 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 1680 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 1681 1682 $.ajax({
1683 url: settings.ajax_url, 1684 data: "action=mec_daily_view_load_month&mec_year=" + year + "&mec_month=" + month + "&mec_day=" + day + "&" + settings.atts + "&apply_sf_date=0" + "&navigator_click=" + navigation_click, 1685 dataType: "json", 1686 type: "post", 1687 success: function (response) { 1688 // Remove Loading Class 1689 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 1690 1691 // Append Month 1692 $("#mec_skin_events_" + settings.id).append('<div class="mec-month-container" id="mec_daily_view_month_' + settings.id + '_' + response.current_month.id + '">' + response.month + '</div>'); 1693 1694 // Append Month Navigator 1695 $("#mec_skin_" + settings.id + " .mec-calendar-a-month.mec-clear").append('<div class="mec-month-navigator" id="mec_month_navigator' + settings.id + '_' + response.current_month.id + '">' + response.navigator + '</div>'); 1696 1697 // Set Listeners 1698 setListeners(); 1699 1700 // Toggle Month 1701 toggleMonth(response.current_month.id, '' + year + month + '01'); 1702 1703 // Set Today 1704 setToday('' + year + month + '01'); 1705 1706 // Set Month Filter values in search widget 1707 $("#mec_sf_month_" + settings.id).val(month); 1708 $("#mec_sf_year_" + settings.id).val(year); 1709 mecFluentCustomScrollbar(); 1710 }, 1711 error: function () { } 1712 }); 1713 } 1714 } 1715 1716 function toggleMonth(month_id, day_id) { 1717 // Show related events 1718 $('#mec_skin_' + settings.id + ' .mec-month-container').addClass('mec-util-hidden'); 1719 $('#mec_daily_view_month_' + settings.id + '_' + month_id).removeClass('mec-util-hidden'); 1720 1721 $('#mec_skin_' + settings.id + ' .mec-month-navigator').addClass('mec-util-hidden'); 1722 $('#mec_month_navigator' + settings.id + '_' + month_id).removeClass('mec-util-hidden'); 1723 1724 // Initialize Month Navigator 1725 if (settings.month_navigator) initMonthNavigator(month_id); 1726 1727 // Initialize Days Slider 1728 initDaysSlider(month_id, day_id); 1729 1730 // Focus First Active Day 1731 mecFocusDay(settings); 1732 } 1733 1734 function sed() { 1735 // Single Event Display 1736 $("#mec_skin_" + settings.id + " .mec-event-title a").off('click').on('click', function (e) { 1737 var sed_method = $(this).attr('target'); 1738 if ('_blank' === sed_method) { 1739 1740 return; 1741 } 1742 e.preventDefault(); 1743 var href = $(this).attr('href'); 1744 1745 var id = $(this).data('event-id'); 1746 var occurrence = get_parameter_by_name('occurrence', href); 1747 var time = get_parameter_by_name('time', href); 1748 1749 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 1750 }); 1751 } 1752 }; 1753 1754}(jQuery)); 1755 1756// MEC TIMETABLE PLUGIN 1757(function ($) { 1758 $.fn.mecTimeTable = function (options) { 1759 var active_year; 1760 var active_month; 1761 var active_week; 1762 var active_week_number; 1763 var active_day; 1764 1765 // Default Options 1766 var settings = $.extend({ 1767 // These are the defaults. 1768 today: null, 1769 week: 1, 1770 active_day: 1, 1771 id: 0, 1772 changeWeekElement: '.mec-load-week', 1773 month_navigator: 0, 1774 atts: '', 1775 ajax_url: '', 1776 sf: {} 1777 }, options); 1778 1779 // Search Widget 1780 if (settings.sf.container !== '') { 1781 $(settings.sf.container).mecSearchForm({ 1782 id: settings.id, 1783 refine: settings.sf.refine, 1784 ajax_url: settings.ajax_url, 1785 atts: settings.atts, 1786 callback: function (atts) { 1787 settings.atts = atts; 1788 search(active_year, active_month, active_week, active_day); 1789 } 1790 }); 1791 } 1792 1793 // Set The Week
1794 setThisWeek(settings.month_id + settings.week, settings.active_day); 1795 1796 // Set Listeners 1797 setListeners(); 1798 1799 // Initialize Month Navigator 1800 if (settings.month_navigator) initMonthNavigator(settings.month_id); 1801 1802 function setListeners() { 1803 // Change Week Listener 1804 $(settings.changeWeekElement).off('click').on('click', function () { 1805 var week = $('#mec_skin_' + settings.id + ' .mec-weekly-view-week-active').data('week-id'); 1806 var max_weeks = $('#mec_skin_' + settings.id + ' .mec-weekly-view-week-active').data('max-weeks'); 1807 var new_week_number = active_week_number; 1808 1809 if ($(this).hasClass('mec-previous-month')) { 1810 week = parseInt(week) - 1; 1811 new_week_number--; 1812 } else { 1813 week = parseInt(week) + 1; 1814 new_week_number++; 1815 } 1816 1817 if (new_week_number <= 1 || new_week_number >= max_weeks) { 1818 // Disable Next/Previous Button 1819 $(this).css({ 1820 'opacity': .6, 1821 'cursor': 'default' 1822 }); 1823 $(this).find('i').css({ 1824 'opacity': .6, 1825 'cursor': 'default' 1826 }); 1827 } else { 1828 // Enable Next/Previous Buttons 1829 $('#mec_skin_' + settings.id + ' .mec-load-week, #mec_skin_' + settings.id + ' .mec-load-week i').css({ 1830 'opacity': 1, 1831 'cursor': 'pointer' 1832 }); 1833 } 1834 1835 // Week is not in valid range 1836 if (new_week_number === 0 || new_week_number > max_weeks) { } else { 1837 setThisWeek(week); 1838 } 1839 }); 1840 1841 // Change Day Listener 1842 $('#mec_skin_' + settings.id + ' .mec-weekly-view-week dt').not('.mec-timetable-has-no-event').off('click').on('click', function () { 1843 var day = $(this).data('date-id'); 1844 setDay(day); 1845 }); 1846 1847 // Single Event Method 1848 if (settings.sed_method != '0') { 1849 sed(); 1850 } 1851 } 1852 1853 function setThisWeek(week, day) { 1854 // Week is not exists 1855 if (!$('#mec_weekly_view_week_' + settings.id + '_' + week).length) { 1856 return setThisWeek((parseInt(week) - 1), day); 1857 } 1858 1859 // Set week to active in week list 1860 $('#mec_skin_' + settings.id + ' .mec-weekly-view-week').removeClass('mec-weekly-view-week-active'); 1861 $('#mec_weekly_view_week_' + settings.id + '_' + week).addClass('mec-weekly-view-week-active'); 1862 1863 setDay(day); 1864 1865 active_week = week; 1866 active_week_number = $('#mec_skin_' + settings.id + ' .mec-weekly-view-week-active').data('week-number'); 1867 1868 $('#mec_skin_' + settings.id + ' .mec-calendar-d-top').find('.mec-current-week').find('span').remove(); 1869 $('#mec_skin_' + settings.id + ' .mec-calendar-d-top').find('.mec-current-week').append('<span>' + active_week_number + '</span>'); 1870 1871 if (active_week_number === 1) { 1872 // Disable Previous Button 1873 $('#mec_skin_' + settings.id + ' .mec-previous-month.mec-load-week').css({ 1874 'opacity': .6, 1875 'cursor': 'default' 1876 }); 1877 $('#mec_skin_' + settings.id + ' .mec-previous-month.mec-load-week').find('i').css({ 1878 'opacity': .6, 1879 'cursor': 'default' 1880 }); 1881 } 1882 } 1883 1884 function setDay(day) { 1885 // Find the date automatically 1886 if (typeof day === 'undefined') { 1887 day = $('#mec_skin_' + settings.id + ' .mec-weekly-view-week-active dt').not('.mec-timetable-has-no-event').first().data('date-id'); 1888 } 1889 1890 // Activate the date element 1891 $('#mec_skin_' + settings.id + ' dt').removeClass('mec-timetable-day-active'); 1892 $('#mec_skin_' + settings.id + ' .mec-weekly-view-week-active dt[data-date-id="' + day + '"]').addClass('mec-timetable-day-active'); 1893 1894 // Show related events 1895 $('#mec_skin_' + settings.id + ' .mec-weekly-view-date-events').addClass('mec-util-hidden'); 1896 $('.mec_weekly_view_date_events' + settings.id + '_' + day).removeClass('mec-util-hidden').show(); 1897 } 1898 1899 function initMonthNavigator(month_id) { 1900 $('#mec_month_navigator' + settings.id + '_' + month_id + ' .mec-load-month').off('click').on('click', function () { 1901 var year = $(this).data('mec-year');
1902 var month = $(this).data('mec-month'); 1903 1904 setMonth(year, month, active_week); 1905 }); 1906 } 1907 1908 function search(year, month, week) { 1909 var week_number = (String(week).slice(-1)); 1910 1911 // Add Loading Class 1912 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 1913 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 1914 1915 // Set MEC Year And Month If Undefined 1916 year = typeof year == 'undefined' ? '' : year; 1917 month = typeof month == 'undefined' ? '' : month; 1918 1919 // Append current week to data body for used after filter. 1920 $('body').data('currentweek', $("#mec_skin_events_" + settings.id).find('.mec-current-week > span').html()); 1921 1922 $.ajax({ 1923 url: settings.ajax_url, 1924 data: "action=mec_timetable_load_month&mec_year=" + year + "&mec_month=" + month + "&mec_week=" + week_number + "&" + settings.atts + "&apply_sf_date=1", 1925 dataType: "json", 1926 type: "post", 1927 success: function (response) { 1928 // Remove Loading Class 1929 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 1930 1931 // Append Month 1932 $("#mec_skin_events_" + settings.id).html('<div class="mec-month-container" id="mec_timetable_month_' + settings.id + '_' + response.current_month.id + '">' + response.month + '</div>'); 1933 1934 // Append Month Navigator 1935 $("#mec_skin_" + settings.id + " .mec-skin-weekly-view-month-navigator-container").html('<div class="mec-month-navigator" id="mec_month_navigator' + settings.id + '_' + response.current_month.id + '">' + response.navigator + '</div>'); 1936 1937 // Set Listeners 1938 setListeners(); 1939 1940 // Toggle Month 1941 toggleMonth(response.current_month.id); 1942 1943 // Set active week 1944 setThisWeek(response.week_id); 1945 1946 // Focus First Active Week 1947 mec_focus_week(settings.id, 'timetable'); 1948 1949 mecFluentCustomScrollbar(); 1950 }, 1951 error: function () { } 1952 }); 1953 } 1954 1955 function setMonth(year, month, week) { 1956 var month_id = '' + year + month; 1957 var week_number = (String(week).slice(-1)); 1958 1959 active_month = month; 1960 active_year = year; 1961 1962 // Month exists so we just show it 1963 if ($("#mec_timetable_month_" + settings.id + "_" + month_id).length) { 1964 // Toggle Month 1965 toggleMonth(month_id); 1966 1967 // Set active week 1968 setThisWeek('' + month_id + week_number); 1969 } else { 1970 // Add Loading Class 1971 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 1972 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 1973 1974 $.ajax({
1975 url: settings.ajax_url, 1976 data: "action=mec_timetable_load_month&mec_year=" + year + "&mec_month=" + month + "&mec_week=" + week_number + "&" + settings.atts + "&apply_sf_date=0", 1977 dataType: "json", 1978 type: "post", 1979 success: function (response) { 1980 // Remove Loading Class 1981 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 1982 1983 // Append Month 1984 $("#mec_skin_events_" + settings.id).append('<div class="mec-month-container" id="mec_timetable_month_' + settings.id + '_' + response.current_month.id + '">' + response.month + '</div>'); 1985 1986 // Append Month Navigator 1987 $("#mec_skin_" + settings.id + " .mec-skin-weekly-view-month-navigator-container").append('<div class="mec-month-navigator" id="mec_month_navigator' + settings.id + '_' + response.current_month.id + '">' + response.navigator + '</div>'); 1988 1989 // Set Listeners 1990 setListeners(); 1991 1992 // Toggle Month 1993 toggleMonth(response.current_month.id); 1994 1995 // Set active week 1996 setThisWeek(response.week_id); 1997 1998 // Set Month Filter values in search widget 1999 $("#mec_sf_month_" + settings.id).val(month); 2000 $("#mec_sf_year_" + settings.id).val(year); 2001 }, 2002 error: function () { } 2003 }); 2004 } 2005 } 2006 2007 function toggleMonth(month_id) { 2008 // Show related events 2009 $('#mec_skin_' + settings.id + ' .mec-month-container').addClass('mec-util-hidden'); 2010 $('#mec_timetable_month_' + settings.id + '_' + month_id).removeClass('mec-util-hidden'); 2011 2012 $('#mec_skin_' + settings.id + ' .mec-month-navigator').addClass('mec-util-hidden'); 2013 $('#mec_month_navigator' + settings.id + '_' + month_id).removeClass('mec-util-hidden'); 2014 2015 // Initialize Month Navigator 2016 if (settings.month_navigator) initMonthNavigator(month_id); 2017 } 2018 2019 function sed() { 2020 // Single Event Display 2021 $("#mec_skin_" + settings.id + " .mec-timetable-event-title a").off('click').on('click', function (e) { 2022 e.preventDefault(); 2023 var href = $(this).attr('href'); 2024 2025 var id = $(this).data('event-id'); 2026 var occurrence = get_parameter_by_name('occurrence', href); 2027 var time = get_parameter_by_name('time', href); 2028 2029 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 2030 }); 2031 } 2032 }; 2033 2034}(jQuery)); 2035 2036// MEC WEEKLY PROGRAM PLUGIN 2037(function ($) { 2038 $.fn.mecWeeklyProgram = function (options) { 2039 // Default Options 2040 var settings = $.extend({ 2041 // These are the defaults. 2042 id: 0, 2043 atts: '', 2044 sf: {} 2045 }, options); 2046 2047 // Search Widget 2048 if (settings.sf.container !== '') { 2049 $(settings.sf.container).mecSearchForm({ 2050 id: settings.id, 2051 refine: settings.sf.refine, 2052 ajax_url: settings.ajax_url, 2053 atts: settings.atts, 2054 callback: function (atts) { 2055 settings.atts = atts; 2056 search(); 2057 } 2058 }); 2059 } 2060 2061 // Set Listeners 2062 setListeners(); 2063 2064 function setListeners() { 2065 // Single Event Method 2066 if (settings.sed_method != '0') { 2067 sed(); 2068 } 2069 } 2070 2071 function search() { 2072 var $modal = $('.mec-modal-result'); 2073 2074 // Add Loading Class 2075 if ($modal.length === 0) $('.mec-wrap').append('<div class="mec-modal-result"></div>'); 2076 $modal.addClass('mec-month-navigator-loading'); 2077 2078 $.ajax({
2079 url: settings.ajax_url, 2080 data: "action=mec_weeklyprogram_load&" + settings.atts + "&apply_sf_date=1", 2081 dataType: "json", 2082 type: "post", 2083 success: function (response) { 2084 // Remove Loading Class 2085 $modal.removeClass("mec-month-navigator-loading"); 2086 2087 // Append Month 2088 $("#mec_skin_events_" + settings.id).html(response.date_events); 2089 2090 // Set Listeners 2091 setListeners(); 2092 }, 2093 error: function () { } 2094 }); 2095 } 2096 2097 function sed() { 2098 // Single Event Display 2099 $("#mec_skin_" + settings.id + " .mec-event-title a").off('click').on('click', function (e) { 2100 var sed_method = $(this).attr('target'); 2101 if ('_blank' === sed_method) { 2102 2103 return; 2104 } 2105 e.preventDefault(); 2106 var href = $(this).attr('href'); 2107 2108 var id = $(this).data('event-id'); 2109 var occurrence = get_parameter_by_name('occurrence', href); 2110 var time = get_parameter_by_name('time', href); 2111 2112 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 2113 }); 2114 } 2115 }; 2116 2117}(jQuery)); 2118 2119// MEC MASONRY VIEW PLUGIN 2120(function ($) { 2121 $.fn.mecMasonryView = function (options) { 2122 // Default Options 2123 var settings = $.extend({ 2124 // These are the defaults. 2125 id: 0, 2126 atts: '', 2127 ajax_url: '', 2128 sf: {}, 2129 end_date: '', 2130 offset: 0, 2131 start_date: '', 2132 }, options); 2133 2134 // Set onclick Listeners 2135 setListeners(); 2136 2137 // Init Masonry 2138 initMasonry(); 2139 if (typeof custom_dev !== undefined) var custom_dev; 2140 if (custom_dev == 'yes') { 2141 $(".mec-wrap").css("height", "1550"); 2142 if (Math.max(document.documentElement.clientWidth, window.innerWidth || 0) < 768) { 2143 $(".mec-wrap").css("height", "5500"); 2144 } 2145 if (Math.max(document.documentElement.clientWidth, window.innerWidth || 0) < 480) { 2146 $(".mec-wrap").css("height", "5000"); 2147 } 2148 $(".mec-event-masonry .mec-masonry-item-wrap:nth-child(n+20)").css("display", "none"); 2149 $(".mec-load-more-button").on("click", function () { 2150 $(".mec-event-masonry .mec-masonry-item-wrap:nth-child(n+20)").css("display", "block"); 2151 $(".mec-wrap").css("height", "auto"); 2152 initMasonry(); 2153 $(".mec-load-more-button").hide(); 2154 }) 2155 $(".mec-events-masonry-cats a:first-child").on("click", function () { 2156 $(".mec-wrap").css("height", "auto"); 2157 $(".mec-event-masonry .mec-masonry-item-wrap:nth-child(n+20)").css("display", "block"); 2158 $(".mec-load-more-button").hide(); 2159 initMasonry(); 2160 }) 2161 $(".mec-events-masonry-cats a:not(:first-child)").on("click", function () { 2162 $(".mec-load-more-button").hide(); 2163 $(".mec-wrap").css("height", "auto"); 2164 $(".mec-wrap").css("min-height", "400"); 2165 $(".mec-event-masonry .mec-masonry-item-wrap").css("display", "block"); 2166 var element = document.querySelector("#mec_skin_" + settings.id + " .mec-event-masonry"); 2167 var selector = $(this).attr('data-group'); 2168 var CustomShuffle = new Shuffle(element, { 2169 itemSelector: '.mec-masonry-item-wrap', 2170 }); 2171 CustomShuffle.sort({ 2172 by: element.getAttribute('data-created'), 2173 }); 2174 CustomShuffle.filter(selector != '*' ? selector : Shuffle.ALL_ITEMS); 2175 $(".mec-event-masonry .mec-masonry-item-wrap").css("visibility", "visible"); 2176 }) 2177 } 2178 2179 // Fix Elementor Masonry 2180 if (mecdata.elementor_edit_mode != 'no') elementorFrontend.hooks.addAction('frontend/element_ready/global', initMasonry()); 2181 2182 function initMasonry() { 2183 var $container = $("#mec_skin_" + settings.id + " .mec-event-masonry"); 2184 var data_sortAscending = $("#mec_skin_" + settings.id).data('sortascending'); 2185 $container.imagesLoaded(function () { 2186 var $grid = $container.isotope({ 2187 filter: '*', 2188 itemSelector: '.mec-masonry-item-wrap', 2189 getSortData: { 2190 date: '[data-sort-masonry]', 2191 }, 2192 sortBy: 'date', 2193 sortAscending: data_sortAscending, 2194 animationOptions: { 2195 duration: 750, 2196 easing: 'linear', 2197 queue: false 2198 }, 2199 }); 2200 if (settings.fit_to_row == 1) $grid.isotope({ 2201 layoutMode: 'fitRows', 2202 sortAscending: data_sortAscending, 2203 }); 2204 // Fix Elementor tab 2205 $('.elementor-tabs').find('.elementor-tab-title').click(function () { 2206 $grid.isotope({ 2207 sortBy: 'date', 2208 sortAscending: data_sortAscending, 2209 }); 2210 }); 2211 }) 2212 2213 $("#mec_skin_" + settings.id + " .mec-events-masonry-cats a").click(function () { 2214 var selector = $(this).attr('data-filter'); 2215 var $grid_cat = $container.isotope({ 2216 filter: selector, 2217 itemSelector: '.mec-masonry-item-wrap', 2218 getSortData: { 2219 date: '[data-sort-masonry]', 2220 }, 2221 sortBy: 'date', 2222 sortAscending: data_sortAscending, 2223 animationOptions: { 2224 duration: 750, 2225 easing: 'linear', 2226 queue: false 2227 }, 2228 }); 2229 if (settings.masonry_like_grid == 1) $grid_cat.isotope({ 2230 sortBy: 'date', 2231 sortAscending: data_sortAscending, 2232 }); 2233 return false; 2234 }); 2235 2236 var $optionSets = $("#mec_skin_" + settings.id + " .mec-events-masonry-cats"), 2237 $optionLinks = $optionSets.find('a'); 2238 2239 $optionLinks.click(function () { 2240 var $this = $(this); 2241 2242 // don't proceed if already selected 2243 if ($this.hasClass('selected')) return false; 2244 2245 var $optionSet = $this.parents('.mec-events-masonry-cats'); 2246 $optionSet.find('.mec-masonry-cat-selected').removeClass('mec-masonry-cat-selected'); 2247 $this.addClass('mec-masonry-cat-selected'); 2248 }); 2249 } 2250 2251 function setListeners() { 2252 if (settings.sed_method != '0') { 2253 sed(); 2254 } 2255 2256 } 2257 2258 $("#mec_skin_" + settings.id + " .mec-events-masonry-cats > a").click(function () { 2259 var mec_load_more_btn = $("#mec_skin_" + settings.id + " .mec-load-more-button"); 2260 var mec_filter_value = $(this).data('filter').replace('.mec-t', ''); 2261 2262 if (mec_load_more_btn.hasClass('mec-load-more-loading')) mec_load_more_btn.removeClass('mec-load-more-loading'); 2263 if (mec_load_more_btn.hasClass("mec-hidden-" + mec_filter_value)) mec_load_more_btn.addClass("mec-util-hidden"); 2264 else mec_load_more_btn.removeClass("mec-util-hidden"); 2265 }); 2266 2267 $("#mec_skin_" + settings.id + " .mec-load-more-button").on("click", function () {
2268 loadMore(); 2269 }); 2270 2271 function sed() { 2272 // Single Event Display 2273 $("#mec_skin_" + settings.id + " .mec-masonry-img a, #mec_skin_" + settings.id + " .mec-event-title a, #mec_skin_" + settings.id + " .mec-booking-button").off('click').on('click', function (e) { 2274 var sed_method = $(this).attr('target'); 2275 if ('_blank' === sed_method) { 2276 2277 return; 2278 } 2279 e.preventDefault(); 2280 var href = $(this).attr('href'); 2281 2282 var id = $(this).data('event-id'); 2283 var occurrence = get_parameter_by_name('occurrence', href); 2284 var time = get_parameter_by_name('time', href); 2285 2286 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 2287 }); 2288 } 2289 2290 function loadMore() { 2291 // Add loading Class 2292 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-load-more-loading"); 2293 var mec_cat_elem = $('#mec_skin_' + settings.id).find('.mec-masonry-cat-selected'); 2294 var mec_filter_value = (mec_cat_elem && mec_cat_elem.data('filter') != undefined) ? mec_cat_elem.data('filter').replace('.mec-t', '') : ''; 2295 var mec_filter_by = $('#mec_skin_' + settings.id).data('filterby'); 2296 2297 $.ajax({
2298 url: settings.ajax_url, 2299 data: "action=mec_masonry_load_more&mec_filter_by=" + mec_filter_by + "&mec_filter_value=" + mec_filter_value + "&mec_start_date=" + settings.end_date + "&mec_offset=" + settings.offset + "&" + settings.atts + "&apply_sf_date=0", 2300 dataType: "json", 2301 type: "post", 2302 success: function (response) { 2303 if (response.count == "0") { 2304 // Remove loading Class 2305 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading"); 2306 2307 // Hide load more button 2308 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden mec-hidden-" + mec_filter_value); 2309 } else { 2310 // Show load more button 2311 if (typeof response.has_more_event === 'undefined' || (typeof response.has_more_event !== 'undefined' && response.has_more_event)) $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-util-hidden"); 2312 else $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 2313 2314 // Append Items 2315 var node = $("#mec_skin_" + settings.id + " .mec-event-masonry"); 2316 var markup = '', 2317 newItems = $(response.html).find('.mec-masonry-item-wrap'); 2318 2319 newItems.each(function (index) { 2320 node.isotope() 2321 .append(newItems[index]) 2322 .isotope('appended', newItems[index]); 2323 }); 2324 2325 // Remove loading Class 2326 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading"); 2327 2328 // Update the variables 2329 settings.end_date = response.end_date; 2330 settings.offset = response.offset; 2331 2332 // Single Event Method 2333 if (settings.sed_method != '0') { 2334 sed(); 2335 } 2336 } 2337 }, 2338 error: function () { } 2339 }); 2340 } 2341 }; 2342}(jQuery)); 2343 2344// MEC LIST VIEW PLUGIN 2345(function ($) { 2346 $.fn.mecListView = function (options) { 2347 // Default Options 2348 var settings = $.extend({ 2349 // These are the defaults. 2350 id: 0, 2351 atts: '', 2352 ajax_url: '', 2353 sf: {}, 2354 current_month_divider: '', 2355 end_date: '', 2356 offset: 0, 2357 limit: 0 2358 }, options); 2359 2360 // Set onclick Listeners 2361 setListeners(); 2362 2363 var sf; 2364 2365 function setListeners() { 2366 // Search Widget 2367 if (settings.sf.container !== '') { 2368 sf = $(settings.sf.container).mecSearchForm({ 2369 id: settings.id, 2370 refine: settings.sf.refine, 2371 ajax_url: settings.ajax_url, 2372 atts: settings.atts, 2373 callback: function (atts) { 2374 settings.atts = atts; 2375 search(); 2376 } 2377 }); 2378 } 2379 2380 $("#mec_skin_" + settings.id + " .mec-load-more-button").on("click", function () { 2381 loadMore(); 2382 }); 2383 2384 // Accordion Toggle 2385 if (settings.style === 'accordion') { 2386 if (settings.toggle_month_divider) { 2387 $('#mec_skin_' + settings.id + ' .mec-month-divider:first-of-type').addClass('active'); 2388 $('#mec_skin_' + settings.id + ' .mec-month-divider:first-of-type').find('i').removeClass('mec-sl-arrow-down').addClass('mec-sl-arrow-up'); 2389 2390 toggle(); 2391 } 2392 2393 accordion(); 2394 } 2395 2396 // Single Event Method 2397 if (settings.sed_method != '0') { 2398 sed(); 2399 } 2400 } 2401
2402 function toggle() { 2403 $('#mec_skin_' + settings.id + ' .mec-month-divider').off("click").on("click", function (event) { 2404 event.preventDefault(); 2405 2406 var status = $(this).hasClass('active'); 2407 2408 // Remove Active Style of Month Divider 2409 $('#mec_skin_' + settings.id + ' .mec-month-divider').removeClass('active'); 2410 2411 // Hide All Events 2412 $('#mec_skin_' + settings.id + ' .mec-divider-toggle').slideUp('fast'); 2413 2414 if (status) { 2415 $(this).removeClass('active'); 2416 $('.mec-month-divider').find('i').removeClass('mec-sl-arrow-up').addClass('mec-sl-arrow-down'); 2417 } else { 2418 $(this).addClass('active'); 2419 $('.mec-month-divider').find('i').removeClass('mec-sl-arrow-up').addClass('mec-sl-arrow-down') 2420 $(this).find('i').removeClass('mec-sl-arrow-down').addClass('mec-sl-arrow-up'); 2421 2422 var month = $(this).data('toggle-divider'); 2423 $('#mec_skin_' + settings.id + ' .' + month).slideDown('fast'); 2424 } 2425 }); 2426 } 2427 2428 function toggleLoadmore() { 2429 $('#mec_skin_' + settings.id + ' .mec-month-divider:not(:last)').each(function () { 2430 if ($(this).hasClass('active')) $(this).removeClass('active'); 2431 var month = $(this).data('toggle-divider'); 2432 $('#mec_skin_' + settings.id + ' .' + month).slideUp('fast'); 2433 }); 2434 2435 // Set Active Class For Last Article 2436 $('#mec_skin_' + settings.id + ' .mec-month-divider:last').addClass('active'); 2437 2438 // Register Listeners 2439 toggle(); 2440 } 2441 2442 function accordion() { 2443 // Accordion Toggle 2444 $("#mec_skin_" + settings.id + " .mec-toggle-item-inner").off("click").on("click", function (event) { 2445 event.preventDefault(); 2446 2447 var $this = $(this); 2448 $(this).parent().find(".mec-content-toggle").slideToggle("fast", function () { 2449 $this.children("i").toggleClass("mec-sl-arrow-down mec-sl-arrow-up"); 2450 }); 2451 2452 // Trigger Google Map 2453 var unique_id = $(this).parent().find(".mec-modal-wrap").data('unique-id'); 2454 2455 window['mec_init_gmap' + unique_id](); 2456 }); 2457 } 2458 2459 function sed() { 2460 // Single Event Display 2461 $("#mec_skin_" + settings.id + " .mec-event-title > a, #mec_skin_" + settings.id + " .mec-booking-button, #mec_skin_" + settings.id + " .mec-detail-button").off('click').on('click', function (e) { 2462 e.preventDefault(); 2463 var href = $(this).attr('href'); 2464 2465 var id = $(this).data('event-id'); 2466 var occurrence = get_parameter_by_name('occurrence', href); 2467 var time = get_parameter_by_name('time', href); 2468 2469 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 2470 }); 2471 2472 $("#mec_skin_" + settings.id + " .mec-event-image a img").off('click').on('click', function (e) { 2473 e.preventDefault(); 2474 var href = $(this).parent().attr('href'); 2475 2476 var id = $(this).parent().data('event-id'); 2477 var occurrence = get_parameter_by_name('occurrence', href); 2478 var time = get_parameter_by_name('time', href); 2479 2480 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 2481 }); 2482 } 2483 2484 function loadMore() { 2485 // Add loading Class 2486 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-load-more-loading"); 2487 2488 $.ajax({
2489 url: settings.ajax_url, 2490 data: "action=mec_list_load_more&mec_start_date=" + settings.end_date + "&mec_offset=" + settings.offset + "&" + settings.atts + "¤t_month_divider=" + settings.current_month_divider + "&apply_sf_date=0", 2491 dataType: "json", 2492 type: "post", 2493 success: function (response) { 2494 if (response.count == '0') { 2495 // Remove loading Class 2496 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading"); 2497 2498 // Hide load more button 2499 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 2500 } else { 2501 // Show load more button 2502 if (typeof response.has_more_event === 'undefined' || (typeof response.has_more_event !== 'undefined' && response.has_more_event)) $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-util-hidden"); 2503 else $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 2504 2505 // Append Items 2506 $("#mec_skin_events_" + settings.id).append(response.html); 2507 2508 // Remove loading Class 2509 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading"); 2510 2511 // Update the variables 2512 settings.end_date = response.end_date; 2513 settings.offset = response.offset; 2514 settings.current_month_divider = response.current_month_divider; 2515 2516 // Single Event Method 2517 if (settings.sed_method != '0') { 2518 sed(); 2519 } 2520 2521 // Accordion Toggle 2522 if (settings.style === 'accordion') { 2523 if (settings.toggle_month_divider) toggleLoadmore(); 2524 2525 accordion(); 2526 } 2527 } 2528 }, 2529 error: function () { } 2530 }); 2531 } 2532 2533 function search() { 2534 // Hide no event message 2535 $("#mec_skin_no_events_" + settings.id).addClass("mec-util-hidden"); 2536 2537 // Add loading Class 2538 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 2539 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 2540 jQuery("#gmap-data").val(""); 2541 2542 $.ajax({
2543 url: settings.ajax_url, 2544 data: "action=mec_list_load_more&mec_start_date=" + settings.start_date + "&" + settings.atts + "¤t_month_divider=0&apply_sf_date=1", 2545 dataType: "json", 2546 type: "post", 2547 success: function (response) { 2548 if (response.count == "0") { 2549 // Append Items 2550 $("#mec_skin_events_" + settings.id).html(''); 2551 2552 // Remove loading Class 2553 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 2554 2555 // Hide Map 2556 $('.mec-skin-map-container').addClass("mec-util-hidden"); 2557 2558 // Hide it 2559 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 2560 2561 // Show no event message 2562 $("#mec_skin_no_events_" + settings.id).removeClass("mec-util-hidden"); 2563 } else { 2564 // Append Items 2565 $("#mec_skin_events_" + settings.id).html(response.html); 2566 2567 // Remove loading Class 2568 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 2569 2570 // Show Map 2571 $('.mec-skin-map-container').removeClass("mec-util-hidden"); 2572 2573 // Show load more button 2574 if (response.count >= settings.limit) $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-util-hidden"); 2575 // Hide load more button 2576 else $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 2577 2578 // Update the variables 2579 settings.end_date = response.end_date; 2580 settings.offset = response.offset; 2581 settings.current_month_divider = response.current_month_divider; 2582 2583 // Single Event Method 2584 if (settings.sed_method != '0') { 2585 sed(); 2586 } 2587 2588 // Accordion Toggle 2589 if (settings.style === 'accordion') { 2590 if (settings.toggle_month_divider) toggle(); 2591 2592 accordion(); 2593 } 2594 } 2595 }, 2596 error: function () { } 2597 }); 2598 } 2599 }; 2600 2601}(jQuery)); 2602 2603// MEC GRID VIEW PLUGIN 2604(function ($) { 2605 $.fn.mecGridView = function (options) { 2606 // Default Options 2607 var settings = $.extend({ 2608 // These are the defaults. 2609 id: 0, 2610 atts: '', 2611 ajax_url: '', 2612 sf: {}, 2613 end_date: '', 2614 offset: 0, 2615 start_date: '', 2616 }, options); 2617 2618 // Set onclick Listeners 2619 setListeners(); 2620 2621 var sf; 2622 2623 function setListeners() { 2624 // Search Widget 2625 if (settings.sf.container !== '') { 2626 sf = $(settings.sf.container).mecSearchForm({ 2627 id: settings.id, 2628 refine: settings.sf.refine, 2629 ajax_url: settings.ajax_url, 2630 atts: settings.atts, 2631 callback: function (atts) { 2632 settings.atts = atts; 2633 search(); 2634 } 2635 }); 2636 } 2637 2638 $("#mec_skin_" + settings.id + " .mec-load-more-button").on("click", function () { 2639 loadMore(); 2640 }); 2641 2642 // Single Event Method 2643 if (settings.sed_method != '0') { 2644 sed(); 2645 } 2646 } 2647 2648 function sed() { 2649 // Single Event Display 2650 $("#mec_skin_" + settings.id + " .mec-event-title a, #mec_skin_" + settings.id + " .mec-booking-button").off('click').on('click', function (e) { 2651 e.preventDefault(); 2652 var href = $(this).attr('href'); 2653 2654 var id = $(this).data('event-id'); 2655 var occurrence = get_parameter_by_name('occurrence', href); 2656 var time = get_parameter_by_name('time', href); 2657 2658 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 2659 }); 2660 $("#mec_skin_" + settings.id + " .mec-event-image a img").off('click').on('click', function (e) { 2661 e.preventDefault(); 2662 var href = $(this).parent().attr('href'); 2663 2664 var id = $(this).parent().data('event-id'); 2665 var occurrence = get_parameter_by_name('occurrence', href); 2666 var time = get_parameter_by_name('time', href); 2667 2668 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 2669 }); 2670 } 2671 2672 function loadMore() { 2673 // Add loading Class 2674 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-load-more-loading"); 2675 2676 $.ajax({
2677 url: settings.ajax_url, 2678 data: "action=mec_grid_load_more&mec_start_date=" + settings.end_date + "&mec_offset=" + settings.offset + "&" + settings.atts + "&apply_sf_date=0", 2679 dataType: "json", 2680 type: "post", 2681 success: function (response) { 2682 if (response.count == "0") { 2683 // Remove loading Class 2684 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading"); 2685 2686 // Hide load more button 2687 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 2688 } else { 2689 // Show load more button 2690 if (typeof response.has_more_event === 'undefined' || (typeof response.has_more_event !== 'undefined' && response.has_more_event)) $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-util-hidden"); 2691 else $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 2692 2693 // Append Items 2694 $("#mec_skin_events_" + settings.id).append(response.html); 2695 2696 // Remove loading Class 2697 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading"); 2698 2699 // Update the variables 2700 settings.end_date = response.end_date; 2701 settings.offset = response.offset; 2702 2703 // Single Event Method 2704 if (settings.sed_method != '0') { 2705 sed(); 2706 } 2707 } 2708 }, 2709 error: function () { } 2710 }); 2711 } 2712 2713 function search() { 2714 // Hide no event message 2715 $("#mec_skin_no_events_" + settings.id).addClass("mec-util-hidden"); 2716 2717 // Add loading Class 2718 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 2719 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 2720 jQuery("#gmap-data").val(""); 2721 2722 $.ajax({
2723 url: settings.ajax_url, 2724 data: "action=mec_grid_load_more&mec_start_date=" + settings.start_date + "&" + settings.atts + "&apply_sf_date=1", 2725 dataType: "json", 2726 type: "post", 2727 success: function (response) { 2728 if (response.count == "0") { 2729 // Append Items 2730 $("#mec_skin_events_" + settings.id).html(''); 2731 2732 // Remove loading Class 2733 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 2734 2735 // Hide Map 2736 $('.mec-skin-map-container').addClass("mec-util-hidden"); 2737 2738 // Hide it 2739 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 2740 2741 // Show no event message 2742 $("#mec_skin_no_events_" + settings.id).removeClass("mec-util-hidden"); 2743 } else { 2744 // Append Items 2745 $("#mec_skin_events_" + settings.id).html(response.html); 2746 2747 // Remove loading Class 2748 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 2749 2750 // Show Map 2751 $('.mec-skin-map-container').removeClass("mec-util-hidden"); 2752 2753 // Show load more button 2754 if (response.count >= settings.limit) $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-util-hidden"); 2755 // Hide load more button 2756 else $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 2757 2758 // Update the variables 2759 settings.end_date = response.end_date; 2760 settings.offset = response.offset; 2761 2762 // Single Event Method 2763 if (settings.sed_method != '0') { 2764 sed(); 2765 } 2766 } 2767 }, 2768 error: function () { } 2769 }); 2770 } 2771 }; 2772 2773}(jQuery)); 2774 2775// MEC CUSTOM VIEW PLUGIN 2776(function ($) { 2777 $.fn.mecCustomView = function (options) { 2778 // Default Options 2779 var settings = $.extend({ 2780 // These are the defaults. 2781 id: 0, 2782 atts: '', 2783 ajax_url: '', 2784 sf: {}, 2785 end_date: '', 2786 offset: 0, 2787 start_date: '', 2788 }, options); 2789 2790 // Set onclick Listeners 2791 setListeners(); 2792 2793 var sf; 2794 2795 function setListeners() { 2796 // Search Widget 2797 if (settings.sf.container !== '') { 2798 sf = $(settings.sf.container).mecSearchForm({ 2799 id: settings.id, 2800 refine: settings.sf.refine, 2801 ajax_url: settings.ajax_url, 2802 atts: settings.atts, 2803 callback: function (atts) { 2804 settings.atts = atts; 2805 search(); 2806 } 2807 }); 2808 } 2809 2810 $("#mec_skin_" + settings.id + " .mec-load-more-button").on("click", function () { 2811 loadMore(); 2812 }); 2813 2814 // Single Event Method 2815 if (settings.sed_method != '0') { 2816 sed(); 2817 } 2818 } 2819 2820 function sed() { 2821 // Single Event Display 2822 $("#mec_skin_" + settings.id + " .mec-event-title a, #mec_skin_" + settings.id + " .mec-booking-button").off('click').on('click', function (e) { 2823 e.preventDefault(); 2824 var href = $(this).attr('href'); 2825 2826 var id = $(this).data('event-id'); 2827 var occurrence = get_parameter_by_name('occurrence', href); 2828 var time = get_parameter_by_name('time', href); 2829 2830 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 2831 }); 2832 $("#mec_skin_" + settings.id + " .mec-event-image a img").off('click').on('click', function (e) { 2833 e.preventDefault(); 2834 var href = $(this).parent().attr('href'); 2835 2836 var id = $(this).parent().data('event-id'); 2837 var occurrence = get_parameter_by_name('occurrence', href); 2838 var time = get_parameter_by_name('time', href); 2839 2840 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 2841 }); 2842 } 2843 2844 function loadMore() { 2845 // Add loading Class 2846 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-load-more-loading"); 2847 2848 $.ajax({
2849 url: settings.ajax_url, 2850 data: "action=mec_custom_load_more&mec_start_date=" + settings.end_date + "&mec_offset=" + settings.offset + "&" + settings.atts + "&apply_sf_date=0", 2851 dataType: "json", 2852 type: "post", 2853 success: function (response) { 2854 if (response.count == "0") { 2855 // Remove loading Class 2856 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading"); 2857 2858 // Hide load more button 2859 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 2860 } else { 2861 // Show load more button 2862 if (typeof response.has_more_event === 'undefined' || (typeof response.has_more_event !== 'undefined' && response.has_more_event)) $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-util-hidden"); 2863 else $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 2864 2865 var html = $(response.html); 2866 if ($('.mec-month-divider', html).length) { 2867 var df = $('.mec-month-divider:first', html).data('toggle-divider'); 2868 var dl = $("#mec_skin_events_" + settings.id + " .mec-month-divider:last").data('toggle-divider'); 2869 2870 if (df == dl) { 2871 $(html).find('.mec-month-divider:first').remove(); 2872 response.html = html; 2873 } 2874 2875 } 2876 2877 // Append Items 2878 $("#mec_skin_events_" + settings.id).append(response.html); 2879 2880 // Remove loading Class 2881 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading"); 2882 2883 // Update the variables 2884 settings.end_date = response.end_date; 2885 settings.offset = response.offset; 2886 2887 if ($('.mec-event-sd-countdown').length > 0) { 2888 $('.mec-event-sd-countdown').each(function (event) { 2889 var dc = $(this).attr('data-date-custom'); 2890 $(this).mecCountDown( 2891 { 2892 date: dc, 2893 format: "off" 2894 }, 2895 function () { 2896 }); 2897 }) 2898 } 2899 // Single Event Method 2900 if (settings.sed_method != '0') { 2901 sed(); 2902 } 2903 } 2904 }, 2905 error: function () { } 2906 }); 2907 } 2908 2909 function search() { 2910 // Hide no event message 2911 $("#mec_skin_no_events_" + settings.id).addClass("mec-util-hidden"); 2912 2913 // Add loading Class 2914 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 2915 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 2916 jQuery("#gmap-data").val(""); 2917 2918 $.ajax({
2919 url: settings.ajax_url, 2920 data: "action=mec_custom_load_more&mec_start_date=" + settings.start_date + "&" + settings.atts + "&apply_sf_date=1", 2921 dataType: "json", 2922 type: "post", 2923 success: function (response) { 2924 if (response.count == "0") { 2925 // Append Items 2926 $("#mec_skin_events_" + settings.id).html(''); 2927 2928 // Remove loading Class 2929 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 2930 2931 // Hide Map 2932 $('.mec-skin-map-container').addClass("mec-util-hidden"); 2933 2934 // Hide it 2935 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 2936 2937 // Show no event message 2938 $("#mec_skin_no_events_" + settings.id).removeClass("mec-util-hidden"); 2939 } else { 2940 // Append Items 2941 $("#mec_skin_events_" + settings.id).html(response.html); 2942 2943 // Remove loading Class 2944 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 2945 2946 // Show Map 2947 $('.mec-skin-map-container').removeClass("mec-util-hidden"); 2948 2949 // Show load more button 2950 if (response.count >= settings.limit) $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-util-hidden"); 2951 // Hide load more button 2952 else $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 2953 2954 // Update the variables 2955 settings.end_date = response.end_date; 2956 settings.offset = response.offset; 2957 2958 // Single Event Method 2959 if (settings.sed_method != '0') { 2960 sed(); 2961 } 2962 } 2963 }, 2964 error: function () { } 2965 }); 2966 } 2967 }; 2968 2969}(jQuery)); 2970 2971// MEC TIMELINE VIEW PLUGIN 2972(function ($) { 2973 $.fn.mecTimelineView = function (options) { 2974 // Default Options 2975 var settings = $.extend({ 2976 // These are the defaults. 2977 id: 0, 2978 atts: '', 2979 ajax_url: '', 2980 sf: {}, 2981 end_date: '', 2982 offset: 0, 2983 start_date: '', 2984 }, options); 2985 2986 // Set onclick Listeners 2987 setListeners(); 2988 2989 var sf; 2990 2991 function setListeners() { 2992 // Search Widget 2993 if (settings.sf.container !== '') { 2994 sf = $(settings.sf.container).mecSearchForm({ 2995 id: settings.id, 2996 refine: settings.sf.refine, 2997 ajax_url: settings.ajax_url, 2998 atts: settings.atts, 2999 callback: function (atts) { 3000 settings.atts = atts; 3001 search(); 3002 } 3003 }); 3004 } 3005 3006 $("#mec_skin_" + settings.id + " .mec-load-more-button").on("click", function () { 3007 loadMore(); 3008 }); 3009 3010 // Single Event Method 3011 if (settings.sed_method != '0') { 3012 sed(); 3013 } 3014 } 3015 3016 function sed() { 3017 // Single Event Display 3018 $("#mec_skin_" + settings.id + " .mec-timeline-event-image a, #mec_skin_" + settings.id + " .mec-event-title a, #mec_skin_" + settings.id + " .mec-booking-button").off('click').on('click', function (e) { 3019 e.preventDefault(); 3020 var href = $(this).attr('href'); 3021 3022 var id = $(this).data('event-id'); 3023 var occurrence = get_parameter_by_name('occurrence', href); 3024 var time = get_parameter_by_name('time', href); 3025 3026 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 3027 }); 3028 $("#mec_skin_" + settings.id + " .mec-event-image a img").off('click').on('click', function (e) { 3029 e.preventDefault(); 3030 var href = $(this).parent().attr('href'); 3031 3032 var id = $(this).parent().data('event-id'); 3033 var occurrence = get_parameter_by_name('occurrence', href); 3034 var time = get_parameter_by_name('time', href); 3035 3036 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 3037 }); 3038 } 3039 3040 function loadMore() { 3041 // Add loading Class 3042 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-load-more-loading"); 3043 3044 $.ajax({
3045 url: settings.ajax_url, 3046 data: "action=mec_timeline_load_more&mec_start_date=" + settings.end_date + "&mec_offset=" + settings.offset + "&" + settings.atts + "&apply_sf_date=0", 3047 dataType: "json", 3048 type: "post", 3049 success: function (response) { 3050 if (response.count == "0") { 3051 // Remove loading Class 3052 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading"); 3053 3054 // Hide load more button 3055 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 3056 } else { 3057 // Show load more button 3058 if (typeof response.has_more_event === 'undefined' || (typeof response.has_more_event !== 'undefined' && response.has_more_event)) $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-util-hidden"); 3059 else $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 3060 3061 // Append Items 3062 $("#mec_skin_events_" + settings.id).append(response.html); 3063 3064 // Remove loading Class 3065 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading"); 3066 3067 // Update the variables 3068 settings.end_date = response.end_date; 3069 settings.offset = response.offset; 3070 3071 // Single Event Method 3072 if (settings.sed_method != '0') { 3073 sed(); 3074 } 3075 3076 } 3077 }, 3078 error: function () { } 3079 }); 3080 } 3081 3082 function search() { 3083 // Hide no event message 3084 $("#mec_skin_no_events_" + settings.id).addClass("mec-util-hidden"); 3085 3086 // Add loading Class 3087 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 3088 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 3089 3090 $.ajax({
3091 url: settings.ajax_url, 3092 data: "action=mec_timeline_load_more&mec_start_date=" + settings.start_date + "&" + settings.atts + "&apply_sf_date=1", 3093 dataType: "json", 3094 type: "post", 3095 success: function (response) { 3096 if (response.count == "0") { 3097 // Append Items 3098 $("#mec_skin_events_" + settings.id).html(''); 3099 3100 // Remove loading Class 3101 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 3102 3103 // Hide Map 3104 $('.mec-skin-map-container').addClass("mec-util-hidden"); 3105 3106 // Hide it 3107 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 3108 3109 // Show no event message 3110 $("#mec_skin_no_events_" + settings.id).removeClass("mec-util-hidden"); 3111 } else { 3112 // Append Items 3113 $("#mec_skin_events_" + settings.id).html(response.html); 3114 3115 // Remove loading Class 3116 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 3117 3118 // Show Map 3119 $('.mec-skin-map-container').removeClass("mec-util-hidden"); 3120 3121 // Show load more button 3122 if (response.count >= settings.limit) $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-util-hidden"); 3123 // Hide load more button 3124 else $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 3125 3126 // Update the variables 3127 settings.end_date = response.end_date; 3128 settings.offset = response.offset; 3129 3130 // Single Event Method 3131 if (settings.sed_method != '0') { 3132 sed(); 3133 } 3134 } 3135 }, 3136 error: function () { } 3137 }); 3138 } 3139 }; 3140 3141}(jQuery)); 3142 3143// MEC AGENDA VIEW PLUGIN 3144(function ($) { 3145 $.fn.mecAgendaView = function (options) { 3146 // Default Options 3147 var settings = $.extend({ 3148 // These are the defaults. 3149 id: 0, 3150 atts: '', 3151 ajax_url: '', 3152 sf: {}, 3153 current_month_divider: '', 3154 end_date: '', 3155 offset: 0, 3156 }, options); 3157 3158 // Set onclick Listeners 3159 setListeners(); 3160 3161 var sf; 3162 3163 function setListeners() { 3164 // Search Widget 3165 if (settings.sf.container !== '') { 3166 sf = $(settings.sf.container).mecSearchForm({ 3167 id: settings.id, 3168 refine: settings.sf.refine, 3169 ajax_url: settings.ajax_url, 3170 atts: settings.atts, 3171 callback: function (atts) { 3172 settings.atts = atts; 3173 search(); 3174 } 3175 }); 3176 } 3177 3178 $("#mec_skin_" + settings.id + " .mec-load-more-button").on("click", function () { 3179 loadMore(); 3180 }); 3181 3182 // Single Event Method 3183 if (settings.sed_method != '0') { 3184 sed(); 3185 } 3186 } 3187 3188 function sed() { 3189 // Single Event Display 3190 $("#mec_skin_" + settings.id + " .mec-agenda-event-title a").off('click').on('click', function (e) { 3191 var sed_method = $(this).attr('target'); 3192 if ('_blank' === sed_method) { 3193 3194 return; 3195 } 3196 e.preventDefault(); 3197 var href = $(this).attr('href'); 3198 3199 var id = $(this).data('event-id'); 3200 var occurrence = get_parameter_by_name('occurrence', href); 3201 var time = get_parameter_by_name('time', href); 3202 3203 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 3204 }); 3205 } 3206 3207 function loadMore() { 3208 // Add loading Class 3209 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-load-more-loading"); 3210 3211 $.ajax({
3212 url: settings.ajax_url, 3213 data: "action=mec_agenda_load_more&mec_start_date=" + settings.end_date + "&mec_offset=" + settings.offset + "&" + settings.atts + "¤t_month_divider=" + settings.current_month_divider + "&apply_sf_date=0", 3214 dataType: "json", 3215 type: "post", 3216 success: function (response) { 3217 if (response.count == "0") { 3218 // Remove loading Class 3219 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading"); 3220 3221 // Hide load more button 3222 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 3223 } else { 3224 // Show load more button 3225 if (typeof response.has_more_event === 'undefined' || (typeof response.has_more_event !== 'undefined' && response.has_more_event)) $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-util-hidden"); 3226 else $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 3227 3228 // Append Items 3229 $("#mec_skin_events_" + settings.id + " .mec-events-agenda-container").append(response.html); 3230 3231 // Remove loading Class 3232 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading"); 3233 3234 // Update the variables 3235 settings.end_date = response.end_date; 3236 settings.offset = response.offset; 3237 settings.current_month_divider = response.current_month_divider; 3238 3239 // Single Event Method 3240 if (settings.sed_method != '0') { 3241 sed(); 3242 } 3243 mecFluentCustomScrollbar(); 3244 } 3245 }, 3246 error: function () { } 3247 }); 3248 } 3249 3250 function search() { 3251 // Hide no event message 3252 $("#mec_skin_no_events_" + settings.id).addClass("mec-util-hidden"); 3253 3254 // Add loading Class 3255 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 3256 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 3257 mecFluentCustomScrollbar(); 3258 3259 $.ajax({
3260 url: settings.ajax_url, 3261 data: "action=mec_agenda_load_more&mec_start_date=" + settings.start_date + "&" + settings.atts + "¤t_month_divider=0&apply_sf_date=1", 3262 dataType: "json", 3263 type: "post", 3264 success: function (response) { 3265 if (response.count == "0") { 3266 // Append Items 3267 $("#mec_skin_events_" + settings.id + " .mec-events-agenda-container").html(''); 3268 3269 // Remove loading Class 3270 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 3271 3272 // Hide it 3273 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 3274 3275 // Show no event message 3276 $("#mec_skin_no_events_" + settings.id).removeClass("mec-util-hidden"); 3277 } else { 3278 // Append Items 3279 $("#mec_skin_events_" + settings.id + " .mec-events-agenda-container").html(response.html); 3280 3281 // Remove loading Class 3282 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 3283 3284 // Show load more button 3285 if (response.count >= settings.limit) $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-util-hidden"); 3286 // Hide load more button 3287 else $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 3288 3289 // Update the variables 3290 settings.end_date = response.end_date; 3291 settings.offset = response.offset; 3292 settings.current_month_divider = response.current_month_divider; 3293 3294 // Single Event Method 3295 if (settings.sed_method != '0') { 3296 sed(); 3297 } 3298 } 3299 mecFluentCustomScrollbar(); 3300 }, 3301 error: function () { } 3302 }); 3303 } 3304 }; 3305}(jQuery)); 3306 3307// MEC CAROUSEL VIEW PLUGIN 3308(function ($) { 3309 $.fn.mecCarouselView = function (options) { 3310 // Default Options 3311 var settings = $.extend({ 3312 // These are the defaults. 3313 id: 0, 3314 atts: '', 3315 ajax_url: '', 3316 sf: {}, 3317 items: 3, 3318 loop: true, 3319 autoplay_status: true, 3320 autoplay: '', 3321 style: 'type1', 3322 start_date: '' 3323 }, options); 3324 3325 // Init Sliders 3326 initSlider(settings); 3327 3328 // Single Event Method 3329 if (settings.sed_method != '0') { 3330 sed(settings); 3331 } 3332 3333 function initSlider(settings) { 3334 // Check RTL website 3335 if ($('body').hasClass('rtl')) { 3336 var owl_rtl = true; 3337 } else { 3338 var owl_rtl = false; 3339 } 3340 3341 if (settings.style === 'type1') { 3342 // Start carousel skin 3343 var owl = $("#mec_skin_" + settings.id + " .mec-event-carousel-type1 .mec-owl-carousel"); 3344 3345 owl.owlCarousel({ 3346 autoplay: settings.autoplay_status, 3347 autoplayTimeout: settings.autoplay, // Set AutoPlay to 3 seconds 3348 loop: settings.loop, 3349 items: settings.items, 3350 responsiveClass: true, 3351 responsive: { 3352 0: { 3353 items: 1, 3354 }, 3355 979: { 3356 items: 2, 3357 }, 3358 1199: { 3359 items: settings.count, 3360 } 3361 }, 3362 dots: true, 3363 nav: false, 3364 autoplayHoverPause: true, 3365 rtl: owl_rtl, 3366 }); 3367 3368 if (settings.autoplay_status) { 3369 owl.bind( 3370 "mouseleave", 3371 function (event) { 3372 $("#mec_skin_" + settings.id + " .mec-owl-carousel").trigger('play.owl.autoplay'); 3373 } 3374 ); 3375 } 3376 } else if (settings.style === 'type4') { 3377 $("#mec_skin_" + settings.id + " .mec-owl-carousel").owlCarousel({ 3378 autoplay: settings.autoplay_status, 3379 loop: settings.loop, 3380 autoplayTimeout: settings.autoplay, 3381 items: settings.items, 3382 dots: false, 3383 nav: true, 3384 responsiveClass: true, 3385 responsive: { 3386 0: { 3387 items: 1, 3388 stagePadding: 50, 3389 }, 3390 979: { 3391 items: 2, 3392 }, 3393 1199: { 3394 items: settings.count, 3395 } 3396 }, 3397 autoplayHoverPause: true, 3398 navText: ["<i class='mec-sl-arrow-left'></i>", " <i class='mec-sl-arrow-right'></i>"], 3399 rtl: owl_rtl, 3400 }); 3401 3402 if (settings.autoplay_status) { 3403 $("#mec_skin_" + settings.id + " .mec-owl-carousel").bind( 3404 "mouseleave", 3405 function (event) { 3406 $("#mec_skin_" + settings.id + " .mec-owl-carousel").trigger('play.owl.autoplay'); 3407 } 3408 ); 3409 } 3410 } else { 3411 $("#mec_skin_" + settings.id + " .mec-owl-carousel").owlCarousel({ 3412 autoplay: settings.autoplay_status, 3413 loop: settings.loop, 3414 autoplayTimeout: settings.autoplay, 3415 items: settings.items, 3416 dots: typeof settings.dots_navigation != 'undefined' ? settings.dots_navigation : false, 3417 nav: typeof settings.navigation != 'undefined' ? settings.navigation : true, 3418 responsiveClass: true, 3419 responsive: { 3420 0: { 3421 items: 1, 3422 }, 3423 979: { 3424 items: 2, 3425 }, 3426 1199: { 3427 items: settings.count, 3428 } 3429 }, 3430 autoplayHoverPause: true, 3431 navText: typeof settings.navText != 'undefined' ? settings.navText : ["<i class='mec-sl-arrow-left'></i>", " <i class='mec-sl-arrow-right'></i>"], 3432 rtl: owl_rtl, 3433 }); 3434 3435 if (settings.autoplay_status) { 3436 $("#mec_skin_" + settings.id + " .mec-owl-carousel").bind( 3437 "mouseleave", 3438 function (event) { 3439 $("#mec_skin_" + settings.id + " .mec-owl-carousel").trigger('play.owl.autoplay'); 3440 } 3441 ); 3442 } 3443 } 3444 } 3445 }; 3446 3447 function sed(settings) { 3448 // Single Event Display
3449 $("#mec_skin_" + settings.id + " .mec-event-carousel-title a, #mec_skin_" + settings.id + " .mec-event-image a, #mec_skin_" + settings.id + " .mec-booking-button, #mec_skin_" + settings.id + " .mec-event-button").off('click').on('click', function (e) { 3450 var sed_method = $(this).attr('target'); 3451 if ('_blank' === sed_method) { 3452 3453 return; 3454 } 3455 e.preventDefault(); 3456 var href = $(this).attr('href'); 3457 3458 var id = $(this).data('event-id'); 3459 var occurrence = get_parameter_by_name('occurrence', href); 3460 var time = get_parameter_by_name('time', href); 3461 3462 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 3463 }); 3464 } 3465}(jQuery)); 3466 3467// MEC SLIDER VIEW PLUGIN 3468(function ($) { 3469 $.fn.mecSliderView = function (options) { 3470 // Default Options 3471 var settings = $.extend({ 3472 // These are the defaults. 3473 id: 0, 3474 atts: '', 3475 transition_time: 250, 3476 autoplay: false, 3477 ajax_url: '', 3478 sf: {}, 3479 start_date: '' 3480 }, options); 3481 3482 var rtl = false; 3483 3484 // Init Sliders 3485 initSlider(); 3486 3487 function initSlider() { 3488 // Check RTL website 3489 if ($('body').hasClass('rtl')) rtl = true; 3490 3491 $("#mec_skin_" + settings.id + " .mec-owl-carousel").owlCarousel( 3492 { 3493 autoplay: true, 3494 smartSpeed: settings.transition_time, 3495 autoplayTimeout: settings.autoplay, 3496 loop: true, 3497 items: 1, 3498 responsiveClass: true, 3499 responsive: { 3500 0: { 3501 items: 1, 3502 }, 3503 960: { 3504 items: 1, 3505 }, 3506 1200: { 3507 items: 1, 3508 } 3509 }, 3510 dots: false, 3511 nav: true, 3512 autoplayHoverPause: true, 3513 navText: typeof settings.navText != 'undefined' ? settings.navText : ["<i class='mec-sl-arrow-left'></i>", " <i class='mec-sl-arrow-right'></i>"], 3514 rtl: rtl, 3515 }); 3516 } 3517 }; 3518}(jQuery)); 3519 3520// MEC COUNTDOWN MODULE 3521(function ($) { 3522 $.fn.mecCountDown = function (options, callBack) { 3523 // Default Options 3524 var settings = $.extend({ 3525 // These are the defaults. 3526 date: null, 3527 format: null 3528 }, options); 3529 3530 var callback = callBack; 3531 var selector = $(this); 3532 3533 startCountdown(); 3534 var interval = setInterval(startCountdown, 1000); 3535 3536 function startCountdown() { 3537 var eventDate = Date.parse(settings.date) / 1000; 3538 var currentDate = Math.floor($.now() / 1000); 3539 3540 if (eventDate <= currentDate) { 3541 callback.call(this); 3542 clearInterval(interval); 3543 } 3544 3545 var seconds = eventDate - currentDate; 3546 3547 var days = Math.floor(seconds / (60 * 60 * 24)); 3548 seconds -= days * 60 * 60 * 24; 3549 3550 var hours = Math.floor(seconds / (60 * 60)); 3551 seconds -= hours * 60 * 60; 3552 3553 var minutes = Math.floor(seconds / 60); 3554 seconds -= minutes * 60; 3555 3556 if (days == 1) selector.find(".mec-timeRefDays").text(mecdata.day); 3557 else selector.find(".mec-timeRefDays").text(mecdata.days); 3558 3559 if (hours == 1) selector.find(".mec-timeRefHours").text(mecdata.hour); 3560 else selector.find(".mec-timeRefHours").text(mecdata.hours); 3561 3562 if (minutes == 1) selector.find(".mec-timeRefMinutes").text(mecdata.minute); 3563 else selector.find(".mec-timeRefMinutes").text(mecdata.minutes); 3564 3565 if (seconds == 1) selector.find(".mec-timeRefSeconds").text(mecdata.second); 3566 else selector.find(".mec-timeRefSeconds").text(mecdata.seconds); 3567 3568 if (settings.format === "on") { 3569 days = (String(days).length >= 2) ? days : "0" + days; 3570 hours = (String(hours).length >= 2) ? hours : "0" + hours; 3571 minutes = (String(minutes).length >= 2) ? minutes : "0" + minutes; 3572 seconds = (String(seconds).length >= 2) ? seconds : "0" + seconds; 3573 } 3574 3575 if (!isNaN(eventDate)) { 3576 selector.find(".mec-days").text(days);
3577 selector.find(".mec-hours").text(hours); 3578 selector.find(".mec-minutes").text(minutes); 3579 selector.find(".mec-seconds").text(seconds); 3580 } else { 3581 clearInterval(interval); 3582 } 3583 } 3584 }; 3585 3586}(jQuery)); 3587 3588// MEC TILE VIEW PLUGIN 3589(function ($) { 3590 $.fn.mecTileView = function (options) { 3591 var active_month; 3592 var active_year; 3593 3594 // Default Options 3595 var settings = $.extend({ 3596 // These are the defaults. 3597 today: null, 3598 id: 0, 3599 events_label: 'Events', 3600 event_label: 'Event', 3601 month_navigator: 0, 3602 atts: '', 3603 active_month: {}, 3604 next_month: {}, 3605 sf: {}, 3606 ajax_url: '' 3607 }, options); 3608 3609 // Initialize Month Navigator 3610 if (settings.month_navigator) initMonthNavigator(); 3611 3612 // Load Next Month in background 3613 if (settings.load_method === 'month') setMonth(settings.next_month.year, settings.next_month.month, true); 3614 3615 active_month = settings.active_month.month; 3616 active_year = settings.active_month.year; 3617 3618 // Set onclick Listeners 3619 setListeners(); 3620 3621 // Search Widget 3622 if (settings.sf.container !== '') { 3623 sf = $(settings.sf.container).mecSearchForm( 3624 { 3625 id: settings.id, 3626 refine: settings.sf.refine, 3627 ajax_url: settings.ajax_url, 3628 atts: settings.atts, 3629 callback: function (atts) { 3630 settings.atts = atts; 3631 search(active_year, active_month); 3632 } 3633 }); 3634 } 3635 3636 function initMonthNavigator() { 3637 $("#mec_skin_" + settings.id + " .mec-load-month").off("click").on("click", function () { 3638 var year = $(this).data("mec-year"); 3639 var month = $(this).data("mec-month"); 3640 3641 setMonth(year, month, false, true); 3642 }); 3643 } 3644 3645 function search(year, month) { 3646 // Add Loading Class 3647 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 3648 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 3649 3650 $.ajax( 3651 { 3652 url: settings.ajax_url, 3653 data: "action=mec_tile_load_month&mec_year=" + year + "&mec_month=" + month + "&" + settings.atts + "&apply_sf_date=1", 3654 dataType: "json", 3655 type: "post", 3656 success: function (response) { 3657 if (settings.load_method === 'month') { 3658 active_month = response.current_month.month; 3659 active_year = response.current_month.year; 3660 3661 // Append Month 3662 $("#mec_skin_events_" + settings.id).html('<div class="mec-month-container" id="mec_tile_month_' + settings.id + '_' + response.current_month.id + '" data-month-id="' + response.current_month.id + '">' + response.month + '</div>'); 3663 3664 // Append Month Navigator 3665 $("#mec_skin_" + settings.id + " .mec-skin-tile-month-navigator-container").append('<div class="mec-month-navigator" id="mec_month_navigator_' + settings.id + '_' + response.current_month.id + '">' + response.navigator + '</div>'); 3666 3667 // Re-initialize Month Navigator 3668 initMonthNavigator(); 3669 3670 // Set onclick Listeners 3671 setListeners(); 3672 3673 // Toggle Month 3674 toggleMonth(response.current_month.id); 3675 } 3676 else { 3677 // Append Items 3678 $("#mec_skin_events_" + settings.id).html(response.html); 3679 3680 // Show load more button 3681 if (response.count >= settings.limit) $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-util-hidden"); 3682 // Hide load more button 3683 else $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 3684 3685 // Update the variables 3686 settings.end_date = response.end_date; 3687 settings.offset = response.offset; 3688 3689 // Set onclick Listeners 3690 setListeners(); 3691 } 3692 3693 // Remove loading Class 3694 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 3695 }, 3696 error: function () { } 3697 }); 3698 } 3699 3700 function setMonth(year, month, do_in_background, navigator_click) { 3701 if (typeof do_in_background === "undefined") do_in_background = false; 3702 navigator_click = navigator_click || false; 3703
3704 var month_id = year + "" + month; 3705 3706 if (!do_in_background) { 3707 active_month = month; 3708 active_year = year; 3709 } 3710 3711 // Month exists so we just show it 3712 if ($("#mec_tile_month_" + settings.id + "_" + month_id).length) { 3713 // Toggle Month 3714 toggleMonth(month_id); 3715 } 3716 else { 3717 if (!do_in_background) { 3718 // Add Loading Class 3719 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 3720 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 3721 } 3722 3723 $.ajax( 3724 { 3725 url: settings.ajax_url, 3726 data: "action=mec_tile_load_month&mec_year=" + year + "&mec_month=" + month + "&" + settings.atts + "&apply_sf_date=0" + "&navigator_click=" + navigator_click, 3727 dataType: "json", 3728 type: "post", 3729 success: function (response) { 3730 // Append Month 3731 $("#mec_skin_events_" + settings.id).append('<div class="mec-month-container" id="mec_tile_month_' + settings.id + '_' + response.current_month.id + '" data-month-id="' + response.current_month.id + '">' + response.month + '</div>'); 3732 3733 // Append Month Navigator 3734 $("#mec_skin_" + settings.id + " .mec-skin-tile-month-navigator-container").append('<div class="mec-month-navigator" id="mec_month_navigator_' + settings.id + '_' + response.current_month.id + '">' + response.navigator + '</div>'); 3735 3736 // Re-initialize Month Navigator 3737 initMonthNavigator(); 3738 3739 // Set onclick Listeners 3740 setListeners(); 3741 3742 if (!do_in_background) { 3743 // Toggle Month 3744 toggleMonth(response.current_month.id); 3745 3746 // Remove loading Class 3747 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 3748 3749 // Set Month Filter values in search widget 3750 $("#mec_sf_month_" + settings.id).val(month); 3751 $("#mec_sf_year_" + settings.id).val(year); 3752 } 3753 else { 3754 $("#mec_tile_month_" + settings.id + "_" + response.current_month.id).hide(); 3755 $("#mec_month_navigator_" + settings.id + "_" + response.current_month.id).hide(); 3756 } 3757 }, 3758 error: function () { } 3759 }); 3760 } 3761 } 3762 3763 function toggleMonth(month_id) { 3764 var active_month = $("#mec_skin_" + settings.id + " .mec-month-container-selected").data("month-id"); 3765 var active_day = $("#mec_tile_month_" + settings.id + "_" + active_month + " .mec-selected-day").data("day"); 3766 3767 if (active_day <= 9) active_day = "0" + active_day; 3768 3769 // Toggle Month Navigator 3770 $("#mec_skin_" + settings.id + " .mec-month-navigator").hide(); 3771 $("#mec_month_navigator_" + settings.id + "_" + month_id).show(); 3772 3773 // Toggle Month 3774 $("#mec_skin_" + settings.id + " .mec-month-container").hide().removeClass("mec-month-container-selected"); 3775 $("#mec_tile_month_" + settings.id + "_" + month_id).show().addClass("mec-month-container-selected"); 3776 } 3777 3778 var sf; 3779 3780 function setListeners() { 3781 $("#mec_skin_" + settings.id + " .mec-load-more-button").off("click").on("click", function () { 3782 loadMore(); 3783 }); 3784 3785 $("#mec_skin_" + settings.id + " article").off("click").on("click", function (e) { 3786 // Link Clicked 3787 if (e.target.nodeName.toLowerCase() === 'a') return; 3788 3789 var href = $(this).data('href'); 3790 if (!href) return; 3791 3792 var target = $(this).data('target'); 3793 3794 if (target === 'blank') window.open(href, '_blank'); 3795 else if (target !== 'm1') document.location.href = href; 3796 }); 3797 3798 // Add the onclick event 3799 $("#mec_skin_" + settings.id + " .mec-has-event").off("click").on('click', function (e) { 3800 e.preventDefault(); 3801 3802 // define variables 3803 var $this = $(this), 3804 data_mec_cell = $this.data('mec-cell'),
3805 month_id = $this.data('month'); 3806 3807 $("#mec_monthly_view_month_" + settings.id + "_" + month_id + " .mec-calendar-day").removeClass('mec-selected-day'); 3808 $this.addClass('mec-selected-day'); 3809 3810 $('#mec_month_side_' + settings.id + '_' + month_id + ' .mec-calendar-events-sec:not([data-mec-cell=' + data_mec_cell + '])').slideUp(); 3811 $('#mec_month_side_' + settings.id + '_' + month_id + ' .mec-calendar-events-sec[data-mec-cell=' + data_mec_cell + ']').slideDown(); 3812 3813 $('#mec_monthly_view_month_' + settings.id + '_' + month_id + ' .mec-calendar-events-sec:not([data-mec-cell=' + data_mec_cell + '])').slideUp(); 3814 $('#mec_monthly_view_month_' + settings.id + '_' + month_id + ' .mec-calendar-events-sec[data-mec-cell=' + data_mec_cell + ']').slideDown(); 3815 }); 3816 3817 // Single Event Method 3818 if (settings.sed_method != '0') { 3819 sed(); 3820 } 3821 } 3822 3823 function sed() { 3824 // Single Event Display 3825 $("#mec_skin_" + settings.id + " .mec-event-content").off('click').on('click', function (e) { 3826 var sed_method = $(this).parent().data('target'); 3827 if ('_blank' === sed_method) { 3828 return; 3829 } 3830 e.preventDefault(); 3831 var href = $(this).parent().data('href'); 3832 3833 var id = $(this).data('event-id'); 3834 var occurrence = get_parameter_by_name('occurrence', href); 3835 var time = get_parameter_by_name('time', href); 3836 3837 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 3838 }); 3839 } 3840 3841 function loadMore() { 3842 // Load More Button 3843 var $load_more_button = $("#mec_skin_" + settings.id + " .mec-load-more-button"); 3844 3845 // Add loading Class 3846 $load_more_button.addClass("mec-load-more-loading"); 3847 3848 $.ajax( 3849 { 3850 url: settings.ajax_url, 3851 data: "action=mec_tile_load_more&mec_start_date=" + settings.end_date + "&mec_offset=" + settings.offset + "&" + settings.atts + "¤t_month_divider=" + settings.current_month_divider + "&apply_sf_date=0", 3852 dataType: "json", 3853 type: "post", 3854 success: function (response) { 3855 if (response.count == '0') { 3856 // Remove loading Class 3857 $load_more_button.removeClass("mec-load-more-loading"); 3858 3859 // Hide load more button 3860 $load_more_button.addClass("mec-util-hidden"); 3861 } 3862 else { 3863 // Show load more button 3864 if (typeof response.has_more_event === 'undefined' || (typeof response.has_more_event !== 'undefined' && response.has_more_event)) $load_more_button.removeClass("mec-util-hidden"); 3865 else $load_more_button.addClass("mec-util-hidden"); 3866 3867 // Append Items 3868 $("#mec_skin_events_" + settings.id).append(response.html); 3869 3870 // Remove loading Class 3871 $load_more_button.removeClass("mec-load-more-loading"); 3872 3873 // Update the variables 3874 settings.end_date = response.end_date; 3875 settings.offset = response.offset; 3876 settings.current_month_divider = response.current_month_divider; 3877 3878 // Single Event Method 3879 if (settings.sed_method != '0') { 3880 sed(); 3881 } 3882 } 3883 }, 3884 error: function () { } 3885 }); 3886 } 3887 }; 3888}(jQuery)); 3889 3890function mec_gateway_selected(gateway_id) { 3891 // Hide all gateway forms 3892 jQuery('.mec-book-form-gateway-checkout').addClass('mec-util-hidden'); 3893 3894 // Show selected gateway form 3895 jQuery('#mec_book_form_gateway_checkout' + gateway_id).removeClass('mec-util-hidden'); 3896} 3897 3898function mec_wrap_resize() { 3899 var $mec_wrap = jQuery('.mec-wrap'), 3900 mec_width = $mec_wrap.width(); 3901 if (mec_width < 959) { 3902 $mec_wrap.addClass('mec-sm959'); 3903 } else { 3904 $mec_wrap.removeClass('mec-sm959'); 3905 } 3906} 3907 3908function get_parameter_by_name(name, url) { 3909 if (!url) { 3910 url = window.location.href; 3911 } 3912 3913 name = name.replace(/[\[\]]/g, "\\$&"); 3914 var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"), 3915 results = regex.exec(url); 3916 3917 if (!results) return null; 3918 if (!results[2]) return ''; 3919 3920 return decodeURIComponent(results[2].replace(/\+/g, " "));
3921} 3922 3923// Focus events day 3924var mec_g_month_id = null; 3925 3926function mecFocusDay(settings) { 3927 if (mec_g_month_id != null) { 3928 setTimeout(function () { 3929 var id = settings.id, 3930 date = new Date(), 3931 mec_owl_year = mec_g_month_id.substr(0, 4), 3932 mec_current_year = date.getFullYear(), 3933 mec_owl_month = mec_g_month_id.substr(4, 6), 3934 mec_current_month = date.getMonth() + 1, 3935 mec_current_day = date.getDate(), 3936 mec_owl_go = jQuery("#mec-owl-calendar-d-table-" + id + "-" + mec_g_month_id), 3937 mec_day_exist = false; 3938 mec_owl_go.find('.owl-stage > div').each(function (index) { 3939 if (parseInt(jQuery(this).children('div').data("events-count")) > 0) { 3940 if ((((mec_owl_year != mec_current_year) && (mec_owl_month != mec_current_month)) || (mec_owl_year == mec_current_year) && (mec_owl_month != mec_current_month)) || parseInt(jQuery(this).children('div').text()) > mec_current_day) { 3941 var index_plus = index + 1; 3942 jQuery('#mec_daily_view_day' + id + '_' + mec_g_month_i
3942d + (index < 10 ? '0' + index_plus : index_plus)).trigger('click'); 3943 mec_owl_go.trigger('to.owl.carousel', index_plus); 3944 mec_day_exist = true; 3945 return false; 3946 } 3947 else { 3948 jQuery('#mec_daily_view_day' + id + '_' + mec_g_month_id + mec_current_day).trigger('click'); 3949 mec_owl_go.trigger('to.owl.carousel', mec_current_day); 3950 mec_day_exist = true; 3951 return false; 3952 } 3953 } 3954 }); 3955 3956 if (!mec_day_exist && ((mec_owl_year == mec_current_year) && (mec_owl_month == mec_current_month))) { 3957 jQuery('#mec_daily_view_day' + id + '_' + mec_g_month_id + mec_current_day).trigger('click'); 3958 mec_owl_go.trigger('to.owl.carousel', mec_current_day); 3959 } 3960 }, 1000); 3961 } 3962} 3963 3964// Focus events week 3965function mec_focus_week(id, skin) { 3966 skin = skin || 'weekly'; 3967 var wrap_elem = jQuery('.mec-weeks-container .mec-weekly-view-week-active').parent(); 3968 var days = wrap_elem.find('dt'); 3969 var week = wrap_elem.find('dl').length; 3970 var focus_week = false; 3971 var i = j = 1; 3972 3973 for (i = 1; i < week; i++) { 3974 setTimeout(function () { 3975 var event = new Event('click'); 3976 jQuery('#mec_skin_' + id + ' .mec-previous-month.mec-load-week')[0].dispatchEvent(event); 3977 }, 33); 3978 } 3979 3980 days.each(function (i) { 3981 if (jQuery(this).data('events-count') > 0) { 3982 if (focus_week === false) { 3983 focus_week = parseInt(jQuery(this).parent().data('week-number')); 3984 } 3985 3986 if (skin == 'timetable') { 3987 if (parseInt(jQuery(this).parent().data('week-number')) == parseInt(jQuery('body').data('currentweek'))) { 3988 focus_week = parseInt(jQuery(this).parent().data('week-number')); 3989 return false; 3990 } 3991 } 3992 else { 3993 return false; 3994 } 3995 } 3996 }); 3997 3998 if (focus_week !== false) { 3999 for (j = 1; j < focus_week; j++) { 4000 setTimeout(function () { 4001 var event = new Event('click'); 4002 jQuery('#mec_skin_' + id + ' .mec-next-month.mec-load-week')[0].dispatchEvent(event); 4003 }, 33); 4004 } 4005 } 4006} 4007 4008// TODO must be cleaned JS codes 4009(function ($) { 4010 $(document).ready(function () { 4011 // Check RTL website 4012 if ($('body').hasClass('rtl')) { 4013 var owl_rtl = true; 4014 } else { 4015 var owl_rtl = false; 4016 } 4017 4018 // MEC WIDGET CAROUSEL 4019 $(".mec-widget .mec-event-grid-classic").each(function () { 4020 var loop_status = $(this).data('widget-loop'); 4021 if (typeof loop_status === 'undefined') loop_status = 1; 4022 4023 var autoplay_status = $(this).data('widget-autoplay'); 4024 if (typeof autoplay_status === 'undefined') autoplay_status = 1; 4025 4026 var autoplay_time = $(this).data('widget-autoplay-time'); 4027 if (typeof autoplay_time === 'undefined') autoplay_time = 3000; 4028 4029 $(this).addClass('mec-owl-carousel mec-owl-theme'); 4030 $(this).owlCarousel( 4031 { 4032 autoplay: (autoplay_status ? true : false), 4033 autoplayTimeout: autoplay_time, 4034 autoplayHoverPause: true, 4035 loop: (loop_status ? true : false), 4036 dots: false, 4037 nav: true, 4038 navText: ["<i class='mec-sl-arrow-left'></i>", " <i class='mec-sl-arrow-right'></i>"], 4039 items: 1, 4040 autoHeight: true, 4041 responsiveClass: true, 4042 rtl: owl_rtl, 4043 }); 4044 }); 4045 4046 // add mec-sm959 class if mec-wrap div size < 959 4047 mec_wrap_resize(); 4048 4049 jQuery(window).bind('resize', function () { 4050 mec_wrap_resize(); 4051 }); 4052 4053 // Fixed: social hover in iphone 4054 $('.mec-event-sharing-wrap').hover(function () { 4055 $(this).find('.mec-event-sharing').show(0); 4056 }, 4057 function () { 4058 $(this).find('.mec-event-sharing').hide(0); 4059 }); 4060 4061 // Register Booking Smooth Scroll 4062 $('a.simple-booking[href^="#mec-events-meta-group-booking"]').click(function () {
4063 if (location.pathname.replace(/^\//, '') == this.pathname.replace(/^\//, '') && location.hostname == this.hostname) { 4064 var target = $(this.hash); 4065 target = target.length ? target : $('[name=' + this.hash.slice(1) + ']'); 4066 4067 if (target.length) { 4068 var scrollTopVal = target.offset().top - 30; 4069 4070 $('html, body').animate({ 4071 scrollTop: scrollTopVal 4072 }, 600); 4073 4074 return false; 4075 } 4076 } 4077 }); 4078 4079 // Load Information widget under title in mobile/tablet 4080 if ($('.single-mec-events .mec-single-event:not(".mec-single-modern")').length > 0) { 4081 if ($('.single-mec-events .mec-event-info-desktop.mec-event-meta.mec-color-before.mec-frontbox').length > 0) { 4082 var html = $('.single-mec-events .mec-event-info-desktop.mec-event-meta.mec-color-before.mec-frontbox')[0].outerHTML; 4083 if (Math.max(document.documentElement.clientWidth, window.innerWidth || 0) < 960) { 4084 $('.single-mec-events .col-md-4 .mec-event-info-desktop.mec-event-meta.mec-color-before.mec-frontbox').remove(); 4085 $('.single-mec-events .mec-event-info-mobile').html(html) 4086 } 4087 } 4088 } 4089 }); 4090})(jQuery); 4091 4092// Weather 4093(function ($) { 4094 // Convart fahrenheit to centigrade 4095 function convertToC(value) { 4096 return Math.round(((parseFloat(value) - 32) * 5 / 9)); 4097 } 4098 4099 // Convert centigrade to fahrenheit 4100 function convertToF(value) { 4101 return Math.round(((1.8 * parseFloat(value)) + 32)); 4102 } 4103 4104 // Convert miles to kilometers 4105 function MPHToKPH(value) { 4106 return Math.round(1.609344 * parseFloat(value)); 4107 } 4108 4109 // Convert kilometers to miles 4110 function KPHToMPH(value) { 4111 return Math.round((0.6214 * parseFloat(value))); 4112 } 4113 4114 $(document).ready(function ($) { 4115 var degree = $('.mec-weather-summary-temp'); 4116 var weather_extra = $('.mec-weather-extras'); 4117 var wind = weather_extra.children('.mec-weather-wind'); 4118 var visibility = weather_extra.children('.mec-weather-visibility'); 4119 var feelslike = weather_extra.children('.mec-weather-feels-like'); 4120 4121 // Events 4122 $('.degrees-mode').on('click', function () { 4123 var degree_mode = degree.children('var').text().trim(); 4124 var wind_text = wind.text().substring(5); 4125 var visibility_text = visibility.text().substring(11); 4126 var feelslike_text = feelslike.text().substring(12); 4127 4128 if (degree_mode == degree.data('c').trim()) { 4129 degree.html(convertToF(parseInt(degree.text())) + ' <var>' + degree.data('f') + '</var>'); 4130 feelslike.html('<span>Feels Like:</span> ' + convertToF(parseInt(feelslike_text)) + ' <var>' + feelslike.data('f') + '</var>'); 4131 wind.html('<span>Wind:</span> ' + KPHToMPH(parseInt(wind_text)) + '<var>' + wind.data('mph') + '</var>'); 4132 visibility.html('<span>Visibility:</span> ' + KPHToMPH(parseInt(visibility_text)) + '<var>' + visibility.data('mph') + '</var>'); 4133 $(this).text($(this).data('metric')); 4134 } 4135 else if (degree_mode == degree.data('f').trim()) { 4136 degree.html(convertToC(parseInt(degree.text())) + ' <var>' + degree.data('c') + '</var>'); 4137 feelslike.html('<span>Feels Like:</span> ' + convertToC(parseInt(feelslike_text)) + ' <var>' + feelslike.data('c') + '</var>'); 4138 wind.html('<span>Wind:</span> ' + MPHToKPH(parseInt(wind_text)) + '<var>' + wind.data('kph') + '</var>'); 4139 visibility.html('<span>Visibility:</span> ' + MPHToKPH(parseInt(visibility_text)) + '<var>' + visibility.data('kph') + '</var>'); 4140 $(this).text($(this).data('imperial')); 4141 } 4142 }); 4143 4144 $('a').on('click', function () { });
4145 4146 // FES Speakers Adding 4147 $('#mec_add_speaker_button').on('click', function () { 4148 var $this = this; 4149 var content = $($this).parent().find('input'); 4150 var list = $('#mec-fes-speakers-list'); 4151 var key = list.find('.mec-error').length; 4152 4153 $($this).prop("disabled", true).css('cursor', 'wait'); 4154 $.post(ajaxurl, { 4155 action: "speaker_adding", 4156 content: content.val(), 4157 key: key 4158 }) 4159 .done(function (data) { 4160 if ($(data).hasClass('mec-error')) { 4161 list.prepend(data); 4162 setTimeout(function () { 4163 $('#mec-speaker-error-${key}').remove(); 4164 }, 1500); 4165 } else { 4166 list.html(data); 4167 content.val(''); 4168 } 4169 4170 $($this).prop("disabled", false).css('cursor', 'pointer'); 4171 }); 4172 }); 4173 4174 // Check RTL website 4175 var owl_rtl = $('body').hasClass('rtl') ? true : false; 4176 4177 // MEC FES Date Wrappers 4178 var fes_export_list = $('.mec-export-list-wrapper'); 4179 4180 // MEC FES Date Item Event 4181 fes_export_list.find('.mec-export-list-item').click(function () { 4182 $('.mec-export-list-item').removeClass('fes-export-date-active'); 4183 $(this).addClass('fes-export-date-active'); 4184 }); 4185 4186 // MEC BuddyPress Integration Attendees Modules 4187 var mec_bd_attendees_modules = $('.mec-attendees-list-details > ul > li'); 4188 mec_bd_attendees_modules.click(function () { 4189 $(this).find('.mec-attendees-toggle').toggle(); 4190 }); 4191 4192 // MEC FES export csv 4193 $('.mec-event-export-csv, .mec-event-export-excel').click(function () { 4194 var mec_event_id = $(this).parent().parent().data('event-id'); 4195 4196 var time = $(this).parent().parent().find($('.fes-export-date-active')).data('time'); 4197 if (typeof time === 'undefined') time = 0; 4198 4199 var type = $(this).hasClass('mec-event-export-excel') ? 'ms-excel' : 'csv'; 4200 4201 var url = mecdata.ajax_url + "?action=mec_fes_csv_export&fes_nonce=" + mecdata.fes_nonce + "&mec_event_id=" + mec_event_id + "×tamp=" + time + "&type=" + type; 4202 4203 window.location = url; 4204 }); 4205 }); 4206})(jQuery); 4207 4208function mec_book_form_submit(event, unique_id) { 4209 event.preventDefault(); 4210 window["mec_book_form_submit" + unique_id](); 4211} 4212 4213function mec_book_form_back_btn_cache(context, unique_id) { 4214 var id = jQuery(context).attr('id'); 4215 var mec_form_data = jQuery('#mec_book_form' + unique_id).serializeArray(); 4216 4217 if (id == "mec-book-form-btn-step-1") jQuery('body').data('mec-book-form-step-1', jQuery('#mec_booking' + unique_id).html()).data('unique-id', unique_id).data('mec-book-form-data-step-1', mec_form_data); 4218 else if (id == "mec-book-form-btn-step-2") jQuery('body').data('mec-book-form-step-2', jQuery('#mec_booking' + unique_id).html()).data('mec-book-form-data-step-2', mec_form_data); 4219} 4220 4221function mec_agreement_change(context) { 4222 var status = jQuery(context).is(":checked"); 4223 4224 if (status) jQuery(context).prop("checked", "checked"); 4225 else jQuery(context).removeProp("checked"); 4226} 4227 4228function mec_book_form_back_btn_click(context, unique_id) { 4229 var id = jQuery(context).attr('id'); 4230 unique_id = jQuery('body').data('unique-id'); 4231 4232 jQuery('#mec_booking_message' + unique_id).hide(); 4233 if (id == "mec-book-form-back-btn-step-2") { 4234 var mec_form_data_step_1 = jQuery('body').data('mec-book-form-data-step-1'); 4235 console.log(mec_form_data_step_1); 4236 4237 jQuery('#mec_booking' + unique_id).html(jQuery('body').data('mec-book-form-step-1')); 4238 jQuery.each(mec_form_data_step_1, function(index, object_item) 4239 { 4240 if(object_item.name === 'book[date][]') 4241 { 4242 jQuery('[value="' + object_item.value + '"]').prop('checked', true); 4243 } 4244 else jQuery('[name="' + object_item.name + '"]').val(object_item.value); 4245 }); 4246 4247 // Booking Refresh Recaptcha When Back Button Click.
4248 var recaptcha_check = jQuery('#mec_booking' + unique_id).find('#g-recaptcha').length; 4249 if (recaptcha_check != 0) { 4250 jQuery('#g-recaptcha').html(''); 4251 grecaptcha.render("g-recaptcha", { 4252 sitekey: mecdata.recapcha_key 4253 }); 4254 } 4255 4256 var event_id = jQuery('input[name="event_id"]').val(); 4257 var date = jQuery('#mec_book_form_date' + unique_id).val(); 4258 4259 // Update Availability 4260 window['mec_get_tickets_availability' + unique_id](event_id, date); 4261 } 4262 else if (id == "mec-book-form-back-btn-step-3") { 4263 var mec_form_data_step_2 = jQuery('body').data('mec-book-form-data-step-2'); 4264 4265 jQuery('#mec_booking' + unique_id).html(jQuery('body').data('mec-book-form-step-2')); 4266 jQuery.each(mec_form_data_step_2, function (index, object_item) { 4267 var mec_elem = jQuery('[name="' + object_item.name + '"]'); 4268 var mec_type = mec_elem.attr('type'); 4269 4270 if ((mec_type == 'checkbox' || mec_type == 'radio')) { 4271 var mec_elem_len = jQuery('[name="' + object_item.name + '"]').length; 4272 4273 if (mec_elem_len > 1) { 4274 var id = '#' + mec_elem.attr('id').match(/mec_book_reg_field_reg.*_/g) + object_item.value.toLowerCase(); 4275 jQuery(id).prop('checked', true); 4276 } 4277 else { 4278 mec_elem.prop('checked', true); 4279 } 4280 } 4281 4282 mec_elem.val(object_item.value); 4283 }); 4284 } 4285} 4286 4287// Google map Skin 4288function gmapSkin(NewJson) { 4289 var gmap_temp = jQuery("#gmap-data"); 4290 var beforeJson = gmap_temp.val(); 4291 if (typeof beforeJson === 'undefined') beforeJson = ''; 4292 4293 var newJson = NewJson; 4294 var jsonPush = (typeof beforeJson != 'undefined' && beforeJson.trim() == "") ? [] : JSON.parse(beforeJson); 4295 var pushState = jsonPush.length < 1 ? false : true; 4296 4297 for (var key in newJson) { 4298 if (pushState) {
4299 jsonPush.forEach(function (Item, Index) { 4300 var render_location = jsonPush[Index].latitude + "," + jsonPush[Index].longitude; 4301 if (key.trim() == render_location.trim()) { 4302 // LightBox Count Update 4303 newJson[key].count = newJson[key].count + jsonPush[Index].count; 4304 4305 // LightBox Ids Update 4306 newJson[key].event_ids = newJson[key].event_ids.concat(jsonPush[Index].event_ids); 4307 4308 // LightBox Initialize 4309 var dom = jQuery(newJson[key].lightbox).find("div:nth-child(2)"); 4310 var main_items = dom.html(); 4311 var new_items = jQuery(jsonPush[Index].lightbox).find("div:nth-child(2)").html(); 4312 4313 var render_items = dom.html(main_items + new_items).html(); 4314 var new_info_lightbox = '<div><div class="mec-event-detail mec-map-view-event-detail"><i class="mec-sl-map-marker"></i> ' + newJson[key].name + '</div><div>' + render_items + '</div></div>'; 4315 newJson[key].lightbox = new_info_lightbox; 4316 4317 // LightBox info 4318 var new_info_window = '<div class="mec-marker-infowindow-wp"><div class="mec-marker-infowindow-count">' + newJson[key].count + '</div><div class="mec-marker-infowindow-content"><span>Event at this location</span><span>' + newJson[key].name + '</span></div></div>'; 4319 newJson[key].infowindow = new_info_window; 4320 4321 // Remove before values of this location 4322 jsonPush.splice(Index, 1); 4323 } 4324 }); 4325 } 4326 4327 jsonPush.push(newJson[key]); 4328 } 4329 4330 gmap_temp.val(JSON.stringify(jsonPush)); 4331 return jsonPush; 4332} 4333 4334// Fluent Scripts 4335jQuery(document).ready(function () { 4336 if (jQuery('.mec-fluent-wrap').length < 0) { 4337 return; 4338 } 4339 // Events 4340 jQuery(window).on('resize', mecFluentToggoleDisplayValueFilterContent); 4341 jQuery(document).on('click', '.mec-fluent-wrap .mec-filter-icon', mecFluentToggleFilterContent); 4342 jQuery(document).on('click', '.mec-fluent-wrap .mec-more-events-icon', mecFluentToggleMoreEvents); 4343 jQuery(document).on('click', '.mec-fluent-wrap .mec-yearly-calendar', mecFluentYearlyCalendar); 4344 jQuery(document).on('click', mecFluentOutsideEvent); 4345 jQuery(document).on('click', '.mec-fluent-more-views-icon', mecFluentMoreViewsContent); 4346 jQuery(document).on('change', '.mec-fluent-wrap .mec-filter-content select, .mec-fluent-wrap .mec-filter-content input', mecFluentSmartFilterIcon); 4347 // Run 4348 mecFluentTimeTableUI(); 4349 mecFluentUI(); 4350 mecFluentNiceSelect(); 4351 mecFluentWrapperFullScreenWidth(); 4352 jQuery(window).on('load', mecFluentWrapperFullScreenWidth); 4353 jQuery(window).on('load', mecFluentCurrentTimePosition); 4354 jQuery(window).on('resize', mecFluentWrapperFullScreenWidth); 4355 jQuery(window).on('resize', mecFluentTimeTableUI); 4356 mecFluentSliderUI(); 4357 mecFluentFullCalendar(); 4358 jQuery(window).on('resize', mecFluentFullCalendar); 4359 mecFluentCustomScrollbar(); 4360}); 4361 4362function mecFluentSinglePage() { 4363 if (jQuery().niceScroll) { 4364 jQuery('.mec-single-fluent-body .featherlight .mec-single-fluent-wrap').niceScroll({ 4365 horizrailenabled: false, 4366 cursorcolor: '#C1C5C9', 4367 cursorwidth: '4px', 4368 cursorborderradius: '4px', 4369 cursorborder: 'none', 4370 railoffset: { 4371 left: 10, 4372 } 4373 }); 4374 } 4375} 4376 4377function mecFluentFullCalendar() { 4378 if (jQuery('.mec-fluent-wrap.mec-skin-full-calendar-container').length > 0) { 4379 var widowWidth = jQuery(window).innerWidth(); 4380 if (widowWidth <= 767) { 4381 jQuery('.mec-fluent-wrap.mec-skin-full-calendar-container .mec-skin-monthly-view-month-navigator-container, .mec-fluent-wrap.mec-skin-full-calendar-container .mec-calendar-a-month, .mec-fluent-wrap.mec-skin-full-calendar-container .mec-yearly-title-sec').css({ 4382 paddingTop: jQuery('.mec-fluent-wrap.mec-skin-full-calendar-container').children('.mec-totalcal-box').height() + 40, 4383 }); 4384 } else { 4385 jQuery('.mec-fluent-wrap.mec-skin-full-calendar-container .mec-skin-monthly-view-month-navigator-container, .mec-fluent-wrap.mec-skin-full-calendar-container .mec-calendar-a-month, .mec-fluent-wrap.mec-skin-full-calendar-container .mec-yearly-title-sec').css({ 4386 paddingTop: 32, 4387 }); 4388 } 4389 } 4390} 4391 4392function mecFluentSmartFilterIcon() { 4393 var filterContent = jQuery(this).closest('.mec-filter-content'); 4394 var hasValue = false; 4395 if (jQuery(this).closest('.mec-date-search').length > 0) { 4396 var yearValue = jQuery(this).closest('.mec-date-search').find('select[id*="mec_sf_year"]').val(); 4397 var monthValue = jQuery(this).closest('.mec-date-search').find('select[id*="mec_sf_month"]').val(); 4398 if ((yearValue == 'none' && monthValue == 'none') || (yearValue != 'none' && monthValue != 'none')) { 4399 filterContent.hide(); 4400 if ((yearValue != 'none' && monthValue != 'none')) { 4401 hasValue = true; 4402 } else { 4403 hasValue = false; 4404 } 4405 } else { 4406 return false; 4407 } 4408 } else { 4409 filterContent.hide(); 4410 } 4411 if (!hasValue) { 4412 filterContent.find(':not(.mec-date-search)').find('select, input:not([type="hidden"])').each(function () { 4413 if (jQuery(this).val()) { 4414 hasValue = true; 4415 return false; 4416 } 4417 }); 4418 } 4419 if (hasValue) { 4420 jQuery(this).closest('.mec-search-form').find('.mec-filter-icon').addClass('active'); 4421 } else { 4422 jQuery(this).closest('.mec-search-form').find('.mec-filter-icon').removeClass('active'); 4423 } 4424} 4425 4426function mecFluentMoreViewsContent() { 4427 jQuery(this).find('.mec-fluent-more-views-content').toggleClass('active'); 4428} 4429 4430function mecFluentWrapperFullScreenWidth() { 4431 if (jQuery('.mec-fluent-bg-wrap').length > 0) { 4432 jQuery('.mec-fluent-bg-wrap').css({ 4433 maxWidth: jQuery('body').width() + 8, 4434 }); 4435 } 4436} 4437 4438function mecFluentUI() { 4439 if (typeof mecdata != 'undefined' && typeof mecdata.enableSingleFluent != 'undefined' && mecdata.enableSingleFluent) { 4440 jQuery('body').addClass('mec-single-fluent-body'); 4441 } 4442 // Set filter content position 4443 jQuery(window).on('load resize', function () { 4444 if (jQuery('.mec-filter-content').length > 0) { 4445 jQuery('.mec-filter-content').css({ 4446 right: -(jQuery('.mec-calendar').width() - jQuery('.mec-search-form.mec-totalcal-box').position().left - jQuery('.mec-search-form.mec-totalcal-box').width() + 40), 4447 left: -jQuery('.mec-search-form.mec-totalcal-box').position().left + 40, 4448 }); 4449 } 4450 if (jQuery('.mec-filter-icon').is(':visible')) {
4451 var filterIconLeftPosition = parseInt(jQuery('.mec-search-form.mec-totalcal-box').position().left) + parseInt(jQuery('.mec-filter-icon').position().left) - 25; 4452 jQuery('head').find('style[title="mecFluentFilterContentStyle"]').remove().end().append('<style title="mecFluentFilterContentStyle">.mec-fluent-wrap .mec-filter-content:before{left: ' + filterIconLeftPosition + 'px;}.mec-fluent-wrap .mec-filter-content:after{left: ' + (filterIconLeftPosition + 1) + 'px;}</style>'); 4453 } 4454 }); 4455 // Hide empty filter content 4456 if (jQuery('.mec-filter-content').is(':empty')) { 4457 jQuery('.mec-filter-icon').hide(); 4458 } 4459 // Prevend Default For Event Share Icon 4460 jQuery(document).on('click', '.mec-event-share-icon', function (e) { 4461 e.preventDefault(); 4462 }); 4463} 4464 4465function mecFluentCurrentTimePosition() { 4466 if (jQuery('.mec-fluent-wrap').length > 0) { 4467 jQuery('.mec-fluent-current-time').each(function () { 4468 var currentTimeMinutes = jQuery(this).data('time'); 4469 var height = jQuery(this).closest('.mec-fluent-current-time-cell').height(); 4470 jQuery(this).css({ 4471 top: (currentTimeMinutes / 60) * height, 4472 }); 4473 }); 4474 } 4475} 4476 4477function mecFluentNiceSelect() { 4478 if (jQuery('.mec-fluent-wrap').length < 0) { 4479 return; 4480 } 4481 4482 if (jQuery().niceSelect) { 4483 jQuery('.mec-fluent-wrap').find('.mec-filter-content').find('select').niceSelect(); 4484 } 4485} 4486 4487function mecFluentCustomScrollbar(y) { 4488 if (jQuery('.mec-fluent-wrap').length < 0) { 4489 return; 4490 } 4491 4492 if (jQuery().niceScroll) { 4493 jQuery('.mec-custom-scrollbar').niceScroll({ 4494 cursorcolor: '#C7EBFB', 4495 cursorwidth: '4px', 4496 cursorborderradius: '4px', 4497 cursorborder: 'none', 4498 railoffset: { 4499 left: -2, 4500 } 4501 }); 4502 jQuery('.mec-custom-scrollbar').getNiceScroll().resize(); 4503 jQuery('.mec-custom-scrollbar').each(function () { 4504 if (jQuery(this).find('.mec-fluent-current-time-cell').length > 0) { 4505 var parentTopOffset = jQuery(this).offset().top; 4506 var currentTimeCellOffset = jQuery(this).find('.mec-fluent-current-time-cell').offset().top; 4507 jQuery(this).getNiceScroll(0).doScrollTop(currentTimeCellOffset - parentTopOffset - 16, 120); 4508 jQuery(this).on('scroll', function () { 4509 if (jQuery(this).getNiceScroll(0).scroll.y != 0) { 4510 jQuery(this).addClass('mec-scrolling'); 4511 } else { 4512 jQuery(this).removeClass('mec-scrolling'); 4513 } 4514 }); 4515 } 4516 if (typeof y != 'undefined') { 4517 if (jQuery(this).closest('.mec-skin-list-wrap').length > 0 || jQuery(this).closest('.mec-skin-grid-wrap').length > 0) { 4518 jQuery(this).getNiceScroll(0).doScrollTop(0, 120); 4519 } 4520 } 4521 }); 4522 } 4523} 4524 4525function mecFluentTimeTableUI() { 4526 jQuery('.mec-fluent-wrap.mec-timetable-wrap .mec-cell').css('min-height', 0); 4527 var maxHeight = Math.max.apply(null, jQuery('.mec-fluent-wrap.mec-timetable-wrap .mec-cell').map(function () { 4528 return jQuery(this).height(); 4529 }).get()); 4530 maxHeight = maxHeight > 87 ? maxHeight : 87; 4531 jQuery('.mec-fluent-wrap.mec-timetable-wrap .mec-cell').css('min-height', maxHeight + 2); 4532} 4533 4534function mecFluentSliderUI() { 4535 jQuery(window).on('load', function () { 4536 jQuery('.mec-fluent-wrap.mec-skin-slider-container .owl-next').prepend('<span>Next</span>'); 4537 jQuery('.mec-fluent-wrap.mec-skin-slider-container .owl-prev').append('<span>Prev</span>'); 4538 }); 4539} 4540 4541function mecFluentToggleFilterContent(e) { 4542 e.preventDefault(); 4543 if (jQuery('.mec-filter-content').is(':visible')) { 4544 jQuery('.mec-filter-content').css({ 4545 display: 'none', 4546 }); 4547 } else { 4548 const displayValue = jQuery(window).width() <= 790 ? 'block' : 'flex'; 4549 jQuery('.mec-filter-content').css({ 4550 display: displayValue, 4551 }); 4552 } 4553} 4554 4555function mecFluentToggoleDisplayValueFilterContent() { 4556 const displayValue = jQuery(window).width() <= 767 ? 'block' : 'flex'; 4557 if (jQuery('.mec-filter-content').is(':visible')) { 4558 jQuery('.mec-filter-content').css({ 4559 display: displayValue, 4560 }); 4561 } 4562} 4563 4564function mecFluentToggleMoreEvents(e) { 4565 e.preventDefault();
4566 const moreEventsWrap = jQuery(this).siblings('.mec-more-events-wrap'); 4567 const moreEvents = moreEventsWrap.children('.mec-more-events'); 4568 jQuery('.mec-more-events-wrap').removeClass('active'); 4569 moreEventsWrap.addClass('active'); 4570 jQuery('.mec-more-events-wrap:not(.active)').hide(); 4571 if (moreEventsWrap.is(':visible')) { 4572 moreEventsWrap.hide(); 4573 } else { 4574 topElement = moreEventsWrap.closest('.mec-more-events-inner-controller').length > 0 ? moreEventsWrap.closest('.mec-more-events-inner-controller') : moreEventsWrap.closest('.mec-more-events-controller'); 4575 moreEventsWrap.show().css({ 4576 top: topElement.offset().top - window.scrollY, 4577 left: moreEventsWrap.closest('.mec-more-events-controller').offset().left, 4578 width: moreEventsWrap.closest('.mec-more-events-controller').width(), 4579 }); 4580 if (moreEventsWrap.width() > 400) { 4581 moreEvents.css({ 4582 left: (moreEventsWrap.width() / 2) - (moreEvents.width() / 2), 4583 width: 400, 4584 }); 4585 } else { 4586 moreEvents.css({ 4587 width: moreEventsWrap.width(), 4588 left: 0, 4589 }); 4590 } 4591 } 4592} 4593 4594function mecFluentOutsideEvent(e) { 4595 if (!jQuery(e.target).is('.mec-more-events-icon') && !jQuery(e.target).closest('.mec-more-events-wrap').length) { 4596 jQuery('.mec-more-events-wrap').hide(); 4597 } 4598 if (!jQuery(e.target).is('.mec-filter-icon') && !jQuery(e.target).closest('.mec-filter-content').length) { 4599 jQuery('.mec-filter-content').hide(); 4600 } 4601 if (!jQuery(e.target).is('.mec-fluent-more-views-icon') && !jQuery(e.target).closest('.mec-fluent-more-views-content').length) { 4602 jQuery('.mec-fluent-more-views-content').removeClass('active'); 4603 } 4604} 4605 4606function mecFluentYearlyCalendar() { 4607 const monthNum = jQuery(this).data('month'); 4608 const monthName = jQuery(this).find('.mec-calendar-table-title').text(); 4609 jQuery('.mec-fluent-wrap').find('.mec-yearly-calendar').removeClass('active'); 4610 jQuery(this).addClass('active') 4611 .closest('.mec-year-container') 4612 .find('.mec-yearly-agenda-sec-title span').text(monthName).end() 4613 .find('.mec-events-agenda').addClass('mec-util-hidden').end() 4614 .find('.mec-events-agenda[data-month=' + monthNum + ']').removeClass('mec-util-hidden'); 4615 mecFluentCustomScrollbar(); 4616} 4617 4618function mecFluentYearlyUI(eventID, yearID) { 4619 var fluentWrap = jQuery('#mec_skin_' + eventID + '.mec-fluent-wrap'); 4620 if (fluentWrap.length < 0) { 4621 return; 4622 } 4623 var monthNum = fluentWrap.find('.mec-year-container[data-year-id=' + yearID + ']').find('.mec-events-agenda:not(.mec-util-hidden)').data('month'); 4624 var activeMonth = fluentWrap.find('.mec-year-container[data-year-id=' + yearID + ']').find('.mec-yearly-calendar[data-month=' + monthNum + ']'); 4625 var activeMonthName = activeMonth.find('.mec-calendar-table-title').text(); 4626 activeMonth.addClass('active'); 4627} 4628 4629// MEC LIST VIEW Fluent PLUGIN 4630(function ($) { 4631 $.fn.mecListViewFluent = function (options) { 4632 var active_month; 4633 var active_year; 4634 4635 // Default Options 4636 var settings = $.extend({ 4637 // These are the defaults. 4638 today: null, 4639 id: 0, 4640 events_label: 'Events', 4641 event_label: 'Event', 4642 month_navigator: 0, 4643 atts: '', 4644 active_month: {}, 4645 next_month: {}, 4646 sf: {}, 4647 ajax_url: '', 4648 }, options); 4649 4650 mecFluentCustomScrollbar(); 4651 4652 initLoadMore('#mec_list_view_month_' + settings.id + '_' + settings.month_id); 4653 4654 function initLoadMore(monthID) { 4655 $(monthID).off().on('click', '.mec-load-more-button', function () { 4656 loadMore(this); 4657 }); 4658 } 4659 4660 function loadMore(This) { 4661 // Add loading Class 4662 var currentLoadMore = $(This); 4663 currentLoadMore.addClass("mec-load-more-loading"); 4664 var endDate = currentLoadMore.data('end-date'); 4665 var maximumDate = currentLoadMore.data('maximum-date'); 4666 var nextOffset = currentLoadMore.data('next-offset'); 4667 var year = currentLoadMore.data('year');
4668 var month = currentLoadMore.data('month'); 4669 4670 $.ajax({ 4671 url: settings.ajax_url, 4672 data: "action=mec_list_load_more&mec_year=" + year + "&mec_month=" + month + "&mec_maximum_date=" + maximumDate + "&mec_start_date=" + endDate + "&mec_offset=" + nextOffset + "&" + settings.atts + "¤t_month_divider=0&apply_sf_date=0", 4673 dataType: "json", 4674 type: "post", 4675 success: function (response) { 4676 currentLoadMore.parent().remove(); 4677 if (response.count != '0') { 4678 // Append Items 4679 $('#mec_list_view_month_' + settings.id + '_' + response.current_month.id).append(response.month); 4680 4681 // Single Event Method 4682 if (settings.sed_method != '0') { 4683 sed(); 4684 } 4685 4686 mecFluentCustomScrollbar(); 4687 initLoadMore('#mec_list_view_month_' + settings.id + '_' + response.current_month.id); 4688 } 4689 }, 4690 error: function () { } 4691 }); 4692 } 4693 4694 // Initialize Month Navigator 4695 if (settings.month_navigator) initMonthNavigator(); 4696 4697 // Load Next Month in background 4698 setMonth(settings.next_month.year, settings.next_month.month, true); 4699 4700 var initMonth; 4701 var initYear; 4702 active_month = initMonth = settings.active_month.month; 4703 active_year = initYear = settings.active_month.year; 4704 4705 // Search Widget 4706 if (settings.sf.container !== '') { 4707 sf = $(settings.sf.container).mecSearchForm({ 4708 id: settings.id, 4709 refine: settings.sf.refine, 4710 ajax_url: settings.ajax_url, 4711 atts: settings.atts, 4712 callback: function (atts) { 4713 settings.atts = atts; 4714 search(active_year, active_month); 4715 } 4716 }); 4717 } 4718 4719 // Single Event Method 4720 if (settings.sed_method != '0') { 4721 sed(); 4722 } 4723 4724 function initMonthNavigator() { 4725 $("#mec_skin_" + settings.id + " .mec-load-month").off().on("click", function () { 4726 var year = $(this).data("mec-year"); 4727 var month = $(this).data("mec-month"); 4728 setMonth(year, month, false, true); 4729 }); 4730 } 4731 4732 function parseQuery(queryString) { 4733 var query = {}; 4734 var pairs = (queryString[0] === '?' ? queryString.substr(1) : queryString).split('&'); 4735 for (var i = 0; i < pairs.length; i++) { 4736 var pair = pairs[i].split('='); 4737 query[decodeURIComponent(pair[0])] = decodeURIComponent(pair[1] || ''); 4738 } 4739 return query; 4740 } 4741 4742 function updateQueryStringParameter(uri, key, val) { 4743 return uri 4744 .replace(RegExp("([?&]" + key + "(?=[=&#]|$)[^#&]*|(?=#|$))"), "&" + key + "=" + encodeURIComponent(val)) 4745 .replace(/^([^?&]+)&/, "$1?"); 4746 } 4747 4748 function search(year, month) { 4749 // Add Loading Class 4750 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 4751 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 4752 4753 var ObjAtts = parseQuery(settings.atts); 4754 if (!(ObjAtts['sf[month'] || ObjAtts['sf[year]'])) { 4755 settings.atts = updateQueryStringParameter(settings.atts.trim(), 'sf[year]', initYear); 4756 settings.atts = updateQueryStringParameter(settings.atts.trim(), 'sf[month]', initMonth); 4757 } 4758 4759 $.ajax({
4760 url: settings.ajax_url, 4761 data: "action=mec_list_load_month&mec_year=" + year + "&mec_month=" + month + "&" + settings.atts + "&apply_sf_date=1", 4762 dataType: "json", 4763 type: "post", 4764 success: function (response) { 4765 active_month = response.current_month.month; 4766 active_year = response.current_month.year; 4767 4768 // Append Month 4769 $("#mec_skin_events_" + settings.id).html('<div class="mec-month-container" id="mec_list_view_month_' + settings.id + '_' + response.current_month.id + '" data-month-id="' + response.current_month.id + '">' + response.month + '</div>'); 4770 4771 // Append Month Navigator 4772 $("#mec_skin_" + settings.id + " .mec-skin-list-view-month-navigator-container").html('<div class="mec-month-navigator" id="mec_month_navigator_' + settings.id + '_' + response.current_month.id + '">' + response.navigator + '</div>'); 4773 4774 // Re-initialize Month Navigator 4775 initMonthNavigator(); 4776 4777 // Toggle Month 4778 toggleMonth(response.current_month.id); 4779 4780 initLoadMore('#mec_list_view_month_' + settings.id + '_' + response.current_month.id); 4781 4782 // Remove loading Class 4783 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 4784 4785 mecFluentCustomScrollbar(); 4786 }, 4787 error: function () { } 4788 }); 4789 } 4790 4791 function setMonth(year, month, do_in_background, navigator_click) { 4792 if (typeof do_in_background === "undefined") do_in_background = false; 4793 navigator_click = navigator_click || false; 4794 var month_id = year + "" + month; 4795 4796 if (!do_in_background) { 4797 active_month = month; 4798 active_year = year; 4799 } 4800 4801 // Month exists so we just show it 4802 if ($("#mec_list_view_month_" + settings.id + "_" + month_id).length) { 4803 // Toggle Month 4804 toggleMonth(month_id); 4805 mecFluentCustomScrollbar(0); 4806 } else { 4807 if (!do_in_background) { 4808 // Add Loading Class 4809 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 4810 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 4811 } 4812 4813 $.ajax({
4814 url: settings.ajax_url, 4815 data: "action=mec_list_load_month&mec_year=" + year + "&mec_month=" + month + "&" + settings.atts + "&apply_sf_date=0" + "&navigator_click=" + navigator_click, 4816 dataType: "json", 4817 type: "post", 4818 success: function (response) { 4819 // Append Month 4820 $("#mec_skin_events_" + settings.id).append('<div class="mec-month-container" id="mec_list_view_month_' + settings.id + '_' + response.current_month.id + '" data-month-id="' + response.current_month.id + '">' + response.month + '</div>'); 4821 4822 // Append Month Navigator 4823 $("#mec_skin_" + settings.id + " .mec-skin-list-view-month-navigator-container").append('<div class="mec-month-navigator" id="mec_month_navigator_' + settings.id + '_' + response.current_month.id + '">' + response.navigator + '</div>'); 4824 4825 // Re-initialize Month Navigator 4826 initMonthNavigator(); 4827 initLoadMore('#mec_list_view_month_' + settings.id + '_' + response.current_month.id); 4828 4829 if (!do_in_background) { 4830 // Toggle Month 4831 toggleMonth(response.current_month.id); 4832 4833 // Remove loading Class 4834 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 4835 4836 4837 // Set Month Filter values in search widget 4838 $("#mec_sf_month_" + settings.id).val(month); 4839 $("#mec_sf_year_" + settings.id).val(year); 4840 } else { 4841 $("#mec_list_view_month_" + settings.id + "_" + response.current_month.id).hide(); 4842 $("#mec_month_navigator_" + settings.id + "_" + response.current_month.id).hide(); 4843 } 4844 if (typeof custom_month !== undefined) var custom_month; 4845 if (typeof custom_month != undefined) { 4846 if (custom_month == 'true') { 4847 $(".mec-month-container .mec-calendar-day").removeClass('mec-has-event'); 4848 $(".mec-month-container .mec-calendar-day").removeClass('mec-selected-day'); 4849 $('.mec-calendar-day').unbind('click'); 4850 } 4851 } 4852 if (!do_in_background) { 4853 mecFluentCustomScrollbar(0); 4854 } 4855 }, 4856 error: function () { } 4857 }); 4858 } 4859 } 4860 4861 function toggleMonth(month_id) { 4862 var active_month = $("#mec_skin_" + settings.id + " .mec-month-container-selected").data("month-id"); 4863 var active_day = $("#mec_list_view_month_" + settings.id + "_" + active_month + " .mec-selected-day").data("day"); 4864 4865 if (active_day <= 9) active_day = "0" + active_day; 4866 4867 // Toggle Month Navigator 4868 $("#mec_skin_" + settings.id + " .mec-month-navigator").hide(); 4869 $("#mec_month_navigator_" + settings.id + "_" + month_id).show(); 4870 4871 // Toggle Month 4872 $("#mec_skin_" + settings.id + " .mec-month-container").hide(); 4873 $("#mec_list_view_month_" + settings.id + "_" + month_id).show(); 4874 4875 // Add selected class 4876 $("#mec_skin_" + settings.id + " .mec-month-container").removeClass("mec-month-container-selected"); 4877 $("#mec_list_view_month_" + settings.id + "_" + month_id).addClass("mec-month-container-selected"); 4878 } 4879 4880 var sf; 4881 4882 function sed() { 4883 // Single Event Display 4884 $(".mec-skin-list-wrap#mec_skin_" + settings.id).off('click').on('click', '[data-event-id]', function (e) { 4885 e.preventDefault(); 4886 var href = $(this).attr('href'); 4887 4888 var id = $(this).data('event-id'); 4889 var occurrence = get_parameter_by_name('occurrence', href); 4890 var time = get_parameter_by_name('time', href); 4891 4892 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 4893 }); 4894 } 4895 }; 4896}(jQuery)); 4897 4898// MEC Grid VIEW Fluent PLUGIN 4899(function ($) { 4900 $.fn.mecGridViewFluent = function (options) { 4901 var active_month; 4902 var active_year; 4903 4904 // Default Options 4905 var settings = $.extend({ 4906 // These are the defaults. 4907 today: null, 4908 id: 0, 4909 events_label: 'Events', 4910 event_label: 'Event', 4911 month_navigator: 0, 4912 atts: '', 4913 active_month: {}, 4914 next_month: {}, 4915 sf: {}, 4916 ajax_url: '', 4917 }, options); 4918 4919 initLoadMore('#mec_grid_view_month_' + settings.id + '_' + settings.month_i
4919d); 4920 4921 function initLoadMore(monthID) { 4922 $(monthID).off().on('click', '.mec-load-more-button', function () { 4923 loadMore(this); 4924 }); 4925 } 4926 4927 function loadMore(This) { 4928 // Add loading Class 4929 var currentLoadMore = $(This); 4930 currentLoadMore.addClass("mec-load-more-loading"); 4931 var endDate = currentLoadMore.data('end-date'); 4932 var maximumDate = currentLoadMore.data('maximum-date'); 4933 var nextOffset = currentLoadMore.data('next-offset'); 4934 var year = currentLoadMore.data('year'); 4935 var month = currentLoadMore.data('month'); 4936 4937 $.ajax({ 4938 url: settings.ajax_url, 4939 data: "action=mec_grid_load_more&mec_year=" + year + "&mec_month=" + month + "&mec_maximum_date=" + maximumDate + "&mec_start_date=" + endDate + "&mec_offset=" + nextOffset + "&" + settings.atts + "¤t_month_divider=0&apply_sf_date=0", 4940 dataType: "json", 4941 type: "post", 4942 success: function (response) { 4943 currentLoadMore.parent().remove(); 4944 if (response.count != '0') { 4945 // Append Items 4946 $('#mec_grid_view_month_' + settings.id + '_' + response.current_month.id).append(response.month); 4947 4948 // Single Event Method 4949 if (settings.sed_method != '0') { 4950 sed(); 4951 } 4952 4953 mecFluentCustomScrollbar(); 4954 initLoadMore('#mec_grid_view_month_' + settings.id + '_' + response.current_month.id); 4955 } 4956 }, 4957 error: function () { } 4958 }); 4959 } 4960 4961 // Initialize Month Navigator 4962 if (settings.month_navigator) initMonthNavigator(); 4963 4964 // Load Next Month in background 4965 setMonth(settings.next_month.year, settings.next_month.month, true); 4966 4967 var initMonth; 4968 var initYear; 4969 active_month = initMonth = settings.active_month.month; 4970 active_year = initYear = settings.active_month.year; 4971 4972 // Search Widget 4973 if (settings.sf.container !== '') { 4974 sf = $(settings.sf.container).mecSearchForm({ 4975 id: settings.id, 4976 refine: settings.sf.refine, 4977 ajax_url: settings.ajax_url, 4978 atts: settings.atts, 4979 callback: function (atts) { 4980 settings.atts = atts; 4981 search(active_year, active_month); 4982 } 4983 }); 4984 } 4985 4986 // Single Event Method 4987 if (settings.sed_method != '0') { 4988 sed(); 4989 } 4990 4991 function initMonthNavigator() { 4992 $("#mec_skin_" + settings.id + " .mec-load-month").off().on("click", function () { 4993 var year = $(this).data("mec-year"); 4994 var month = $(this).data("mec-month"); 4995 setMonth(year, month, false, true); 4996 }); 4997 } 4998 4999 function parseQuery(queryString) { 5000 var query = {}; 5001 var pairs = (queryString[0] === '?' ? queryString.substr(1) : queryString).split('&'); 5002 for (var i = 0; i < pairs.length; i++) { 5003 var pair = pairs[i].split('='); 5004 query[decodeURIComponent(pair[0])] = decodeURIComponent(pair[1] || ''); 5005 } 5006 return query; 5007 } 5008 5009 function updateQueryStringParameter(uri, key, val) { 5010 return uri 5011 .replace(RegExp("([?&]" + key + "(?=[=&#]|$)[^#&]*|(?=#|$))"), "&" + key + "=" + encodeURIComponent(val)) 5012 .replace(/^([^?&]+)&/, "$1?"); 5013 } 5014 5015 function search(year, month) { 5016 // Add Loading Class 5017 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 5018 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 5019 5020 var ObjAtts = parseQuery(settings.atts); 5021 if (!(ObjAtts['sf[month'] || ObjAtts['sf[year]'])) { 5022 settings.atts = updateQueryStringParameter(settings.atts.trim(), 'sf[year]', initYear); 5023 settings.atts = updateQueryStringParameter(settings.atts.trim(), 'sf[month]', initMonth); 5024 } 5025 5026 $.ajax({
5027 url: settings.ajax_url, 5028 data: "action=mec_grid_load_month&mec_year=" + year + "&mec_month=" + month + "&" + settings.atts + "&apply_sf_date=1", 5029 dataType: "json", 5030 type: "post", 5031 success: function (response) { 5032 active_month = response.current_month.month; 5033 active_year = response.current_month.year; 5034 5035 // Append Month 5036 $("#mec_skin_events_" + settings.id).html('<div class="mec-month-container" id="mec_grid_view_month_' + settings.id + '_' + response.current_month.id + '" data-month-id="' + response.current_month.id + '">' + response.month + '</div>'); 5037 5038 // Append Month Navigator 5039 $("#mec_skin_" + settings.id + " .mec-skin-grid-view-month-navigator-container").html('<div class="mec-month-navigator" id="mec_month_navigator_' + settings.id + '_' + response.current_month.id + '">' + response.navigator + '</div>'); 5040 5041 // Re-initialize Month Navigator 5042 initMonthNavigator(); 5043 5044 // Toggle Month 5045 toggleMonth(response.current_month.id); 5046 5047 initLoadMore('#mec_grid_view_month_' + settings.id + '_' + response.current_month.id); 5048 5049 // Remove loading Class 5050 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 5051 5052 mecFluentCustomScrollbar(); 5053 }, 5054 error: function () { } 5055 }); 5056 } 5057 5058 function setMonth(year, month, do_in_background, navigator_click) { 5059 if (typeof do_in_background === "undefined") do_in_background = false; 5060 navigator_click = navigator_click || false; 5061 var month_id = year + "" + month; 5062 5063 if (!do_in_background) { 5064 active_month = month; 5065 active_year = year; 5066 } 5067 5068 // Month exists so we just show it 5069 if ($("#mec_grid_view_month_" + settings.id + "_" + month_id).length) { 5070 // Toggle Month 5071 toggleMonth(month_id); 5072 mecFluentCustomScrollbar(); 5073 } else { 5074 if (!do_in_background) { 5075 // Add Loading Class 5076 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 5077 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 5078 } 5079 5080 $.ajax({
5081 url: settings.ajax_url, 5082 data: "action=mec_grid_load_month&mec_year=" + year + "&mec_month=" + month + "&" + settings.atts + "&apply_sf_date=0" + "&navigator_click=" + navigator_click, 5083 dataType: "json", 5084 type: "post", 5085 success: function (response) { 5086 // Append Month 5087 $("#mec_skin_events_" + settings.id).append('<div class="mec-month-container" id="mec_grid_view_month_' + settings.id + '_' + response.current_month.id + '" data-month-id="' + response.current_month.id + '">' + response.month + '</div>'); 5088 5089 // Append Month Navigator 5090 $("#mec_skin_" + settings.id + " .mec-skin-grid-view-month-navigator-container").append('<div class="mec-month-navigator" id="mec_month_navigator_' + settings.id + '_' + response.current_month.id + '">' + response.navigator + '</div>'); 5091 5092 // Re-initialize Month Navigator 5093 initMonthNavigator(); 5094 initLoadMore('#mec_grid_view_month_' + settings.id + '_' + response.current_month.id); 5095 5096 if (!do_in_background) { 5097 // Toggle Month 5098 toggleMonth(response.current_month.id); 5099 5100 // Remove loading Class 5101 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 5102 5103 5104 // Set Month Filter values in search widget 5105 $("#mec_sf_month_" + settings.id).val(month); 5106 $("#mec_sf_year_" + settings.id).val(year); 5107 } else { 5108 $("#mec_grid_view_month_" + settings.id + "_" + response.current_month.id).hide(); 5109 $("#mec_month_navigator_" + settings.id + "_" + response.current_month.id).hide(); 5110 } 5111 if (typeof custom_month !== undefined) var custom_month; 5112 if (typeof custom_month != undefined) { 5113 if (custom_month == 'true') { 5114 $(".mec-month-container .mec-calendar-day").removeClass('mec-has-event'); 5115 $(".mec-month-container .mec-calendar-day").removeClass('mec-selected-day'); 5116 $('.mec-calendar-day').unbind('click'); 5117 } 5118 } 5119 if (!do_in_background) { 5120 mecFluentCustomScrollbar(); 5121 } 5122 }, 5123 error: function () { } 5124 }); 5125 } 5126 } 5127 5128 function toggleMonth(month_id) { 5129 var active_month = $("#mec_skin_" + settings.id + " .mec-month-container-selected").data("month-id"); 5130 var active_day = $("#mec_grid_view_month_" + settings.id + "_" + active_month + " .mec-selected-day").data("day"); 5131 5132 if (active_day <= 9) active_day = "0" + active_day; 5133 5134 // Toggle Month Navigator 5135 $("#mec_skin_" + settings.id + " .mec-month-navigator").hide(); 5136 $("#mec_month_navigator_" + settings.id + "_" + month_id).show(); 5137 5138 // Toggle Month 5139 $("#mec_skin_" + settings.id + " .mec-month-container").hide(); 5140 $("#mec_grid_view_month_" + settings.id + "_" + month_id).show(); 5141 5142 // Add selected class 5143 $("#mec_skin_" + settings.id + " .mec-month-container").removeClass("mec-month-container-selected"); 5144 $("#mec_grid_view_month_" + settings.id + "_" + month_id).addClass("mec-month-container-selected"); 5145 } 5146 5147 var sf; 5148 5149 function sed() { 5150 // Single Event Display 5151 $(".mec-skin-grid-wrap#mec_skin_" + settings.id).off('click').on('click', '[data-event-id]', function (e) { 5152 e.preventDefault(); 5153 var href = $(this).attr('href'); 5154 5155 var id = $(this).data('event-id'); 5156 var occurrence = get_parameter_by_name('occurrence', href); 5157 var time = get_parameter_by_name('time', href); 5158 5159 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 5160 }); 5161 } 5162 }; 5163}(jQuery)); 5164 5165// MEC Booking Calendar 5166(function($) 5167{
5168 $.fn.mecBookingCalendar = function(options) 5169 { 5170 var active_month; 5171 var active_year; 5172 5173 // Default Options 5174 var settings = $.extend({ 5175 // These are the defaults. 5176 active_month: {}, 5177 next_month: {}, 5178 ajax_url: '', 5179 event_id: '', 5180 }, options); 5181 5182 // Initialize Month Navigator 5183 initMonthNavigator(); 5184 5185 active_month = settings.active_month.month; 5186 active_year = settings.active_month.year; 5187 5188 // Set onclick Listeners 5189 setListeners(); 5190 5191 function initMonthNavigator() 5192 { 5193 // Add onclick event 5194 $("#mec_booking_calendar_" + settings.id + " .mec-load-month").off('click').on('click', function() 5195 { 5196 var year = $(this).data('mec-year'); 5197 var month = $(this).data('mec-month'); 5198 5199 setMonth(year, month); 5200 }); 5201 } 5202 5203 function setMonth(year, month) 5204 { 5205 active_month = month; 5206 active_year = year; 5207 5208 var $modal = $('.mec-modal-result'); 5209 5210 // Add Loading Class 5211 if ($modal.length === 0) $('.mec-wrap').append('<div class="mec-modal-result"></div>'); 5212 $modal.addClass('mec-month-navigator-loading'); 5213 5214 $.ajax( 5215 { 5216 url: settings.ajax_url, 5217 data: "action=mec_booking_calendar_load_month&event_id=" + settings.event_id + "&uniqueid=" + settings.id + "&year=" + year + "&month=" + month, 5218 dataType: "json", 5219 type: "post", 5220 success: function(response) 5221 { 5222 // HTML 5223 $('#mec_booking_calendar_wrapper' + settings.id).html(response.html); 5224 5225 // Hide Message 5226 $('#mec_book_form' + settings.id + ' .mec-ticket-unavailable-spots').addClass('mec-util-hidden'); 5227 5228 // Empty the Date 5229 $('#mec_book_form_date' + settings.id).val('').trigger('change'); 5230 5231 // Remove loading Class 5232 $modal.removeClass("mec-month-navigator-loading"); 5233 }, 5234 error: function() 5235 { 5236 // Remove loading Class 5237 $modal.removeClass("mec-month-navigator-loading"); 5238 } 5239 }); 5240 } 5241 5242 function setListeners() 5243 { 5244 // Add the onclick event 5245 $("#mec_booking_calendar_" + settings.id + " .mec-booking-calendar-date").off('click').on('click', function(e) 5246 { 5247 e.preventDefault(); 5248 5249 // Activate 5250 $("#mec_booking_calendar_" + settings.id + " .mec-booking-calendar-date").removeClass('mec-active'); 5251 $("#mec_booking_calendar_" + settings.id + " .mec-calendar-day").removeClass('mec-wrap-active'); 5252 $(this).addClass('mec-active'); 5253 $(this).parents('.mec-calendar-day').addClass('mec-wrap-active'); 5254 5255 // Set Data 5256 var timestamp = $(this).data('timestamp'); 5257 $('#mec_book_form_date' + settings.id).val(timestamp).trigger('change'); 5258 }); 5259 5260 // Add the onclick event on calendar date 5261 $("#mec_booking_calendar_" + settings.id + " .mec-has-one-repeat-in-day").off('click').on('click', function(e) 5262 { 5263 e.preventDefault(); 5264 5265 var mec_date_value = $(this).attr('data-timestamp'); 5266 5267 // Activate 5268 $("#mec_booking_calendar_" + settings.id + " .mec-has-one-repeat-in-day").removeClass('mec-active'); 5269 $("#mec_booking_calendar_" + settings.id + " [data-timestamp=\"" + mec_date_value + "\"]").addClass('mec-active'); 5270 5271 // Set Data 5272 var timestamp = $(this).data('timestamp'); 5273 $('#mec_book_form_date' + settings.id).val(timestamp).trigger('change'); 5274 }); 5275 5276 // If day has some time slot
5277 $("#mec_booking_calendar_" + settings.id + " .mec-has-time-repeat .mec-calendar-novel-selected-day").off('click').on('click', function(e) 5278 { 5279 $("#mec_booking_calendar_" + settings.id + " .mec-has-time-repeat").removeClass('mec-wrap-active').removeClass('mec-active'); 5280 $(".mec-has-time-repeat").find('.mec-booking-calendar-date').hide(); 5281 $(this).parents(".mec-has-time-repeat").find('.mec-booking-calendar-date').toggle(); 5282 $(this).parents(".mec-has-time-repeat").addClass('mec-active'); 5283 }); 5284 5285 // Find more time in tooltip to set button 5286 $("#mec_booking_calendar_" + settings.id + " .mec-has-time-repeat").on('mouseenter', function() 5287 { 5288 var moreTimeFinder = $(this).find(".mec-booking-calendar-date"); 5289 if(moreTimeFinder.length >= 1) 5290 { 5291 $(this).find(".mec-booking-tooltip").removeClass("multiple-time"); 5292 $(this).find(".mec-booking-tooltip").addClass("multiple-time"); 5293 } 5294 5295 $(this).find(".mec-booking-calendar-date").css("display", "block"); 5296 }); 5297 5298 $("#mec_booking_calendar_" + settings.id + " .mec-has-time-repeat").off('click').on('click', function() 5299 { 5300 $("#mec_booking_calendar_" + settings.id + " .mec-has-time-repeat").removeClass('mec-wrap-active').removeClass('mec-active'); 5301 $(this).addClass("mec-active"); 5302 5303 // Send message under the calendar for multiple time in one day 5304 var sendTimeToMessage = $(this).find(".multiple-time .mec-booking-calendar-date.mec-active").text(); 5305 5306 $(this).parents().eq(3).find(".mec-choosen-time-message").removeClass("disable"); 5307 $(this).parents().eq(3).find(".mec-choosen-time-message .mec-choosen-time").empty(); 5308 $(this).parents().eq(3).find(".mec-choosen-time-message .mec-choosen-time").append(sendTimeToMessage); 5309 }); 5310 } 5311 }; 5312}(jQuery)); 5313 5314// MEC Cart 5315(function($) 5316{ 5317 $.fn.mecCart = function(options) 5318 { 5319 // Default Options 5320 var settings = $.extend({ 5321 // These are the defaults. 5322 ajax_url: '', 5323 }, options); 5324 5325 // Set DOM Listeners 5326 setListeners(); 5327 5328 function setListeners() 5329 { 5330 // Add the onclick event 5331 $(".mec-cart-remove-transactions").off('click').on('click', function(e) 5332 { 5333 e.preventDefault(); 5334 5335 var transaction_id = $(this).data('transaction-id'); 5336 remove(transaction_id); 5337 }); 5338 5339 $('#mec_cart_coupon_form').off('submit').on('submit', function(e) 5340 { 5341 e.preventDefault(); 5342 coupon(); 5343 }); 5344 } 5345 5346 function remove(transaction_id) 5347 { 5348 var $wrapper = $('.mec-cart'); 5349 5350 // Add loading Class 5351 $wrapper.addClass('mec-loading'); 5352 5353 $.ajax( 5354 { 5355 url: settings.ajax_url, 5356 data: "action=mec_cart_remove_transaction&transaction_id=" + transaction_id, 5357 dataType: "json", 5358 type: "post", 5359 success: function(response) 5360 { 5361 // Remove Loading Class 5362 $wrapper.removeClass('mec-loading'); 5363 5364 if(response.success) 5365 { 5366 // Remove Transaction Row 5367 $('#mec_cart_transactions_'+transaction_id).remove(); 5368 5369 if(!$('#mec_cart_transactions_table>tbody>tr').length) 5370 { 5371 $('#mec_cart_transactions_table').remove(); 5372 $('.mec-cart-coupon-checkout-action').remove(); 5373 $('.mec-cart-empty-wrapper').removeClass('mec-util-hidden'); 5374 } 5375 5376 // Update Total Payable Price 5377 $('#mec_cart_total_payable').html(response.total); 5378 } 5379 }, 5380 error: function(){} 5381 }); 5382 } 5383 5384 function coupon() 5385 { 5386 var $wrapper = $('.mec-cart'); 5387 var $message = $('#mec_cart_message'); 5388 5389 // Add loading Class 5390 $wrapper.addClass('mec-loading'); 5391 5392 // Empty Message 5393 $message.html(''); 5394 5395 var coupon = $('#mec_cart_coupon_input').val(); 5396 5397 $.ajax( 5398 { 5399 url: settings.ajax_url, 5400 data: "action=mec_cart_coupon&coupon=" + coupon, 5401 dataType: "json", 5402 type: "post", 5403 success: function(response) 5404 { 5405 // Remove Loading Class 5406 $wrapper.removeClass('mec-loading'); 5407 5408 if(response.success) 5409 { 5410 $message.html('<p class="mec-success">'+response.message+'</p>'); 5411 5412 setTimeout(function() 5413 { 5414 location.reload(); 5415 }, 2000); 5416 } 5417 else 5418 { 5419 $message.html('<p class="mec-error">'+response.message+'</p>'); 5420 } 5421 }, 5422 error: function(){} 5423 }); 5424 } 5425 }; 5426}(jQuery)); 5427 5428// MEC Checkout 5429(function($) 5430{ 5431 $.fn.mecCheckout = function(options) 5432 { 5433 // Default Options 5434 var settings = $.extend({ 5435 // These are the defaults. 5436 ajax_url: '', 5437 }, options); 5438 5439 // Set DOM Listeners 5440 setListeners(); 5441 5442 function setListeners() 5443 { 5444 // Add the onclick event 5445 $(".mec-checkout-gateways-radio").off('change').on('change', function(e) 5446 { 5447 e.preventDefault(); 5448 5449 var gateway_id = $('.mec-checkout-gateways-radio:checked').val(); 5450 5451 // Hide all gateway forms 5452 jQuery(".mec-checkout-form-gateway-checkout").addClass("mec-util-hidden"); 5453 5454 // Show selected gateway form 5455 jQuery("#mec_checkout_form_gateway_checkout" + gateway_id).removeClass("mec-util-hidden"); 5456 }); 5457 5458 $('#mec_checkout_form_free_booking').off('submit').on('submit', function(e) 5459 { 5460 e.preventDefault(); 5461 free(); 5462 }); 5463 } 5464 5465 function free() 5466 { 5467 var $wrapper = $('.mec-checkout'); 5468 var $message = $('#mec_checkout_message'); 5469 5470 // Add loading Class 5471 $wrapper.addClass('mec-loading'); 5472 5473 // Empty Message 5474 $message.html(''); 5475 5476 var data = $('#mec_checkout_form_free_booking').serialize(); 5477 5478 $.ajax( 5479 { 5480 url: settings.ajax_url, 5481 data: data, 5482 dataType: "json", 5483 type: "post", 5484 success: function(response) 5485 { 5486 // Remove Loading Class 5487 $wrapper.removeClass('mec-loading'); 5488 5489 if(response.success) 5490 { 5491 $message.html('<p class="mec-success">'+response.message+'</p>'); 5492 $wrapper.slideUp().html(''); 5493 } 5494 else 5495 { 5496 $message.html('<p class="mec-error">'+response.message+'</p>'); 5497 } 5498 }, 5499 error: function(){} 5500 }); 5501 } 5502 }; 5503}(jQuery)); 5504 5505// Booking Shortcode Scripts 5506jQuery(document).ready(function () { 5507 if (jQuery('.mec-booking-shortcode').length < 0) { 5508 return; 5509 } 5510 // Events 5511 if (jQuery().niceSelect) { 5512 jQuery('.mec-booking-shortcode').find('.mec-book-first').find('select').niceSelect(); 5513 } 5514 5515 // General Calendar 5516 if ( jQuery("#gCalendarMonthFilterButton").length > 0 ) { 5517 jQuery("#gCalendarMonthFilterButton").datepicker({ 5518 format: "yyyy-mm", 5519 viewMode: "months", 5520 minViewMode: "months" 5521 }) 5522 jQuery("#gCalendarMonthFilterButton").datepicker('hide') 5523 } 5524});
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.