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