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