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