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