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 28 // Event Gallery 29 mec_init_event_gallery(); 30 31 // Number Spinner 32 mec_init_number_spinner(); 33 }, 1000); 34 35 if(image_popup != 0) 36 { 37 if(jQuery('.featherlight-content .mec-events-content a img').length > 0) 38 { 39 jQuery('.featherlight-content .mec-events-content a img').each(function() 40 { 41 if(jQuery(this).attr('src') === jQuery(this).closest('a').attr('href')) 42 { 43 jQuery(this).closest('a').attr('data-featherlight', 'image'); 44 } 45 }); 46 } 47 } 48 49 if(typeof mecdata.enableSingleFluent != 'undefined' && mecdata.enableSingleFluent) mecFluentSinglePage(); 50 }, 51 error: function () { } 52 }); 53 } 54}; 55 56var mec_search_callbacks = []; 57 58// MEC SEARCH FORM PLUGIN 59(function ($) { 60 $.fn.mecSearchForm = function (options) { 61 62 // Default Options 63 var settings = $.extend({ 64 // These are the defaults. 65 id: 0, 66 refine: 0, 67 ajax_url: '', 68 search_form_element: '', 69 atts: '', 70 start_date: '', 71 callback: function () { } 72 }, options); 73 74 if(typeof mec_search_callbacks[settings.id] === 'undefined') mec_search_callbacks[settings.id] = []; 75 mec_search_callbacks[settings.id].push(settings.callback); 76 77 var $event_cost_min = $("#mec_sf_event_cost_min_" + settings.id); 78 var $event_cost_max = $("#mec_sf_event_cost_max_" + settings.id); 79 var $time_start = $("#mec_sf_timepicker_start_" + settings.id); 80 var $time_end = $("#mec_sf_timepicker_end_" + settings.id); 81 var $s = $("#mec_sf_s_" + settings.id); 82 var $address = $("#mec_sf_address_s_" + settings.id); 83 var $date_start = $('#mec_sf_date_start_' + settings.id); 84 var $date_end = $('#mec_sf_date_end_' + settings.id); 85 var $event_type = $('#mec_sf_event_type_' + settings.id); 86 var $event_type_2 = $('#mec_sf_event_type_2_' + settings.id); 87 var $attribute = $('#mec_sf_attribute_' + settings.id); 88 var $custom_fields = $('.mec-custom-event-field'); 89 var $reset = $("#mec_search_form_" + settings.id + '_reset'); 90 var $event_status = $(".mec_sf_event_status_" + settings.id ); 91 var last_field; 92 93 // Trigger 94 trigger(); 95 96 $custom_fields.off('change').on('change', function(e) { 97 last_field = $(this).data('field-id'); 98 search(); 99 }); 100 101 $s.off('change').on('change', function (e) { 102 last_field = 's'; 103 search(); 104 }); 105 106 $address.off('change').on('change', function (e) { 107 last_field = 'address'; 108 search(); 109 }); 110
111 $event_cost_min.off('change').on('change', function (e) { 112 last_field = 'cost-min'; 113 $event_cost_max.attr('min', $(this).val()); 114 search(); 115 }); 116 117 $event_cost_max.off('change').on('change', function (e) { 118 last_field = 'cost-max'; 119 $event_cost_min.attr('max', $(this).val()); 120 search(); 121 }); 122 123 // Timepicker 124 if ($time_start.length) { 125 var format = (($time_start.data('format') === 12) ? 'hh:mm p' : 'HH:mm'); 126 $time_start.timepicker( 127 { 128 timeFormat: format, 129 minTime: new Date(0, 0, 0, 0, 0, 0), 130 maxTime: new Date(0, 0, 0, 23, 55, 0), 131 interval: 5, 132 dropdown: false, 133 change: function () { 134 last_field = 'time-start'; 135 search(); 136 } 137 }); 138 139 $time_end.timepicker( 140 { 141 timeFormat: format, 142 minTime: new Date(0, 0, 0, 0, 0, 0), 143 maxTime: new Date(0, 0, 0, 23, 55, 0), 144 interval: 5, 145 dropdown: false, 146 change: function () { 147 last_field = 'time-end'; 148 search(); 149 } 150 }); 151 } 152 153 var $month = $("#mec_sf_month_" + settings.id); 154 var $year = $("#mec_sf_year_" + settings.id); 155 var $month_or_year = $("#mec_sf_month_" + settings.id + ', ' + "#mec_sf_year_" + settings.id); 156 157 $month_or_year.off('change').on('change', function (e) { 158 last_field = 'date-dropdown'; 159 160 var mec_month_val = $month.val(); 161 var mec_year_val = $year.val(); 162 163 if ((mec_month_val !== 'none' && mec_year_val !== 'none') || ((mec_month_val === 'none' && mec_year_val === 'none'))) search(); 164 }); 165 166 $date_end.off('change').on('change', function () { 167 last_field = 'date-end'; 168 search(); 169 }); 170 171 $event_type.off('change').on('change', function (e) { 172 last_field = 'event-type'; 173 search(); 174 }); 175 176 $event_type_2.off('change').on('change', function (e) { 177 last_field = 'event-type-2'; 178 search(); 179 }); 180 181 $attribute.off('change').on('change', function (e) { 182 last_field = 'attribute'; 183 search(); 184 }); 185 186 if ($event_status.length > 0) { 187 $event_status.off('change').on('change', function (e) { 188 last_field = 'event_status'; 189 search(); 190 }); 191 } 192 193 if (settings.fields && settings.fields.length > 0) { 194 for (var k in settings.fields) { 195 $("#mec_sf_" + settings.fields[k] + '_' + settings.id).off('change').on('change', function (e) { 196 search(); 197 }); 198 } 199 } 200 201 // Reset 202 if ($reset.length) { 203 $reset.off('click').on('click', function (e) { 204 reset(); 205 }); 206 } 207 208 function get_fields(){ 209 return [ 210 'state', 211 'city', 212 'region', 213 'region', 214 'street', 215 'postal_code', 216 ]; 217 } 218 219 function trigger() { 220 $("#mec_sf_category_" + settings.id).off('change').on('change', function (e) { 221 last_field = 'category'; 222 search(); 223 }); 224 225 $("#mec_sf_location_" + settings.id).off('change').on('change', function (e) { 226 last_field = 'location'; 227 search(); 228 }); 229 230 $("#mec_sf_organizer_" + settings.id).off('change').on('change', function (e) { 231 last_field = 'organizer'; 232 search(); 233 }); 234 235 $("#mec_sf_speaker_" + settings.id).off('change').on('change', function (e) { 236 last_field = 'speaker'; 237 search(); 238 }); 239 240 $("#mec_sf_tag_" + settings.id).off('change').on('change', function (e) { 241 last_field = 'tag'; 242 search(); 243 }); 244 245 $("#mec_sf_label_" + settings.id).off('change').on('change', function (e) { 246 last_field = 'label'; 247 search(); 248 }); 249 250 var fields = get_fields(); 251 $.each(fields, function(i, field) { 252 $("#mec_sf_"+ field +"_" + settings.id).off('change').on('change', function (e) { 253 last_field = field; 254 search(); 255 }); 256 }); 257 } 258 259 function search() { 260 var $category = $("#mec_sf_category_" + settings.id); 261 var $location = $("#mec_sf_location_" + settings.id); 262 var $organizer = $("#mec_sf_organizer_" + settings.id); 263 var $speaker = $("#mec_sf_speaker_" + settings.id); 264 var $tag = $("#mec_sf_tag_" + settings.id); 265 var $label = $("#mec_sf_label_" + settings.id); 266 267 var s = $s.length ? $s.val() : ''; 268 var address = $address.length ? $address.val() : ''; 269 var tag = $tag.length ? $tag.val() : '';
270 var month = $month.length ? $month.val() : ''; 271 var year = $year.length ? $year.val() : ''; 272 var event_type = $event_type.length ? $event_type.val() : ''; 273 var event_type_2 = $event_type_2.length ? $event_type_2.val() : ''; 274 var attribute = $attribute.length ? $attribute.val() : ''; 275 var event_status = $event_status.filter(':checked').length ? $event_status.filter(':checked').val() : 'all'; 276 277 if(month === null) month = ''; 278 279 var start = $date_start.length ? $date_start.val() : ''; 280 var end = $date_end.length ? $date_end.val() : ''; 281 282 var cost_min = $event_cost_min.length ? $event_cost_min.val() : ''; 283 var cost_max = $event_cost_max.length ? $event_cost_max.val() : ''; 284 285 var time_start = $time_start.length ? $time_start.val() : ''; 286 var time_end = $time_end.length ? $time_end.val() : ''; 287 288 var category; 289 if ($category.prop('tagName') && $category.prop('tagName').toLowerCase() === 'div') { 290 category = []; 291 $category.find($('select')).each(function () { 292 category.push( $(this).val() ); 293 }); 294 category = category.join(','); 295 } 296 else if ($category.prop('tagName') && $category.prop('tagName').toLowerCase() === 'ul') { 297 category = []; 298 $category.find($('input[type=checkbox]:checked')).each(function () { 299 category.push( $(this).val() ); 300 }); 301 category = category.join(','); 302 } 303 else category = $category.length ? $category.val() : ''; 304 305 var location; 306 if ($location.prop('tagName') && $location.prop('tagName').toLowerCase() === 'ul') { 307 location = []; 308 $location.find($('input[type=checkbox]:checked')).each(function () { 309 location.push( $(this).val() ); 310 }); 311 location = location.join(','); 312 } 313 else location = $location.length ? $location.val() : ''; 314 315 var organizer; 316 if ($organizer.prop('tagName') && $organizer.prop('tagName').toLowerCase() === 'ul') { 317 organizer = []; 318 $organizer.find($('input[type=checkbox]:checked')).each(function () { 319 organizer.push( $(this).val() ); 320 }); 321 organizer = organizer.join(','); 322 } 323 else organizer = $organizer.length ? $organizer.val() : ''; 324 325 var speaker; 326 if ($speaker.prop('tagName') && $speaker.prop('tagName').toLowerCase() === 'ul') { 327 speaker = []; 328 $speaker.find($('input[type=checkbox]:checked')).each(function () { 329 speaker.push( $(this).val() ); 330 }); 331 speaker = speaker.join(','); 332 } 333 else speaker = $speaker.length ? $speaker.val() : ''; 334 335 var label; 336 if ($label.prop('tagName') && $label.prop('tagName').toLowerCase() === 'ul') { 337 label = []; 338 $label.find($('input[type=checkbox]:checked')).each(function () { 339 label.push( $(this).val() ); 340 }); 341 label = label.join(','); 342 } 343 else label = $label.length ? $label.val() : ''; 344 345 if (year === 'none' && month === 'none') { 346 year = ''; 347 month = ''; 348 } 349 350 if(!year) year = ''; 351 352 var addation_attr = ''; 353 if (settings.fields && settings.fields.length > 0) { 354 for (var k in settings.fields) { 355 var field = '#mec_sf_' + settings.fields[k] + '_' + settings.id; 356 var val = $(field).length ? $(field).val() : ''; 357 358 addation_attr += '&sf[' + settings.fields[k] + ']=' + val; 359 } 360 } 361 362 // Search Parameters 363 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[event_status]=' + event_status + '&sf[attribute]=' + attribute + addation_attr; 364 365 // Event Fields 366 $custom_fields.each(function() 367 { 368 var custom_field_id = $(this).data('field-id'); 369 var custom_request_key = $(this).data('request-key'); 370 var custom_field_value = $(this).val(); 371 372 if(custom_request_key) sf += '&sf[fields]['+ custom_field_id +']['+custom_request_key+']=' + custom_field_value; 373 else sf += '&sf[fields]['+ custom_field_id +']=' + custom_field_value; 374 }); 375 376 var fields = get_fields(); 377 $.each(fields, function(i, field) 378 { 379 if($("#mec_sf_"+ field +"_" + settings.id).length) 380 { 381 v = $("#mec_sf_"+ field +"_" + settings.id).val();
382 sf += '&sf['+ field +']=' + v; 383 } 384 }); 385 386 // Refine Parameters 387 if(settings.refine) refine(sf); 388 389 // Attributes 390 var atts = settings.atts + '&' + sf; 391 392 // Search 393 if(typeof mec_search_callbacks[settings.id] !== 'undefined') 394 { 395 for(const cb of mec_search_callbacks[settings.id]) cb(atts); 396 } 397 } 398 399 function reset() { 400 var $category = $("#mec_sf_category_" + settings.id); 401 var $location = $("#mec_sf_location_" + settings.id); 402 var $organizer = $("#mec_sf_organizer_" + settings.id); 403 var $speaker = $("#mec_sf_speaker_" + settings.id); 404 var $tag = $("#mec_sf_tag_" + settings.id); 405 var $label = $("#mec_sf_label_" + settings.id); 406 407 if ($category.length && $category.prop('tagName') && $category.prop('tagName').toLowerCase() === 'div') { 408 $category.find('select').each(function () { 409 $(this).val(null).trigger('change'); 410 }); 411 $category.find('select').select2(); 412 } 413 else if ($category.length && $category.prop('tagName') && $category.prop('tagName').toLowerCase() === 'ul') { 414 $category.find($('input[type=checkbox]:checked')).each(function () { 415 $(this).prop('checked', false); 416 }); 417 } 418 else if ($category.length) $category.val(null); 419 420 if ($location.length && $location.prop('tagName') && $location.prop('tagName').toLowerCase() === 'ul') { 421 $location.find($('input[type=checkbox]:checked')).each(function () { 422 $(this).prop('checked', false); 423 }); 424 } 425 else if ($location.length) $location.val(null); 426 427 if ($organizer.length && $organizer.prop('tagName') && $organizer.prop('tagName').toLowerCase() === 'ul') { 428 $organizer.find($('input[type=checkbox]:checked')).each(function () { 429 $(this).prop('checked', false); 430 }); 431 } 432 else if ($organizer.length) $organizer.val(null); 433 434 if ($speaker.length && $speaker.prop('tagName') && $speaker.prop('tagName').toLowerCase() === 'ul') { 435 $speaker.find($('input[type=checkbox]:checked')).each(function () { 436 $(this).prop('checked', false); 437 }); 438 } 439 else if ($speaker.length) $speaker.val(null); 440 441 if ($label.length && $label.prop('tagName') && $label.prop('tagName').toLowerCase() === 'ul') { 442 $label.find($('input[type=checkbox]:checked')).each(function () { 443 $(this).prop('checked', false); 444 }); 445 } 446 else if ($label.length) $label.val(null); 447 448 if ($tag.length) $tag.val(null); 449 if ($s.length) $s.val(null); 450 if ($address.length) $address.val(null); 451 if ($month.length) $month.val(null); 452 if ($year.length) $year.val(null); 453 if ($event_cost_min.length) $event_cost_min.val(null); 454 if ($event_cost_max.length) $event_cost_max.val(null); 455 if ($date_start.length) $date_start.val(null); 456 if ($date_end.length) $date_end.val(null); 457 if ($time_start.length) $time_start.val(null); 458 if ($time_end.length) $time_end.val(null); 459 if ($event_status.length) 460 { 461 $event_status.prop('checked', false); 462 $event_status.filter('[value="all"]').prop('checked', true); 463 } 464 465 var fields = get_fields(); 466 $.each(fields,function(i,field) 467 { 468 if($("#mec_sf_"+ field +"_" + settings.id).length) 469 { 470 $("#mec_sf_"+ field +"_" + settings.id).val(null); 471 if($("#mec_sf_"+ field +"_" + settings.id).is('select') && jQuery().niceSelect) 472 { 473 jQuery("#mec_sf_"+ field +"_" + settings.id).niceSelect('update'); 474 } 475 } 476 }); 477 478 if(jQuery().niceSelect){ 479 480 jQuery('.mec-fluent-wrap').find('.mec-filter-content').find('select:not([multiple])').niceSelect('update'); 481 } 482 483 // Search Again 484 setTimeout(function () { 485 search(); 486 }, 200); 487 } 488 489 function refine(sf) { 490 var $category = $("#mec_sf_category_" + settings.id); 491 var $location = $("#mec_sf_location_" + settings.id); 492 var $organizer = $("#mec_sf_organizer_" + settings.id); 493 var $speaker = $("#mec_sf_speaker_" + settings.id); 494 var $tag = $("#mec_sf_tag_" + settings.id); 495 var $label = $("#mec_sf_label_" + settings.id); 496 497 var category_type; 498 if ($category.length && $category.prop('tagName') && $category.prop('tagName').toLowerCase() === 'div') category_type = 'checkboxes'; 499 else if ($category.length && $category.prop('tagName') && $category.prop('tagName').toLowerCase() === 'ul') category_type = 'simple-checkboxes'; 500 else if ($category.length) category_type = 'dropdown'; 501 502 var location_type; 503 if ($location.length && $location.prop('tagName') && $location.prop('tagName').toLowerCase() === 'ul') location_type = 'simple-checkboxes'; 504 else if ($location.length) location_type = 'dropdown'; 505 506 var organizer_type; 507 if ($organizer.length && $organizer.prop('tagName') && $organizer.prop('tagName').toLowerCase() === 'ul') organizer_type = 'simple-checkboxes'; 508 else if ($organizer.length) organizer_type = 'dropdown'; 509 510 var speaker_type; 511 if ($speaker.length && $speaker.prop('tagName') && $speaker.prop('tagName').toLowerCase() === 'ul') speaker_type = 'simple-checkboxes'; 512 else if ($organizer.length) speaker_type = 'dropdown'; 513 514 var label_type; 515 if ($label.length && $label.prop('tagName') && $label.prop('tagName').toLowerCase() === 'ul') label_type = 'simple-checkboxes'; 516 else if ($label.length) label_type = 'dropdown'; 517 518 $.ajax( 519 { 520 url: settings.ajax_url, 521 data: "action=mec_refine_search_items&mec_start_date=" + settings.start_date + "&" + sf + '&last_field=' + last_field + '&category_type=' + category_type + '&location_type=' + location_type + '&organizer_type=' + organizer_type + '&speaker_type=' + speaker_type + '&label_type=' + label_type + '&id=' + settings.id, 522 dataType: "json", 523 type: "post", 524 success: function (response) { 525 // Categories 526 if (typeof response.categories !== 'undefined' && response.categories !== '') { 527 // Multi Select 528 if ($category.length && category_type === 'checkboxes') { 529 $category.html(response.categories); 530 } 531 // Checkboxes 532 else if ($category.length && category_type === 'simple-checkboxes') { 533 $category.html(response.categories); 534 } 535 // Dropdown 536 else if ($category.length) { 537 $category.replaceWith(response.categories); 538 } 539 540 // Categories Search bar 541 if ( jQuery(".mec-searchbar-category-wrap select").length > 0 && jQuery().niceSelect) jQuery(".mec-searchbar-category-wrap select").niceSelect(); 542 } 543 544 // Locations 545 if (typeof response.locations !== 'undefined' && response.locations !== '') { 546 // Checkboxes 547 if ($location.length && location_type === 'simple-checkboxes') { 548 $location.html(response.locations); 549 } 550 // Dropdown 551 else if ($location.length) { 552 $location.replaceWith(response.locations); 553 } 554 } 555 556 // Organizers 557 if (typeof response.organizers !== 'undefined' && response.organizers !== '') { 558 // Checkboxes 559 if ($organizer.length && organizer_type === 'simple-checkboxes') { 560 $organizer.html(response.organizers); 561 } 562 // Dropdown 563 else if ($organizer.length) { 564 $organizer.replaceWith(response.organizers); 565 } 566 } 567 568 // Speakers 569 if (typeof response.speakers !== 'undefined' && response.speakers !== '') { 570 // Checkboxes 571 if ($speaker.length && speaker_type === 'simple-checkboxes') { 572 $speaker.html(response.speakers); 573 } 574 // Dropdown 575 else if ($speaker.length) { 576 $speaker.replaceWith(response.speakers); 577 } 578 } 579 580 // Labels 581 if (typeof response.labels !== 'undefined' && response.labels !== '') { 582 // Checkboxes 583 if ($label.length && label_type === 'simple-checkboxes') { 584 $label.html(response.labels); 585 } 586 // Dropdown 587 else if ($label.length) { 588 $label.replaceWith(response.labels); 589 } 590 } 591 592 // Tags 593 if (typeof response.tags !== 'undefined' && response.tags !== '') { 594 $tag.replaceWith(response.tags); 595 } 596 597 // Trigger 598 trigger(); 599 }, 600 error: function () { } 601 }); 602 } 603 }; 604}(jQuery)); 605 606jQuery(document).ready(function ($) { 607 // Select2 608 if ( jQuery(".mec-fes-form-cntt #mec-location select").length > 0 ) jQuery(".mec-fes-form-cntt #mec-location select").select2(); 609 if ( jQuery(".mec-fes-form-cntt #mec-organizer select").length > 0 ) jQuery(".mec-fes-form-cntt #mec-organizer select").select2(); 610 // Location select2 611 if ( jQuery("#mec_location_id").length > 0 ) jQuery("#mec_location_id").select2(); 612 // Organizer Select2 613 if ( jQuery("#mec_organizer_id").length > 0 ) jQuery("#mec_organizer_id").select2(); 614 // Categories Search bar 615 if ( jQuery(".mec-searchbar-category-wrap select").length > 0 ) jQuery(".mec-searchbar-category-wrap select").select2(); 616 617 jQuery(".mec-search-form.mec-totalcal-box").find(".mec-search-reset-button").parents().eq(2).addClass("mec-there-reset-button"); 618 619 jQuery(".mec-search-form.mec-totalcal-box").find(".mec-minmax-event-cost").parent().find(".mec-text-address-search").addClass("with-mec-cost"); 620 jQuery(".mec-search-form.mec-totalcal-box").find(".mec-text-address-search").parent().find(".mec-minmax-event-cost").addClass("with-mec-address"); 621 622 /** New Searchbar JS */
623 jQuery(".mec-full-calendar-search-ends").find(".mec-text-input-search").parent().find(".mec-tab-loader").removeClass("col-md-12").addClass("col-md-6"); 624 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"); 625 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"); 626 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"); 627 jQuery(".mec-search-form.mec-totalcal-box").find(".mec-date-search").parent().find(".mec-time-picker-search").addClass("with-mec-date-search"); 628 jQuery(".mec-search-form.mec-totalcal-box").find(".mec-time-picker-search").parent().find(".mec-date-search").addClass("with-mec-time-picker"); 629 630 jQuery('#mec-gCalendar-wrap .openMonthFilter').on('click', function(e){ 631 jQuery(this).toggleClass('open'); 632 }); 633 634 jQuery('body').on('click', function(e){ 635 jQuery('#mec-gCalendar-wrap .openMonthFilter').removeClass('open'); 636 }); 637 638 mec_init_number_spinner(); 639}); 640 641function mec_init_number_spinner() 642{ 643 /* buttons functions */ 644 jQuery('.mec-booking .mec-event-tickets-list .mec-ticket-style-row div a').off('click').on('click', function() 645 { 646 var $input = jQuery(this).parents('.mec-ticket-style-row div').find(jQuery('input.in-num')); 647 648 var count = parseFloat($input.val()); 649 if(jQuery(this).hasClass('minus')) 650 { 651 count = count - 1; 652 count = count < 1 ? 0 : count; 653 if (count < 1) { 654 jQuery(this).addClass('dis'); 655 } 656 else { 657 jQuery(this).removeClass('dis'); 658 } 659 $input.val(count); 660 } 661 else { 662 count = count + 1; 663 $input.val(count); 664 if (count > 1) { 665 jQuery(this).parents('.mec-ticket-style-row div').find(('.minus')).removeClass('dis'); 666 } 667 } 668 669 $input.change(); 670 return false; 671 }); 672} 673 674jQuery(window).on('load', function() 675{ 676 jQuery(".single-mec-events").find(".mejs-controls button").addClass("mejs") 677}); 678 679// MEC FULL CALENDAR PLUGIN 680(function ($) { 681 $.fn.mecFullCalendar = function (options) { 682 // Default Options 683 var settings = $.extend({ 684 // These are the defaults. 685 id: 0, 686 atts: '', 687 ajax_url: '', 688 sf: {}, 689 skin: '', 690 }, options); 691 692 // Set onclick Listeners 693 setListeners(); 694 695 $(document).trigger('mec_full_calendar_before_init', $("#mec_full_calendar_container_" + settings.id)); 696 697 mecFluentCurrentTimePosition(); 698 mecFluentCustomScrollbar(); 699 700 var sf; 701 702 function setListeners() { 703 // Search Widget 704 if ( settings.sf.container !== '' && false == $(settings.sf.container).hasClass('mec-skin-search-init') ) { 705 sf = $(settings.sf.container).mecSearchForm({ 706 id: settings.id, 707 refine: settings.sf.refine, 708 ajax_url: settings.ajax_url, 709 start_date: settings.start_date, 710 atts: settings.atts, 711 callback: function (atts) { 712 settings.atts = atts; 713 if( false == $("#mec_skin_" + settings.id).hasClass('mec-fluent-wrap') && false == $("#mec_skin_" + settings.id).hasClass('mec-liquid-wrap') ){ 714 715 search(); 716 } 717 } 718 }); 719 720 $(settings.sf.container).addClass('mec-skin-search-init'); 721 } 722 723 $('.mec-subscribe-to-calendar-btn').off('click').on('click', function() { 724 $(this).parent().find('>.mec-subscribe-to-calendar-items').toggle(); 725 }); 726 727 // Add the onclick event 728 $("#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) { 729 e.preventDefault(); 730 var skin = $(this).data('skin'); 731 var mec_month_select = $('#mec_sf_month_' + settings.id); 732 var mec_year_select = $('#mec_sf_year_' + settings.id); 733 734 if (mec_year_select.val() == 'none') { 735 mec_year_select.find('option').each(function () { 736 var option_val = $(this).val(); 737 if (option_val == mecdata.current_year) mec_year_select.val(option_val); 738 }); 739 } 740 741 if (mec_month_select.val() == 'none') { 742 mec_month_select.find('option').each(function () { 743 var option_val = $(this).val(); 744 if (option_val == mecdata.current_month) mec_month_select.val(option_val); 745 }); 746 } 747 748 if (skin == 'list' || skin == 'grid' || skin == 'agenda') { 749 var mec_filter_none = '<option class="mec-none-item" value="none">' + $('#mec-filter-none').val() + '</option>'; 750 if (mec_month_select.find('.mec-none-item').length == 0) mec_month_select.prepe
750nd(mec_filter_none); 751 if (mec_year_select.find('.mec-none-item').length == 0) mec_year_select.prepend(mec_filter_none); 752 } 753 else { 754 if (mec_month_select.find('.mec-none-item').length != 0) mec_month_select.find('.mec-none-item').remove(); 755 if (mec_year_select.find('.mec-none-item').length != 0) mec_year_select.find('.mec-none-item').remove(); 756 } 757 758 $("#mec_skin_" + settings.id + " .mec-totalcal-box .mec-totalcal-view span").removeClass('mec-totalcalview-selected') 759 $(this).addClass('mec-totalcalview-selected'); 760 if ($(this).closest('.mec-fluent-more-views-content').length > 0) { 761 $('.mec-fluent-more-views-icon').addClass('active'); 762 $('.mec-fluent-more-views-content').removeClass('active'); 763 } else { 764 $('.mec-fluent-more-views-icon').removeClass('active'); 765 } 766 767 loadSkin(skin); 768 }); 769 } 770 771 function loadSkin(skin) { 772 // Set new Skin 773 settings.skin = skin; 774 775 // Add Loading Class 776 if(jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 777 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 778 779 var $month_picker = $("#mec_sf_month_" + settings.id); 780 var $year_picker = $("#mec_sf_year_" + settings.id); 781 782 // Add Month & Year 783 if(settings.atts.indexOf('sf[month]') <= -1 && $month_picker.length && $year_picker.length) 784 { 785 settings.atts += '&sf[month]='+$month_picker.val()+'&sf[year]='+$year_picker.val(); 786 } 787 788 $.ajax({
789 url: settings.ajax_url, 790 data: "action=mec_full_calendar_switch_skin&skin=" + skin + "&" + settings.atts + "&apply_sf_date=1&sed=" + settings.sed_method, 791 type: "post", 792 success: function (response) { 793 794 jQuery(document).trigger( 'mec_before_load_skin_success', [$("#mec_full_calendar_container_" + settings.id), settings.id] ); 795 796 $("#mec_full_calendar_container_" + settings.id).html(response); 797 798 // Remove loader 799 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 800 801 // Focus First Active Day 802 mecFocusDay(settings); 803 804 mecFluentCurrentTimePosition(); 805 mecFluentCustomScrollbar(); 806 807 jQuery(document).trigger( 'mec_load_skin_success', $("#mec_full_calendar_container_" + settings.id) ); 808 }, 809 error: function () { } 810 }); 811 } 812 813 function search() { 814 // Add Loading Class 815 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 816 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 817 818 $.ajax({
819 url: settings.ajax_url, 820 data: "action=mec_full_calendar_switch_skin&skin=" + settings.skin + "&" + settings.atts + "&apply_sf_date=1", 821 type: "post", 822 success: function (response) 823 { 824 $("#mec_full_calendar_container_" + settings.id).html(response); 825 826 // Remove loader 827 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 828 829 // Focus First Active Day 830 mecFocusDay(settings); 831 832 // Focus First Active Week 833 mec_focus_week(settings.id); 834 835 mecFluentCurrentTimePosition(); 836 mecFluentCustomScrollbar(); 837 838 jQuery(document).trigger( 'mec_search_success', $("#mec_full_calendar_container_" + settings.id) ); 839 }, 840 error: function () { } 841 }); 842 } 843 }; 844 845}(jQuery)); 846 847// MEC YEARLY VIEW PLUGIN 848(function ($) { 849 $.fn.mecYearlyView = function (options) { 850 var active_year; 851 852 // Default Options 853 var settings = $.extend({ 854 // These are the defaults. 855 today: null, 856 id: 0, 857 events_label: 'Events', 858 event_label: 'Event', 859 year_navigator: 0, 860 atts: '', 861 next_year: {}, 862 sf: {}, 863 ajax_url: '', 864 }, options); 865 866 mecFluentYearlyUI(settings.id, settings.year_id); 867 868 // Initialize Year Navigator 869 if (settings.year_navigator) initYearNavigator(); 870 871 // Set onclick Listeners 872 setListeners(); 873 874 // load more 875 $(document).on("click", "#mec_skin_events_" + settings.id + " .mec-load-more-button", function () { 876 var year = $(this).parent().parent().parent().data('year-id'); 877 loadMoreButton(year); 878 }); 879 880 // Search Widget 881 if ( settings.sf.container !== '' ) { 882 sf = $(settings.sf.container).mecSearchForm({ 883 id: settings.id, 884 refine: settings.sf.refine, 885 ajax_url: settings.ajax_url, 886 start_date: settings.start_date, 887 atts: settings.atts, 888 callback: function (atts) { 889 settings.atts = atts; 890 active_year = $('.mec-yearly-view-wrap .mec-year-navigator').filter(function () { 891 return $(this).css('display') == "block"; 892 }); 893 active_year = parseInt(active_year.find('h2').text()); 894 search(active_year); 895 } 896 }); 897 898 $(settings.sf.container).addClass('mec-skin-search-init'); 899 } 900 901 function initYearNavigator() { 902 // Add onclick event 903 $("#mec_skin_" + settings.id + " .mec-load-year").off("click").on("click", function () { 904 var year = $(this).data("mec-year"); 905 setYear(year); 906 }); 907 } 908 909 function search(year) { 910 // Add Loading Class 911 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 912 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 913 914 $.ajax({
915 url: settings.ajax_url, 916 data: "action=mec_yearly_view_load_year&mec_year=" + year + "&" + settings.atts + "&apply_sf_date=1", 917 dataType: "json", 918 type: "post", 919 success: function (response) { 920 active_year = response.current_year.year; 921 922 // Append Year 923 $("#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>'); 924 925 // Append Year Navigator 926 $("#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>'); 927 928 // Re-initialize Year Navigator 929 initYearNavigator(); 930 931 // Set onclick Listeners 932 setListeners(); 933 934 // Toggle Year 935 toggleYear(response.current_year.id); 936 937 // Remove loading Class 938 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 939 940 mecFluentYearlyUI(settings.id, active_year); 941 mecFluentCustomScrollbar(); 942 943 $(document).trigger('mec_search_init',['yearly_view',settings,response]); 944 945 }, 946 error: function () { } 947 }); 948 } 949 950 function setYear(year, do_in_background) { 951 if (typeof do_in_background === "undefined") do_in_background = false; 952 953 var year_id = year; 954 active_year = year; 955 956 // Year exists so we just show it 957 if ($("#mec_yearly_view_year_" + settings.id + "_" + year_id).length) { 958 // Toggle Year 959 toggleYear(year_id); 960 mecFluentCustomScrollbar(); 961 } else { 962 if (!do_in_background) { 963 // Add Loading Class 964 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 965 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 966 } 967 968 $.ajax({
969 url: settings.ajax_url, 970 data: "action=mec_yearly_view_load_year&mec_year=" + year + "&" + settings.atts + "&apply_sf_date=0", 971 dataType: "json", 972 type: "post", 973 success: function (response) { 974 // Append Year 975 $("#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>'); 976 977 // Append Year Navigator 978 $("#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>'); 979 980 // Re-initialize Year Navigator 981 initYearNavigator(); 982 983 // Set onclick Listeners 984 setListeners(); 985 986 if (!do_in_background) { 987 // Toggle Year 988 toggleYear(response.current_year.id); 989 990 // Remove loading Class 991 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 992 993 // Set Year Filter values in search widget 994 $("#mec_sf_year_" + settings.id).val(year); 995 } else { 996 $("#mec_yearly_view_year_" + settings.id + "_" + response.current_year.id).hide(); 997 $("#mec_year_navigator_" + settings.id + "_" + response.current_year.id).hide(); 998 } 999 mecFluentYearlyUI(settings.id, year); 1000 if (!do_in_background) { 1001 mecFluentCustomScrollbar(); 1002 } 1003 }, 1004 error: function () { } 1005 }); 1006 } 1007 } 1008 1009 function toggleYear(year_id) { 1010 // Toggle Year Navigator 1011 $("#mec_skin_" + settings.id + " .mec-year-navigator").hide(); 1012 $("#mec_year_navigator_" + settings.id + "_" + year_id).show(); 1013 1014 // Toggle Year 1015 $("#mec_skin_" + settings.id + " .mec-year-container").hide(); 1016 $("#mec_yearly_view_year_" + settings.id + "_" + year_id).show(); 1017 } 1018 1019 var sf; 1020 1021 function setListeners() { 1022 // Single Event Method 1023 if (settings.sed_method != '0') { 1024 sed(); 1025 } 1026 1027 $('.mec-subscribe-to-calendar-btn').off('click').on('click', function() { 1028 $(this).parent().find('>.mec-subscribe-to-calendar-items').toggle(); 1029 }); 1030 1031 // Yearly view 1032 $("#mec_skin_" + settings.id + " .mec-has-event a").on('click', function (e) { 1033 e.preventDefault(); 1034 1035 var des = $(this).attr('href'); 1036 var visible = $(des).is(':visible'); 1037 if (!visible) { 1038 var year = $(des).parents('.mec-year-container').data('year-id'); 1039 if (year) { 1040 1041 while (!visible) { 1042 loadMoreButton(year); 1043 1044 visible = $(des).is(':visible'); 1045 } 1046 } 1047 } 1048 1049 $('.mec-events-agenda').removeClass('mec-selected'); 1050 $(des).closest('.mec-events-agenda').addClass('mec-selected'); 1051 1052 var scrollTopVal = $(des).closest('.mec-events-agenda').offset().top - 35; 1053 if ($(this).closest('.mec-fluent-wrap').length > 0) { 1054 var parent = jQuery(this).closest('.mec-fluent-wrap').find('.mec-yearly-agenda-sec'); 1055 scrollTopVal = parent.scrollTop() + ($(des).closest('.mec-events-agenda').offset().top - parent.offset().top); 1056 jQuery(this).closest('.mec-fluent-wrap').find('.mec-yearly-agenda-sec').getNiceScroll(0).doScrollTop(scrollTopVal - 15, 120); 1057 } 1058 else { 1059 $('html, body').animate({ 1060 scrollTop: scrollTopVal 1061 }, 300); 1062 } 1063 }); 1064 } 1065 1066 function sed() { 1067 // Single Event Display 1068 $("#mec_skin_" + settings.id + " .mec-agenda-event-title a").off('click').on('click', function (e) { 1069 var sed_method = $(this).attr('target'); 1070 if ('_blank' === sed_method) { 1071 1072 return; 1073 } 1074 e.preventDefault(); 1075 var href = $(this).attr('href'); 1076 1077 var id = $(this).data('event-id'); 1078 var occurrence = get_parameter_by_name('occurrence', href); 1079 var time = get_parameter_by_name('time', href); 1080 1081 if( 'undefined' == typeof id ){ 1082 return; 1083 } 1084 1085 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 1086 }); 1087 } 1088 1089 function loadMoreButton(year) { 1090 var $max_count, $current_count = 0; 1091 $max_count = $("#mec_yearly_view_year_" + settings.id + "_" + year + " .mec-yearly-max").data('count'); 1092 $current_count = $("#mec_yearly_view_year_" + settings.id + "_" + year + " .mec-util-hidden").length; 1093 1094 if ($current_count > 10) { 1095 for (var i = 0; i < 10; i++) { 1096 $("#mec_yearly_view_year_" + settings.id + "_" + year + " .mec-util-hidden").slice(0, 2).each(function () { 1097 $(this).removeClass('mec-util-hidden'); 1098 }); 1099 } 1100 } 1101 1102 if ($current_count < 10 && $current_count != 0) { 1103 for (var j = 0; j < $current_count; j++) { 1104 $("#mec_yearly_view_year_" + settings.id + "_" + year + " .mec-util-hidden").slice(0, 2).each(function () { 1105 $(this).removeClass('mec-util-hidden'); 1106 $("#mec_yearly_view_year_" + settings.id + "_" + year + " .mec-load-more-wrap").css('display', 'none'); 1107 }); 1108 } 1109 } 1110 } 1111 }; 1112 1113}(jQuery)); 1114 1115 1116// MEC GENERAL CALENDAR VIEW PLUGIN 1117(function ($) { 1118 $.fn.mecGeneralCalendarView = function (options) { 1119 // Default Options 1120 var settings = $.extend({ 1121 // These are the defaults. 1122 id: 0, 1123 atts: '', 1124 ajax_url: '', 1125 sf: {}, 1126 }, options); 1127 1128 // Set onclick Listeners 1129 setListeners(); 1130 1131 function setListeners() { 1132 // Single Event Method 1133 if (settings.sed_method != '0') { 1134 sed(); 1135 } 1136 } 1137 function sed() { 1138 // Single Event Display
1139 $("#mec_skin_" + settings.id + " .fc-daygrid-event").off('click').on('click', function (e) { 1140 e.preventDefault(); 1141 var sed_method = $(this).attr('target'); 1142 if ('_blank' === sed_method || '_self' === sed_method || 'no' === sed_method) { 1143 1144 return; 1145 } 1146 e.preventDefault(); 1147 var href = $(this).attr('href'); 1148 1149 var id = $(this).data('event-id'); 1150 var occurrence = get_parameter_by_name('occurrence', href); 1151 var time = get_parameter_by_name('time', href); 1152 1153 if( 'undefined' == typeof id ){ 1154 return; 1155 } 1156 1157 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 1158 }); 1159 } 1160 }; 1161 1162}(jQuery)); 1163 1164// MEC MONTHLY VIEW PLUGIN 1165(function ($) { 1166 $.fn.mecMonthlyView = function (options) { 1167 var active_month; 1168 var active_year; 1169 1170 // Default Options 1171 var settings = $.extend({ 1172 // These are the defaults. 1173 today: null, 1174 id: 0, 1175 events_label: 'Events', 1176 event_label: 'Event', 1177 month_navigator: 0, 1178 atts: '', 1179 active_month: {}, 1180 next_month: {}, 1181 sf: {}, 1182 ajax_url: '', 1183 }, options); 1184 1185 // Initialize Month Navigator 1186 if (settings.month_navigator) initMonthNavigator(); 1187 1188 active_month = settings.active_month.month; 1189 active_year = settings.active_month.year; 1190 1191 // Set onclick Listeners 1192 setListeners(); 1193 1194 // Search Widget 1195 if ( settings.sf.container !== '' ) { 1196 sf = $(settings.sf.container).mecSearchForm({ 1197 id: settings.id, 1198 refine: settings.sf.refine, 1199 ajax_url: settings.ajax_url, 1200 start_date: settings.start_date, 1201 atts: settings.atts, 1202 callback: function (atts) { 1203 settings.atts = atts; 1204 search(active_year, active_month); 1205 } 1206 }); 1207 1208 $(settings.sf.container).addClass('mec-skin-search-init'); 1209 } 1210 1211 function initMonthNavigator() { 1212 // Remove the onclick event 1213 $("#mec_skin_" + settings.id + " .mec-load-month").off("click"); 1214 1215 // Add onclick event 1216 $("#mec_skin_" + settings.id + " .mec-load-month").on("click", function () { 1217 var year = $(this).data("mec-year"); 1218 var month = $(this).data("mec-month"); 1219 1220 setMonth(year, month, false, true); 1221 }); 1222 } 1223 1224 function search(year, month) 1225 { 1226 // Modal 1227 var $modal = jQuery('.mec-modal-result'); 1228 1229 // Add Loading Class 1230 if($modal.length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 1231 $modal.addClass('mec-month-navigator-loading'); 1232 1233 $.ajax( 1234 { 1235 url: settings.ajax_url, 1236 data: "action=mec_monthly_view_load_month&mec_year=" + year + "&mec_month=" + month + "&" + settings.atts + "&apply_sf_date=1", 1237 dataType: "json", 1238 type: "post", 1239 success: function (response) 1240 { 1241 // Append Month 1242 $("#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>'); 1243 1244 // Append Month Navigator 1245 $("#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>'); 1246 1247 // Append Events Side 1248 $("#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>'); 1249 1250 // Re-initialize Month Navigator 1251 initMonthNavigator(); 1252 1253 // Set onclick Listeners 1254 setListeners(); 1255 1256 // Toggle Month 1257 toggleMonth(response.current_month.id); 1258 1259 jQuery(document).trigger('load_calendar_data'); 1260 1261 // Remove loading Class 1262 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 1263 1264 $(document).trigger('mec_search_init',['monthly_view',settings,response]); 1265 1266 }, 1267 error: function () { } 1268 }); 1269 } 1270 1271 function setMonth(year, month, do_in_background, navigator_click) { 1272 if (typeof do_in_background === "undefined") do_in_background = false; 1273 navigator_click = navigator_click || false;
1274 var month_id = year + "" + month; 1275 1276 if (!do_in_background) { 1277 active_month = month; 1278 active_year = year; 1279 } 1280 1281 // Month exists so we just show it 1282 if ($("#mec_monthly_view_month_" + settings.id + "_" + month_id).length) 1283 { 1284 // Set Month Filter values in search widget 1285 $("#mec_sf_month_" + settings.id).val(month); 1286 $("#mec_sf_year_" + settings.id).val(year); 1287 1288 // Toggle Month 1289 toggleMonth(month_id); 1290 } else { 1291 if (!do_in_background) { 1292 1293 // Add Loading Class 1294 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 1295 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 1296 } 1297 1298 $.ajax({ 1299 url: settings.ajax_url, 1300 data: "action=mec_monthly_view_load_month&mec_year=" + year + "&mec_month=" + month + "&" + settings.atts + "&apply_sf_date=0" + "&navigator_click=" + navigator_click, 1301 dataType: "json", 1302 type: "post", 1303 success: function (response) { 1304 // Append Month 1305 $("#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>'); 1306 1307 // Append Month Navigator 1308 $("#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>'); 1309 1310 // Append Events Side 1311 $("#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>'); 1312 1313 // Re-initialize Month Navigator 1314 initMonthNavigator(); 1315 1316 // Set onclick Listeners 1317 setListeners(); 1318 1319 if (!do_in_background) { 1320 // Toggle Month 1321 toggleMonth(response.current_month.id); 1322 1323 // Remove loading Class 1324 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 1325 1326 // Set Month Filter values in search widget 1327 $("#mec_sf_month_" + settings.id).val(month); 1328 $("#mec_sf_year_" + settings.id).val(year); 1329 } else { 1330 $("#mec_monthly_view_month_" + settings.id + "_" + response.current_month.id).hide(); 1331 $("#mec_month_navigator_" + settings.id + "_" + response.current_month.id).hide(); 1332 $("#mec_month_side_" + settings.id + "_" + response.current_month.id).hide(); 1333 } 1334 if (typeof custom_month !== undefined) var custom_month; 1335 if (typeof custom_month != undefined) { 1336 if (custom_month == 'true') { 1337 $(".mec-month-container .mec-calendar-day").removeClass('mec-has-event'); 1338 $(".mec-month-container .mec-calendar-day").removeClass('mec-selected-day'); 1339 $('.mec-calendar-day').unbind('click'); 1340 } 1341 } 1342 1343 jQuery(document).trigger('load_calendar_data'); 1344 1345 }, 1346 error: function () { } 1347 }); 1348 } 1349 } 1350 1351 function toggleMonth(month_id) {
1352 var active_month = $("#mec_skin_" + settings.id + " .mec-month-container-selected").data("month-id"); 1353 var active_day = $("#mec_monthly_view_month_" + settings.id + "_" + active_month + " .mec-selected-day").data("day"); 1354 1355 if (active_day <= 9) active_day = "0" + active_day; 1356 1357 // Toggle Month Navigator 1358 $("#mec_skin_" + settings.id + " .mec-month-navigator").hide(); 1359 $("#mec_month_navigator_" + settings.id + "_" + month_id).show(); 1360 1361 // Toggle Month 1362 $("#mec_skin_" + settings.id + " .mec-month-container").hide(); 1363 $("#mec_monthly_view_month_" + settings.id + "_" + month_id).show(); 1364 1365 // Add selected class 1366 $("#mec_skin_" + settings.id + " .mec-month-container").removeClass("mec-month-container-selected"); 1367 $("#mec_monthly_view_month_" + settings.id + "_" + month_id).addClass("mec-month-container-selected"); 1368 1369 // Toggle Events Side 1370 $("#mec_skin_" + settings.id + " .mec-month-side").hide(); 1371 $("#mec_month_side_" + settings.id + "_" + month_id).show(); 1372 1373 jQuery(document).trigger('mec_toggle_month', [settings, month_id]); 1374 } 1375 1376 var sf; 1377 1378 function setListeners() { 1379 // Remove the onclick event 1380 $("#mec_skin_" + settings.id + " .mec-has-event").off("click"); 1381 1382 // Add the onclick event 1383 $("#mec_skin_" + settings.id + " .mec-has-event").on('click', function (e) { 1384 // define variables 1385 var $this = $(this), 1386 data_mec_cell = $this.data('mec-cell'), 1387 month_id = $this.data('month'); 1388 1389 if (settings.display_all == 0) { 1390 e.preventDefault(); 1391 1392 $("#mec_monthly_view_month_" + settings.id + "_" + month_id + " .mec-calendar-day").removeClass('mec-selected-day'); 1393 $this.addClass('mec-selected-day'); 1394 1395 $('#mec_month_side_' + settings.id + '_' + month_id + ' .mec-calendar-events-sec:not([data-mec-cell=' + data_mec_cell + '])').slideUp(); 1396 $('#mec_month_side_' + settings.id + '_' + month_id + ' .mec-calendar-events-sec[data-mec-cell=' + data_mec_cell + ']').slideDown(); 1397 1398 $('#mec_monthly_view_month_' + settings.id + '_' + month_id + ' .mec-calendar-events-sec:not([data-mec-cell=' + data_mec_cell + '])').slideUp(); 1399 $('#mec_monthly_view_month_' + settings.id + '_' + month_id + ' .mec-calendar-events-sec[data-mec-cell=' + data_mec_cell + ']').slideDown(); 1400 } 1401 else { 1402 $("#mec_monthly_view_month_" + settings.id + "_" + month_id + " .mec-calendar-day").removeClass('mec-selected-day'); 1403 $this.addClass('mec-selected-day'); 1404 } 1405 }); 1406 1407 $('.mec-subscribe-to-calendar-btn').off('click').on('click', function() { 1408 $(this).parent().find('>.mec-subscribe-to-calendar-items').toggle(); 1409 }); 1410 1411 mec_tooltip(); 1412 1413 // Single Event Method 1414 if (settings.sed_method != '0') { 1415 sed(); 1416 } 1417 1418 if (settings.style == 'novel') { 1419 if ($('.mec-single-event-novel').length > 0) { 1420 $('.mec-single-event-novel').colourBrightness(); 1421 $('.mec-single-event-novel').each(function () { 1422 $(this).colourBrightness() 1423 }); 1424 } 1425 } 1426 } 1427 1428 function sed() { 1429 // Single Event Display 1430 $("#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) { 1431 var sed_method = $(this).attr('target'); 1432 if ('_blank' === sed_method) { 1433 1434 return; 1435 } 1436 e.preventDefault(); 1437 var href = $(this).attr('href'); 1438 1439 var id = $(this).data('event-id'); 1440 var occurrence = get_parameter_by_name('occurrence', href); 1441 var time = get_parameter_by_name('time', href); 1442 1443 if( 'undefined' == typeof id ){ 1444 return; 1445 } 1446 1447 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 1448 }); 1449 1450 } 1451 1452 function mec_tooltip() { 1453 if ($('.mec-monthly-tooltip').length >= 1) { 1454 if (Math.max(document.documentElement.clientWidth, window.innerWidth || 0) > 768) { 1455 $('.mec-monthly-tooltip').tooltipster({ 1456 theme: 'tooltipster-shadow', 1457 interactive: true, 1458 delay: 100, 1459 minWidth: 350, 1460 maxWidth: 350 1461 }); 1462 if (settings.sed_method != '0') { 1463 sed(); 1464 } 1465 } else { 1466 var touchtime = 0; 1467 $(".mec-monthly-tooltip").on("click", function (event) { 1468 event.preventDefault(); 1469 if (touchtime == 0) { 1470 $('.mec-monthly-tooltip').tooltipster({ 1471 theme: 'tooltipster-shadow', 1472 interactive: true, 1473 delay: 100, 1474 minWidth: 350, 1475 maxWidth: 350, 1476 trigger: "custom", 1477 triggerOpen: { 1478 click: true, 1479 tap: true 1480 }, 1481 triggerClose: { 1482 click: true, 1483 tap: true 1484 } 1485 }); 1486 touchtime = new Date().getTime(); 1487 } else { 1488 if (((new Date().getTime()) - touchtime) < 200) { 1489 var el = $(this); 1490 var link = el.attr("href"); 1491 window.location = link; 1492 touchtime = 0; 1493 } else { 1494 touchtime = new Date().getTime(); 1495 } 1496 } 1497 }); 1498 } 1499 } 1500 } 1501 }; 1502 1503}(jQuery)); 1504 1505// MEC WEEKLY VIEW PLUGIN 1506(function ($) {
1507 $.fn.mecWeeklyView = function (options) { 1508 var active_year; 1509 var active_month; 1510 var active_week; 1511 var active_week_number; 1512 1513 // Default Options 1514 var settings = $.extend({ 1515 // These are the defaults. 1516 today: null, 1517 week: 1, 1518 id: 0, 1519 current_year: null, 1520 current_month: null, 1521 changeWeekElement: '.mec-load-week', 1522 month_navigator: 0, 1523 atts: '', 1524 ajax_url: '', 1525 sf: {} 1526 }, options); 1527 1528 // Set Active Time 1529 active_year = settings.current_year; 1530 active_month = settings.current_month; 1531 1532 // Search Widget 1533 if ( settings.sf.container !== '' ) { 1534 $(settings.sf.container).mecSearchForm({ 1535 id: settings.id, 1536 refine: settings.sf.refine, 1537 ajax_url: settings.ajax_url, 1538 start_date: settings.start_date, 1539 atts: settings.atts, 1540 callback: function (atts) { 1541 settings.atts = atts; 1542 search(active_year, active_month, active_week); 1543 } 1544 }); 1545 1546 $(settings.sf.container).addClass('mec-skin-search-init'); 1547 } 1548 1549 // Set The Week 1550 setThisWeek(settings.month_id + settings.week); 1551 1552 // Set Listeners 1553 setListeners(); 1554 1555 // Initialize Month Navigator 1556 if (settings.month_navigator) initMonthNavigator(settings.month_id); 1557 1558 function setListeners() { 1559 $(settings.changeWeekElement).off('click').on('click', function (e) { 1560 var week = $('#mec_skin_' + settings.id + ' .mec-weekly-view-week-active').data('week-id'); 1561 var max_weeks = $('#mec_skin_' + settings.id + ' .mec-weekly-view-week-active').data('max-weeks'); 1562 var new_week_number = active_week_number; 1563 1564 if ($(this).hasClass('mec-previous-month')) { 1565 week = parseInt(week) - 1; 1566 new_week_number--; 1567 } else { 1568 week = parseInt(week) + 1; 1569 new_week_number++; 1570 } 1571 1572 if (new_week_number <= 1 || new_week_number >= max_weeks) { 1573 // Disable Next/Previous Button 1574 $(this).css({ 1575 'opacity': .6, 1576 'cursor': 'default' 1577 }); 1578 $(this).find('i').css({ 1579 'opacity': .6, 1580 'cursor': 'default' 1581 }); 1582 } else { 1583 // Enable Next/Previous Buttons 1584 $('#mec_skin_' + settings.id + ' .mec-load-week, #mec_skin_' + settings.id + ' .mec-load-week i').css({ 1585 'opacity': 1, 1586 'cursor': 'pointer' 1587 }); 1588 } 1589 1590 // Week is not in valid range 1591 if (new_week_number === 0 || new_week_number > max_weeks) { } else { 1592 setThisWeek(week); 1593 } 1594 }); 1595 1596 $('.mec-subscribe-to-calendar-btn').off('click').on('click', function() { 1597 $(this).parent().find('>.mec-subscribe-to-calendar-items').toggle(); 1598 }); 1599 1600 // Single Event Method 1601 if (settings.sed_method != '0') { 1602 sed(); 1603 } 1604 } 1605 1606 function setThisWeek(week, auto_focus) { 1607 if (typeof auto_focus === 'undefined') auto_focus = false; 1608 1609 // Week is not exists 1610 if (!$('#mec_weekly_view_week_' + settings.id + '_' + week).length) { 1611 return setThisWeek((parseInt(week) - 1)); 1612 } 1613 1614 // Set week to active in week list 1615 $('#mec_skin_' + settings.id + ' .mec-weekly-view-week').removeClass('mec-weekly-view-week-active'); 1616 $('#mec_weekly_view_week_' + settings.id + '_' + week).addClass('mec-weekly-view-week-active'); 1617 $('#mec_weekly_view_top_week_' + settings.id + '_' + week).addClass('mec-weekly-view-week-active'); 1618 1619 // Show related events 1620 $('#mec_skin_' + settings.id + ' .mec-weekly-view-date-events').addClass('mec-util-hidden'); 1621 $('.mec-weekly-view-week-' + settings.id + '-' + week).removeClass('mec-util-hidden'); 1622 $('#mec_skin_' + settings.id + ' .mec-calendar-row').addClass('mec-util-hidden'); 1623 $('#mec_skin_' + settings.id + ' .mec-calendar-row[data-week=' + week % 10 + ']').removeClass('mec-util-hidden'); 1624 1625 active_week = week; 1626 active_week_number = $('#mec_skin_' + settings.id + ' .mec-weekly-view-week-active').data('week-number'); 1627 1628 $('#mec_skin_' + settings.id + ' .mec-calendar-d-top').find('.mec-current-week').find('span').remove(); 1629 $('#mec_skin_' + settings.id + ' .mec-calendar-d-top').find('.mec-current-week').append('<span>' + active_week_number + '</span>'); 1630 1631 if (active_week_number === 1) { 1632 // Disable Previous Button 1633 $('#mec_skin_' + settings.id + ' .mec-previous-month.mec-load-week').css({ 1634 'opacity': .6, 1635 'cursor': 'default' 1636 }); 1637 $('#mec_skin_' + settings.id + ' .mec-previous-month.mec-load-week').find('i').css({ 1638 'opacity': .6, 1639 'cursor': 'default' 1640 }); 1641 } 1642 1643 // Go To Event Week
1644 if (auto_focus) mec_focus_week(settings.id); 1645 1646 mecFluentCustomScrollbar(); 1647 } 1648 1649 function initMonthNavigator(month_id) { 1650 $('#mec_month_navigator' + settings.id + '_' + month_id + ' .mec-load-month').off('click'); 1651 $('#mec_month_navigator' + settings.id + '_' + month_id + ' .mec-load-month').on('click', function () { 1652 var year = $(this).data('mec-year'); 1653 var month = $(this).data('mec-month'); 1654 1655 setMonth(year, month, active_week, true); 1656 }); 1657 } 1658 1659 function search(year, month, week, navigation_click) { 1660 var week_number = (String(week).slice(-1)); 1661 1662 // Add Loading Class 1663 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 1664 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 1665 1666 $.ajax({ 1667 url: settings.ajax_url, 1668 data: "action=mec_weekly_view_load_month&mec_year=" + year + "&mec_month=" + month + "&mec_week=" + week_number + "&" + settings.atts + "&apply_sf_date=1", 1669 dataType: "json", 1670 type: "post", 1671 success: function (response) { 1672 // Remove Loading Class 1673 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 1674 1675 // Append Month 1676 $("#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>'); 1677 1678 // Append Month Navigator 1679 $("#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>'); 1680 1681 // Set Listeners 1682 setListeners(); 1683 1684 // Toggle Month 1685 toggleMonth(response.current_month.id); 1686 1687 // Set active week 1688 setThisWeek(response.week_id, true); 1689 mecFluentCustomScrollbar(); 1690 1691 $(document).trigger('mec_search_init',['weekly_view',settings,response]); 1692 }, 1693 error: function () { } 1694 }); 1695 } 1696 1697 function setMonth(year, month, week, navigation_click) { 1698 var month_id = '' + year + month; 1699 var week_number = (String(week).slice(-1)); 1700 1701 active_month = month; 1702 active_year = year; 1703 navigation_click = navigation_click || false; 1704 1705 // Month exists so we just show it 1706 if ($("#mec_weekly_view_month_" + settings.id + "_" + month_id).length) 1707 { 1708 // Set Month Filter values in search widget 1709 $("#mec_sf_month_" + settings.id).val(month); 1710 $("#mec_sf_year_" + settings.id).val(year); 1711 1712 // Toggle Month 1713 toggleMonth(month_id); 1714 1715 // Set active week 1716 setThisWeek('' + month_id + week_number); 1717 mecFluentCustomScrollbar(); 1718 } else { 1719 // Add Loading Class 1720 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 1721 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 1722 1723 $.ajax({
1724 url: settings.ajax_url, 1725 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, 1726 dataType: "json", 1727 type: "post", 1728 success: function (response) { 1729 // Remove Loading Class 1730 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 1731 1732 $('#mec_skin_' + settings.id + ' .mec-calendar-d-top h3').after(response.topWeeks); 1733 1734 // Append Month 1735 $("#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>'); 1736 1737 // Append Month Navigator 1738 $("#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>'); 1739 1740 // Set Listeners 1741 setListeners(); 1742 1743 // Toggle Month 1744 toggleMonth(response.current_month.id); 1745 1746 // Set active week 1747 setThisWeek(response.week_id, true); 1748 1749 // Set Month Filter values in search widget 1750 $("#mec_sf_month_" + settings.id).val(month); 1751 $("#mec_sf_year_" + settings.id).val(year); 1752 mecFluentCustomScrollbar(); 1753 }, 1754 error: function () { } 1755 }); 1756 } 1757 } 1758 1759 function toggleMonth(month_id) { 1760 // Show related events 1761 $('#mec_skin_' + settings.id + ' .mec-month-container').addClass('mec-util-hidden'); 1762 $('#mec_weekly_view_month_' + settings.id + '_' + month_id).removeClass('mec-util-hidden'); 1763 1764 $('#mec_skin_' + settings.id + ' .mec-month-navigator').addClass('mec-util-hidden'); 1765 $('#mec_month_navigator' + settings.id + '_' + month_id).removeClass('mec-util-hidden'); 1766 1767 // Initialize Month Navigator 1768 if (settings.month_navigator) initMonthNavigator(month_id); 1769 1770 jQuery(document).trigger('mec_toggle_month', [settings, month_id]); 1771 } 1772 1773 function sed() { 1774 // Single Event Display 1775 $("#mec_skin_" + settings.id + " .mec-event-title a").off('click').on('click', function (e) { 1776 var sed_method = $(this).attr('target'); 1777 if ('_blank' === sed_method) { 1778 1779 return; 1780 } 1781 e.preventDefault(); 1782 var href = $(this).attr('href'); 1783 1784 var id = $(this).data('event-id'); 1785 var occurrence = get_parameter_by_name('occurrence', href); 1786 var time = get_parameter_by_name('time', href); 1787 1788 if( 'undefined' == typeof id ){ 1789 return; 1790 } 1791 1792 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 1793 }); 1794 } 1795 }; 1796 1797}(jQuery)); 1798 1799// MEC DAILY VIEW PLUGIN 1800(function ($) { 1801 $.fn.mecDailyView = function (options) { 1802 var active_month; 1803 var active_year; 1804 var active_day; 1805 1806 // Default Options 1807 var settings = $.extend({ 1808 // These are the defaults. 1809 today: null, 1810 id: 0, 1811 changeDayElement: '.mec-daily-view-day', 1812 events_label: 'Events', 1813 event_label: 'Event', 1814 month_navigator: 0, 1815 atts: '', 1816 ajax_url: '', 1817 sf: {}, 1818 }, options); 1819 1820 active_month = settings.month; 1821 active_year = settings.year; 1822 active_day = settings.day; 1823 1824 mecFluentCustomScrollbar(); 1825 1826 // Set Today 1827 setToday(settings.today); 1828 1829 // Set Listeners 1830 setListeners(); 1831 1832 // Initialize Month Navigator 1833 if (settings.month_navigator) initMonthNavigator(settings.month_i
1833d); 1834 1835 // Initialize Days Slider 1836 initDaysSlider(settings.month_id); 1837 1838 // Slider first event day focus when page load. 1839 mecFocusDay(settings); 1840 1841 // Search Widget 1842 if ( settings.sf.container !== '' ) { 1843 $(settings.sf.container).mecSearchForm({ 1844 id: settings.id, 1845 refine: settings.sf.refine, 1846 ajax_url: settings.ajax_url, 1847 start_date: settings.start_date, 1848 atts: settings.atts, 1849 callback: function (atts) { 1850 settings.atts = atts; 1851 search(active_year, active_month, active_day); 1852 } 1853 }); 1854 1855 $(settings.sf.container).addClass('mec-skin-search-init'); 1856 } 1857 1858 function setListeners() { 1859 $(settings.changeDayElement).on('click', function () { 1860 var today = $(this).data('day-id'); 1861 setToday(today); 1862 mecFluentCustomScrollbar(); 1863 }); 1864 1865 $('.mec-subscribe-to-calendar-btn').off('click').on('click', function() { 1866 $(this).parent().find('>.mec-subscribe-to-calendar-items').toggle(); 1867 }); 1868 1869 // Single Event Method 1870 if (settings.sed_method != '0') { 1871 sed(); 1872 } 1873 } 1874 1875 var current_monthday; 1876 1877 function setToday(today) { 1878 // For caring about 31st, 30th and 29th of some months 1879 if (!$('#mec_daily_view_day' + settings.id + '_' + today).length) { 1880 setToday(parseInt(today) - 1); 1881 return false; 1882 } 1883 1884 // Set day to active in day list 1885 $('.mec-daily-view-day').removeClass('mec-daily-view-day-active mec-color'); 1886 $('#mec_daily_view_day' + settings.id + '_' + today).addClass('mec-daily-view-day-active mec-color'); 1887 1888 // Show related events 1889 $('.mec-daily-view-date-events').addClass('mec-util-hidden'); 1890 $('#mec_daily_view_date_events' + settings.id + '_' + today).removeClass('mec-util-hidden'); 1891 $('.mec-daily-view-events').addClass('mec-util-hidden'); 1892 $('#mec-daily-view-events' + settings.id + '_' + today).removeClass('mec-util-hidden'); 1893 1894 // Set today label 1895 var weekday = $('#mec_daily_view_day' + settings.id + '_' + today).data('day-weekday'); 1896 var monthday = $('#mec_daily_view_day' + settings.id + '_' + today).data('day-monthday'); 1897 var count = $('#mec_daily_view_day' + settings.id + '_' + today).data('events-count'); 1898 var month_id = $('#mec_daily_view_day' + settings.id + '_' + today).data('month-id'); 1899 1900 $('#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>'); 1901 1902 if (monthday <= 9) current_monthday = '0' + monthday; 1903 else current_monthday = monthday; 1904 } 1905 1906 function initMonthNavigator(month_id) { 1907 $('#mec_month_navigator' + settings.id + '_' + month_id + ' .mec-load-month').off('click'); 1908 $('#mec_month_navigator' + settings.id + '_' + month_id + ' .mec-load-month').on('click', function () { 1909 var year = $(this).data('mec-year'); 1910 var month = $(this).data('mec-month'); 1911 1912 setMonth(year, month, current_monthday, true); 1913 }); 1914 } 1915 1916 function initDaysSlider(month_id, day_id) { 1917 // Set Global Month ID
1918 mec_g_month_id = month_id; 1919 1920 // Check RTL website 1921 var owl_rtl = $('body').hasClass('rtl') ? true : false; 1922 1923 // Init Days slider 1924 var owl = $("#mec-owl-calendar-d-table-" + settings.id + "-" + month_id); 1925 owl.owlCarousel({ 1926 responsiveClass: true, 1927 responsive: { 1928 0: { 1929 items: owl.closest('.mec-fluent-wrap,.mec-liquid-wrap').length > 0 ? 3 : 2, 1930 }, 1931 479: { 1932 items: 4, 1933 }, 1934 767: { 1935 items: 7, 1936 }, 1937 960: { 1938 items: 14, 1939 }, 1940 1000: { 1941 items: 19, 1942 }, 1943 1200: { 1944 items: 22, 1945 } 1946 }, 1947 dots: false, 1948 loop: false, 1949 rtl: owl_rtl, 1950 navElement: 'button type="button" role="button"', 1951 }); 1952 1953 $(document).trigger('mec_daily_slider_init', [owl, owl_rtl]); 1954 1955 // Custom Navigation Events 1956 $("#mec_daily_view_month_" + settings.id + "_" + month_id + " .mec-table-d-next").click(function (e) { 1957 e.preventDefault(); 1958 owl.trigger('next.owl.carousel'); 1959 }); 1960 1961 $("#mec_daily_view_month_" + settings.id + "_" + month_id + " .mec-table-d-prev").click(function (e) { 1962 e.preventDefault(); 1963 owl.trigger('prev.owl.carousel'); 1964 }); 1965 1966 if (typeof day_id === 'undefined') day_id = $('.mec-daily-view-day-active').data('day-id'); 1967 1968 var today_str = day_id.toString().substring(6, 8); 1969 var today_int = parseInt(today_str); 1970 1971 owl.trigger('owl.goTo', [today_int]); 1972 1973 owl.removeClass('owl-hidden'); 1974 } 1975 1976 function search(year, month, day) { 1977 // Add Loading Class 1978 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 1979 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 1980 1981 $.ajax({
1982 url: settings.ajax_url, 1983 data: "action=mec_daily_view_load_month&mec_year=" + year + "&mec_month=" + month + "&mec_day=" + day + "&" + settings.atts + "&apply_sf_date=1", 1984 dataType: "json", 1985 type: "post", 1986 success: function (response) { 1987 // Remove Loading Class 1988 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 1989 1990 // Append Month 1991 $("#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>'); 1992 1993 // Append Month Navigator 1994 $("#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>'); 1995 1996 // Set Listeners 1997 setListeners(); 1998 1999 active_year = response.current_month.year; 2000 active_month = response.current_month.month; 2001 2002 // Toggle Month 2003 toggleMonth(response.current_month.id, '' + active_year + active_month + active_day); 2004 2005 // Set Today 2006 setToday('' + active_year + active_month + active_day); 2007 2008 // Focus First Active Day 2009 mecFocusDay(settings); 2010 mecFluentCustomScrollbar(); 2011 2012 $(document).trigger('mec_search_init',['daily_view',settings,response]); 2013 }, 2014 error: function () { } 2015 }); 2016 } 2017 2018 function setMonth(year, month, day, navigation_click) { 2019 var month_id = '' + year + month; 2020 2021 active_month = month; 2022 active_year = year; 2023 active_day = day; 2024 navigation_click = navigation_click || false; 2025 2026 // Month exists so we just show it 2027 if ($("#mec_daily_view_month_" + settings.id + "_" + month_id).length) 2028 { 2029 // Set Month Filter values in search widget 2030 $("#mec_sf_month_" + settings.id).val(month); 2031 $("#mec_sf_year_" + settings.id).val(year); 2032 2033 // Toggle Month 2034 toggleMonth(month_id); 2035 2036 // Set Today 2037 setToday('' + month_id + day); 2038 } else { 2039 // Add Loading Class 2040 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 2041 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 2042 2043 $.ajax({
2044 url: settings.ajax_url, 2045 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, 2046 dataType: "json", 2047 type: "post", 2048 success: function (response) { 2049 // Remove Loading Class 2050 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 2051 2052 // Append Month 2053 $("#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>'); 2054 2055 // Append Month Navigator 2056 $("#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>'); 2057 2058 // Set Listeners 2059 setListeners(); 2060 2061 // Toggle Month 2062 toggleMonth(response.current_month.id, '' + year + month + '01'); 2063 2064 // Set Today 2065 setToday('' + year + month + '01'); 2066 2067 // Set Month Filter values in search widget 2068 $("#mec_sf_month_" + settings.id).val(month); 2069 $("#mec_sf_year_" + settings.id).val(year); 2070 mecFluentCustomScrollbar(); 2071 }, 2072 error: function () { } 2073 }); 2074 } 2075 } 2076 2077 function toggleMonth(month_id, day_id) { 2078 // Show related events 2079 $('#mec_skin_' + settings.id + ' .mec-month-container').addClass('mec-util-hidden'); 2080 $('#mec_daily_view_month_' + settings.id + '_' + month_id).removeClass('mec-util-hidden'); 2081 2082 $('#mec_skin_' + settings.id + ' .mec-month-navigator').addClass('mec-util-hidden'); 2083 $('#mec_month_navigator' + settings.id + '_' + month_id).removeClass('mec-util-hidden'); 2084 2085 // Initialize Month Navigator 2086 if (settings.month_navigator) initMonthNavigator(month_id); 2087 2088 // Initialize Days Slider 2089 initDaysSlider(month_id, day_id); 2090 2091 // Focus First Active Day 2092 mecFocusDay(settings); 2093 2094 jQuery(document).trigger('mec_toggle_month', [settings, month_id]); 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 if( 'undefined' == typeof id ){ 2113 return; 2114 } 2115 2116 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 2117 }); 2118 } 2119 }; 2120 2121}(jQuery)); 2122 2123// MEC TIMETABLE PLUGIN 2124(function ($) { 2125 $.fn.mecTimeTable = function (options) { 2126 var active_year; 2127 var active_month; 2128 var active_week; 2129 var active_week_number; 2130 var active_day; 2131 2132 // Default Options 2133 var settings = $.extend({ 2134 // These are the defaults. 2135 today: null, 2136 week: 1, 2137 active_day: 1, 2138 id: 0, 2139 changeWeekElement: '.mec-load-week', 2140 month_navigator: 0, 2141 atts: '', 2142 ajax_url: '', 2143 sf: {} 2144 }, options); 2145 2146 // Search Widget 2147 if ( settings.sf.container !== '' ) { 2148 $(settings.sf.container).mecSearchForm({ 2149 id: settings.id, 2150 refine: settings.sf.refine, 2151 ajax_url: settings.ajax_url, 2152 start_date: settings.start_date, 2153 atts: settings.atts, 2154 callback: function (atts) { 2155 settings.atts = atts; 2156 search(active_year, active_month, active_week, active_day); 2157 } 2158 }); 2159 2160 $(settings.sf.container).addClass('mec-skin-search-init'); 2161 } 2162 2163 // Set The Week
2164 setThisWeek(settings.month_id + settings.week, settings.active_day); 2165 2166 // Set Listeners 2167 setListeners(); 2168 2169 // Initialize Month Navigator 2170 if (settings.month_navigator) initMonthNavigator(settings.month_id); 2171 2172 function setListeners() { 2173 // Change Week Listener 2174 $(settings.changeWeekElement).off('click').on('click', function () { 2175 var week = $('#mec_skin_' + settings.id + ' .mec-weekly-view-week-active').data('week-id'); 2176 var max_weeks = $('#mec_skin_' + settings.id + ' .mec-weekly-view-week-active').data('max-weeks'); 2177 var new_week_number = active_week_number; 2178 2179 if ($(this).hasClass('mec-previous-month')) { 2180 week = parseInt(week) - 1; 2181 new_week_number--; 2182 } else { 2183 week = parseInt(week) + 1; 2184 new_week_number++; 2185 } 2186 2187 if (new_week_number <= 1 || new_week_number >= max_weeks) { 2188 // Disable Next/Previous Button 2189 $(this).css({ 2190 'opacity': .6, 2191 'cursor': 'default' 2192 }); 2193 $(this).find('i').css({ 2194 'opacity': .6, 2195 'cursor': 'default' 2196 }); 2197 } else { 2198 // Enable Next/Previous Buttons 2199 $('#mec_skin_' + settings.id + ' .mec-load-week, #mec_skin_' + settings.id + ' .mec-load-week i').css({ 2200 'opacity': 1, 2201 'cursor': 'pointer' 2202 }); 2203 } 2204 2205 // Week is not in valid range 2206 if (new_week_number === 0 || new_week_number > max_weeks) { } else { 2207 setThisWeek(week); 2208 } 2209 }); 2210 2211 // Change Day Listener 2212 $('#mec_skin_' + settings.id + ' .mec-weekly-view-week dt').not('.mec-timetable-has-no-event').off('click').on('click', function () { 2213 var day = $(this).data('date-id'); 2214 setDay(day); 2215 }); 2216 2217 // Single Event Method 2218 if (settings.sed_method != '0') { 2219 sed(); 2220 } 2221 } 2222 2223 function setThisWeek(week, day) { 2224 // Week is not exists 2225 if (!$('#mec_weekly_view_week_' + settings.id + '_' + week).length) { 2226 return setThisWeek((parseInt(week) - 1), day); 2227 } 2228 2229 // Set week to active in week list 2230 $('#mec_skin_' + settings.id + ' .mec-weekly-view-week').removeClass('mec-weekly-view-week-active'); 2231 $('#mec_weekly_view_week_' + settings.id + '_' + week).addClass('mec-weekly-view-week-active'); 2232 2233 setDay(day); 2234 2235 active_week = week; 2236 active_week_number = $('#mec_skin_' + settings.id + ' .mec-weekly-view-week-active').data('week-number'); 2237 2238 $('#mec_skin_' + settings.id + ' .mec-calendar-d-top').find('.mec-current-week').find('span').remove(); 2239 $('#mec_skin_' + settings.id + ' .mec-calendar-d-top').find('.mec-current-week').append('<span>' + active_week_number + '</span>'); 2240 2241 if (active_week_number === 1) { 2242 // Disable Previous Button 2243 $('#mec_skin_' + settings.id + ' .mec-previous-month.mec-load-week').css({ 2244 'opacity': .6, 2245 'cursor': 'default' 2246 }); 2247 $('#mec_skin_' + settings.id + ' .mec-previous-month.mec-load-week').find('i').css({ 2248 'opacity': .6, 2249 'cursor': 'default' 2250 }); 2251 } 2252 } 2253 2254 function setDay(day) { 2255 // Find the date automatically 2256 if (typeof day === 'undefined') { 2257 day = $('#mec_skin_' + settings.id + ' .mec-weekly-view-week-active dt').not('.mec-timetable-has-no-event').first().data('date-id'); 2258 } 2259 2260 // Activate the date element 2261 $('#mec_skin_' + settings.id + ' dt').removeClass('mec-timetable-day-active'); 2262 $('#mec_skin_' + settings.id + ' .mec-weekly-view-week-active dt[data-date-id="' + day + '"]').addClass('mec-timetable-day-active'); 2263 2264 // Show related events 2265 $('#mec_skin_' + settings.id + ' .mec-weekly-view-date-events').addClass('mec-util-hidden'); 2266 $('.mec_weekly_view_date_events' + settings.id + '_' + day).removeClass('mec-util-hidden').show(); 2267 } 2268 2269 function initMonthNavigator(month_id) { 2270 $('#mec_month_navigator' + settings.id + '_' + month_id + ' .mec-load-month').off('click').on('click', function () { 2271 var year = $(this).data('mec-year');
2272 var month = $(this).data('mec-month'); 2273 2274 setMonth(year, month, active_week); 2275 }); 2276 } 2277 2278 function search(year, month, week) { 2279 var week_number = (String(week).slice(-1)); 2280 2281 // Add Loading Class 2282 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 2283 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 2284 2285 // Set MEC Year And Month If Undefined 2286 year = typeof year == 'undefined' ? '' : year; 2287 month = typeof month == 'undefined' ? '' : month; 2288 2289 // Append current week to data body for used after filter. 2290 $('body').data('currentweek', $("#mec_skin_events_" + settings.id).find('.mec-current-week > span').html()); 2291 2292 $.ajax({ 2293 url: settings.ajax_url, 2294 data: "action=mec_timetable_load_month&mec_year=" + year + "&mec_month=" + month + "&mec_week=" + week_number + "&" + settings.atts + "&apply_sf_date=1", 2295 dataType: "json", 2296 type: "post", 2297 success: function (response) { 2298 // Remove Loading Class 2299 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 2300 2301 // Append Month 2302 $("#mec_skin_events_" + settings.id).html('<div class="mec-month-container" id="mec_timetable_month_' + settings.id + '_' + response.current_month.id + '">' + response.month + '</div>'); 2303 2304 // Append Month Navigator 2305 $("#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>'); 2306 2307 // Set Listeners 2308 setListeners(); 2309 2310 // Toggle Month 2311 toggleMonth(response.current_month.id); 2312 2313 // Set active week 2314 setThisWeek(response.week_id); 2315 2316 // Focus First Active Week 2317 mec_focus_week(settings.id, 'timetable'); 2318 2319 mecFluentCustomScrollbar(); 2320 2321 $(document).trigger('mec_search_init',['timetable',settings,response]); 2322 }, 2323 error: function () { } 2324 }); 2325 } 2326 2327 function setMonth(year, month, week) { 2328 var month_id = '' + year + month; 2329 var week_number = (String(week).slice(-1)); 2330 2331 active_month = month; 2332 active_year = year; 2333 2334 // Month exists so we just show it 2335 if ($("#mec_timetable_month_" + settings.id + "_" + month_id).length) { 2336 // Toggle Month 2337 toggleMonth(month_id); 2338 2339 // Set active week 2340 setThisWeek('' + month_id + week_number); 2341 } else { 2342 // Add Loading Class 2343 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 2344 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 2345 2346 $.ajax({
2347 url: settings.ajax_url, 2348 data: "action=mec_timetable_load_month&mec_year=" + year + "&mec_month=" + month + "&mec_week=" + week_number + "&" + settings.atts + "&apply_sf_date=0", 2349 dataType: "json", 2350 type: "post", 2351 success: function (response) { 2352 // Remove Loading Class 2353 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 2354 2355 // Append Month 2356 $("#mec_skin_events_" + settings.id).append('<div class="mec-month-container" id="mec_timetable_month_' + settings.id + '_' + response.current_month.id + '">' + response.month + '</div>'); 2357 2358 // Append Month Navigator 2359 $("#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>'); 2360 2361 // Set Listeners 2362 setListeners(); 2363 2364 // Toggle Month 2365 toggleMonth(response.current_month.id); 2366 2367 // Set active week 2368 setThisWeek(response.week_id); 2369 2370 // Set Month Filter values in search widget 2371 $("#mec_sf_month_" + settings.id).val(month); 2372 $("#mec_sf_year_" + settings.id).val(year); 2373 }, 2374 error: function () { } 2375 }); 2376 } 2377 } 2378 2379 function toggleMonth(month_id) { 2380 // Show related events 2381 $('#mec_skin_' + settings.id + ' .mec-month-container').addClass('mec-util-hidden'); 2382 $('#mec_timetable_month_' + settings.id + '_' + month_id).removeClass('mec-util-hidden'); 2383 2384 $('#mec_skin_' + settings.id + ' .mec-month-navigator').addClass('mec-util-hidden'); 2385 $('#mec_month_navigator' + settings.id + '_' + month_id).removeClass('mec-util-hidden'); 2386 2387 // Initialize Month Navigator 2388 if (settings.month_navigator) initMonthNavigator(month_id); 2389 2390 jQuery(document).trigger('mec_toggle_month', [settings, month_id]); 2391 } 2392 2393 function sed() { 2394 // Single Event Display 2395 $("#mec_skin_" + settings.id + " .mec-timetable-event-title a").off('click').on('click', function (e) { 2396 e.preventDefault(); 2397 var href = $(this).attr('href'); 2398 2399 var id = $(this).data('event-id'); 2400 var occurrence = get_parameter_by_name('occurrence', href); 2401 var time = get_parameter_by_name('time', href); 2402 2403 if( 'undefined' == typeof id ){ 2404 return; 2405 } 2406 2407 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 2408 }); 2409 } 2410 }; 2411 2412}(jQuery)); 2413 2414// MEC WEEKLY PROGRAM PLUGIN 2415(function ($) { 2416 $.fn.mecWeeklyProgram = function (options) { 2417 // Default Options 2418 var settings = $.extend({ 2419 // These are the defaults. 2420 id: 0, 2421 atts: '', 2422 sf: {} 2423 }, options); 2424 2425 // Search Widget 2426 if ( settings.sf.container !== '' ) { 2427 $(settings.sf.container).mecSearchForm({ 2428 id: settings.id, 2429 refine: settings.sf.refine, 2430 ajax_url: settings.ajax_url, 2431 start_date: settings.start_date, 2432 atts: settings.atts, 2433 callback: function (atts) { 2434 settings.atts = atts; 2435 search(); 2436 } 2437 }); 2438 2439 $(settings.sf.container).addClass('mec-skin-search-init'); 2440 } 2441 2442 // Set Listeners 2443 setListeners(); 2444 2445 function setListeners() { 2446 // Single Event Method 2447 if (settings.sed_method != '0') { 2448 sed(); 2449 } 2450 } 2451 2452 function search() { 2453 var $modal = $('.mec-modal-result'); 2454 2455 // Add Loading Class 2456 if ($modal.length === 0) $('.mec-wrap').append('<div class="mec-modal-result"></div>'); 2457 $modal.addClass('mec-month-navigator-loading'); 2458 2459 $.ajax({
2460 url: settings.ajax_url, 2461 data: "action=mec_weeklyprogram_load&" + settings.atts + "&apply_sf_date=1", 2462 dataType: "json", 2463 type: "post", 2464 success: function (response) { 2465 // Remove Loading Class 2466 $modal.removeClass("mec-month-navigator-loading"); 2467 2468 // Append Month 2469 $("#mec_skin_events_" + settings.id).html(response.date_events); 2470 2471 // Set Listeners 2472 setListeners(); 2473 2474 $(document).trigger('mec_search_init',['weeklyprogram',settings,response]); 2475 }, 2476 error: function () { } 2477 }); 2478 } 2479 2480 function sed() { 2481 // Single Event Display 2482 $("#mec_skin_" + settings.id + " .mec-event-title a").off('click').on('click', function (e) { 2483 var sed_method = $(this).attr('target'); 2484 if ('_blank' === sed_method) { 2485 2486 return; 2487 } 2488 e.preventDefault(); 2489 var href = $(this).attr('href'); 2490 2491 var id = $(this).data('event-id'); 2492 var occurrence = get_parameter_by_name('occurrence', href); 2493 var time = get_parameter_by_name('time', href); 2494 2495 if( 'undefined' == typeof id ){ 2496 return; 2497 } 2498 2499 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 2500 }); 2501 } 2502 }; 2503 2504}(jQuery)); 2505 2506// MEC MASONRY VIEW PLUGIN 2507(function ($) { 2508 $.fn.mecMasonryView = function (options) { 2509 // Default Options 2510 var settings = $.extend({ 2511 // These are the defaults. 2512 id: 0, 2513 atts: '', 2514 ajax_url: '', 2515 sf: {}, 2516 end_date: '', 2517 offset: 0, 2518 start_date: '', 2519 pagination: '0', 2520 infinite_locked: false, 2521 }, options); 2522 2523 let history = []; 2524 const $next = $('#mec-nextprev-wrap-' + settings.id + ' .mec-nextprev-next-button'); 2525 const $prev = $('#mec-nextprev-wrap-' + settings.id + ' .mec-nextprev-prev-button'); 2526 2527 // Set onclick Listeners 2528 setListeners(); 2529 2530 // Init Masonry 2531 initMasonry(); 2532 if (typeof custom_dev !== undefined) var custom_dev; 2533 if (custom_dev == 'yes') { 2534 $(".mec-wrap").css("height", "1550"); 2535 if (Math.max(document.documentElement.clientWidth, window.innerWidth || 0) < 768) { 2536 $(".mec-wrap").css("height", "5500"); 2537 } 2538 if (Math.max(document.documentElement.clientWidth, window.innerWidth || 0) < 480) { 2539 $(".mec-wrap").css("height", "5000"); 2540 } 2541 $(".mec-event-masonry .mec-masonry-item-wrap:nth-child(n+20)").css("display", "none"); 2542 $(".mec-load-more-button").on("click", function () { 2543 $(".mec-event-masonry .mec-masonry-item-wrap:nth-child(n+20)").css("display", "block"); 2544 $(".mec-wrap").css("height", "auto"); 2545 initMasonry(); 2546 $(".mec-load-more-button").hide(); 2547 }) 2548 $(".mec-events-masonry-cats a:first-child").on("click", function () { 2549 $(".mec-wrap").css("height", "auto"); 2550 $(".mec-event-masonry .mec-masonry-item-wrap:nth-child(n+20)").css("display", "block"); 2551 $(".mec-load-more-button").hide(); 2552 initMasonry(); 2553 }) 2554 $(".mec-events-masonry-cats a:not(:first-child)").on("click", function () { 2555 $(".mec-load-more-button").hide(); 2556 $(".mec-wrap").css("height", "auto"); 2557 $(".mec-wrap").css("min-height", "400"); 2558 $(".mec-event-masonry .mec-masonry-item-wrap").css("display", "block"); 2559 var element = document.querySelector("#mec_skin_" + settings.id + " .mec-event-masonry"); 2560 var selector = $(this).attr('data-group'); 2561 var CustomShuffle = new Shuffle(element, { 2562 itemSelector: '.mec-masonry-item-wrap', 2563 }); 2564 CustomShuffle.sort({ 2565 by: element.getAttribute('data-created'), 2566 }); 2567 CustomShuffle.filter(selector != '*' ? selector : Shuffle.ALL_ITEMS); 2568 $(".mec-event-masonry .mec-masonry-item-wrap").css("visibility", "visible"); 2569 }) 2570 } 2571 2572 // Fix Elementor Masonry 2573 if (mecdata.elementor_edit_mode != 'no') elementorFrontend.hooks.addAction('frontend/element_ready/global', initMasonry()); 2574 2575 function initMasonry() { 2576 var $container = $("#mec_skin_" + settings.id + " .mec-event-masonry"); 2577 var data_sortAscending = $("#mec_skin_" + settings.id).data('sortascending'); 2578 $container.imagesLoaded(function () { 2579 var $grid = $container.isotope({ 2580 filter: '*', 2581 itemSelector: '.mec-masonry-item-wrap', 2582 getSortData: { 2583 date: '[data-sort-masonry]', 2584 }, 2585 sortBy: 'date', 2586 sortAscending: data_sortAscending, 2587 animationOptions: { 2588 duration: 750, 2589 easing: 'linear', 2590 queue: false 2591 }, 2592 }); 2593 if (settings.fit_to_row == 1) $grid.isotope({ 2594 layoutMode: 'fitRows', 2595 sortAscending: data_sortAscending, 2596 }); 2597 // Fix Elementor tab 2598 $('.elementor-tabs').find('.elementor-tab-title').click(function () { 2599 $grid.isotope({ 2600 sortBy: 'date', 2601 sortAscending: data_sortAscending, 2602 }); 2603 }); 2604 }) 2605 2606 $("#mec_skin_" + settings.id + " .mec-events-masonry-cats a").click(function () { 2607 var selector = $(this).attr('data-filter'); 2608 var $grid_cat = $container.isotope({ 2609 filter: selector, 2610 itemSelector: '.mec-masonry-item-wrap', 2611 getSortData: { 2612 date: '[data-sort-masonry]', 2613 }, 2614 sortBy: 'date', 2615 sortAscending: data_sortAscending, 2616 animationOptions: { 2617 duration: 750, 2618 easing: 'linear', 2619 queue: false 2620 }, 2621 }); 2622 if (settings.masonry_like_grid == 1) $grid_cat.isotope({ 2623 sortBy: 'date', 2624 sortAscending: data_sortAscending, 2625 }); 2626 return false; 2627 }); 2628 2629 var $optionSets = $("#mec_skin_" + settings.id + " .mec-events-masonry-cats"), 2630 $optionLinks = $optionSets.find('a'); 2631 2632 $optionLinks.click(function () { 2633 var $this = $(this); 2634 2635 // don't proceed if already selected 2636 if ($this.hasClass('selected')) return false; 2637 2638 var $optionSet = $this.parents('.mec-events-masonry-cats'); 2639 $optionSet.find('.mec-masonry-cat-selected').removeClass('mec-masonry-cat-selected'); 2640 $this.addClass('mec-masonry-cat-selected'); 2641 }); 2642 } 2643 2644 function setListeners() { 2645 $("#mec_skin_" + settings.id + " .mec-events-masonry-cats > a").click(function () { 2646 var mec_load_more_btn = $("#mec_skin_" + settings.id + " .mec-load-more-button"); 2647 var mec_filter_value = $(this).data('filter').replace('.mec-t', ''); 2648 2649 if (mec_load_more_btn.hasClass('mec-load-more-loading')) mec_load_more_btn.removeClass('mec-load-more-loading'); 2650 if (mec_load_more_btn.hasClass("mec-hidden-" + mec_filter_value)) mec_load_more_btn.addClass("mec-util-hidden"); 2651 else mec_load_more_btn.removeClass("mec-util-hidden"); 2652 }); 2653 2654 // Load More 2655 $("#mec_skin_" + settings.id + " .mec-load-more-button").on("click", function () {
2656 loadMore(); 2657 }); 2658 2659 // Scroll 2660 if(settings.pagination === 'scroll') { 2661 $(window).on("scroll", function (event) { 2662 var $target = $("#mec_skin_" + settings.id + " .mec-load-more-wrap"); 2663 2664 var finished = $target.data('page-finished'); 2665 if(finished) return; 2666 2667 var hT = $target.offset().top, 2668 hH = $target.outerHeight(), 2669 wH = $(window).height(), 2670 wS = $(this).scrollTop(); 2671 2672 if (wS + 100 > hT + hH - wH && !settings.infinite_locked) { 2673 settings.infinite_locked = true; 2674 $target.addClass('mec-load-more-scroll-loading'); 2675 loadMore(); 2676 } 2677 }); 2678 } 2679 2680 // Next Prev Pagination 2681 if(settings.pagination === 'nextprev') 2682 { 2683 // Events Wrapper 2684 const $EW = $("#mec_skin_" + settings.id + " .mec-event-masonry"); 2685 2686 let next_disabled = false; 2687 2688 // Previous Button 2689 $prev.on('click', function() 2690 { 2691 if(history.length) 2692 { 2693 let page = history.pop(); 2694 2695 var oldItems = $EW.find('.mec-masonry-item-wrap'); 2696 $EW.isotope('remove', oldItems); 2697 2698 // Display Events 2699 var newItems = $('<div>'+page.html+'</div>').find('.mec-masonry-item-wrap'); 2700 newItems.each(function (index) { 2701 $EW.isotope() 2702 .append(newItems[index]) 2703 .isotope('appended', newItems[index]); 2704 }); 2705 2706 // Update the variables 2707 settings.end_date = page.end_date; 2708 settings.offset = page.offset; 2709 settings.current_month_divider = page.current_month_divider; 2710 2711 // Display Next Button 2712 $next.removeClass('mec-util-hidden'); 2713 } 2714 2715 // Hide Previous Button 2716 if(!history.length) $prev.addClass('mec-util-hidden'); 2717 }); 2718 2719 // Next Button 2720 $next.on('click', function(e) 2721 { 2722 // Prevent Redirect 2723 e.preventDefault(); 2724 2725 // Currently Disabled 2726 if(next_disabled) return; 2727 2728 // Disable Button 2729 next_disabled = true; 2730 2731 // Add Loading Style 2732 $EW.addClass('mec-loading-events'); 2733 2734 // Push to History 2735 history.push({ 2736 end_date: settings.end_date, 2737 offset: settings.offset, 2738 current_month_divider: settings.current_month_divider, 2739 html: $EW.html() 2740 }); 2741 2742 loadMore(function(response) 2743 { 2744 // Display New Events 2745 if(response.count) 2746 { 2747 var oldItems = $EW.find('.mec-masonry-item-wrap'); 2748 $EW.isotope('remove', oldItems); 2749 2750 var newItems = $(response.html).find('.mec-masonry-item-wrap'); 2751 newItems.each(function (index) { 2752 $EW.isotope() 2753 .append(newItems[index]) 2754 .isotope('appended', newItems[index]); 2755 }); 2756 } 2757 // Remove Last Page 2758 else history.pop(); 2759 2760 // Enable Button 2761 next_disabled = false; 2762 2763 // Remove Loading Style 2764 $EW.removeClass('mec-loading-events'); 2765 2766 // Display Previous Button 2767 if(history.length) $prev.removeClass('mec-util-hidden'); 2768 // Hide Next Button 2769 if(response.count === 0 || (typeof response.has_more_event !== 'undefined' && !response.has_more_event)) $next.addClass('mec-util-hidden'); 2770 }); 2771 }); 2772 } 2773 2774 if (settings.sed_method != '0') { 2775 sed(); 2776 } 2777 } 2778 2779 function sed() { 2780 // Single Event Display 2781 $("#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) { 2782 var sed_method = $(this).attr('target'); 2783 if ('_blank' === sed_method) { 2784 2785 return; 2786 } 2787 e.preventDefault(); 2788 var href = $(this).attr('href'); 2789 2790 var id = $(this).data('event-id'); 2791 var occurrence = get_parameter_by_name('occurrence', href); 2792 var time = get_parameter_by_name('time', href); 2793 2794 if( 'undefined' == typeof id ){ 2795 return; 2796 } 2797 2798 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 2799 }); 2800 } 2801 2802 function loadMore(callback) { 2803 // Add loading Class 2804 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-load-more-loading"); 2805 var mec_cat_elem = $('#mec_skin_' + settings.id).find('.mec-masonry-cat-selected'); 2806 var mec_filter_value = (mec_cat_elem && mec_cat_elem.data('filter') != undefined) ? mec_cat_elem.data('filter').replace('.mec-t', '') : ''; 2807 var mec_filter_by = $('#mec_skin_' + settings.id).data('filterby'); 2808 2809 $.ajax({
2810 url: settings.ajax_url, 2811 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", 2812 dataType: "json", 2813 type: "post", 2814 success: function (response) { 2815 if (response.count === 0) { 2816 // Remove loading Class 2817 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading").addClass("mec-util-hidden mec-hidden-" + mec_filter_value); 2818 2819 // Release Lock of Infinite Scroll 2820 settings.infinite_locked = false; 2821 $("#mec_skin_" + settings.id + " .mec-load-more-wrap").data('page-finished', true).removeClass('mec-load-more-scroll-loading'); 2822 2823 // Run Callback 2824 if(typeof callback === 'function') callback(response); 2825 } else { 2826 // Show load more button 2827 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"); 2828 else $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 2829 2830 // Run Callback 2831 if(typeof callback === 'function') callback(response); 2832 // Append Items 2833 else 2834 { 2835 var node = $("#mec_skin_" + settings.id + " .mec-event-masonry"); 2836 var newItems = $(response.html).find('.mec-masonry-item-wrap'); 2837 2838 newItems.each(function (index) { 2839 node.isotope() 2840 .append(newItems[index]) 2841 .isotope('appended', newItems[index]); 2842 }); 2843 } 2844 2845 // Remove loading Class 2846 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading"); 2847 2848 // Update the variables 2849 settings.end_date = response.end_date; 2850 settings.offset = response.offset; 2851 2852 // Single Event Method 2853 if (settings.sed_method != '0') { 2854 sed(); 2855 } 2856 2857 // Release Lock of Infinite Scroll 2858 settings.infinite_locked = false; 2859 $("#mec_skin_" + settings.id + " .mec-load-more-wrap").removeClass('mec-load-more-scroll-loading'); 2860 2861 $(document).trigger('mec_load_more_init',['masonry',settings]); 2862 } 2863 }, 2864 error: function () { } 2865 }); 2866 } 2867 }; 2868}(jQuery)); 2869 2870// MEC LIST VIEW PLUGIN 2871(function ($) { 2872 $.fn.mecListView = function (options) { 2873 // Default Options 2874 var settings = $.extend({ 2875 // These are the defaults. 2876 id: 0, 2877 atts: '', 2878 ajax_url: '', 2879 sf: {}, 2880 current_month_divider: '', 2881 end_date: '', 2882 offset: 0, 2883 limit: 0, 2884 pagination: '0', 2885 infinite_locked: false, 2886 }, options); 2887 2888 var sf; 2889 2890 let history = []; 2891 const $next = $('#mec-nextprev-wrap-' + settings.id + ' .mec-nextprev-next-button'); 2892 const $prev = $('#mec-nextprev-wrap-' + settings.id + ' .mec-nextprev-prev-button'); 2893 2894 // Set onclick Listeners 2895 setListeners(); 2896 2897 function setListeners() { 2898 // Search Widget 2899 if ( settings.sf.container !== '' ) { 2900 sf = $(settings.sf.container).mecSearchForm({ 2901 id: settings.id, 2902 refine: settings.sf.refine, 2903 ajax_url: settings.ajax_url, 2904 start_date: settings.start_date, 2905 atts: settings.atts, 2906 callback: function (atts) { 2907 settings.atts = atts; 2908 search(); 2909 } 2910 }); 2911 2912 $(settings.sf.container).addClass('mec-skin-search-init'); 2913 } 2914 2915 // Load More 2916 $("#mec_skin_" + settings.id + " .mec-load-more-button").on("click", function () {
2917 loadMore(); 2918 }); 2919 2920 // Scroll 2921 if (settings.pagination === 'scroll') { 2922 $(window).on("scroll", function (event) { 2923 var $target = $("#mec_skin_" + settings.id + " .mec-load-more-wrap"); 2924 2925 // Check if target element exists 2926 if ($target.length === 0) return; 2927 2928 var finished = $target.data('page-finished'); 2929 if (finished) return; 2930 2931 var hT = $target.offset().top, 2932 hH = $target.outerHeight(), 2933 wH = $(window).height(), 2934 wS = $(this).scrollTop(); 2935 2936 if (wS + 100 > hT + hH - wH && !settings.infinite_locked) { 2937 settings.infinite_locked = true; 2938 $target.addClass('mec-load-more-scroll-loading'); 2939 loadMore(); 2940 } 2941 }); 2942 } 2943 2944 // Next Prev Pagination 2945 if(settings.pagination === 'nextprev') 2946 { 2947 // Events Wrapper 2948 const $EW = $("#mec_skin_events_" + settings.id); 2949 2950 let next_disabled = false; 2951 2952 // Previous Button 2953 $prev.on('click', function() 2954 { 2955 if(history.length) 2956 { 2957 let page = history.pop(); 2958 2959 // Display Events 2960 $EW.html(page.html); 2961 2962 // Update the variables 2963 settings.end_date = page.end_date; 2964 settings.offset = page.offset; 2965 settings.current_month_divider = page.current_month_divider; 2966 2967 // Display Next Button 2968 $next.removeClass('mec-util-hidden'); 2969 } 2970 2971 // Hide Previous Button 2972 if(!history.length) $prev.addClass('mec-util-hidden'); 2973 }); 2974 2975 // Next Button 2976 $next.on('click', function(e) 2977 { 2978 // Prevent Redirect 2979 e.preventDefault(); 2980 2981 // Currently Disabled 2982 if(next_disabled) return; 2983 2984 // Disable Button 2985 next_disabled = true; 2986 2987 // Add Loading Style 2988 $EW.addClass('mec-loading-events'); 2989 2990 // Push to History 2991 history.push({ 2992 end_date: settings.end_date, 2993 offset: settings.offset, 2994 current_month_divider: settings.current_month_divider, 2995 html: $EW.html() 2996 }); 2997 2998 loadMore(function(response) 2999 { 3000 // Display New Events 3001 if(response.count) $EW.html(response.html); 3002 // Remove Last Page 3003 else history.pop(); 3004 3005 // Enable Button 3006 next_disabled = false; 3007 3008 // Remove Loading Style 3009 $EW.removeClass('mec-loading-events'); 3010 3011 // Display Previous Button 3012 if(history.length) $prev.removeClass('mec-util-hidden'); 3013 3014 // Hide Next Button 3015 if(response.count === 0 || (typeof response.has_more_event !== 'undefined' && !response.has_more_event)) $next.addClass('mec-util-hidden'); 3016 }); 3017 }); 3018 } 3019 3020 // Accordion Toggle 3021 if (settings.style === 'accordion') { 3022 if (settings.toggle_month_divider) { 3023 $('#mec_skin_' + settings.id + ' .mec-month-divider:first-of-type').addClass('active'); 3024 $('#mec_skin_' + settings.id + ' .mec-month-divider:first-of-type').find('i').removeClass('mec-sl-arrow-down').addClass('mec-sl-arrow-up'); 3025 3026 toggle(); 3027 } 3028 3029 accordion(); 3030 } 3031 3032 // Single Event Method 3033 if (settings.sed_method != '0') { 3034 sed(); 3035 } 3036 } 3037
3038 function toggle() { 3039 $('#mec_skin_' + settings.id + ' .mec-month-divider').off("click").on("click", function (event) { 3040 event.preventDefault(); 3041 3042 var status = $(this).hasClass('active'); 3043 3044 // Remove Active Style of Month Divider 3045 $('#mec_skin_' + settings.id + ' .mec-month-divider').removeClass('active'); 3046 3047 // Hide All Events 3048 $('#mec_skin_' + settings.id + ' .mec-divider-toggle').slideUp('fast'); 3049 3050 if (status) { 3051 $(this).removeClass('active'); 3052 $('.mec-month-divider').find('i').removeClass('mec-sl-arrow-up').addClass('mec-sl-arrow-down'); 3053 } else { 3054 $(this).addClass('active'); 3055 $('.mec-month-divider').find('i').removeClass('mec-sl-arrow-up').addClass('mec-sl-arrow-down') 3056 $(this).find('i').removeClass('mec-sl-arrow-down').addClass('mec-sl-arrow-up'); 3057 3058 var month = $(this).data('toggle-divider'); 3059 $('#mec_skin_' + settings.id + ' .' + month).slideDown('fast'); 3060 } 3061 }); 3062 } 3063 3064 function toggleLoadmore() { 3065 $('#mec_skin_' + settings.id + ' .mec-month-divider:not(:last)').each(function () { 3066 if ($(this).hasClass('active')) $(this).removeClass('active'); 3067 var month = $(this).data('toggle-divider'); 3068 $('#mec_skin_' + settings.id + ' .' + month).slideUp('fast'); 3069 }); 3070 3071 // Set Active Class For Last Article 3072 $('#mec_skin_' + settings.id + ' .mec-month-divider:last').addClass('active'); 3073 3074 // Register Listeners 3075 toggle(); 3076 } 3077 3078 function accordion() { 3079 // Accordion Toggle 3080 $("#mec_skin_" + settings.id + " .mec-toggle-item-inner").off("click").on("click", function (event) { 3081 event.preventDefault(); 3082 3083 var $this = $(this); 3084 $(this).parent().find(".mec-content-toggle").slideToggle("fast", function () { 3085 $this.children("i").toggleClass("mec-sl-arrow-down mec-sl-arrow-up"); 3086 }); 3087 3088 // Trigger Google Map 3089 var unique_id = $(this).parent().find(".mec-modal-wrap").data('unique-id'); 3090 3091 if(typeof window['mec_init_gmap' + unique_id] === 'function') window['mec_init_gmap' + unique_id](); 3092 }); 3093 3094 $(document).trigger('mec_skin_accordion_init', settings ); 3095 } 3096 3097 function sed() { 3098 // Single Event Display 3099 $("#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) { 3100 e.preventDefault(); 3101 var href = $(this).attr('href'); 3102 3103 var id = $(this).data('event-id'); 3104 var occurrence = get_parameter_by_name('occurrence', href); 3105 var time = get_parameter_by_name('time', href); 3106 3107 if( 'undefined' == typeof id ){ 3108 return; 3109 } 3110 3111 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 3112 }); 3113 3114 $("#mec_skin_" + settings.id + " .mec-event-image a img").off('click').on('click', function (e) { 3115 e.preventDefault(); 3116 var href = $(this).parent().attr('href'); 3117 3118 var id = $(this).parent().data('event-id'); 3119 var occurrence = get_parameter_by_name('occurrence', href); 3120 var time = get_parameter_by_name('time', href); 3121 3122 if( 'undefined' == typeof id ){ 3123 return; 3124 } 3125 3126 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 3127 }); 3128 } 3129 3130 function loadMore(callback) { 3131 // Add loading Class 3132 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-load-more-loading"); 3133 3134 $.ajax({
3135 url: settings.ajax_url, 3136 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", 3137 dataType: "json", 3138 type: "post", 3139 success: function (response) { 3140 if (response.count === 0) { 3141 // Remove loading Class 3142 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading"); 3143 3144 // Release Lock of Infinite Scroll 3145 settings.infinite_locked = false; 3146 $("#mec_skin_" + settings.id + " .mec-load-more-wrap").removeClass('mec-load-more-scroll-loading'); 3147 3148 // Hide Pagination 3149 mec_toggle_shortcode_pagination(settings.id, 'hide'); 3150 3151 // Run Callback 3152 if(typeof callback === 'function') callback(response); 3153 } else { 3154 // Show load more button 3155 if (typeof response.has_more_event === 'undefined' || (typeof response.has_more_event !== 'undefined' && response.has_more_event)) mec_toggle_shortcode_pagination(settings.id, 'show'); 3156 else mec_toggle_shortcode_pagination(settings.id, 'hide'); 3157 3158 // Run Callback 3159 if(typeof callback === 'function') callback(response); 3160 // Append Items 3161 else $("#mec_skin_events_" + settings.id).append(response.html); 3162 3163 // Remove loading Class 3164 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading"); 3165 3166 // Update the variables 3167 settings.end_date = response.end_date; 3168 settings.offset = response.offset; 3169 settings.current_month_divider = response.current_month_divider; 3170 3171 // Single Event Method 3172 if (settings.sed_method != '0') { 3173 sed(); 3174 } 3175 3176 // Accordion Toggle 3177 if (settings.style === 'accordion') { 3178 if (settings.toggle_month_divider) toggleLoadmore(); 3179 3180 accordion(); 3181 } 3182 3183 // Release Lock of Infinite Scroll 3184 settings.infinite_locked = false; 3185 $("#mec_skin_" + settings.id + " .mec-load-more-wrap").removeClass('mec-load-more-scroll-loading'); 3186 } 3187 3188 $(document).trigger('mec_load_more_init',['list',settings]); 3189 }, 3190 error: function() {} 3191 }); 3192 } 3193 3194 function search() { 3195 // Hide no event message 3196 $("#mec_skin_no_events_" + settings.id).addClass("mec-util-hidden"); 3197 3198 var $loading_element = jQuery("#mec_skin_" + settings.id + " .mec-modal-result"); 3199 3200 // Add loading Class 3201 if($loading_element.length === 0) 3202 { 3203 jQuery("#mec_skin_" + settings.id).append('<div class="mec-modal-result"></div>'); 3204 $loading_element = jQuery("#mec_skin_" + settings.id + " .mec-modal-result"); 3205 } 3206 3207 $loading_element.addClass('mec-month-navigator-loading'); 3208 3209 jQuery("#gmap-data").val(""); 3210 history = []; 3211 $prev.addClass('mec-util-hidden'); 3212 3213 $.ajax({
3214 url: settings.ajax_url, 3215 data: "action=mec_list_load_more&mec_start_date=" + settings.start_date + "&" + settings.atts + "¤t_month_divider=0&apply_sf_date=1", 3216 dataType: "json", 3217 type: "post", 3218 success: function (response) { 3219 if (response.count === 0) { 3220 // Append Items 3221 $("#mec_skin_events_" + settings.id).html(''); 3222 3223 // Remove loading Class 3224 $loading_element.removeClass("mec-month-navigator-loading"); 3225 3226 // Hide Map 3227 $('.mec-skin-map-container').addClass("mec-util-hidden"); 3228 3229 // Hide pagination 3230 mec_toggle_shortcode_pagination(settings.id, 'hide'); 3231 3232 // Show no event message 3233 $("#mec_skin_no_events_" + settings.id).removeClass("mec-util-hidden"); 3234 } else { 3235 // Append Items 3236 $("#mec_skin_events_" + settings.id).html(response.html); 3237 3238 // Remove loading Class 3239 $loading_element.removeClass("mec-month-navigator-loading"); 3240 3241 // Show Map 3242 $('.mec-skin-map-container').removeClass("mec-util-hidden"); 3243 3244 // Show load more button 3245 if (response.count >= settings.limit) mec_toggle_shortcode_pagination(settings.id, 'show'); 3246 // Hide load more button 3247 else mec_toggle_shortcode_pagination(settings.id, 'hide'); 3248 3249 // Update the variables 3250 settings.end_date = response.end_date; 3251 settings.offset = response.offset; 3252 settings.current_month_divider = response.current_month_divider; 3253 3254 // Single Event Method 3255 if (settings.sed_method != '0') { 3256 sed(); 3257 } 3258 3259 // Accordion Toggle 3260 if (settings.style === 'accordion') { 3261 if (settings.toggle_month_divider) toggle(); 3262 3263 accordion(); 3264 } 3265 } 3266 3267 $(document).trigger('mec_search_init',['list',settings,response]); 3268 }, 3269 error: function () { } 3270 }); 3271 } 3272 }; 3273 3274}(jQuery)); 3275 3276// MEC GRID VIEW PLUGIN 3277(function ($) { 3278 $.fn.mecGridView = function (options) { 3279 // Default Options 3280 var settings = $.extend({ 3281 // These are the defaults. 3282 id: 0, 3283 atts: '', 3284 ajax_url: '', 3285 sf: {}, 3286 end_date: '', 3287 offset: 0, 3288 start_date: '', 3289 pagination: '0', 3290 infinite_locked: false, 3291 }, options); 3292 3293 var sf; 3294 3295 let history = []; 3296 const $next = $('#mec-nextprev-wrap-' + settings.id + ' .mec-nextprev-next-button'); 3297 const $prev = $('#mec-nextprev-wrap-' + settings.id + ' .mec-nextprev-prev-button'); 3298 3299 // Set onclick Listeners 3300 setListeners(); 3301 3302 function setListeners() { 3303 // Search Widget 3304 if ( settings.sf.container !== '' ) { 3305 sf = $(settings.sf.container).mecSearchForm({ 3306 id: settings.id, 3307 refine: settings.sf.refine, 3308 ajax_url: settings.ajax_url, 3309 start_date: settings.start_date, 3310 atts: settings.atts, 3311 callback: function (atts) { 3312 settings.atts = atts; 3313 search(); 3314 } 3315 }); 3316 3317 $(settings.sf.container).addClass('mec-skin-search-init'); 3318 } 3319 3320 // Load More 3321 $("#mec_skin_" + settings.id + " .mec-load-more-button").on("click", function () {
3322 loadMore(); 3323 }); 3324 3325 // Scroll 3326 if(settings.pagination === 'scroll') { 3327 $(window).on("scroll", function (event) { 3328 var $target = $("#mec_skin_" + settings.id + " .mec-load-more-wrap"); 3329 3330 var finished = $target.data('page-finished'); 3331 if(finished) return; 3332 3333 var hT = $target.offset().top, 3334 hH = $target.outerHeight(), 3335 wH = $(window).height(), 3336 wS = $(this).scrollTop(); 3337 3338 if (wS + 100 > hT + hH - wH && !settings.infinite_locked) { 3339 settings.infinite_locked = true; 3340 $target.addClass('mec-load-more-scroll-loading'); 3341 loadMore(); 3342 } 3343 }); 3344 } 3345 3346 // Next Prev Pagination 3347 if(settings.pagination === 'nextprev') 3348 { 3349 // Events Wrapper 3350 const $EW = $("#mec_skin_events_" + settings.id); 3351 3352 let next_disabled = false; 3353 3354 // Previous Button 3355 $prev.on('click', function() 3356 { 3357 if(history.length) 3358 { 3359 let page = history.pop(); 3360 3361 // Display Events 3362 $EW.html(page.html); 3363 3364 // Update the variables 3365 settings.end_date = page.end_date; 3366 settings.offset = page.offset; 3367 settings.current_month_divider = page.current_month_divider; 3368 3369 // Display Next Button 3370 $next.removeClass('mec-util-hidden'); 3371 } 3372 3373 // Hide Previous Button 3374 if(!history.length) $prev.addClass('mec-util-hidden'); 3375 }); 3376 3377 // Next Button 3378 $next.on('click', function(e) 3379 { 3380 // Prevent Redirect 3381 e.preventDefault(); 3382 3383 // Currently Disabled 3384 if(next_disabled) return; 3385 3386 // Disable Button 3387 next_disabled = true; 3388 3389 // Add Loading Style 3390 $EW.addClass('mec-loading-events'); 3391 3392 // Push to History 3393 history.push({ 3394 end_date: settings.end_date, 3395 offset: settings.offset, 3396 current_month_divider: settings.current_month_divider, 3397 html: $EW.html() 3398 }); 3399 3400 loadMore(function(response) 3401 { 3402 // Display New Events 3403 if(response.count) $EW.html(response.html); 3404 // Remove Last Page 3405 else history.pop(); 3406 3407 // Enable Button 3408 next_disabled = false; 3409 3410 // Remove Loading Style 3411 $EW.removeClass('mec-loading-events'); 3412 3413 // Display Previous Button 3414 if(history.length) $prev.removeClass('mec-util-hidden'); 3415 // Hide Next Button 3416 if(response.count === 0 || (typeof response.has_more_event !== 'undefined' && !response.has_more_event)) $next.addClass('mec-util-hidden'); 3417 }); 3418 }); 3419 } 3420 3421 // Single Event Method 3422 if (settings.sed_method != '0') { 3423 sed(); 3424 } 3425 } 3426 3427 function sed() { 3428 // Single Event Display 3429 $("#mec_skin_" + settings.id + " .mec-event-title a, #mec_skin_" + settings.id + " .mec-booking-button").off('click').on('click', function (e) { 3430 e.preventDefault(); 3431 var href = $(this).attr('href'); 3432 3433 var id = $(this).data('event-id'); 3434 var occurrence = get_parameter_by_name('occurrence', href); 3435 var time = get_parameter_by_name('time', href); 3436 3437 if( 'undefined' == typeof id ){ 3438 return; 3439 } 3440 3441 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 3442 }); 3443 $("#mec_skin_" + settings.id + " .mec-event-image a img").off('click').on('click', function (e) { 3444 e.preventDefault(); 3445 var href = $(this).parent().attr('href'); 3446 3447 var id = $(this).parent().data('event-id'); 3448 var occurrence = get_parameter_by_name('occurrence', href); 3449 var time = get_parameter_by_name('time', href); 3450 3451 if( 'undefined' == typeof id ){ 3452 return; 3453 } 3454 3455 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 3456 }); 3457 } 3458 3459 function loadMore(callback) { 3460 // Add loading Class 3461 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-load-more-loading"); 3462 3463 $.ajax({
3464 url: settings.ajax_url, 3465 data: "action=mec_grid_load_more&mec_start_date=" + settings.end_date + "&mec_offset=" + settings.offset + "&" + settings.atts + "&apply_sf_date=0", 3466 dataType: "json", 3467 type: "post", 3468 success: function (response) { 3469 if (response.count === 0) { 3470 // Remove loading Class 3471 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading").addClass("mec-util-hidden"); 3472 3473 // Release Lock of Infinite Scroll 3474 settings.infinite_locked = false; 3475 $("#mec_skin_" + settings.id + " .mec-load-more-wrap").data('page-finished', true).removeClass('mec-load-more-scroll-loading'); 3476 3477 // Run Callback 3478 if(typeof callback === 'function') callback(response); 3479 } else { 3480 // Show load more button 3481 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"); 3482 else $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 3483 3484 // Run Callback 3485 if(typeof callback === 'function') callback(response); 3486 // Append Items 3487 else $("#mec_skin_events_" + settings.id).append(response.html); 3488 3489 // Remove loading Class 3490 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading"); 3491 3492 // Update the variables 3493 settings.end_date = response.end_date; 3494 settings.offset = response.offset; 3495 3496 // Single Event Method 3497 if (settings.sed_method != '0') { 3498 sed(); 3499 } 3500 3501 // Release Lock of Infinite Scroll 3502 settings.infinite_locked = false; 3503 $("#mec_skin_" + settings.id + " .mec-load-more-wrap").removeClass('mec-load-more-scroll-loading'); 3504 } 3505 3506 $(document).trigger('mec_load_more_init',['grid',settings]); 3507 }, 3508 error: function () { } 3509 }); 3510 } 3511 3512 function search() { 3513 // Hide no event message 3514 $("#mec_skin_no_events_" + settings.id).addClass("mec-util-hidden"); 3515 3516 // Add loading Class 3517 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 3518 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 3519 jQuery("#gmap-data").val(""); 3520 3521 $.ajax({
3522 url: settings.ajax_url, 3523 data: "action=mec_grid_load_more&mec_start_date=" + settings.start_date + "&" + settings.atts + "&apply_sf_date=1", 3524 dataType: "json", 3525 type: "post", 3526 success: function (response) { 3527 if (response.count === 0) { 3528 // Append Items 3529 $("#mec_skin_events_" + settings.id).html(''); 3530 3531 // Remove loading Class 3532 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 3533 3534 // Hide Map 3535 $('.mec-skin-map-container').addClass("mec-util-hidden"); 3536 3537 // Hide it 3538 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 3539 3540 // Show no event message 3541 $("#mec_skin_no_events_" + settings.id).removeClass("mec-util-hidden"); 3542 } else { 3543 // Append Items 3544 $("#mec_skin_events_" + settings.id).html(response.html); 3545 3546 // Remove loading Class 3547 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 3548 3549 // Show Map 3550 $('.mec-skin-map-container').removeClass("mec-util-hidden"); 3551 3552 // Show load more button 3553 if (response.count >= settings.limit) $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-util-hidden"); 3554 // Hide load more button 3555 else $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 3556 3557 // Update the variables 3558 settings.end_date = response.end_date; 3559 settings.offset = response.offset; 3560 3561 // Single Event Method 3562 if (settings.sed_method != '0') { 3563 sed(); 3564 } 3565 } 3566 3567 $(document).trigger('mec_search_init',['grid',settings,response]); 3568 }, 3569 error: function () { } 3570 }); 3571 } 3572 }; 3573 3574}(jQuery)); 3575 3576// MEC CUSTOM VIEW PLUGIN 3577(function ($) { 3578 $.fn.mecCustomView = function (options) { 3579 // Default Options 3580 var settings = $.extend({ 3581 // These are the defaults. 3582 id: 0, 3583 atts: '', 3584 ajax_url: '', 3585 sf: {}, 3586 end_date: '', 3587 offset: 0, 3588 start_date: '', 3589 pagination: '0', 3590 infinite_locked: false, 3591 }, options); 3592 3593 // Set onclick Listeners 3594 setListeners(); 3595 3596 var sf; 3597 3598 function setListeners() { 3599 // Search Widget 3600 if ( settings.sf.container !== '' ) { 3601 sf = $(settings.sf.container).mecSearchForm({ 3602 id: settings.id, 3603 refine: settings.sf.refine, 3604 ajax_url: settings.ajax_url, 3605 start_date: settings.start_date, 3606 atts: settings.atts, 3607 callback: function (atts) { 3608 settings.atts = atts; 3609 search(); 3610 } 3611 }); 3612 3613 $(settings.sf.container).addClass('mec-skin-search-init'); 3614 } 3615 3616 // Load More 3617 $("#mec_skin_" + settings.id + " .mec-load-more-button").on("click", function () { 3618 loadMore(); 3619 }); 3620 3621 // Scroll 3622 if(settings.pagination === 'scroll') { 3623 $(window).on("scroll", function (event) { 3624 var $target = $("#mec_skin_" + settings.id + " .mec-load-more-wrap"); 3625 3626 var finished = $target.data('page-finished'); 3627 if(finished) return; 3628 3629 var hT = $target.offset().top, 3630 hH = $target.outerHeight(), 3631 wH = $(window).height(), 3632 wS = $(this).scrollTop(); 3633 3634 if (wS + 100 >
3634 hT + hH - wH && !settings.infinite_locked) { 3635 settings.infinite_locked = true; 3636 $target.addClass('mec-load-more-scroll-loading'); 3637 loadMore(); 3638 } 3639 }); 3640 } 3641 3642 // Single Event Method 3643 if (settings.sed_method != '0') { 3644 sed(); 3645 } 3646 } 3647 3648 function sed() { 3649 // Single Event Display 3650 $("#mec_skin_" + settings.id + " .mec-event-title a, #mec_skin_" + settings.id + " .mec-booking-button").off('click').on('click', function (e) { 3651 e.preventDefault(); 3652 var href = $(this).attr('href'); 3653 3654 var id = $(this).data('event-id'); 3655 var occurrence = get_parameter_by_name('occurrence', href); 3656 var time = get_parameter_by_name('time', href); 3657 3658 if( 'undefined' == typeof id ){ 3659 return; 3660 } 3661 3662 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 3663 }); 3664 $("#mec_skin_" + settings.id + " .mec-event-image a img").off('click').on('click', function (e) { 3665 e.preventDefault(); 3666 var href = $(this).parent().attr('href'); 3667 3668 var id = $(this).parent().data('event-id'); 3669 var occurrence = get_parameter_by_name('occurrence', href); 3670 var time = get_parameter_by_name('time', href); 3671 3672 if( 'undefined' == typeof id ){ 3673 return; 3674 } 3675 3676 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 3677 }); 3678 } 3679 3680 function loadMore() { 3681 // Add loading Class 3682 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-load-more-loading"); 3683 3684 $.ajax({
3685 url: settings.ajax_url, 3686 data: "action=mec_custom_load_more&mec_start_date=" + settings.end_date + "&mec_offset=" + settings.offset + "&" + settings.atts + "&apply_sf_date=0", 3687 dataType: "json", 3688 type: "post", 3689 success: function (response) { 3690 if (response.count === 0) { 3691 // Remove loading Class 3692 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading").addClass("mec-util-hidden"); 3693 3694 // Release Lock of Infinite Scroll 3695 settings.infinite_locked = false; 3696 $("#mec_skin_" + settings.id + " .mec-load-more-wrap").data('page-finished', true).removeClass('mec-load-more-scroll-loading'); 3697 } else { 3698 // Show load more button 3699 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"); 3700 else $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 3701 3702 var html = $(response.html); 3703 if ($('.mec-month-divider', html).length) { 3704 var df = $('.mec-month-divider:first', html).data('toggle-divider'); 3705 var dl = $("#mec_skin_events_" + settings.id + " .mec-month-divider:last").data('toggle-divider'); 3706 3707 if (df == dl) { 3708 $(html).find('.mec-month-divider:first').remove(); 3709 response.html = html; 3710 } 3711 3712 } 3713 3714 // Append Items 3715 $("#mec_skin_events_" + settings.id).append(response.html); 3716 3717 // Remove loading Class 3718 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading"); 3719 3720 // Update the variables 3721 settings.end_date = response.end_date; 3722 settings.offset = response.offset; 3723 3724 if ($('.mec-event-sd-countdown').length > 0) { 3725 $('.mec-event-sd-countdown').each(function (event) { 3726 var dc = $(this).attr('data-date-custom'); 3727 $(this).mecCountDown( 3728 { 3729 date: dc, 3730 format: "off" 3731 }, 3732 function () { 3733 }); 3734 }) 3735 } 3736 // Single Event Method 3737 if (settings.sed_method != '0') { 3738 sed(); 3739 } 3740 3741 // Release Lock of Infinite Scroll 3742 settings.infinite_locked = false; 3743 $("#mec_skin_" + settings.id + " .mec-load-more-wrap").removeClass('mec-load-more-scroll-loading'); 3744 3745 } 3746 3747 $(document).trigger('mec_load_more_init',['custom',settings]); 3748 }, 3749 error: function () { } 3750 }); 3751 } 3752 3753 function search() { 3754 // Hide no event message 3755 $("#mec_skin_no_events_" + settings.id).addClass("mec-util-hidden"); 3756 3757 // Add loading Class 3758 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 3759 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 3760 jQuery("#gmap-data").val(""); 3761 3762 $.ajax({
3763 url: settings.ajax_url, 3764 data: "action=mec_custom_load_more&mec_start_date=" + settings.start_date + "&" + settings.atts + "&apply_sf_date=1", 3765 dataType: "json", 3766 type: "post", 3767 success: function (response) { 3768 if (response.count === 0) { 3769 // Append Items 3770 $("#mec_skin_events_" + settings.id).html(''); 3771 3772 // Remove loading Class 3773 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 3774 3775 // Hide Map 3776 $('.mec-skin-map-container').addClass("mec-util-hidden"); 3777 3778 // Hide it 3779 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 3780 3781 // Show no event message 3782 $("#mec_skin_no_events_" + settings.id).removeClass("mec-util-hidden"); 3783 } else { 3784 // Append Items 3785 $("#mec_skin_events_" + settings.id).html(response.html); 3786 3787 // Remove loading Class 3788 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 3789 3790 // Show Map 3791 $('.mec-skin-map-container').removeClass("mec-util-hidden"); 3792 3793 // Show load more button 3794 if (response.count >= settings.limit) $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-util-hidden"); 3795 // Hide load more button 3796 else $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 3797 3798 // Update the variables 3799 settings.end_date = response.end_date; 3800 settings.offset = response.offset; 3801 3802 // Single Event Method 3803 if (settings.sed_method != '0') { 3804 sed(); 3805 } 3806 } 3807 3808 $(document).trigger('mec_search_init',['custom',settings,response]); 3809 }, 3810 error: function () { } 3811 }); 3812 } 3813 }; 3814 3815}(jQuery)); 3816 3817// MEC TIMELINE VIEW PLUGIN 3818(function ($) { 3819 $.fn.mecTimelineView = function (options) { 3820 // Default Options 3821 var settings = $.extend({ 3822 // These are the defaults. 3823 id: 0, 3824 atts: '', 3825 ajax_url: '', 3826 sf: {}, 3827 end_date: '', 3828 offset: 0, 3829 start_date: '', 3830 pagination: '0', 3831 infinite_locked: false, 3832 }, options); 3833 3834 var sf; 3835 3836 let history = []; 3837 const $next = $('#mec-nextprev-wrap-' + settings.id + ' .mec-nextprev-next-button'); 3838 const $prev = $('#mec-nextprev-wrap-' + settings.id + ' .mec-nextprev-prev-button'); 3839 3840 // Set onclick Listeners 3841 setListeners(); 3842 3843 function setListeners() { 3844 // Search Widget 3845 if ( settings.sf.container !== '' ) { 3846 sf = $(settings.sf.container).mecSearchForm({ 3847 id: settings.id, 3848 refine: settings.sf.refine, 3849 ajax_url: settings.ajax_url, 3850 start_date: settings.start_date, 3851 atts: settings.atts, 3852 callback: function (atts) { 3853 settings.atts = atts; 3854 search(); 3855 } 3856 }); 3857 3858 $(settings.sf.container).addClass('mec-skin-search-init'); 3859 } 3860 3861 // Load More 3862 $("#mec_skin_" + settings.id + " .mec-load-more-button").on("click", function () { 3863 loadMore(); 3864 }); 3865 3866 // Scroll 3867 if(settings.pagination === 'scroll') { 3868 $(window).on("scroll", function (event) { 3869 var $target = $("#mec_skin_" + settings.id + " .mec-load-more-wrap"); 3870 3871 var finished = $target.data('page-finished'); 3872 if(finished) return; 3873 3874 var hT = $target.offset().top, 3875 hH = $target.outerHeight(), 3876 wH = $(window).height(), 3877 wS = $(this).scrollTop(); 3878 3879 if (wS + 100 >
3879 hT + hH - wH && !settings.infinite_locked) { 3880 settings.infinite_locked = true; 3881 $target.addClass('mec-load-more-scroll-loading'); 3882 loadMore(); 3883 } 3884 }); 3885 } 3886 3887 // Next Prev Pagination 3888 if(settings.pagination === 'nextprev') 3889 { 3890 // Events Wrapper 3891 const $EW = $("#mec_skin_events_" + settings.id); 3892 3893 let next_disabled = false; 3894 3895 // Previous Button 3896 $prev.on('click', function() 3897 { 3898 if(history.length) 3899 { 3900 let page = history.pop(); 3901 3902 // Display Events 3903 $EW.html(page.html); 3904 3905 // Update the variables 3906 settings.end_date = page.end_date; 3907 settings.offset = page.offset; 3908 settings.current_month_divider = page.current_month_divider; 3909 3910 // Display Next Button 3911 $next.removeClass('mec-util-hidden'); 3912 } 3913 3914 // Hide Previous Button 3915 if(!history.length) $prev.addClass('mec-util-hidden'); 3916 }); 3917 3918 // Next Button 3919 $next.on('click', function(e) 3920 { 3921 // Prevent Redirect 3922 e.preventDefault(); 3923 3924 // Currently Disabled 3925 if(next_disabled) return; 3926 3927 // Disable Button 3928 next_disabled = true; 3929 3930 // Add Loading Style 3931 $EW.addClass('mec-loading-events'); 3932 3933 // Push to History 3934 history.push({ 3935 end_date: settings.end_date, 3936 offset: settings.offset, 3937 current_month_divider: settings.current_month_divider, 3938 html: $EW.html() 3939 }); 3940 3941 loadMore(function(response) 3942 { 3943 // Display New Events 3944 if(response.count) $EW.html(response.html); 3945 // Remove Last Page 3946 else history.pop(); 3947 3948 // Enable Button 3949 next_disabled = false; 3950 3951 // Remove Loading Style 3952 $EW.removeClass('mec-loading-events'); 3953 3954 // Display Previous Button 3955 if(history.length) $prev.removeClass('mec-util-hidden'); 3956 // Hide Next Button 3957 if(response.count === 0 || (typeof response.has_more_event !== 'undefined' && !response.has_more_event)) $next.addClass('mec-util-hidden'); 3958 }); 3959 }); 3960 } 3961 3962 // Single Event Method 3963 if (settings.sed_method != '0') { 3964 sed(); 3965 } 3966 } 3967 3968 function sed() { 3969 // Single Event Display 3970 $("#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) { 3971 e.preventDefault(); 3972 var href = $(this).attr('href'); 3973 3974 var id = $(this).data('event-id'); 3975 var occurrence = get_parameter_by_name('occurrence', href); 3976 var time = get_parameter_by_name('time', href); 3977 3978 if( 'undefined' == typeof id ){ 3979 return; 3980 } 3981 3982 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 3983 }); 3984 $("#mec_skin_" + settings.id + " .mec-event-image a img").off('click').on('click', function (e) { 3985 e.preventDefault(); 3986 var href = $(this).parent().attr('href'); 3987 3988 var id = $(this).parent().data('event-id'); 3989 var occurrence = get_parameter_by_name('occurrence', href); 3990 var time = get_parameter_by_name('time', href); 3991 3992 if( 'undefined' == typeof id ){ 3993 return; 3994 } 3995 3996 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 3997 }); 3998 } 3999 4000 function loadMore(callback) { 4001 // Add loading Class 4002 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-load-more-loading"); 4003 4004 $.ajax({
4005 url: settings.ajax_url, 4006 data: "action=mec_timeline_load_more&mec_start_date=" + settings.end_date + "&mec_offset=" + settings.offset + "&" + settings.atts + "&apply_sf_date=0", 4007 dataType: "json", 4008 type: "post", 4009 success: function (response) { 4010 if (response.count === 0) { 4011 // Remove loading Class 4012 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading").addClass("mec-util-hidden"); 4013 4014 // Release Lock of Infinite Scroll 4015 settings.infinite_locked = false; 4016 $("#mec_skin_" + settings.id + " .mec-load-more-wrap").data('page-finished', true).removeClass('mec-load-more-scroll-loading'); 4017 4018 // Run Callback 4019 if(typeof callback === 'function') callback(response); 4020 } else { 4021 // Show load more button 4022 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"); 4023 else $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 4024 4025 // Run Callback 4026 if(typeof callback === 'function') callback(response); 4027 // Append Items 4028 else $("#mec_skin_events_" + settings.id).append(response.html); 4029 4030 // Remove loading Class 4031 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading"); 4032 4033 // Update the variables 4034 settings.end_date = response.end_date; 4035 settings.offset = response.offset; 4036 4037 // Single Event Method 4038 if (settings.sed_method != '0') { 4039 sed(); 4040 } 4041 4042 // Release Lock of Infinite Scroll 4043 settings.infinite_locked = false; 4044 $("#mec_skin_" + settings.id + " .mec-load-more-wrap").removeClass('mec-load-more-scroll-loading'); 4045 } 4046 4047 $(document).trigger('mec_load_more_init',['timeline',settings]); 4048 }, 4049 error: function () { } 4050 }); 4051 } 4052 4053 function search() { 4054 // Hide no event message 4055 $("#mec_skin_no_events_" + settings.id).addClass("mec-util-hidden"); 4056 4057 // Add loading Class 4058 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 4059 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 4060 4061 $.ajax({
4062 url: settings.ajax_url, 4063 data: "action=mec_timeline_load_more&mec_start_date=" + settings.start_date + "&" + settings.atts + "&apply_sf_date=1", 4064 dataType: "json", 4065 type: "post", 4066 success: function (response) { 4067 if (response.count === 0) { 4068 // Append Items 4069 $("#mec_skin_events_" + settings.id).html(''); 4070 4071 // Remove loading Class 4072 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 4073 4074 // Hide Map 4075 $('.mec-skin-map-container').addClass("mec-util-hidden"); 4076 4077 // Hide it 4078 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 4079 4080 // Show no event message 4081 $("#mec_skin_no_events_" + settings.id).removeClass("mec-util-hidden"); 4082 } else { 4083 // Append Items 4084 $("#mec_skin_events_" + settings.id).html(response.html); 4085 4086 // Remove loading Class 4087 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 4088 4089 // Show Map 4090 $('.mec-skin-map-container').removeClass("mec-util-hidden"); 4091 4092 // Show load more button 4093 if (response.count >= settings.limit) $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-util-hidden"); 4094 // Hide load more button 4095 else $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 4096 4097 // Update the variables 4098 settings.end_date = response.end_date; 4099 settings.offset = response.offset; 4100 4101 // Single Event Method 4102 if (settings.sed_method != '0') { 4103 sed(); 4104 } 4105 } 4106 4107 $(document).trigger('mec_search_init',['timeline',settings,response]); 4108 }, 4109 error: function () { } 4110 }); 4111 } 4112 }; 4113 4114}(jQuery)); 4115 4116// MEC AGENDA VIEW PLUGIN 4117(function ($) { 4118 $.fn.mecAgendaView = function (options) { 4119 // Default Options 4120 var settings = $.extend({ 4121 // These are the defaults. 4122 id: 0, 4123 atts: '', 4124 ajax_url: '', 4125 sf: {}, 4126 current_month_divider: '', 4127 end_date: '', 4128 offset: 0, 4129 pagination: '0', 4130 infinite_locked: false, 4131 }, options); 4132 4133 var sf; 4134 4135 let history = []; 4136 const $next = $('#mec-nextprev-wrap-' + settings.id + ' .mec-nextprev-next-button'); 4137 const $prev = $('#mec-nextprev-wrap-' + settings.id + ' .mec-nextprev-prev-button'); 4138 4139 // Set onclick Listeners 4140 setListeners(); 4141 4142 function setListeners() { 4143 // Search Widget 4144 if ( settings.sf.container !== '' ) { 4145 sf = $(settings.sf.container).mecSearchForm({ 4146 id: settings.id, 4147 refine: settings.sf.refine, 4148 ajax_url: settings.ajax_url, 4149 start_date: settings.start_date, 4150 atts: settings.atts, 4151 callback: function (atts) { 4152 settings.atts = atts; 4153 search(); 4154 } 4155 }); 4156 4157 $(settings.sf.container).addClass('mec-skin-search-init'); 4158 } 4159 4160 // Load More 4161 $("#mec_skin_" + settings.id + " .mec-load-more-button").on("click", function () { 4162 loadMore(); 4163 }); 4164 4165 // Scroll 4166 if(settings.pagination === 'scroll') { 4167 $(window).on("scroll", function (event) { 4168 var $target = $("#mec_skin_" + settings.id + " .mec-load-more-wrap"); 4169 4170 var finished = $target.data('page-finished'); 4171 if(finished) return; 4172 4173 var hT = $target.offset().top, 4174 hH = $target.outerHeight(), 4175 wH = $(window).height(), 4176 wS = $(this).scrollTop(); 4177 4178 if (wS + 100 >
4178 hT + hH - wH && !settings.infinite_locked) { 4179 settings.infinite_locked = true; 4180 $target.addClass('mec-load-more-scroll-loading'); 4181 loadMore(); 4182 } 4183 }); 4184 } 4185 4186 // Next Prev Pagination 4187 if(settings.pagination === 'nextprev') 4188 { 4189 // Events Wrapper 4190 const $EW = $("#mec_skin_events_" + settings.id + " .mec-events-agenda-container"); 4191 4192 let next_disabled = false; 4193 4194 // Previous Button 4195 $prev.on('click', function() 4196 { 4197 if(history.length) 4198 { 4199 let page = history.pop(); 4200 4201 // Display Events 4202 $EW.html(page.html); 4203 4204 // Update the variables 4205 settings.end_date = page.end_date; 4206 settings.offset = page.offset; 4207 settings.current_month_divider = page.current_month_divider; 4208 4209 // Display Next Button 4210 $next.removeClass('mec-util-hidden'); 4211 } 4212 4213 // Hide Previous Button 4214 if(!history.length) $prev.addClass('mec-util-hidden'); 4215 }); 4216 4217 // Next Button 4218 $next.on('click', function(e) 4219 { 4220 // Prevent Redirect 4221 e.preventDefault(); 4222 4223 // Currently Disabled 4224 if(next_disabled) return; 4225 4226 // Disable Button 4227 next_disabled = true; 4228 4229 // Add Loading Style 4230 $EW.addClass('mec-loading-events'); 4231 4232 // Push to History 4233 history.push({ 4234 end_date: settings.end_date, 4235 offset: settings.offset, 4236 current_month_divider: settings.current_month_divider, 4237 html: $EW.html() 4238 }); 4239 4240 loadMore(function(response) 4241 { 4242 // Display New Events 4243 if(response.count) $EW.html(response.html); 4244 // Remove Last Page 4245 else history.pop(); 4246 4247 // Enable Button 4248 next_disabled = false; 4249 4250 // Remove Loading Style 4251 $EW.removeClass('mec-loading-events'); 4252 4253 // Display Previous Button 4254 if(history.length) $prev.removeClass('mec-util-hidden'); 4255 // Hide Next Button 4256 if(response.count === 0 || (typeof response.has_more_event !== 'undefined' && !response.has_more_event)) $next.addClass('mec-util-hidden'); 4257 }); 4258 }); 4259 } 4260 4261 // Single Event Method 4262 if (settings.sed_method != '0') { 4263 sed(); 4264 } 4265 } 4266 4267 function sed() { 4268 // Single Event Display 4269 $("#mec_skin_" + settings.id + " .mec-agenda-event-title a").off('click').on('click', function (e) { 4270 var sed_method = $(this).attr('target'); 4271 if ('_blank' === sed_method) { 4272 4273 return; 4274 } 4275 e.preventDefault(); 4276 var href = $(this).attr('href'); 4277 4278 var id = $(this).data('event-id'); 4279 var occurrence = get_parameter_by_name('occurrence', href); 4280 var time = get_parameter_by_name('time', href); 4281 4282 if( 'undefined' == typeof id ){ 4283 return; 4284 } 4285 4286 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 4287 }); 4288 } 4289 4290 function loadMore(callback) { 4291 // Add loading Class 4292 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-load-more-loading"); 4293 4294 $.ajax({
4295 url: settings.ajax_url, 4296 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", 4297 dataType: "json", 4298 type: "post", 4299 success: function (response) { 4300 if (response.count === 0) { 4301 // Remove loading Class 4302 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading").addClass("mec-util-hidden"); 4303 4304 // Release Lock of Infinite Scroll 4305 settings.infinite_locked = false; 4306 $("#mec_skin_" + settings.id + " .mec-load-more-wrap").data('page-finished', true).removeClass('mec-load-more-scroll-loading'); 4307 4308 // Run Callback 4309 if(typeof callback === 'function') callback(response); 4310 } else { 4311 // Show load more button 4312 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"); 4313 else $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 4314 4315 // Run Callback 4316 if(typeof callback === 'function') callback(response); 4317 // Append Items 4318 else $("#mec_skin_events_" + settings.id + " .mec-events-agenda-container").append(response.html); 4319 4320 // Remove loading Class 4321 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading"); 4322 4323 // Update the variables 4324 settings.end_date = response.end_date; 4325 settings.offset = response.offset; 4326 settings.current_month_divider = response.current_month_divider; 4327 4328 // Single Event Method 4329 if (settings.sed_method != '0') { 4330 sed(); 4331 } 4332 mecFluentCustomScrollbar(); 4333 4334 // Release Lock of Infinite Scroll 4335 settings.infinite_locked = false; 4336 $("#mec_skin_" + settings.id + " .mec-load-more-wrap").removeClass('mec-load-more-scroll-loading'); 4337 } 4338 4339 $(document).trigger('mec_load_more_init',['agenda',settings]); 4340 }, 4341 error: function () { } 4342 }); 4343 } 4344 4345 function search() { 4346 // Hide no event message 4347 $("#mec_skin_no_events_" + settings.id).addClass("mec-util-hidden"); 4348 4349 // Add loading Class 4350 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 4351 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 4352 mecFluentCustomScrollbar(); 4353 4354 $.ajax({
4355 url: settings.ajax_url, 4356 data: "action=mec_agenda_load_more&mec_start_date=" + settings.start_date + "&" + settings.atts + "¤t_month_divider=0&apply_sf_date=1", 4357 dataType: "json", 4358 type: "post", 4359 success: function (response) { 4360 if (response.count === 0) { 4361 // Append Items 4362 $("#mec_skin_events_" + settings.id + " .mec-events-agenda-container").html(''); 4363 4364 // Remove loading Class 4365 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 4366 4367 // Hide it 4368 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 4369 4370 // Show no event message 4371 $("#mec_skin_no_events_" + settings.id).removeClass("mec-util-hidden"); 4372 } else { 4373 // Append Items 4374 $("#mec_skin_events_" + settings.id + " .mec-events-agenda-container").html(response.html); 4375 4376 // Remove loading Class 4377 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 4378 4379 // Show load more button 4380 if (response.count >= settings.limit) $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-util-hidden"); 4381 // Hide load more button 4382 else $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 4383 4384 // Update the variables 4385 settings.end_date = response.end_date; 4386 settings.offset = response.offset; 4387 settings.current_month_divider = response.current_month_divider; 4388 4389 // Single Event Method 4390 if (settings.sed_method != '0') { 4391 sed(); 4392 } 4393 } 4394 mecFluentCustomScrollbar(); 4395 4396 $(document).trigger('mec_search_init',['agenda',settings,response]); 4397 }, 4398 error: function () { } 4399 }); 4400 } 4401 }; 4402}(jQuery)); 4403 4404// MEC CAROUSEL VIEW PLUGIN 4405(function ($) { 4406 $.fn.mecCarouselView = function (options) { 4407 // Default Options 4408 var settings = $.extend({ 4409 // These are the defaults. 4410 id: 0, 4411 atts: '', 4412 ajax_url: '', 4413 sf: {}, 4414 items: 3, 4415 items_mobile: 1, 4416 items_tablet: 2, 4417 loop: true, 4418 autoplay_status: true, 4419 autoplay: '', 4420 style: 'type1', 4421 start_date: '' 4422 }, options); 4423 4424 // Init Sliders 4425 initSlider(settings); 4426 4427 // Single Event Method 4428 if (settings.sed_method != '0') { 4429 sed(settings); 4430 } 4431 4432 function initSlider(settings) { 4433 // Check RTL website 4434 if ($('body').hasClass('rtl')) { 4435 var owl_rtl = true; 4436 } else { 4437 var owl_rtl = false; 4438 } 4439 4440 if (settings.style === 'type1') { 4441 // Start carousel skin 4442 var owl = $("#mec_skin_" + settings.id + " .mec-event-carousel-type1 .mec-owl-carousel"); 4443 4444 owl.owlCarousel({ 4445 autoplay: settings.autoplay_status, 4446 autoplayTimeout: settings.autoplay, // Set AutoPlay to 3 seconds 4447 loop: settings.loop, 4448 items: settings.items, 4449 dots: true, 4450 nav: false, 4451 autoplayHoverPause: settings.autoplay_status, 4452 rtl: owl_rtl, 4453 navElement: 'button type="button" role="button"', 4454 responsiveClass: true, 4455 responsive: { 4456 0: { 4457 items: settings.items_mobile, 4458 }, 4459 768: { 4460 items: settings.items_tablet, 4461 }, 4462 1199: { 4463 items: settings.items, 4464 } 4465 }, 4466 }); 4467 4468 if (settings.autoplay_status) { 4469 owl.bind( 4470 "mouseleave", 4471 function (event) { 4472 $("#mec_skin_" + settings.id + " .mec-owl-carousel").trigger('play.owl.autoplay'); 4473 } 4474 ); 4475 } 4476 } else if (settings.style === 'type4') { 4477 $("#mec_skin_" + settings.id + " .mec-owl-carousel").owlCarousel({ 4478 autoplay: settings.autoplay_status, 4479 loop: settings.loop, 4480 autoplayTimeout: settings.autoplay, 4481 items: settings.items, 4482 dots: false, 4483 nav: true, 4484 autoplayHoverPause: settings.autoplay_status, 4485 navText: ["<i class='mec-sl-arrow-left' aria-label='Previous'></i>", " <i class='mec-sl-arrow-right' aria-label='Next'></i>"], 4486 navElement: 'button type="button" role="button"', 4487 rtl: owl_rtl, 4488 responsiveClass: true, 4489 responsive: { 4490 0: { 4491 items: settings.items_mobile, 4492 stagePadding: 50, 4493 }, 4494 768: { 4495 items: settings.items_tablet, 4496 }, 4497 1199: { 4498 items: settings.items, 4499 } 4500 }, 4501 }); 4502 4503 if (settings.autoplay_status) { 4504 $("#mec_skin_" + settings.id + " .mec-owl-carousel").bind( 4505 "mouseleave", 4506 function (event) { 4507 $("#mec_skin_" + settings.id + " .mec-owl-carousel").trigger('play.owl.autoplay'); 4508 } 4509 ); 4510 } 4511 } else { 4512 $("#mec_skin_" + settings.id + " .mec-owl-carousel").owlCarousel({ 4513 autoplay: settings.autoplay_status, 4514 loop: settings.loop, 4515 autoplayTimeout: settings.autoplay, 4516 items: settings.items, 4517 dots: typeof settings.dots_navigation != 'undefined' ? settings.dots_navigation : false, 4518 nav: typeof settings.navigation != 'undefined' ? settings.navigation : true, 4519 autoplayHoverPause: settings.autoplay_status, 4520 navText: typeof settings.navText != 'undefined' ? settings.navText : ["<i class='mec-sl-arrow-left' aria-label='Previous'></i>", " <i class='mec-sl-arrow-right' aria-label='Next'></i>"], 4521 navElement: 'button type="button" role="button"', 4522 rtl: owl_rtl, 4523 responsiveClass: true, 4524 responsive: { 4525 0: { 4526 items: settings.items_mobile, 4527 }, 4528 768: { 4529 items: settings.items_tablet, 4530 }, 4531 1199: { 4532 items: settings.items, 4533 } 4534 }, 4535 }); 4536 4537 if (settings.autoplay_status) { 4538 $("#mec_skin_" + settings.id + " .mec-owl-carousel").bind( 4539 "mouseleave", 4540 function (event) { 4541 $("#mec_skin_" + settings.id + " .mec-owl-carousel").trigger('play.owl.autoplay'); 4542 } 4543 ); 4544 } 4545 } 4546 } 4547 }; 4548 4549 function sed(settings) { 4550 // Single Event Display
4551 $("#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) { 4552 var sed_method = $(this).attr('target'); 4553 if ('_blank' === sed_method) { 4554 4555 return; 4556 } 4557 e.preventDefault(); 4558 var href = $(this).attr('href'); 4559 4560 var id = $(this).data('event-id'); 4561 var occurrence = get_parameter_by_name('occurrence', href); 4562 var time = get_parameter_by_name('time', href); 4563 4564 if( 'undefined' == typeof id ){ 4565 return; 4566 } 4567 4568 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 4569 }); 4570 } 4571}(jQuery)); 4572 4573// MEC SLIDER VIEW PLUGIN 4574(function ($) { 4575 $.fn.mecSliderView = function (options) { 4576 // Default Options 4577 var settings = $.extend({ 4578 // These are the defaults. 4579 id: 0, 4580 atts: '', 4581 transition_time: 250, 4582 autoplay: false, 4583 ajax_url: '', 4584 sf: {}, 4585 start_date: '' 4586 }, options); 4587 4588 var rtl = false; 4589 4590 // Init Sliders 4591 initSlider(); 4592 4593 function initSlider() { 4594 // Check RTL website 4595 if ($('body').hasClass('rtl')) rtl = true; 4596 4597 $("#mec_skin_" + settings.id + " .mec-owl-carousel").owlCarousel( 4598 { 4599 autoplay: true, 4600 smartSpeed: settings.transition_time, 4601 autoplayTimeout: settings.autoplay, 4602 loop: true, 4603 items: 1, 4604 responsiveClass: true, 4605 responsive: { 4606 0: { 4607 items: 1, 4608 }, 4609 960: { 4610 items: 1, 4611 }, 4612 1200: { 4613 items: 1, 4614 } 4615 }, 4616 dots: false, 4617 nav: true, 4618 autoplayHoverPause: true, 4619 navText: typeof settings.navText != 'undefined' ? settings.navText : ["<i class='mec-sl-arrow-left' aria-label='Previous'></i>", " <i class='mec-sl-arrow-right' aria-label='Next'></i>"], 4620 navElement: 'button type="button" role="button"', 4621 rtl: rtl, 4622 }); 4623 } 4624 }; 4625}(jQuery)); 4626 4627// MEC COUNTDOWN MODULE 4628(function ($) { 4629 $.fn.mecCountDown = function (options, callBack) { 4630 // Default Options 4631 var settings = $.extend({ 4632 // These are the defaults. 4633 date: null, 4634 format: null 4635 }, options); 4636 4637 var callback = callBack; 4638 var selector = $(this); 4639 4640 startCountdown(); 4641 var interval = setInterval(startCountdown, 1000); 4642 4643 function startCountdown() { 4644 var eventDate = Date.parse(settings.date) / 1000; 4645 var currentDate = Math.floor($.now() / 1000); 4646 4647 if (eventDate <= currentDate) { 4648 callback.call(this); 4649 clearInterval(interval); 4650 } 4651 4652 var seconds = eventDate - currentDate; 4653 4654 var days = Math.floor(seconds / (60 * 60 * 24)); 4655 seconds -= days * 60 * 60 * 24; 4656 4657 var hours = Math.floor(seconds / (60 * 60)); 4658 seconds -= hours * 60 * 60; 4659 4660 var minutes = Math.floor(seconds / 60); 4661 seconds -= minutes * 60; 4662 4663 if (days == 1) selector.find(".mec-timeRefDays").text(mecdata.day); 4664 else selector.find(".mec-timeRefDays").text(mecdata.days); 4665 4666 if (hours == 1) selector.find(".mec-timeRefHours").text(mecdata.hour); 4667 else selector.find(".mec-timeRefHours").text(mecdata.hours); 4668 4669 if (minutes == 1) selector.find(".mec-timeRefMinutes").text(mecdata.minute); 4670 else selector.find(".mec-timeRefMinutes").text(mecdata.minutes); 4671 4672 if (seconds == 1) selector.find(".mec-timeRefSeconds").text(mecdata.second); 4673 else selector.find(".mec-timeRefSeconds").text(mecdata.seconds); 4674 4675 if (settings.format === "on") { 4676 days = (String(days).length >= 2) ? days : "0" + days; 4677 hours = (String(hours).length >= 2) ? hours : "0" + hours; 4678 minutes = (String(minutes).length >= 2) ? minutes : "0" + minutes; 4679 seconds = (String(seconds).length >= 2) ? seconds : "0" + seconds; 4680 } 4681 4682 if (!isNaN(eventDate)) { 4683 selector.find(".mec-days").text(days);
4684 selector.find(".mec-hours").text(hours); 4685 selector.find(".mec-minutes").text(minutes); 4686 selector.find(".mec-seconds").text(seconds); 4687 } else { 4688 clearInterval(interval); 4689 } 4690 } 4691 }; 4692 4693}(jQuery)); 4694 4695// MEC TILE VIEW PLUGIN 4696(function ($) { 4697 $.fn.mecTileView = function (options) { 4698 var active_month; 4699 var active_year; 4700 4701 // Default Options 4702 var settings = $.extend({ 4703 // These are the defaults. 4704 today: null, 4705 id: 0, 4706 events_label: 'Events', 4707 event_label: 'Event', 4708 month_navigator: 0, 4709 atts: '', 4710 active_month: {}, 4711 next_month: {}, 4712 sf: {}, 4713 ajax_url: '', 4714 pagination: '0', 4715 infinite_locked: false, 4716 }, options); 4717 4718 // Initialize Month Navigator 4719 if (settings.month_navigator) initMonthNavigator(); 4720 4721 // Load Next Month in background 4722 if (settings.load_method === 'month') setMonth(settings.next_month.year, settings.next_month.month, true); 4723 4724 active_month = settings.active_month.month; 4725 active_year = settings.active_month.year; 4726 4727 let history = []; 4728 const $next = $('#mec-nextprev-wrap-' + settings.id + ' .mec-nextprev-next-button'); 4729 const $prev = $('#mec-nextprev-wrap-' + settings.id + ' .mec-nextprev-prev-button'); 4730 4731 // Set onclick Listeners 4732 setListeners(); 4733 4734 // Search Widget 4735 if ( settings.sf.container !== '' ) { 4736 $(settings.sf.container).mecSearchForm( 4737 { 4738 id: settings.id, 4739 refine: settings.sf.refine, 4740 ajax_url: settings.ajax_url, 4741 atts: settings.atts, 4742 callback: function (atts) { 4743 settings.atts = atts; 4744 search(active_year, active_month); 4745 } 4746 }); 4747 4748 $(settings.sf.container).addClass('mec-skin-search-init'); 4749 } 4750 4751 function initMonthNavigator() { 4752 $("#mec_skin_" + settings.id + " .mec-load-month").off("click").on("click", function () { 4753 var year = $(this).data("mec-year"); 4754 var month = $(this).data("mec-month"); 4755 4756 setMonth(year, month, false, true); 4757 }); 4758 } 4759 4760 function search(year, month) { 4761 // Add Loading Class 4762 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 4763 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 4764 4765 $.ajax( 4766 { 4767 url: settings.ajax_url, 4768 data: "action=mec_tile_load_month&mec_year=" + year + "&mec_month=" + month + "&" + settings.atts + "&apply_sf_date=1", 4769 dataType: "json", 4770 type: "post", 4771 success: function (response) { 4772 if (settings.load_method === 'month') { 4773 active_month = response.current_month.month; 4774 active_year = response.current_month.year; 4775 4776 // Append Month 4777 $("#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>'); 4778 4779 // Append Month Navigator 4780 $("#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>'); 4781 4782 // Re-initialize Month Navigator 4783 initMonthNavigator(); 4784 4785 // Set onclick Listeners 4786 setListeners(); 4787 4788 // Toggle Month 4789 toggleMonth(response.current_month.id); 4790 } 4791 else { 4792 // Append Items 4793 $("#mec_skin_events_" + settings.id).html(response.html); 4794 4795 // Show load more button 4796 if (response.count >= settings.limit) $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-util-hidden"); 4797 // Hide load more button 4798 else $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 4799 4800 // Update the variables 4801 settings.end_date = response.end_date; 4802 settings.offset = response.offset; 4803 4804 // Set onclick Listeners 4805 setListeners(); 4806 } 4807 4808 // Remove loading Class 4809 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 4810 4811 $(document).trigger('mec_search_init',['tile',settings,response]); 4812 }, 4813 error: function () { } 4814 }); 4815 } 4816 4817 function setMonth(year, month, do_in_background, navigator_click) { 4818 if (typeof do_in_background === "undefined") do_in_background = false; 4819 navigator_click = navigator_click || false; 4820
4821 var month_id = year + "" + month; 4822 4823 if (!do_in_background) { 4824 active_month = month; 4825 active_year = year; 4826 } 4827 4828 // Month exists so we just show it 4829 if ($("#mec_tile_month_" + settings.id + "_" + month_id).length) { 4830 // Toggle Month 4831 toggleMonth(month_id); 4832 } 4833 else { 4834 if (!do_in_background) { 4835 // Add Loading Class 4836 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 4837 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 4838 } 4839 4840 $.ajax( 4841 { 4842 url: settings.ajax_url, 4843 data: "action=mec_tile_load_month&mec_year=" + year + "&mec_month=" + month + "&" + settings.atts + "&apply_sf_date=0" + "&navigator_click=" + navigator_click, 4844 dataType: "json", 4845 type: "post", 4846 success: function (response) { 4847 // Append Month 4848 $("#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>'); 4849 4850 // Append Month Navigator 4851 $("#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>'); 4852 4853 // Re-initialize Month Navigator 4854 initMonthNavigator(); 4855 4856 // Set onclick Listeners 4857 setListeners(); 4858 4859 if (!do_in_background) { 4860 // Toggle Month 4861 toggleMonth(response.current_month.id); 4862 4863 // Remove loading Class 4864 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 4865 4866 // Set Month Filter values in search widget 4867 $("#mec_sf_month_" + settings.id).val(month); 4868 $("#mec_sf_year_" + settings.id).val(year); 4869 } 4870 else { 4871 $("#mec_tile_month_" + settings.id + "_" + response.current_month.id).hide(); 4872 $("#mec_month_navigator_" + settings.id + "_" + response.current_month.id).hide(); 4873 } 4874 }, 4875 error: function () { } 4876 }); 4877 } 4878 } 4879 4880 function toggleMonth(month_id) { 4881 var active_month = $("#mec_skin_" + settings.id + " .mec-month-container-selected").data("month-id"); 4882 var active_day = $("#mec_tile_month_" + settings.id + "_" + active_month + " .mec-selected-day").data("day"); 4883 4884 if (active_day <= 9) active_day = "0" + active_day; 4885 4886 // Toggle Month Navigator 4887 $("#mec_skin_" + settings.id + " .mec-month-navigator").hide(); 4888 $("#mec_month_navigator_" + settings.id + "_" + month_id).show(); 4889 4890 // Toggle Month 4891 $("#mec_skin_" + settings.id + " .mec-month-container").hide().removeClass("mec-month-container-selected"); 4892 $("#mec_tile_month_" + settings.id + "_" + month_id).show().addClass("mec-month-container-selected"); 4893 4894 jQuery(document).trigger('mec_toggle_month', [settings, month_id]); 4895 } 4896 4897 var sf; 4898 4899 function setListeners() { 4900 // Load More 4901 $("#mec_skin_" + settings.id + " .mec-load-more-button").off("click").on("click", function () {
4902 loadMore(); 4903 }); 4904 4905 // Scroll 4906 if(settings.pagination === 'scroll') { 4907 $(window).on("scroll", function (event) { 4908 var $target = $("#mec_skin_" + settings.id + " .mec-load-more-wrap"); 4909 4910 var finished = $target.data('page-finished'); 4911 if(finished) return; 4912 4913 var hT = $target.offset().top, 4914 hH = $target.outerHeight(), 4915 wH = $(window).height(), 4916 wS = $(this).scrollTop(); 4917 4918 if (wS + 100 > hT + hH - wH && !settings.infinite_locked) { 4919 settings.infinite_locked = true; 4920 $target.addClass('mec-load-more-scroll-loading'); 4921 loadMore(); 4922 } 4923 }); 4924 } 4925 4926 // Next Prev Pagination 4927 if(settings.pagination === 'nextprev') 4928 { 4929 // Events Wrapper 4930 const $EW = $("#mec_skin_events_" + settings.id); 4931 4932 let next_disabled = false; 4933 4934 // Previous Button 4935 $prev.on('click', function() 4936 { 4937 if(history.length) 4938 { 4939 let page = history.pop(); 4940 4941 // Display Events 4942 $EW.html(page.html); 4943 4944 // Update the variables 4945 settings.end_date = page.end_date; 4946 settings.offset = page.offset; 4947 settings.current_month_divider = page.current_month_divider; 4948 4949 // Display Next Button 4950 $next.removeClass('mec-util-hidden'); 4951 } 4952 4953 // Hide Previous Button 4954 if(!history.length) $prev.addClass('mec-util-hidden'); 4955 }); 4956 4957 // Next Button 4958 $next.on('click', function(e) 4959 { 4960 // Prevent Redirect 4961 e.preventDefault(); 4962 4963 // Currently Disabled 4964 if(next_disabled) return; 4965 4966 // Disable Button 4967 next_disabled = true; 4968 4969 // Add Loading Style 4970 $EW.addClass('mec-loading-events'); 4971 4972 // Push to History 4973 history.push({ 4974 end_date: settings.end_date, 4975 offset: settings.offset, 4976 current_month_divider: settings.current_month_divider, 4977 html: $EW.html() 4978 }); 4979 4980 loadMore(function(response) 4981 { 4982 // Display New Events 4983 if(response.count) $EW.html(response.html); 4984 // Remove Last Page 4985 else history.pop(); 4986 4987 // Enable Button 4988 next_disabled = false; 4989 4990 // Remove Loading Style 4991 $EW.removeClass('mec-loading-events'); 4992 4993 // Display Previous Button 4994 if(history.length) $prev.removeClass('mec-util-hidden'); 4995 // Hide Next Button 4996 if(response.count === 0 || (typeof response.has_more_event !== 'undefined' && !response.has_more_event)) $next.addClass('mec-util-hidden'); 4997 }); 4998 }); 4999 } 5000 5001 $("#mec_skin_" + settings.id + " article").off("click").on("click", function (e) { 5002 // Link Clicked 5003 if (e.target.nodeName.toLowerCase() === 'a') return; 5004 5005 var href = $(this).data('href'); 5006 if (!href) return; 5007 5008 var target = $(this).data('target'); 5009 5010 if (target === 'blank') window.open(href, '_blank'); 5011 else if (target !== 'm1') document.location.href = href; 5012 }); 5013 5014 // Add the onclick event 5015 $("#mec_skin_" + settings.id + " .mec-has-event").off("click").on('click', function (e) { 5016 e.preventDefault(); 5017 5018 // define variables 5019 var $this = $(this), 5020 data_mec_cell = $this.data('mec-cell'),
5021 month_id = $this.data('month'); 5022 5023 $("#mec_monthly_view_month_" + settings.id + "_" + month_id + " .mec-calendar-day").removeClass('mec-selected-day'); 5024 $this.addClass('mec-selected-day'); 5025 5026 $('#mec_month_side_' + settings.id + '_' + month_id + ' .mec-calendar-events-sec:not([data-mec-cell=' + data_mec_cell + '])').slideUp(); 5027 $('#mec_month_side_' + settings.id + '_' + month_id + ' .mec-calendar-events-sec[data-mec-cell=' + data_mec_cell + ']').slideDown(); 5028 5029 $('#mec_monthly_view_month_' + settings.id + '_' + month_id + ' .mec-calendar-events-sec:not([data-mec-cell=' + data_mec_cell + '])').slideUp(); 5030 $('#mec_monthly_view_month_' + settings.id + '_' + month_id + ' .mec-calendar-events-sec[data-mec-cell=' + data_mec_cell + ']').slideDown(); 5031 }); 5032 5033 // Single Event Method 5034 if (settings.sed_method != '0') { 5035 sed(); 5036 } 5037 } 5038 5039 function sed() { 5040 // Single Event Display 5041 $("#mec_skin_" + settings.id + " .mec-event-content .mec-tile-into-content-link,#mec_skin_" + settings.id + " .mec-event-content .mec-event-title a").off('click').on('click', function (e) { 5042 5043 var sed_method = $(this).closest('.mec-event-article.mec-tile-item').data('target'); 5044 if ('_blank' === sed_method) { 5045 return; 5046 } 5047 e.preventDefault(); 5048 var href = $(this).closest('.mec-event-article.mec-tile-item').data('href'); 5049 5050 var id = $(this).closest('.mec-event-article.mec-tile-item').find('.mec-event-title a').data('event-id'); 5051 var occurrence = get_parameter_by_name('occurrence', href); 5052 var time = get_parameter_by_name('time', href); 5053 5054 if( 'undefined' == typeof id ){ 5055 return; 5056 } 5057 5058 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 5059 }); 5060 } 5061 5062 function loadMore(callback) { 5063 // Load More Button 5064 var $load_more_button = $("#mec_skin_" + settings.id + " .mec-load-more-button"); 5065 5066 // Add loading Class 5067 $load_more_button.addClass("mec-load-more-loading"); 5068 5069 $.ajax( 5070 { 5071 url: settings.ajax_url, 5072 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", 5073 dataType: "json", 5074 type: "post", 5075 success: function (response) { 5076 if (response.count == '0') { 5077 // Remove loading Class 5078 $load_more_button.removeClass("mec-load-more-loading"); 5079 5080 // Hide load more button 5081 $load_more_button.addClass("mec-util-hidden"); 5082 5083 // Release Lock of Infinite Scroll 5084 settings.infinite_locked = false; 5085 $("#mec_skin_" + settings.id + " .mec-load-more-wrap").data('page-finished', true).removeClass('mec-load-more-scroll-loading'); 5086 5087 // Run Callback 5088 if(typeof callback === 'function') callback(response); 5089 } 5090 else { 5091 // Show load more button 5092 if (typeof response.has_more_event === 'undefined' || (typeof response.has_more_event !== 'undefined' && response.has_more_event)) $load_more_button.removeClass("mec-util-hidden"); 5093 else $load_more_button.addClass("mec-util-hidden"); 5094 5095 // Run Callback 5096 if(typeof callback === 'function') callback(response); 5097 // Append Items 5098 else $("#mec_skin_events_" + settings.id).append(response.html); 5099 5100 // Remove loading Class 5101 $load_more_button.removeClass("mec-load-more-loading"); 5102 5103 // Update the variables 5104 settings.end_date = response.end_date; 5105 settings.offset = response.offset; 5106 settings.current_month_divider = response.current_month_divider; 5107 5108 // Single Event Method 5109 if (settings.sed_method != '0') { 5110 sed(); 5111 } 5112 5113 // Release Lock of Infinite Scroll 5114 settings.infinite_locked = false; 5115 $("#mec_skin_" + settings.id + " .mec-load-more-wrap").removeClass('mec-load-more-scroll-loading'); 5116 } 5117 5118 $(document).trigger('mec_load_more_init',['tile',settings]); 5119 }, 5120 error: function () { } 5121 }); 5122 } 5123 }; 5124}(jQuery)); 5125 5126function mec_gateway_selected(gateway_id) { 5127 // Hide all gateway forms 5128 jQuery('.mec-book-form-gateway-checkout').addClass('mec-util-hidden'); 5129 5130 // Show selected gateway form 5131 jQuery('#mec_book_form_gateway_checkout' + gateway_id).removeClass('mec-util-hidden'); 5132} 5133 5134function mec_wrap_resize() { 5135 var $mec_wrap = jQuery('.mec-wrap'), 5136 mec_width = $mec_wrap.width(); 5137 if (mec_width < 959) { 5138 $mec_wrap.addClass('mec-sm959'); 5139 } else { 5140 $mec_wrap.removeClass('mec-sm959'); 5141 } 5142} 5143 5144function get_parameter_by_name(name, url) { 5145 if (!url) { 5146 url = window.location.href; 5147 } 5148 5149 name = name.replace(/[\[\]]/g, "\\$&"); 5150 var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"), 5151 results = regex.exec(url); 5152 5153 if (!results) return null; 5154 if (!results[2]) return ''; 5155 5156 return decodeURIComponent(results[2].replace(/\+/g, " "));
5157} 5158 5159// Focus events day 5160var mec_g_month_id = null; 5161 5162function mecFocusDay(settings) { 5163 if (mec_g_month_id != null) { 5164 setTimeout(function () { 5165 var id = settings.id, 5166 date = new Date(), 5167 mec_owl_year = mec_g_month_id.substr(0, 4), 5168 mec_current_year = date.getFullYear(), 5169 mec_owl_month = mec_g_month_id.substr(4, 6), 5170 mec_current_month = date.getMonth() + 1, 5171 mec_current_day = date.getDate(), 5172 mec_owl_go = jQuery("#mec-owl-calendar-d-table-" + id + "-" + mec_g_month_id), 5173 mec_day_exist = false; 5174 mec_owl_go.find('.owl-stage > div').each(function (index) { 5175 if (parseInt(jQuery(this).children('div').data("events-count")) > 0) { 5176 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) { 5177 var index_plus = index + 1; 5178 jQuery('#mec_daily_view_day' + id + '_' + mec_g_month_i
5178d + (index < 10 ? '0' + index_plus : index_plus)).trigger('click'); 5179 mec_owl_go.trigger('to.owl.carousel', index_plus); 5180 mec_day_exist = true; 5181 return false; 5182 } 5183 else { 5184 jQuery('#mec_daily_view_day' + id + '_' + mec_g_month_id + mec_current_day).trigger('click'); 5185 mec_owl_go.trigger('to.owl.carousel', mec_current_day); 5186 mec_day_exist = true; 5187 return false; 5188 } 5189 } 5190 }); 5191 5192 if (!mec_day_exist && ((mec_owl_year == mec_current_year) && (mec_owl_month == mec_current_month))) { 5193 jQuery('#mec_daily_view_day' + id + '_' + mec_g_month_id + mec_current_day).trigger('click'); 5194 mec_owl_go.trigger('to.owl.carousel', mec_current_day); 5195 } 5196 }, 1000); 5197 } 5198} 5199 5200// Focus events week 5201function mec_focus_week(id, skin) { 5202 skin = skin || 'weekly'; 5203 var wrap_elem = jQuery('.mec-weeks-container .mec-weekly-view-week-active').parent(); 5204 var days = wrap_elem.find('dt'); 5205 var week = wrap_elem.find('dl').length; 5206 var focus_week = false; 5207 var i = j = 1; 5208 5209 for (i = 1; i < week; i++) { 5210 setTimeout(function () { 5211 var event = new Event('click'); 5212 jQuery('#mec_skin_' + id + ' .mec-previous-month.mec-load-week')[0].dispatchEvent(event); 5213 }, 33); 5214 } 5215 5216 days.each(function (i) { 5217 if (jQuery(this).data('events-count') > 0) { 5218 if (focus_week === false) { 5219 focus_week = parseInt(jQuery(this).parent().data('week-number')); 5220 } 5221 5222 if (skin == 'timetable') { 5223 if (parseInt(jQuery(this).parent().data('week-number')) == parseInt(jQuery('body').data('currentweek'))) { 5224 focus_week = parseInt(jQuery(this).parent().data('week-number')); 5225 return false; 5226 } 5227 } 5228 else { 5229 return false; 5230 } 5231 } 5232 }); 5233 5234 if (focus_week !== false) { 5235 for (j = 1; j < focus_week; j++) { 5236 setTimeout(function () { 5237 var event = new Event('click'); 5238 jQuery('#mec_skin_' + id + ' .mec-next-month.mec-load-week')[0].dispatchEvent(event); 5239 }, 33); 5240 } 5241 } 5242} 5243 5244// TODO must be cleaned JS codes 5245(function ($) { 5246 $(document).ready(function () { 5247 // Check RTL website 5248 if ($('body').hasClass('rtl')) { 5249 var owl_rtl = true; 5250 } else { 5251 var owl_rtl = false; 5252 } 5253 5254 // MEC WIDGET CAROUSEL 5255 $(".mec-widget .mec-event-grid-classic").each(function () { 5256 var loop_status = $(this).data('widget-loop'); 5257 if (typeof loop_status === 'undefined') loop_status = 1; 5258 5259 var autoplay_status = $(this).data('widget-autoplay'); 5260 if (typeof autoplay_status === 'undefined') autoplay_status = 1; 5261 5262 var autoplay_time = $(this).data('widget-autoplay-time'); 5263 if (typeof autoplay_time === 'undefined') autoplay_time = 3000; 5264 5265 $(this).addClass('mec-owl-carousel mec-owl-theme'); 5266 $(this).owlCarousel( 5267 { 5268 autoplay: (autoplay_status ? true : false), 5269 autoplayTimeout: autoplay_time, 5270 autoplayHoverPause: (autoplay_status ? true : false), 5271 loop: (loop_status ? true : false), 5272 dots: false, 5273 nav: true, 5274 navText: ["<i class='mec-sl-arrow-left' aria-label='Previous'></i>", " <i class='mec-sl-arrow-right' aria-label='Next'></i>"], 5275 navElement: 'button type="button" role="button"', 5276 items: 1, 5277 autoHeight: true, 5278 responsiveClass: true, 5279 rtl: owl_rtl, 5280 }); 5281 }); 5282 5283 // add mec-sm959 class if mec-wrap div size < 959 5284 mec_wrap_resize(); 5285 5286 jQuery(window).bind('resize', function () { 5287 mec_wrap_resize(); 5288 }); 5289 5290 // Fixed: social hover in iphone 5291 $('.mec-event-sharing-wrap').hover(function () { 5292 $(this).find('.mec-event-sharing').show(0); 5293 }, 5294 function () { 5295 $(this).find('.mec-event-sharing').hide(0); 5296 }); 5297 5298 // Register Booking Smooth Scroll 5299 $('a.simple-booking[href^="#mec-events-meta-group-booking"]').click(function () {
5300 if (location.pathname.replace(/^\//, '') == this.pathname.replace(/^\//, '') && location.hostname == this.hostname) { 5301 var target = $(this.hash); 5302 target = target.length ? target : $('[name=' + this.hash.slice(1) + ']'); 5303 5304 if (target.length) { 5305 var scrollTopVal = target.offset().top - 30; 5306 5307 if($('body[class^="mec-events-template"]').length > 0 ) { 5308 $('html, body').animate({ 5309 scrollTop: scrollTopVal 5310 }, 600); 5311 5312 return false; 5313 5314 } else { 5315 5316 return true; 5317 5318 } 5319 } 5320 } 5321 }); 5322 5323 // Load Information widget under title in mobile/tablet 5324 if ($('.single-mec-events .mec-single-event:not(.mec-single-modern)').length > 0) { 5325 if ($('.single-mec-events .mec-event-info-desktop.mec-event-meta.mec-color-before.mec-frontbox').length > 0) { 5326 var html = $('.single-mec-events .mec-event-info-desktop.mec-event-meta.mec-color-before.mec-frontbox')[0].outerHTML; 5327 if (Math.max(document.documentElement.clientWidth, window.innerWidth || 0) < 960) { 5328 $('.single-mec-events .col-md-4 .mec-event-info-desktop.mec-event-meta.mec-color-before.mec-frontbox').remove(); 5329 $('.single-mec-events .mec-event-info-mobile').html(html) 5330 } 5331 } 5332 } 5333 5334 // FAQ 5335 $(document).on('click', '.mec-faq-toggle-icon', function() 5336 { 5337 $(this).parent().toggleClass('close'); 5338 }); 5339 }); 5340})(jQuery); 5341 5342// Weather 5343(function ($) { 5344 // Convart fahrenheit to centigrade 5345 function convertToC(value) { 5346 return Math.round(((parseFloat(value) - 32) * 5 / 9)); 5347 } 5348 5349 // Convert centigrade to fahrenheit 5350 function convertToF(value) { 5351 return Math.round(((1.8 * parseFloat(value)) + 32)); 5352 } 5353 5354 // Convert miles to kilometers 5355 function MPHToKPH(value) { 5356 return Math.round(1.609344 * parseFloat(value)); 5357 } 5358 5359 // Convert kilometers to miles 5360 function KPHToMPH(value) { 5361 return Math.round((0.6214 * parseFloat(value))); 5362 } 5363 5364 $(document).ready(function ($) { 5365 var degree = $('.mec-weather-summary-temp'); 5366 var weather_extra = $('.mec-weather-extras'); 5367 var wind = weather_extra.children('.mec-weather-wind'); 5368 var visibility = weather_extra.children('.mec-weather-visibility'); 5369 var feelslike = weather_extra.children('.mec-weather-feels-like'); 5370 5371 // Events 5372 $('.degrees-mode').on('click', function () { 5373 var degree_mode = degree.children('var').text().trim(); 5374 var wind_text = wind.text().substring(5); 5375 var visibility_text = visibility.text().substring(11); 5376 var feelslike_text = feelslike.text().substring(12); 5377 5378 if (degree_mode == degree.data('c').trim()) { 5379 degree.html(convertToF(parseInt(degree.text())) + ' <var>' + degree.data('f') + '</var>'); 5380 feelslike.html('<span>Feels Like:</span> ' + convertToF(parseInt(feelslike_text)) + ' <var>' + feelslike.data('f') + '</var>'); 5381 wind.html('<span>Wind:</span> ' + KPHToMPH(parseInt(wind_text)) + '<var>' + wind.data('mph') + '</var>'); 5382 visibility.html('<span>Visibility:</span> ' + KPHToMPH(parseInt(visibility_text)) + '<var>' + visibility.data('mph') + '</var>'); 5383 $(this).text($(this).data('metric')); 5384 } 5385 else if (degree_mode == degree.data('f').trim()) { 5386 degree.html(convertToC(parseInt(degree.text())) + ' <var>' + degree.data('c') + '</var>'); 5387 feelslike.html('<span>Feels Like:</span> ' + convertToC(parseInt(feelslike_text)) + ' <var>' + feelslike.data('c') + '</var>'); 5388 wind.html('<span>Wind:</span> ' + MPHToKPH(parseInt(wind_text)) + '<var>' + wind.data('kph') + '</var>'); 5389 visibility.html('<span>Visibility:</span> ' + MPHToKPH(parseInt(visibility_text)) + '<var>' + visibility.data('kph') + '</var>'); 5390 $(this).text($(this).data('imperial')); 5391 } 5392 }); 5393 5394 $('a').on('click', function () { });
5395 5396 // FES Speakers Adding 5397 $('#mec_add_speaker_button').on('click', function () { 5398 var $this = this; 5399 var content = $($this).parent().find('input'); 5400 var list = $('#mec-fes-speakers-list'); 5401 var key = list.find('.mec-error').length; 5402 5403 $($this).prop("disabled", true).css('cursor', 'wait'); 5404 $.post(ajaxurl, { 5405 action: "speaker_adding", 5406 content: content.val(), 5407 key: key 5408 }) 5409 .done(function (data) { 5410 if ($(data).hasClass('mec-error')) { 5411 list.prepend(data); 5412 setTimeout(function () { 5413 $('#mec-speaker-error-${key}').remove(); 5414 }, 1500); 5415 } else { 5416 list.html(data); 5417 content.val(''); 5418 } 5419 5420 $($this).prop("disabled", false).css('cursor', 'pointer'); 5421 }); 5422 }); 5423 5424 // FES Sponsor Adding 5425 $('#mec_add_sponsor_button').on('click', function () { 5426 var $this = this; 5427 var content = $($this).parent().find('input'); 5428 var list = $('#mec-fes-sponsors-list'); 5429 var key = list.find('.mec-error').length; 5430 5431 $($this).prop("disabled", true).css('cursor', 'wait'); 5432 $.post(ajaxurl, { 5433 action: "mec_sponsor_adding", 5434 content: content.val(), 5435 key: key 5436 }) 5437 .done(function (data) { 5438 if ($(data).hasClass('mec-error')) { 5439 list.prepend(data); 5440 setTimeout(function () { 5441 $('#mec-sponsor-error-${key}').remove(); 5442 }, 1500); 5443 } else { 5444 list.html(data); 5445 content.val(''); 5446 } 5447 5448 $($this).prop("disabled", false).css('cursor', 'pointer'); 5449 }); 5450 }); 5451 5452 // Check RTL website 5453 var owl_rtl = $('body').hasClass('rtl') ? true : false; 5454 5455 // MEC FES Date Item Event 5456 $(document).on( 'click', '.mec-export-list-wrapper .mec-export-list-item', function () { 5457 $('.mec-export-list-item').removeClass('fes-export-date-active'); 5458 $(this).addClass('fes-export-date-active'); 5459 }); 5460 5461 // MEC BuddyPress Integration Attendees Modules 5462 var mec_bd_attendees_modules = $('.mec-attendees-list-details > ul > li'); 5463 mec_bd_attendees_modules.click(function () { 5464 $(this).find('.mec-attendees-toggle').toggle(); 5465 }); 5466 5467 // MEC FES export csv 5468 $(document).on( 'click','.mec-event-export-csv, .mec-event-export-excel', function () { 5469 var mec_event_id = $(this).parent().parent().data('event-id'); 5470 5471 var time = $(this).parent().parent().find($('.fes-export-date-active')).data('time'); 5472 if (typeof time === 'undefined') time = 0; 5473 5474 var type = $(this).hasClass('mec-event-export-excel') ? 'ms-excel' : 'csv'; 5475 5476 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; 5477 5478 window.location = url; 5479 }); 5480 }); 5481})(jQuery); 5482 5483function mec_book_form_submit(event, unique_id) { 5484 event.preventDefault(); 5485 window["mec_book_form_submit" + unique_id](); 5486} 5487 5488function mec_book_form_back_btn_cache(context, unique_id) { 5489 var id = jQuery(context).attr('id'); 5490 var mec_form_data = jQuery('#mec_book_form' + unique_id).serializeArray(); 5491 5492 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); 5493 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); 5494} 5495 5496function mec_agreement_change(context) { 5497 var status = jQuery(context).is(":checked"); 5498 5499 if (status) jQuery(context).prop("checked", "checked"); 5500 else jQuery(context).removeProp("checked"); 5501} 5502 5503function mec_book_form_back_btn_click(context, unique_id) { 5504 var id = jQuery(context).attr('id'); 5505 unique_id = jQuery('body').data('unique-id'); 5506 5507 jQuery('#mec_booking_message' + unique_id).hide(); 5508 if (id == "mec-book-form-back-btn-step-2") { 5509 var mec_form_data_step_1 = jQuery('body').data('mec-book-form-data-step-1'); 5510 5511 jQuery('#mec_booking' + unique_id).html(jQuery('body').data('mec-book-form-step-1')); 5512 jQuery.each(mec_form_data_step_1, function(index, object_item) 5513 { 5514 if(object_item.name === 'book[date][]') 5515 { 5516 jQuery('[value="' + object_item.value + '"]').prop('checked', true); 5517 } 5518 else jQuery('[name="' + object_item.name + '"]').val(object_item.value); 5519 }); 5520 5521 // Booking Refresh Recaptcha When Back Button Click.
5522 var recaptcha_check = jQuery('#mec_booking' + unique_id).find('#g-recaptcha').length; 5523 if (recaptcha_check != 0) { 5524 jQuery('#g-recaptcha').html(''); 5525 grecaptcha.render("g-recaptcha", { 5526 sitekey: mecdata.recapcha_key 5527 }); 5528 } 5529 5530 mec_init_number_spinner(); 5531 5532 var event_id = jQuery('input[name="event_id"]').val(); 5533 var date = jQuery('#mec_book_form_date' + unique_id).val(); 5534 5535 // Update Availability 5536 window['mec_get_tickets_availability' + unique_id](event_id, date); 5537 } 5538 else if (id == "mec-book-form-back-btn-step-3") { 5539 var mec_form_data_step_2 = jQuery('body').data('mec-book-form-data-step-2'); 5540 5541 jQuery('#mec_booking' + unique_id).html(jQuery('body').data('mec-book-form-step-2')); 5542 jQuery.each(mec_form_data_step_2, function (index, object_item) { 5543 var mec_elem = jQuery('[name="' + object_item.name + '"]'); 5544 var mec_type = mec_elem.attr('type'); 5545 5546 if ((mec_type == 'checkbox' || mec_type == 'radio')) { 5547 var mec_elem_len = jQuery('[name="' + object_item.name + '"]').length; 5548 5549 if (mec_elem_len > 1) { 5550 var id = '#' + mec_elem.attr('id').match(/mec_book_reg_field_reg.*_/g) + object_item.value.toLowerCase(); 5551 jQuery(id).prop('checked', true); 5552 } 5553 else { 5554 mec_elem.prop('checked', true); 5555 } 5556 } 5557 5558 mec_elem.val(object_item.value); 5559 }); 5560 } 5561} 5562 5563// Google map Skin 5564function gmapSkin(NewJson) { 5565 var gmap_temp = jQuery("#gmap-data"); 5566 var beforeJson = gmap_temp.val(); 5567 if (typeof beforeJson === 'undefined') beforeJson = ''; 5568 5569 var newJson = NewJson; 5570 var jsonPush = (typeof beforeJson != 'undefined' && beforeJson.trim() == "") ? [] : JSON.parse(beforeJson); 5571 var pushState = jsonPush.length < 1 ? false : true; 5572 5573 for (var key in newJson) { 5574 if (pushState) {
5575 jsonPush.forEach(function (Item, Index) { 5576 var render_location = jsonPush[Index].latitude + "," + jsonPush[Index].longitude; 5577 if (key.trim() == render_location.trim()) { 5578 // LightBox Count Update 5579 newJson[key].count = newJson[key].count + jsonPush[Index].count; 5580 5581 // LightBox Ids Update 5582 newJson[key].event_ids = newJson[key].event_ids.concat(jsonPush[Index].event_ids); 5583 5584 // LightBox Initialize 5585 var dom = jQuery(newJson[key].lightbox).find("div:nth-child(2)"); 5586 var main_items = dom.html(); 5587 var new_items = jQuery(jsonPush[Index].lightbox).find("div:nth-child(2)").html(); 5588 5589 var render_items = dom.html(main_items + new_items).html(); 5590 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>'; 5591 newJson[key].lightbox = new_info_lightbox; 5592 5593 // LightBox info 5594 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>'; 5595 newJson[key].infowindow = new_info_window; 5596 5597 // Remove before values of this location 5598 jsonPush.splice(Index, 1); 5599 } 5600 }); 5601 } 5602 5603 jsonPush.push(newJson[key]); 5604 } 5605 5606 gmap_temp.val(JSON.stringify(jsonPush)); 5607 return jsonPush; 5608} 5609 5610// Fluent Scripts 5611jQuery(document).ready(function () { 5612 if (jQuery('.mec-fluent-wrap').length < 0) { 5613 return; 5614 } 5615 // Events 5616 jQuery(window).on('resize', mecFluentToggoleDisplayValueFilterContent); 5617 jQuery(document).on('click', '.mec-fluent-wrap .mec-filter-icon', mecFluentToggleFilterContent); 5618 jQuery(document).on('click', '.mec-fluent-wrap .mec-more-events-icon', mecFluentToggleMoreEvents); 5619 jQuery(document).on('click', '.mec-fluent-wrap .mec-yearly-calendar', mecFluentYearlyCalendar); 5620 jQuery(document).on('click', mecFluentOutsideEvent); 5621 jQuery(document).on('click', '.mec-fluent-more-views-icon', mecFluentMoreViewsContent); 5622 jQuery(document).on('change', '.mec-fluent-wrap .mec-filter-content select, .mec-fluent-wrap .mec-filter-content input', mecFluentSmartFilterIcon); 5623 // Run 5624 mecFluentTimeTableUI(); 5625 mecFluentUI(); 5626 mecFluentNiceSelect(); 5627 mecFluentWrapperFullScreenWidth(); 5628 jQuery(window).on('load', mecFluentWrapperFullScreenWidth); 5629 jQuery(window).on('load', mecFluentCurrentTimePosition); 5630 jQuery(window).on('resize', mecFluentWrapperFullScreenWidth); 5631 jQuery(window).on('resize', mecFluentTimeTableUI); 5632 mecFluentSliderUI(); 5633 mecFluentFullCalendar(); 5634 jQuery(window).on('resize', mecFluentFullCalendar); 5635 mecFluentCustomScrollbar(); 5636}); 5637 5638function mecFluentSinglePage() { 5639 if (jQuery().niceScroll) { 5640 jQuery('.mec-single-fluent-body .featherlight .mec-single-fluent-wrap').niceScroll({ 5641 horizrailenabled: false, 5642 cursorcolor: '#C1C5C9', 5643 cursorwidth: '4px', 5644 cursorborderradius: '4px', 5645 cursorborder: 'none', 5646 railoffset: { 5647 left: 10, 5648 } 5649 }); 5650 } 5651} 5652 5653function mecFluentFullCalendar() { 5654 if (jQuery('.mec-fluent-wrap.mec-skin-full-calendar-container').length > 0) { 5655 var widowWidth = jQuery(window).innerWidth(); 5656 if (widowWidth <= 767) { 5657 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({ 5658 paddingTop: jQuery('.mec-fluent-wrap.mec-skin-full-calendar-container').children('.mec-totalcal-box').height() + 40, 5659 }); 5660 } else { 5661 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({ 5662 paddingTop: 32, 5663 }); 5664 } 5665 } 5666} 5667 5668function mecFluentSmartFilterIcon() { 5669 var filterContent = jQuery(this).closest('.mec-filter-content'); 5670 var hasValue = false; 5671 if (jQuery(this).closest('.mec-date-search').length > 0) { 5672 var yearValue = jQuery(this).closest('.mec-date-search').find('select[id*="mec_sf_year"]').val(); 5673 var monthValue = jQuery(this).closest('.mec-date-search').find('select[id*="mec_sf_month"]').val(); 5674 if ((yearValue == 'none' && monthValue == 'none') || (yearValue != 'none' && monthValue != 'none')) { 5675 filterContent.hide(); 5676 if ((yearValue != 'none' && monthValue != 'none')) { 5677 hasValue = true; 5678 } else { 5679 hasValue = false; 5680 } 5681 } else { 5682 return false; 5683 } 5684 } else { 5685 filterContent.hide(); 5686 } 5687 if (!hasValue) { 5688 filterContent.find(':not(.mec-date-search)').find('select, input:not([type="hidden"])').each(function () { 5689 if (jQuery(this).val()) { 5690 hasValue = true; 5691 return false; 5692 } 5693 }); 5694 } 5695 if (hasValue) { 5696 jQuery(this).closest('.mec-search-form').find('.mec-filter-icon').addClass('active'); 5697 } else { 5698 jQuery(this).closest('.mec-search-form').find('.mec-filter-icon').removeClass('active'); 5699 } 5700} 5701 5702function mecFluentMoreViewsContent() { 5703 jQuery(this).find('.mec-fluent-more-views-content').toggleClass('active'); 5704} 5705 5706function mecFluentWrapperFullScreenWidth() { 5707 if (jQuery('.mec-fluent-bg-wrap').length > 0) { 5708 jQuery('.mec-fluent-bg-wrap').css({ 5709 maxWidth: jQuery('body').width() + 8, 5710 }); 5711 } 5712} 5713 5714function mecFluentUI() { 5715 if (typeof mecdata != 'undefined' && typeof mecdata.enableSingleFluent != 'undefined' && mecdata.enableSingleFluent) { 5716 jQuery('body').addClass('mec-single-fluent-body'); 5717 } 5718 // Set filter content position 5719 jQuery(window).on('load resize', function () { 5720 if (jQuery('.mec-filter-content').length > 0) { 5721 jQuery('.mec-filter-content').css({ 5722 right: -(jQuery('.mec-calendar').width() - jQuery('.mec-search-form.mec-totalcal-box').position().left - jQuery('.mec-search-form.mec-totalcal-box').width() + 40), 5723 left: -jQuery('.mec-search-form.mec-totalcal-box').position().left + 40, 5724 }); 5725 } 5726 if (jQuery('.mec-filter-icon').is(':visible')) {
5727 var filterIconLeftPosition = parseInt(jQuery('.mec-search-form.mec-totalcal-box').position().left) + parseInt(jQuery('.mec-filter-icon').position().left) - 25; 5728 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>'); 5729 } 5730 }); 5731 // Hide empty filter content 5732 if (jQuery('.mec-filter-content').is(':empty')) { 5733 jQuery('.mec-filter-icon').hide(); 5734 } 5735 // Prevend Default For Event Share Icon 5736 jQuery(document).on('click', '.mec-event-share-icon', function (e) { 5737 e.preventDefault(); 5738 }); 5739} 5740 5741function mecFluentCurrentTimePosition() { 5742 if (jQuery('.mec-fluent-wrap').length > 0) { 5743 jQuery('.mec-fluent-current-time').each(function () { 5744 var currentTimeMinutes = jQuery(this).data('time'); 5745 var height = jQuery(this).closest('.mec-fluent-current-time-cell').height(); 5746 jQuery(this).css({ 5747 top: (currentTimeMinutes / 60) * height, 5748 }); 5749 }); 5750 } 5751} 5752 5753function mecFluentNiceSelect() { 5754 if (jQuery('.mec-fluent-wrap').length < 0) { 5755 return; 5756 } 5757 5758 if (jQuery().niceSelect) { 5759 jQuery('.mec-fluent-wrap').find('.mec-filter-content').find('select').niceSelect(); 5760 } 5761} 5762 5763function mecFluentCustomScrollbar(y) { 5764 5765 jQuery(document).trigger( 'mec_custom_scrollbar_init', [y] ); 5766 5767 if (jQuery('.mec-fluent-wrap').length < 0) { 5768 return; 5769 } 5770 5771 if (jQuery().niceScroll) { 5772 jQuery('.mec-custom-scrollbar').niceScroll({ 5773 cursorcolor: '#C7EBFB', 5774 cursorwidth: '4px', 5775 cursorborderradius: '4px', 5776 cursorborder: 'none', 5777 railoffset: { 5778 left: -2, 5779 } 5780 }); 5781 jQuery('.mec-custom-scrollbar').getNiceScroll().resize(); 5782 jQuery('.mec-custom-scrollbar').each(function () { 5783 if (jQuery(this).find('.mec-fluent-current-time-cell').length > 0) { 5784 var parentTopOffset = jQuery(this).offset().top; 5785 var currentTimeCellOffset = jQuery(this).find('.mec-fluent-current-time-cell').offset().top; 5786 jQuery(this).getNiceScroll(0).doScrollTop(currentTimeCellOffset - parentTopOffset - 16, 120); 5787 jQuery(this).on('scroll', function () { 5788 if (jQuery(this).getNiceScroll(0).scroll.y != 0) { 5789 jQuery(this).addClass('mec-scrolling'); 5790 } else { 5791 jQuery(this).removeClass('mec-scrolling'); 5792 } 5793 }); 5794 } 5795 if (typeof y != 'undefined') { 5796 if (jQuery(this).closest('.mec-skin-list-wrap').length > 0 || jQuery(this).closest('.mec-skin-grid-wrap').length > 0) { 5797 jQuery(this).getNiceScroll(0).doScrollTop(0, 120); 5798 } 5799 } 5800 }); 5801 } 5802} 5803 5804function mecFluentTimeTableUI() { 5805 jQuery('.mec-fluent-wrap.mec-timetable-wrap .mec-cell').css('min-height', 0); 5806 var maxHeight = Math.max.apply(null, jQuery('.mec-fluent-wrap.mec-timetable-wrap .mec-cell').map(function () { 5807 return jQuery(this).height(); 5808 }).get()); 5809 maxHeight = maxHeight > 87 ? maxHeight : 87; 5810 jQuery('.mec-fluent-wrap.mec-timetable-wrap .mec-cell').css('min-height', maxHeight + 2); 5811} 5812 5813function mecFluentSliderUI() { 5814 jQuery(window).on('load', function () { 5815 if(typeof mecdata === 'undefined') return; 5816 5817 jQuery('.mec-fluent-wrap.mec-skin-slider-container .owl-next').prepend('<span>'+ mecdata.next +'</span>'); 5818 jQuery('.mec-fluent-wrap.mec-skin-slider-container .owl-prev').append('<span>'+ mecdata.prev +'</span>'); 5819 }); 5820} 5821 5822function mecFluentToggleFilterContent(e) { 5823 e.preventDefault(); 5824 if (jQuery('.mec-filter-content').is(':visible')) { 5825 jQuery('.mec-filter-content').css({ 5826 display: 'none', 5827 }); 5828 } else { 5829 const displayValue = jQuery(window).width() <= 790 ? 'block' : 'flex'; 5830 jQuery('.mec-filter-content').css({ 5831 display: displayValue, 5832 }); 5833 } 5834} 5835 5836function mecFluentToggoleDisplayValueFilterContent() { 5837 const displayValue = jQuery(window).width() <= 767 ? 'block' : 'flex'; 5838 if (jQuery('.mec-filter-content').is(':visible')) { 5839 jQuery('.mec-filter-content').css({ 5840 display: displayValue, 5841 }); 5842 } 5843} 5844 5845function mecFluentToggleMoreEvents(e) { 5846 e.preventDefault();
5847 const moreEventsWrap = jQuery(this).siblings('.mec-more-events-wrap'); 5848 const moreEvents = moreEventsWrap.children('.mec-more-events'); 5849 jQuery('.mec-more-events-wrap').removeClass('active'); 5850 moreEventsWrap.addClass('active'); 5851 jQuery('.mec-more-events-wrap:not(.active)').hide(); 5852 if (moreEventsWrap.is(':visible')) { 5853 moreEventsWrap.hide(); 5854 } else { 5855 topElement = moreEventsWrap.closest('.mec-more-events-inner-controller').length > 0 ? moreEventsWrap.closest('.mec-more-events-inner-controller') : moreEventsWrap.closest('.mec-more-events-controller'); 5856 moreEventsWrap.show().css({ 5857 top: topElement.offset().top - window.scrollY, 5858 left: moreEventsWrap.closest('.mec-more-events-controller').offset().left, 5859 width: moreEventsWrap.closest('.mec-more-events-controller').width(), 5860 }); 5861 if (moreEventsWrap.width() > 400) { 5862 moreEvents.css({ 5863 left: (moreEventsWrap.width() / 2) - (moreEvents.width() / 2), 5864 width: 400, 5865 }); 5866 } else { 5867 moreEvents.css({ 5868 width: moreEventsWrap.width(), 5869 left: 0, 5870 }); 5871 } 5872 } 5873} 5874 5875function mecFluentOutsideEvent(e) { 5876 if (!jQuery(e.target).is('.mec-more-events-icon') && !jQuery(e.target).closest('.mec-more-events-wrap').length) { 5877 jQuery('.mec-more-events-wrap').hide(); 5878 } 5879 if (!jQuery(e.target).is('.mec-filter-icon') && !jQuery(e.target).closest('.mec-filter-content').length) { 5880 jQuery('.mec-filter-content').hide(); 5881 } 5882 if (!jQuery(e.target).is('.mec-fluent-more-views-icon') && !jQuery(e.target).closest('.mec-fluent-more-views-content').length) { 5883 jQuery('.mec-fluent-more-views-content').removeClass('active'); 5884 } 5885} 5886 5887function mecFluentYearlyCalendar() { 5888 const monthNum = jQuery(this).data('month'); 5889 const monthName = jQuery(this).find('.mec-calendar-table-title').text(); 5890 jQuery('.mec-fluent-wrap').find('.mec-yearly-calendar').removeClass('active'); 5891 jQuery(this).addClass('active') 5892 .closest('.mec-year-container') 5893 .find('.mec-yearly-agenda-sec-title span').text(monthName).end() 5894 .find('.mec-events-agenda').addClass('mec-util-hidden').end() 5895 .find('.mec-events-agenda[data-month=' + monthNum + ']').removeClass('mec-util-hidden'); 5896 mecFluentCustomScrollbar(); 5897} 5898 5899function mecFluentYearlyUI(eventID, yearID) { 5900 var fluentWrap = jQuery('#mec_skin_' + eventID + '.mec-fluent-wrap'); 5901 if (fluentWrap.length < 0) { 5902 return; 5903 } 5904 var monthNum = fluentWrap.find('.mec-year-container[data-year-id=' + yearID + ']').find('.mec-events-agenda:not(.mec-util-hidden)').data('month'); 5905 var activeMonth = fluentWrap.find('.mec-year-container[data-year-id=' + yearID + ']').find('.mec-yearly-calendar[data-month=' + monthNum + ']'); 5906 var activeMonthName = activeMonth.find('.mec-calendar-table-title').text(); 5907 activeMonth.addClass('active'); 5908} 5909 5910// MEC LIST VIEW Fluent PLUGIN 5911(function ($) { 5912 $.fn.mecListViewFluent = function (options) { 5913 var active_month; 5914 var active_year; 5915 5916 // Default Options 5917 var settings = $.extend({ 5918 // These are the defaults. 5919 today: null, 5920 id: 0, 5921 events_label: 'Events', 5922 event_label: 'Event', 5923 month_navigator: 0, 5924 atts: '', 5925 active_month: {}, 5926 next_month: {}, 5927 sf: {}, 5928 ajax_url: '', 5929 }, options); 5930 5931 mecFluentCustomScrollbar(); 5932 5933 initLoadMore('#mec_list_view_month_' + settings.id + '_' + settings.month_id); 5934 5935 function initLoadMore(monthID) { 5936 $(monthID).off().on('click', '.mec-load-more-button', function () { 5937 loadMore(this); 5938 }); 5939 } 5940 5941 function loadMore(This) { 5942 // Add loading Class 5943 var currentLoadMore = $(This); 5944 currentLoadMore.addClass("mec-load-more-loading"); 5945 var endDate = currentLoadMore.data('end-date'); 5946 var maximumDate = currentLoadMore.data('maximum-date'); 5947 var nextOffset = currentLoadMore.data('next-offset'); 5948 var year = currentLoadMore.data('year');
5949 var month = currentLoadMore.data('month'); 5950 5951 $.ajax({ 5952 url: settings.ajax_url, 5953 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", 5954 dataType: "json", 5955 type: "post", 5956 success: function (response) { 5957 currentLoadMore.parent().remove(); 5958 if (response.count != '0') { 5959 // Append Items 5960 $('#mec_list_view_month_' + settings.id + '_' + response.current_month.id).append(response.month); 5961 5962 // Single Event Method 5963 if (settings.sed_method != '0') { 5964 sed(); 5965 } 5966 5967 mecFluentCustomScrollbar(); 5968 initLoadMore('#mec_list_view_month_' + settings.id + '_' + response.current_month.id); 5969 } 5970 5971 $(document).trigger('mec_load_more_init',['list',settings]); 5972 }, 5973 error: function () { } 5974 }); 5975 } 5976 5977 // Initialize Month Navigator 5978 if (settings.month_navigator) initMonthNavigator(); 5979 5980 // Load Next Month in background 5981 setMonth(settings.next_month.year, settings.next_month.month, true); 5982 5983 var initMonth; 5984 var initYear; 5985 active_month = initMonth = settings.active_month.month; 5986 active_year = initYear = settings.active_month.year; 5987 5988 // Search Widget 5989 if ( settings.sf.container !== '' ) { 5990 sf = $(settings.sf.container).mecSearchForm({ 5991 id: settings.id, 5992 refine: settings.sf.refine, 5993 ajax_url: settings.ajax_url, 5994 start_date: settings.start_date, 5995 atts: settings.atts, 5996 callback: function (atts) { 5997 settings.atts = atts; 5998 search(active_year, active_month); 5999 } 6000 }); 6001 6002 $(settings.sf.container).addClass('mec-skin-search-init'); 6003 } 6004 6005 // Single Event Method 6006 if (settings.sed_method != '0') { 6007 sed(); 6008 } 6009 6010 function initMonthNavigator() { 6011 $("#mec_skin_" + settings.id + " .mec-load-month").off().on("click", function () { 6012 var year = $(this).data("mec-year"); 6013 var month = $(this).data("mec-month"); 6014 setMonth(year, month, false, true); 6015 }); 6016 } 6017 6018 function parseQuery(queryString) { 6019 var query = {}; 6020 var pairs = (queryString[0] === '?' ? queryString.substr(1) : queryString).split('&'); 6021 for (var i = 0; i < pairs.length; i++) { 6022 var pair = pairs[i].split('='); 6023 query[decodeURIComponent(pair[0])] = decodeURIComponent(pair[1] || ''); 6024 } 6025 return query; 6026 } 6027 6028 function updateQueryStringParameter(uri, key, val) { 6029 return uri 6030 .replace(RegExp("([?&]" + key + "(?=[=&#]|$)[^#&]*|(?=#|$))"), "&" + key + "=" + encodeURIComponent(val)); 6031 } 6032 6033 function search(year, month) { 6034 // Add Loading Class 6035 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 6036 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 6037 6038 var ObjAtts = parseQuery(settings.atts); 6039 if (!(ObjAtts['sf[month'] || ObjAtts['sf[year]'])) { 6040 settings.atts = updateQueryStringParameter(settings.atts.trim(), 'sf[year]', initYear); 6041 settings.atts = updateQueryStringParameter(settings.atts.trim(), 'sf[month]', initMonth); 6042 } 6043 6044 $.ajax({
6045 url: settings.ajax_url, 6046 data: "action=mec_list_load_month&mec_year=" + year + "&mec_month=" + month + "&" + settings.atts + "&apply_sf_date=1", 6047 dataType: "json", 6048 type: "post", 6049 success: function (response) { 6050 active_month = response.current_month.month; 6051 active_year = response.current_month.year; 6052 6053 // Append Month 6054 $("#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>'); 6055 6056 // Append Month Navigator 6057 $("#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>'); 6058 6059 // Re-initialize Month Navigator 6060 initMonthNavigator(); 6061 6062 // Toggle Month 6063 toggleMonth(response.current_month.id); 6064 6065 initLoadMore('#mec_list_view_month_' + settings.id + '_' + response.current_month.id); 6066 6067 // Remove loading Class 6068 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 6069 6070 mecFluentCustomScrollbar(); 6071 6072 $(document).trigger('mec_search_process_end', {r:response, settings_id: settings.id}); 6073 6074 $(document).trigger('mec_search_init',['list',settings,response]); 6075 }, 6076 error: function () { } 6077 }); 6078 } 6079 6080 function setMonth(year, month, do_in_background, navigator_click) { 6081 if (typeof do_in_background === "undefined") do_in_background = false; 6082 navigator_click = navigator_click || false; 6083 var month_id = year + "" + month; 6084 6085 if (!do_in_background) { 6086 active_month = month; 6087 active_year = year; 6088 } 6089 6090 // Month exists so we just show it 6091 if ($("#mec_list_view_month_" + settings.id + "_" + month_id).length) { 6092 // Toggle Month 6093 toggleMonth(month_id); 6094 mecFluentCustomScrollbar(0); 6095 } else { 6096 if (!do_in_background) { 6097 // Add Loading Class 6098 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 6099 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 6100 } 6101 6102 $.ajax({
6103 url: settings.ajax_url, 6104 data: "action=mec_list_load_month&mec_year=" + year + "&mec_month=" + month + "&" + settings.atts + "&apply_sf_date=0" + "&navigator_click=" + navigator_click, 6105 dataType: "json", 6106 type: "post", 6107 success: function (response) { 6108 // Append Month 6109 $("#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>'); 6110 6111 // Append Month Navigator 6112 $("#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>'); 6113 6114 // Re-initialize Month Navigator 6115 initMonthNavigator(); 6116 initLoadMore('#mec_list_view_month_' + settings.id + '_' + response.current_month.id); 6117 6118 if (!do_in_background) { 6119 // Toggle Month 6120 toggleMonth(response.current_month.id); 6121 6122 // Remove loading Class 6123 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 6124 6125 6126 // Set Month Filter values in search widget 6127 $("#mec_sf_month_" + settings.id).val(month); 6128 $("#mec_sf_year_" + settings.id).val(year); 6129 } else { 6130 $("#mec_list_view_month_" + settings.id + "_" + response.current_month.id).hide(); 6131 $("#mec_month_navigator_" + settings.id + "_" + response.current_month.id).hide(); 6132 } 6133 if (typeof custom_month !== undefined) var custom_month; 6134 if (typeof custom_month != undefined) { 6135 if (custom_month == 'true') { 6136 $(".mec-month-container .mec-calendar-day").removeClass('mec-has-event'); 6137 $(".mec-month-container .mec-calendar-day").removeClass('mec-selected-day'); 6138 $('.mec-calendar-day').unbind('click'); 6139 } 6140 } 6141 if (!do_in_background) { 6142 mecFluentCustomScrollbar(0); 6143 } 6144 6145 if(jQuery().niceSelect) jQuery('.mec-fluent-wrap').find('.mec-filter-content').find('select').niceSelect(); 6146 6147 $(document).trigger('mec_set_month_process_end', {r:response, settings_id: settings.id}); 6148 }, 6149 error: function () { } 6150 }); 6151 } 6152 } 6153 6154 function toggleMonth(month_id) { 6155 var active_month = $("#mec_skin_" + settings.id + " .mec-month-container-selected").data("month-id"); 6156 var active_day = $("#mec_list_view_month_" + settings.id + "_" + active_month + " .mec-selected-day").data("day"); 6157 6158 if (active_day <= 9) active_day = "0" + active_day; 6159 6160 // Toggle Month Navigator 6161 $("#mec_skin_" + settings.id + " .mec-month-navigator").hide(); 6162 $("#mec_month_navigator_" + settings.id + "_" + month_id).show(); 6163 6164 // Toggle Month 6165 $("#mec_skin_" + settings.id + " .mec-month-container").hide(); 6166 $("#mec_list_view_month_" + settings.id + "_" + month_id).show(); 6167 6168 // Add selected class 6169 $("#mec_skin_" + settings.id + " .mec-month-container").removeClass("mec-month-container-selected"); 6170 $("#mec_list_view_month_" + settings.id + "_" + month_id).addClass("mec-month-container-selected"); 6171 6172 jQuery(document).trigger('mec_toggle_month', [settings, month_i
6172d]); 6173 } 6174 6175 var sf; 6176 6177 function sed() { 6178 // Single Event Display 6179 $(".mec-skin-list-wrap#mec_skin_" + settings.id).off('click').on('click', '[data-event-id]', function (e) { 6180 e.preventDefault(); 6181 var href = $(this).attr('href'); 6182 6183 var id = $(this).data('event-id'); 6184 var occurrence = get_parameter_by_name('occurrence', href); 6185 var time = get_parameter_by_name('time', href); 6186 6187 if( 'undefined' == typeof id ){ 6188 return; 6189 } 6190 6191 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 6192 }); 6193 } 6194 }; 6195}(jQuery)); 6196 6197// MEC Grid VIEW Fluent PLUGIN 6198(function ($) { 6199 $.fn.mecGridViewFluent = function (options) { 6200 var active_month; 6201 var active_year; 6202 6203 // Default Options 6204 var settings = $.extend({ 6205 // These are the defaults. 6206 today: null, 6207 id: 0, 6208 events_label: 'Events', 6209 event_label: 'Event', 6210 month_navigator: 0, 6211 atts: '', 6212 active_month: {}, 6213 next_month: {}, 6214 sf: {}, 6215 ajax_url: '', 6216 }, options); 6217 6218 initLoadMore('#mec_grid_view_month_' + settings.id + '_' + settings.month_id); 6219 6220 function initLoadMore(monthID) { 6221 $(monthID).off().on('click', '.mec-load-more-button', function () { 6222 loadMore(this); 6223 }); 6224 } 6225 6226 function loadMore(This) { 6227 // Add loading Class 6228 var currentLoadMore = $(This); 6229 currentLoadMore.addClass("mec-load-more-loading"); 6230 var endDate = currentLoadMore.data('end-date'); 6231 var maximumDate = currentLoadMore.data('maximum-date'); 6232 var nextOffset = currentLoadMore.data('next-offset'); 6233 var year = currentLoadMore.data('year'); 6234 var month = currentLoadMore.data('month'); 6235 6236 $.ajax({
6237 url: settings.ajax_url, 6238 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", 6239 dataType: "json", 6240 type: "post", 6241 success: function (response) { 6242 currentLoadMore.parent().remove(); 6243 if (response.count != '0') { 6244 // Append Items 6245 $('#mec_grid_view_month_' + settings.id + '_' + response.current_month.id).append(response.month); 6246 6247 // Single Event Method 6248 if (settings.sed_method != '0') { 6249 sed(); 6250 } 6251 6252 mecFluentCustomScrollbar(); 6253 initLoadMore('#mec_grid_view_month_' + settings.id + '_' + response.current_month.id); 6254 } 6255 6256 $(document).trigger('mec_load_more_init',['grid',settings]); 6257 }, 6258 error: function () { } 6259 }); 6260 } 6261 6262 // Initialize Month Navigator 6263 if (settings.month_navigator) initMonthNavigator(); 6264 6265 // Load Next Month in background 6266 setMonth(settings.next_month.year, settings.next_month.month, true); 6267 6268 var initMonth; 6269 var initYear; 6270 active_month = initMonth = settings.active_month.month; 6271 active_year = initYear = settings.active_month.year; 6272 6273 // Search Widget 6274 if ( settings.sf.container !== '' ) { 6275 sf = $(settings.sf.container).mecSearchForm({ 6276 id: settings.id, 6277 refine: settings.sf.refine, 6278 ajax_url: settings.ajax_url, 6279 start_date: settings.start_date, 6280 atts: settings.atts, 6281 callback: function (atts) { 6282 settings.atts = atts; 6283 search(active_year, active_month); 6284 } 6285 }); 6286 6287 $(settings.sf.container).addClass('mec-skin-search-init'); 6288 } 6289 6290 // Single Event Method 6291 if (settings.sed_method != '0') { 6292 sed(); 6293 } 6294 6295 function initMonthNavigator() { 6296 $("#mec_skin_" + settings.id + " .mec-load-month").off().on("click", function () { 6297 var year = $(this).data("mec-year"); 6298 var month = $(this).data("mec-month"); 6299 setMonth(year, month, false, true); 6300 }); 6301 } 6302 6303 function parseQuery(queryString) { 6304 var query = {}; 6305 var pairs = (queryString[0] === '?' ? queryString.substr(1) : queryString).split('&'); 6306 for (var i = 0; i < pairs.length; i++) { 6307 var pair = pairs[i].split('='); 6308 query[decodeURIComponent(pair[0])] = decodeURIComponent(pair[1] || ''); 6309 } 6310 return query; 6311 } 6312 6313 function updateQueryStringParameter(uri, key, val) { 6314 return uri 6315 .replace(RegExp("([?&]" + key + "(?=[=&#]|$)[^#&]*|(?=#|$))"), "&" + key + "=" + encodeURIComponent(val)); 6316 } 6317 6318 function search(year, month) { 6319 // Add Loading Class 6320 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 6321 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 6322 6323 var ObjAtts = parseQuery(settings.atts); 6324 if (!(ObjAtts['sf[month'] || ObjAtts['sf[year]'])) { 6325 settings.atts = updateQueryStringParameter(settings.atts.trim(), 'sf[year]', initYear); 6326 settings.atts = updateQueryStringParameter(settings.atts.trim(), 'sf[month]', initMonth); 6327 } 6328 6329 $.ajax({
6330 url: settings.ajax_url, 6331 data: "action=mec_grid_load_month&mec_year=" + year + "&mec_month=" + month + "&" + settings.atts + "&apply_sf_date=1", 6332 dataType: "json", 6333 type: "post", 6334 success: function (response) { 6335 active_month = response.current_month.month; 6336 active_year = response.current_month.year; 6337 6338 // Append Month 6339 $("#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>'); 6340 6341 // Append Month Navigator 6342 $("#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>'); 6343 6344 // Re-initialize Month Navigator 6345 initMonthNavigator(); 6346 6347 // Toggle Month 6348 toggleMonth(response.current_month.id); 6349 6350 initLoadMore('#mec_grid_view_month_' + settings.id + '_' + response.current_month.id); 6351 6352 // Remove loading Class 6353 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 6354 6355 mecFluentCustomScrollbar(); 6356 6357 $(document).trigger('mec_search_init',['grid',settings,response]); 6358 }, 6359 error: function () { } 6360 }); 6361 } 6362 6363 function setMonth(year, month, do_in_background, navigator_click) { 6364 if (typeof do_in_background === "undefined") do_in_background = false; 6365 navigator_click = navigator_click || false; 6366 var month_id = year + "" + month; 6367 6368 if (!do_in_background) { 6369 active_month = month; 6370 active_year = year; 6371 } 6372 6373 // Month exists so we just show it 6374 if ($("#mec_grid_view_month_" + settings.id + "_" + month_id).length) { 6375 // Toggle Month 6376 toggleMonth(month_id); 6377 mecFluentCustomScrollbar(); 6378 } else { 6379 if (!do_in_background) { 6380 // Add Loading Class 6381 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 6382 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 6383 } 6384 6385 $.ajax({
6386 url: settings.ajax_url, 6387 data: "action=mec_grid_load_month&mec_year=" + year + "&mec_month=" + month + "&" + settings.atts + "&apply_sf_date=0" + "&navigator_click=" + navigator_click, 6388 dataType: "json", 6389 type: "post", 6390 success: function (response) { 6391 // Append Month 6392 $("#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>'); 6393 6394 // Append Month Navigator 6395 $("#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>'); 6396 6397 // Re-initialize Month Navigator 6398 initMonthNavigator(); 6399 initLoadMore('#mec_grid_view_month_' + settings.id + '_' + response.current_month.id); 6400 6401 if (!do_in_background) { 6402 // Toggle Month 6403 toggleMonth(response.current_month.id); 6404 6405 // Remove loading Class 6406 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 6407 6408 6409 // Set Month Filter values in search widget 6410 $("#mec_sf_month_" + settings.id).val(month); 6411 $("#mec_sf_year_" + settings.id).val(year); 6412 } else { 6413 $("#mec_grid_view_month_" + settings.id + "_" + response.current_month.id).hide(); 6414 $("#mec_month_navigator_" + settings.id + "_" + response.current_month.id).hide(); 6415 } 6416 if (typeof custom_month !== undefined) var custom_month; 6417 if (typeof custom_month != undefined) { 6418 if (custom_month == 'true') { 6419 $(".mec-month-container .mec-calendar-day").removeClass('mec-has-event'); 6420 $(".mec-month-container .mec-calendar-day").removeClass('mec-selected-day'); 6421 $('.mec-calendar-day').unbind('click'); 6422 } 6423 } 6424 if (!do_in_background) { 6425 mecFluentCustomScrollbar(); 6426 } 6427 }, 6428 error: function () { } 6429 }); 6430 } 6431 } 6432 6433 function toggleMonth(month_id) { 6434 var active_month = $("#mec_skin_" + settings.id + " .mec-month-container-selected").data("month-id"); 6435 var active_day = $("#mec_grid_view_month_" + settings.id + "_" + active_month + " .mec-selected-day").data("day"); 6436 6437 if (active_day <= 9) active_day = "0" + active_day; 6438 6439 // Toggle Month Navigator 6440 $("#mec_skin_" + settings.id + " .mec-month-navigator").hide(); 6441 $("#mec_month_navigator_" + settings.id + "_" + month_id).show(); 6442 6443 // Toggle Month 6444 $("#mec_skin_" + settings.id + " .mec-month-container").hide(); 6445 $("#mec_grid_view_month_" + settings.id + "_" + month_id).show(); 6446 6447 // Add selected class 6448 $("#mec_skin_" + settings.id + " .mec-month-container").removeClass("mec-month-container-selected"); 6449 $("#mec_grid_view_month_" + settings.id + "_" + month_id).addClass("mec-month-container-selected"); 6450 6451 jQuery(document).trigger('mec_toggle_month', [settings, month_id]); 6452 } 6453 6454 var sf; 6455 6456 function sed() { 6457 // Single Event Display 6458 $(".mec-skin-grid-wrap#mec_skin_" + settings.id).off('click').on('click', '[data-event-id]', function (e) { 6459 e.preventDefault(); 6460 var href = $(this).attr('href'); 6461 6462 var id = $(this).data('event-id'); 6463 var occurrence = get_parameter_by_name('occurrence', href); 6464 var time = get_parameter_by_name('time', href); 6465 6466 if( 'undefined' == typeof id ){ 6467 return; 6468 } 6469 6470 mecSingleEventDisplayer.getSinglePage(id, occurrence, time, settings.ajax_url, settings.sed_method, settings.image_popup); 6471 }); 6472 } 6473 }; 6474}(jQuery)); 6475 6476// MEC Booking Calendar 6477(function($) 6478{
6479 $.fn.mecBookingCalendar = function(options) 6480 { 6481 var active_month; 6482 var active_year; 6483 6484 // Default Options 6485 var settings = $.extend({ 6486 // These are the defaults. 6487 active_month: {}, 6488 next_month: {}, 6489 ajax_url: '', 6490 event_id: '', 6491 selected_datetime: '', 6492 }, options); 6493 6494 // Initialize Month Navigator 6495 initMonthNavigator(); 6496 6497 active_month = settings.active_month.month; 6498 active_year = settings.active_month.year; 6499 6500 // Set onclick Listeners 6501 setListeners(); 6502 6503 function initMonthNavigator() 6504 { 6505 // Add onclick event 6506 $("#mec_booking_calendar_" + settings.id + " .mec-load-month").off('click').on('click', function() 6507 { 6508 var year = $(this).data('mec-year'); 6509 var month = $(this).data('mec-month'); 6510 6511 setMonth(year, month); 6512 }); 6513 } 6514 6515 function setMonth(year, month) 6516 { 6517 active_month = month; 6518 active_year = year; 6519 6520 var $modal = $('.mec-modal-result'); 6521 6522 // Add Loading Class 6523 if ($modal.length === 0) $('.mec-wrap').append('<div class="mec-modal-result"></div>'); 6524 $modal.addClass('mec-month-navigator-loading'); 6525 6526 $.ajax( 6527 { 6528 url: settings.ajax_url, 6529 data: "action=mec_booking_calendar_load_month&event_id=" + settings.event_id + "&uniqueid=" + settings.id + "&year=" + year + "&month=" + month, 6530 dataType: "json", 6531 type: "post", 6532 success: function(response) 6533 { 6534 const $month_wrapper = $('#mec_booking_calendar_wrapper' + settings.id + ' .mec-select-date-calendar-container'); 6535 6536 // HTML 6537 $month_wrapper.html(response.html); 6538 6539 // Hide Message 6540 $('#mec_book_form' + settings.id + ' .mec-ticket-unavailable-spots').addClass('mec-util-hidden'); 6541 6542 // Empty the Date 6543 $('#mec_book_form_date' + settings.id).val('').trigger('change'); 6544 6545 // Remove loading Class 6546 $modal.removeClass("mec-month-navigator-loading"); 6547 6548 setTimeout(function() 6549 { 6550 $month_wrapper.find($('.mec-booking-calendar-date')).first().trigger('click'); 6551 }, 200); 6552 }, 6553 error: function() 6554 { 6555 // Remove loading Class 6556 $modal.removeClass("mec-month-navigator-loading"); 6557 } 6558 }); 6559 } 6560 6561 function setListeners() 6562 { 6563 // Add the onclick event 6564 $("#mec_booking_calendar_" + settings.id + " .mec-booking-calendar-date").off('click').on('click', function(e) 6565 { 6566 e.preventDefault(); 6567 6568 // Activate 6569 $("#mec_booking_calendar_" + settings.id + " .mec-booking-calendar-date").removeClass('mec-active'); 6570 $("#mec_booking_calendar_" + settings.id + " .mec-calendar-day").removeClass('mec-wrap-active'); 6571 $(this).addClass('mec-active'); 6572 $(this).parents('.mec-calendar-day').addClass('mec-wrap-active'); 6573 6574 // Set Data 6575 var timestamp = $(this).data('timestamp'); 6576 $('#mec_book_form_date' + settings.id).val(timestamp).trigger('change'); 6577 6578 // Set Formatted Date 6579 var formatted_date = $(this).data('formatted-date'); 6580 $("#mec_booking_calendar_wrapper" + settings.id + " .mec-select-date-calendar-formatted-date").html(formatted_date); 6581 }); 6582 6583 // Add the onclick event on calendar date 6584 $("#mec_booking_calendar_" + settings.id + " .mec-has-one-repeat-in-day").off('click').on('click', function(e) 6585 { 6586 e.preventDefault(); 6587 6588 var mec_date_value = $(this).attr('data-timestamp'); 6589 6590 // Activate
6591 $("#mec_booking_calendar_" + settings.id + " .mec-has-one-repeat-in-day").removeClass('mec-active'); 6592 $("#mec_booking_calendar_" + settings.id + " [data-timestamp=\"" + mec_date_value + "\"]").addClass('mec-active'); 6593 6594 // Set Data 6595 var timestamp = $(this).data('timestamp'); 6596 $('#mec_book_form_date' + settings.id).val(timestamp).trigger('change'); 6597 6598 // Set Formatted Date 6599 var formatted_date = $(this).data('formatted-date'); 6600 $("#mec_booking_calendar_wrapper" + settings.id + " .mec-select-date-calendar-formatted-date").html(formatted_date); 6601 }); 6602 6603 // If day has some time slot 6604 $("#mec_booking_calendar_" + settings.id + " .mec-has-time-repeat .mec-calendar-novel-selected-day").off('click').on('click', function(e) 6605 { 6606 $("#mec_booking_calendar_" + settings.id + " .mec-has-time-repeat").removeClass('mec-wrap-active').removeClass('mec-active'); 6607 $(".mec-has-time-repeat").find('.mec-booking-calendar-date').hide(); 6608 $(this).parents(".mec-has-time-repeat").find('.mec-booking-calendar-date').toggle(); 6609 $(this).parents(".mec-has-time-repeat").addClass('mec-active'); 6610 }); 6611 6612 var $has_time_repeat = $("#mec_booking_calendar_" + settings.id + " .mec-has-time-repeat"); 6613 6614 // Find more time in tooltip to set button 6615 $has_time_repeat.on('mouseenter', function() 6616 { 6617 var moreTimeFinder = $(this).find(".mec-booking-calendar-date"); 6618 if(moreTimeFinder.length >= 1) 6619 { 6620 $(this).find(".mec-booking-tooltip").removeClass("multiple-time"); 6621 $(this).find(".mec-booking-tooltip").addClass("multiple-time"); 6622 } 6623 6624 $(this).find(".mec-booking-calendar-date").css("display", "block"); 6625 }); 6626 6627 $has_time_repeat.off('click').on('click', function() 6628 { 6629 $("#mec_booking_calendar_" + settings.id + " .mec-has-time-repeat").removeClass('mec-wrap-active').removeClass('mec-active'); 6630 $(this).addClass("mec-active"); 6631 6632 // Send message under the calendar for multiple time in one day 6633 var sendTimeToMessage = $(this).find(".multiple-time .mec-booking-calendar-date.mec-active").text(); 6634 6635 $(this).parents().eq(3).find(".mec-choosen-time-message").removeClass("disable"); 6636 $(this).parents().eq(3).find(".mec-choosen-time-message .mec-choosen-time").empty(); 6637 $(this).parents().eq(3).find(".mec-choosen-time-message .mec-choosen-time").append(sendTimeToMessage); 6638 }); 6639 6640 // Selected DateTime 6641 if(settings.selected_datetime && $has_time_repeat.length) 6642 { 6643 var $selected_datetime = $(".mec-booking-calendar-date[data-timestamp='"+settings.selected_datetime+"']"); 6644 if($selected_datetime.length) 6645 { 6646 $selected_datetime.parent().addClass("multiple-time"); 6647 $selected_datetime.addClass("mec-active").trigger('click'); 6648 } 6649 } 6650 6651 // Dropdown Toggle 6652 $("#mec_booking_calendar_wrapper" + settings.id + " .mec-select-date-calendar-dropdown").off('click').on('click', function() 6653 { 6654 var $up = $("#mec_booking_calendar_wrapper" + settings.id + " .mec-select-date-calendar-icons-up"); 6655 var $down = $("#mec_booking_calendar_wrapper" + settings.id + " .mec-select-date-calendar-icons-down"); 6656 var $calendar = $("#mec_booking_calendar_wrapper" + settings.id + " .mec-select-date-calendar-container"); 6657 6658 var $current = $(this).find($('.mec-select-date-calendar-icons span:not(.mec-util-hidden)')); 6659 if($current.hasClass('mec-select-date-calendar-icons-up')) 6660 { 6661 $up.addClass('mec-util-hidden'); 6662 $down.removeClass('mec-util-hidden'); 6663 $calendar.removeClass('mec-util-hidden'); 6664 6665 setTimeout(function() 6666 { 6667 $('body').off('click').on('click', mec_calendar_close_calendar_on_body_click); 6668 }, 100); 6669 } 6670 else 6671 { 6672 $up.removeClass('mec-util-hidden'); 6673 $down.addClass('mec-util-hidden'); 6674 $calendar.addClass('mec-util-hidden'); 6675 } 6676 }); 6677 6678 function mec_calendar_close_calendar_on_body_click(e) 6679 {
6680 var $up = $("#mec_booking_calendar_wrapper" + settings.id + " .mec-select-date-calendar-icons-up"); 6681 var $down = $("#mec_booking_calendar_wrapper" + settings.id + " .mec-select-date-calendar-icons-down"); 6682 var $calendar = $("#mec_booking_calendar_wrapper" + settings.id + " .mec-select-date-calendar-container"); 6683 6684 // Click was inside calendar 6685 if($(e.target).closest($calendar).length > 0) return false; 6686 6687 $up.removeClass('mec-util-hidden'); 6688 $down.addClass('mec-util-hidden'); 6689 $calendar.addClass('mec-util-hidden'); 6690 6691 $('body').off('click', mec_calendar_close_calendar_on_body_click); 6692 } 6693 } 6694 }; 6695}(jQuery)); 6696 6697// MEC Cart 6698(function($) 6699{ 6700 $.fn.mecCart = function(options) 6701 { 6702 // Default Options 6703 var settings = $.extend({ 6704 // These are the defaults. 6705 ajax_url: '', 6706 }, options); 6707 6708 // Set DOM Listeners 6709 setListeners(); 6710 6711 function setListeners() 6712 { 6713 // Add the onclick event 6714 $(".mec-cart-remove-transactions").off('click').on('click', function(e) 6715 { 6716 e.preventDefault(); 6717 6718 var transaction_id = $(this).data('transaction-id'); 6719 remove(transaction_id); 6720 }); 6721 6722 $('#mec_cart_coupon_form').off('submit').on('submit', function(e) 6723 { 6724 e.preventDefault(); 6725 coupon(); 6726 }); 6727 } 6728 6729 function remove(transaction_id) 6730 { 6731 var $wrapper = $('.mec-cart'); 6732 6733 // Add loading Class 6734 $wrapper.addClass('mec-loading'); 6735 6736 $.ajax( 6737 { 6738 url: settings.ajax_url, 6739 data: "action=mec_cart_remove_transaction&transaction_id=" + transaction_id, 6740 dataType: "json", 6741 type: "post", 6742 success: function(response) 6743 { 6744 // Remove Loading Class 6745 $wrapper.removeClass('mec-loading'); 6746 6747 if(response.success) 6748 { 6749 // Remove Transaction Row 6750 $('#mec_cart_transactions_'+transaction_id).remove(); 6751 6752 if(!$('#mec_cart_transactions_table>tbody>tr').length) 6753 { 6754 $('#mec_cart_transactions_table').remove(); 6755 $('.mec-cart-coupon-checkout-action').remove(); 6756 $('.mec-cart-empty-wrapper').removeClass('mec-util-hidden'); 6757 } 6758 6759 // Update Total Payable Price 6760 $('#mec_cart_total_payable').html(response.total); 6761 } 6762 }, 6763 error: function(){} 6764 }); 6765 } 6766 6767 function coupon() 6768 { 6769 var $wrapper = $('.mec-cart'); 6770 var $message = $('#mec_cart_message'); 6771 6772 // Add loading Class 6773 $wrapper.addClass('mec-loading'); 6774 6775 // Empty Message 6776 $message.html(''); 6777 6778 var coupon = $('#mec_cart_coupon_input').val(); 6779 6780 $.ajax( 6781 { 6782 url: settings.ajax_url, 6783 data: "action=mec_cart_coupon&coupon=" + coupon, 6784 dataType: "json", 6785 type: "post", 6786 success: function(response) 6787 { 6788 // Remove Loading Class 6789 $wrapper.removeClass('mec-loading'); 6790 6791 if(response.success) 6792 { 6793 $message.html('<p class="mec-success">'+response.message+'</p>'); 6794 6795 setTimeout(function() 6796 { 6797 location.reload(); 6798 }, 2000); 6799 } 6800 else 6801 { 6802 $message.html('<p class="mec-error">'+response.message+'</p>'); 6803 } 6804 }, 6805 error: function(){} 6806 }); 6807 } 6808 }; 6809}(jQuery)); 6810 6811// MEC Checkout 6812(function($) 6813{ 6814 $.fn.mecCheckout = function(options) 6815 { 6816 // Default Options 6817 var settings = $.extend({ 6818 // These are the defaults. 6819 ajax_url: '', 6820 }, options); 6821 6822 // Set DOM Listeners 6823 setListeners(); 6824 6825 function setListeners() 6826 { 6827 // Add the onclick event 6828 $(".mec-checkout-gateways-radio").off('change').on('change', function(e) 6829 { 6830 e.preventDefault(); 6831 6832 var gateway_id = $('.mec-checkout-gateways-radio:checked').val(); 6833 6834 // Hide all gateway forms 6835 jQuery(".mec-checkout-form-gateway-checkout").addClass("mec-util-hidden"); 6836 jQuery(".mec-checkout-price-details-wrapper").addClass("mec-util-hidden"); 6837 jQuery(".mec-checkout-price-wrapper").addClass("mec-util-hidden"); 6838 6839 // Show selected gateway form 6840 jQuery("#mec_checkout_form_gateway_checkout" + gateway_id).removeClass("mec-util-hidden"); 6841 jQuery("#mec-checkout-price-details-wrapper-" + gateway_id).removeClass("mec-util-hidden"); 6842 jQuery("#mec-checkout-price-wrapper-" + gateway_id).removeClass("mec-util-hidden"); 6843 }); 6844 6845 if( $(".mec-checkout-gateways-radio:first").length ){ 6846 6847 $(".mec-checkout-gateways-radio:first").prop('checked',true).change(); 6848 }else{ 6849 6850 jQuery(".mec-checkout-price-details-wrapper:first").removeClass("mec-util-hidden"); 6851 } 6852 6853 $('#mec_checkout_form_free_booking').off('submit').on('submit', function(e) 6854 { 6855 e.preventDefault(); 6856 free(); 6857 }); 6858 } 6859 6860 function free() 6861 { 6862 var $wrapper = $('.mec-checkout'); 6863 var $message = $('#mec_checkout_message'); 6864 6865 // Add loading Class 6866 $wrapper.addClass('mec-loading'); 6867 6868 // Empty Message 6869 $message.html(''); 6870 6871 var data = $('#mec_checkout_form_free_booking').serialize(); 6872 6873 $.ajax( 6874 { 6875 url: settings.ajax_url, 6876 data: data, 6877 dataType: "json", 6878 type: "post", 6879 success: function(response) 6880 { 6881 // Remove Loading Class 6882 $wrapper.removeClass('mec-loading'); 6883 6884 if(response.success) 6885 { 6886 $message.html('<div class="mec-success">'+response.message+'</div>'); 6887 $wrapper.slideUp().html(''); 6888 } 6889 else 6890 { 6891 $message.html('<div class="mec-error">'+response.message+'</div>'); 6892 } 6893 }, 6894 error: function(){} 6895 }); 6896 } 6897 }; 6898}(jQuery)); 6899 6900// Booking Shortcode Scripts 6901jQuery(document).ready(function() 6902{ 6903 // Event Gallery 6904 mec_init_event_gallery(); 6905 6906 if (jQuery('.mec-booking-shortcode').length < 0) { 6907 return; 6908 } 6909 // Events 6910 if (jQuery().niceSelect) { 6911 jQuery('.mec-booking-shortcode').find('.mec-book-first').find('select').niceSelect(); 6912 } 6913 6914 // General Calendar 6915 if ( jQuery("#gCalendarMonthFilterButton").length > 0 ) { 6916 jQuery("#gCalendarMonthFilterButton").monthPicker({ 6917 format: "yyyy-mm", 6918 viewMode: "months", 6919 minViewMode: "months" 6920 }) 6921 jQuery("#gCalendarMonthFilterButton").monthPicker('hide') 6922 } 6923}); 6924 6925function mec_init_event_gallery() 6926{ 6927 // Event Gallery 6928 jQuery('.mec-event-gallery-wrapper').each(function() 6929 { 6930 let $gallery = jQuery(this); 6931 6932 $gallery.find(jQuery('.mec-event-gallery-list li')).on('click', function() 6933 { 6934 let $image = jQuery(this).find(jQuery('img')); 6935 let src = $image.data('full-src'); 6936 let alt = $image.attr('alt'); 6937 6938 jQuery('.mec-event-gallery-image img') 6939 .fadeTo(200, 0.8) 6940 .attr('src', src) 6941 .attr('alt', alt) 6942 .fadeTo(200, 1); 6943 }); 6944 });
6945} 6946 6947function mec_toggle_shortcode_pagination(shortcode_id, method) 6948{ 6949 if(method === 'show') 6950 { 6951 jQuery("#mec_skin_" + shortcode_id + " .mec-load-more-button").removeClass("mec-util-hidden"); 6952 jQuery('#mec-nextprev-wrap-' + shortcode_id + ' .mec-nextprev-next-button').removeClass("mec-util-hidden"); 6953 } 6954 else 6955 { 6956 jQuery("#mec_skin_" + shortcode_id + " .mec-load-more-button").addClass("mec-util-hidden"); 6957 jQuery('#mec-nextprev-wrap-' + shortcode_id + ' .mec-nextprev-next-button').addClass("mec-util-hidden"); 6958 jQuery('#mec-nextprev-wrap-' + shortcode_id + ' .mec-nextprev-hide-button').addClass("mec-util-hidden"); 6959 } 6960} 6961 6962// MEC COUNTDOWN MODULE 6963(function ($) { 6964 $.fn.mecProgressBar = function () { 6965 let $bar = $(this).find($('progress')); 6966 let value = parseInt($bar.attr('value')); 6967 const max = parseInt($bar.attr('max')); 6968 6969 var passed = 0; 6970 var remained = 0; 6971 var passed_days; 6972 var passed_hours; 6973 var passed_minutes; 6974 var passed_seconds; 6975 var remained_days; 6976 var remained_hours; 6977 var remained_minutes; 6978 var remained_seconds; 6979 6980 var $time_passed = $(this).find($('.mec-progress-bar-time-passed')); 6981 var $time_remained = $(this).find($('.mec-progress-bar-time-remained')); 6982 6983 startProgress(); 6984 var interval = setInterval(startProgress, 1000); 6985 6986 function startProgress() { 6987 if(value >= max) { 6988 clearInterval(interval); 6989 return; 6990 } 6991 value += 1; 6992 $bar.attr('value', value); 6993 6994 let passed_str = ''; 6995 let remained_str = ''; 6996 6997 passed = value; 6998 remained = max - passed; 6999 7000 passed_days = Math.floor(passed / 86400); 7001 passed -= passed_days * 86400; 7002 7003 passed_hours = Math.floor(passed / 3600); 7004 passed -= passed_hours * 3600; 7005 7006 passed_minutes = Math.floor(passed / 60); 7007 passed -= passed_minutes * 60; 7008 7009 passed_seconds = passed; 7010 7011 remained_days = Math.floor(remained / 86400); 7012 remained -= remained_days * 86400; 7013 7014 remained_hours = Math.floor(remained / 3600); 7015 remained -= remained_hours * 3600; 7016 7017 remained_minutes = Math.floor(remained / 60); 7018 remained -= remained_minutes * 60; 7019 7020 remained_seconds = remained; 7021 7022 if(passed_days > 0) passed_str += (passed_days < 10 ? '0' : '') + passed_days + ':'; 7023 if(passed_days > 0 || passed_hours > 0) passed_str += (passed_hours < 10 ? '0' : '') + passed_hours + ':'; 7024 passed_str += (passed_minutes < 10 ? '0' : '') + passed_minutes + ':'; 7025 passed_str += (passed_seconds < 10 ? '0' : '') + passed_seconds; 7026 7027 if(remained_days >
7027 0) remained_str += (remained_days < 10 ? '0' : '') + remained_days + ':'; 7028 if(remained_days > 0 || remained_hours > 0) remained_str += (remained_hours < 10 ? '0' : '') + remained_hours + ':'; 7029 remained_str += (remained_minutes < 10 ? '0' : '') + remained_minutes + ':'; 7030 remained_str += (remained_seconds < 10 ? '0' : '') + remained_seconds; 7031 7032 $time_passed.html(passed_str); 7033 $time_remained.html(remained_str); 7034 } 7035 }; 7036}(jQuery));
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.