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