1// MEC Single Event Displayer 2var mecSingleEventDisplayer = { 3 getSinglePage: function (id, occurrence, ajaxurl, layout, image_popup) { 4 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 5 jQuery('.mec-modal-result').addClass('mec-modal-preloader'); 6 7 jQuery.ajax({ 8 url: ajaxurl, 9 data: "action=mec_load_single_page&id=" + id + (occurrence != null ? "&occurrence=" + occurrence : "") + "&layout=" + layout, 10 type: "get", 11 success: function (response) { 12 jQuery('.mec-modal-result').removeClass("mec-modal-preloader"); 13 //lity(response); 14 jQuery.featherlight(response); 15 16 setTimeout(function () { 17 grecaptcha.render("g-recaptcha", { 18 sitekey: mecdata.recapcha_key 19 }); 20 }, 1000); 21 22 if (image_popup != 0) { 23 if (jQuery('.featherlight-content .mec-events-content a img').length > 0) { 24 jQuery('.featherlight-content .mec-events-content a img').each(function () { 25 jQuery(this).closest('a').attr('data-featherlight', 'image'); 26 }); 27 } 28 } 29 }, 30 error: function () {} 31 }); 32 } 33}; 34 35// MEC SEARCH FORM PLUGIN 36(function ($) { 37 $.fn.mecSearchForm = function (options) { 38 // Default Options 39 var settings = $.extend({ 40 // These are the defaults. 41 id: 0, 42 search_form_element: '', 43 atts: '', 44 callback: function () {} 45 }, options); 46 47 $("#mec_sf_category_" + settings.id).on('change', function (e) { 48 search(); 49 }); 50 51 $("#mec_sf_location_" + settings.id).on('change', function (e) { 52 search(); 53 }); 54 55 $("#mec_sf_organizer_" + settings.id).on('change', function (e) { 56 search(); 57 }); 58 59 $("#mec_sf_speaker_" + settings.id).on('change', function (e) { 60 search(); 61 }); 62 63 $("#mec_sf_tag_" + settings.id).on('change', function (e) { 64 search(); 65 }); 66 67 68 $("#mec_sf_label_" + settings.id).on('change', function (e) { 69 search(); 70 }); 71 72 $("#mec_sf_s_" + settings.id).on('change', function (e) { 73 search(); 74 }); 75 76 $("#mec_sf_address_s_" + settings.id).on('change', function (e) { 77 search(); 78 }); 79 80 var mec_sf_month_selector = "#mec_sf_month_" + settings.id; 81 var mec_sf_year_selector = "#mec_sf_year_" + settings.id; 82 mec_sf_month_selector += (', ' + mec_sf_year_selector); 83 84 $(mec_sf_month_selector).on('change', function (e) { 85 if($(mec_sf_year_selector).find('option:eq(0)').val() == 'none') 86 { 87 var mec_month_val = $(mec_sf_month_selector).val(); 88 var mec_year_val = $(mec_sf_year_selector).val(); 89 90 if((mec_month_val != 'none' && mec_year_val != 'none') || ((mec_month_val == 'none' && mec_year_val == 'none'))) search(); 91 } else search(); 92 }); 93 94 $("#mec_sf_event_type_" + settings.id).on('change', function (e) { 95 search(); 96 }); 97 98 $("#mec_sf_event_type_2_" + settings.id).on('change', function (e) { 99 search(); 100 }); 101 $("#mec_sf_attribute_" + settings.id).on('change', function (e) { 102 search(); 103 }); 104 105 if (settings.fields && settings.fields != null && settings.fields.length > 0) { 106 for (var k in settings.fields) { 107 $("#mec_sf_" + settings.fields[k] + '_' + settings.id).on('change', function (e) { 108 search(); 109 }); 110 } 111 } 112 113 function search() { 114 var s = $("#mec_sf_s_" + settings.id).length ? $("#mec_sf_s_" + settings.id).val() : ''; 115 var address = $("#mec_sf_address_s_" + settings.id).length ? $("#mec_sf_address_s_" + settings.id).val() : ''; 116 var category = $("#mec_sf_category_" + settings.id).length ? $("#mec_sf_category_" + settings.id).val() : ''; 117 var location = $("#mec_sf_location_" + settings.id).length ? $("#mec_sf_location_" + settings.id).val() : ''; 118 var organizer = $("#mec_sf_organizer_" + settings.id).length ? $("#mec_sf_organizer_" + settings.id).val() : ''; 119 var speaker = $("#mec_sf_speaker_" + settings.id).length ? $("#mec_sf_speaker_" + settings.id).val() : ''; 120 var tag = $("#mec_sf_tag_" + settings.id).length ? $("#mec_sf_tag_" + settings.id).val() : ''; 121 var label = $("#mec_sf_label_" + settings.id).length ? $("#mec_sf_label_" + settings.id).val() : '';
122 var month = $("#mec_sf_month_" + settings.id).length ? $("#mec_sf_month_" + settings.id).val() : ''; 123 var year = $("#mec_sf_year_" + settings.id).length ? $("#mec_sf_year_" + settings.id).val() : ''; 124 var event_type = $("#mec_sf_event_type_" + settings.id).length ? $("#mec_sf_event_type_" + settings.id).val() : ''; 125 var event_type_2 = $("#mec_sf_event_type_2_" + settings.id).length ? $("#mec_sf_event_type_2_" + settings.id).val() : ''; 126 var attribute = $("#mec_sf_attribute_" + settings.id).length ? $("#mec_sf_attribute_" + settings.id).val() : ''; 127 128 if (year === 'none' && month === 'none') { 129 year = ''; 130 month = ''; 131 } 132 133 var addation_attr = ''; 134 135 if (settings.fields && settings.fields != null && settings.fields.length > 0) { 136 for (var k in settings.fields) { 137 var field = '#mec_sf_' + settings.fields[k] + '_' + settings.id; 138 var val = $(field).length ? $(field).val() : ''; 139 addation_attr += '&sf[' + settings.fields[k] + ']=' + val; 140 } 141 } 142 143 var atts = settings.atts + '&sf[s]=' + s + '&sf[address]=' + address + '&sf[month]=' + month + '&sf[year]=' + year + '&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[attribute]=' + attribute + addation_attr; 144 settings.callback(atts); 145 } 146 }; 147 148}(jQuery)); 149 150// MEC FULL CALENDAR PLUGIN 151(function ($) { 152 $.fn.mecFullCalendar = function (options) { 153 // Default Options 154 var settings = $.extend({ 155 // These are the defaults. 156 id: 0, 157 atts: '', 158 ajax_url: '', 159 sf: {}, 160 skin: '', 161 }, options); 162 163 // Set onclick Listeners 164 setListeners(); 165 166 var sf; 167 168 function setListeners() { 169 // Search Widget 170 if (settings.sf.container !== '') { 171 sf = $(settings.sf.container).mecSearchForm({ 172 id: settings.id, 173 atts: settings.atts, 174 callback: function (atts) { 175 settings.atts = atts; 176 search(); 177 } 178 }); 179 } 180 181 // Add the onclick event 182 $("#mec_skin_" + settings.id + " .mec-totalcal-box .mec-totalcal-view span").on('click', function (e) { 183 e.preventDefault(); 184 var skin = $(this).data('skin'); 185 var mec_month_select = $('#mec_sf_month_' + settings.id); 186 var mec_year_select = $('#mec_sf_year_' + settings.id); 187 188 if(mec_year_select.val() == 'none') 189 { 190 mec_year_select.find('option').each(function() 191 { 192 var option_val = $(this).val(); 193 if(option_val == mecdata.current_year) mec_year_select.val(option_val); 194 }); 195 } 196 197 if(skin == 'list') 198 { 199 var mec_filter_none = '<option class="mec-none-item" value="none">' + $('#mec-filter-none').val() + '</option>'; 200 if(mec_month_select.find('.mec-none-item').length == 0) mec_month_select.prepend(mec_filter_none); 201 if(mec_year_select.find('.mec-none-item').length == 0) mec_year_select.prepend(mec_filter_none); 202 } 203 else 204 { 205 if(mec_month_select.find('.mec-none-item').length != 0) mec_month_select.find('.mec-none-item').remove(); 206 if(mec_year_select.find('.mec-none-item').length != 0) mec_year_select.find('.mec-none-item').remove(); 207 } 208 209 $(this).addClass('mec-totalcalview-selected').siblings().removeClass('mec-totalcalview-selected'); 210 211 loadSkin(skin); 212 }); 213 } 214 215 function loadSkin(skin) { 216 // Set new Skin 217 settings.skin = skin; 218 219 // Add Loading Class 220 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 221 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 222 223 $.ajax({
224 url: settings.ajax_url, 225 data: "action=mec_full_calendar_switch_skin&skin=" + skin + "&" + settings.atts + "&apply_sf_date=1&sed=" + settings.sed_method, 226 dataType: "json", 227 type: "post", 228 success: function (response) { 229 $("#mec_full_calendar_container_" + settings.id).html(response); 230 231 // Remove loader 232 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 233 234 // Focus First Active Day 235 mecFocusDay(settings); 236 }, 237 error: function () {} 238 }); 239 } 240 241 function search() { 242 // Add Loading Class 243 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 244 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 245 246 $.ajax({ 247 url: settings.ajax_url, 248 data: "action=mec_full_calendar_switch_skin&skin=" + settings.skin + "&" + settings.atts + "&apply_sf_date=1", 249 dataType: "json", 250 type: "post", 251 success: function (response) { 252 $("#mec_full_calendar_container_" + settings.id).html(response); 253 254 // Remove loader 255 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 256 257 // Focus First Active Day 258 mecFocusDay(settings); 259 260 // Focus First Active Week 261 mec_focus_week(settings.id); 262 }, 263 error: function () {} 264 }); 265 } 266 }; 267 268}(jQuery)); 269 270// MEC YEARLY VIEW PLUGIN 271(function ($) { 272 $.fn.mecYearlyView = function (options) { 273 var active_year; 274 275 // Default Options 276 var settings = $.extend({ 277 // These are the defaults. 278 today: null, 279 id: 0, 280 events_label: 'Events', 281 event_label: 'Event', 282 year_navigator: 0, 283 atts: '', 284 next_year: {}, 285 sf: {}, 286 ajax_url: '', 287 }, options); 288 289 // Initialize Year Navigator 290 if (settings.year_navigator) initYearNavigator(); 291 292 // Load Next Year in background 293 if (settings.year_navigator) setYear(settings.next_year.year, true); 294 295 // Set onclick Listeners 296 setListeners(); 297 298 // load more 299 $(document).on("click", "#mec_skin_events_" + settings.id + " .mec-load-more-button", function () { 300 var year = $(this).parent().parent().parent().data('year-id'); 301 loadMoreButton(year); 302 }); 303 304 // Search Widget 305 if (settings.sf.container !== '') { 306 sf = $(settings.sf.container).mecSearchForm({ 307 id: settings.id, 308 atts: settings.atts, 309 callback: function (atts) { 310 settings.atts = atts; 311 active_year = $('.mec-yearly-view-wrap .mec-year-navigator').filter(function () { 312 return $(this).css('display') == "block"; 313 }); 314 active_year = parseInt(active_year.find('h2').text()); 315 search(active_year); 316 } 317 }); 318 } 319 320 function initYearNavigator() { 321 // Remove the onclick event 322 $("#mec_skin_" + settings.id + " .mec-load-year").off("click"); 323 324 // Add onclick event 325 $("#mec_skin_" + settings.id + " .mec-load-year").on("click", function () { 326 var year = $(this).data("mec-year"); 327 setYear(year); 328 }); 329 } 330 331 function search(year) { 332 // Add Loading Class 333 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 334 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 335 336 $.ajax({
337 url: settings.ajax_url, 338 data: "action=mec_yearly_view_load_year&mec_year=" + year + "&" + settings.atts + "&apply_sf_date=1", 339 dataType: "json", 340 type: "post", 341 success: function (response) { 342 active_year = response.current_year.year; 343 344 // Append Year 345 $("#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>'); 346 347 // Append Year Navigator 348 $("#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>'); 349 350 // Re-initialize Year Navigator 351 initYearNavigator(); 352 353 // Set onclick Listeners 354 setListeners(); 355 356 // Toggle Year 357 toggleYear(response.current_year.id); 358 359 // Remove loading Class 360 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 361 362 }, 363 error: function () {} 364 }); 365 } 366 367 function setYear(year, do_in_background) { 368 if (typeof do_in_background === "undefined") do_in_background = false; 369 370 var year_id = year; 371 active_year = year; 372 373 // Year exists so we just show it 374 if ($("#mec_yearly_view_year_" + settings.id + "_" + year_id).length) { 375 // Toggle Year 376 toggleYear(year_id); 377 } else { 378 if (!do_in_background) { 379 // Add Loading Class 380 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 381 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 382 } 383 384 $.ajax({
385 url: settings.ajax_url, 386 data: "action=mec_yearly_view_load_year&mec_year=" + year + "&" + settings.atts + "&apply_sf_date=0", 387 dataType: "json", 388 type: "post", 389 success: function (response) { 390 // Append Year 391 $("#mec_skin_events_" + settings.id).append('<div class="mec-year-container" id="mec_yearly_view_year_' + settings.id + '_' + response.current_year.id + '" data-year-id="' + response.current_year.id + '">' + response.year + '</div>'); 392 393 // Append Year Navigator 394 $("#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>'); 395 396 // Re-initialize Year Navigator 397 initYearNavigator(); 398 399 // Set onclick Listeners 400 setListeners(); 401 402 if (!do_in_background) { 403 // Toggle Year 404 toggleYear(response.current_year.id); 405 406 // Remove loading Class 407 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 408 409 // Set Year Filter values in search widget 410 $("#mec_sf_year_" + settings.id).val(year); 411 } else { 412 $("#mec_yearly_view_year_" + settings.id + "_" + response.current_year.id).hide(); 413 $("#mec_year_navigator_" + settings.id + "_" + response.current_year.id).hide(); 414 } 415 }, 416 error: function () {} 417 }); 418 } 419 } 420 421 function toggleYear(year_id) { 422 // Toggle Year Navigator 423 $("#mec_skin_" + settings.id + " .mec-year-navigator").hide(); 424 $("#mec_year_navigator_" + settings.id + "_" + year_id).show(); 425 426 // Toggle Year 427 $("#mec_skin_" + settings.id + " .mec-year-container").hide(); 428 $("#mec_yearly_view_year_" + settings.id + "_" + year_id).show(); 429 } 430 431 var sf; 432 433 function setListeners() { 434 // Single Event Method 435 if (settings.sed_method != '0') { 436 sed(); 437 } 438 } 439 440 function sed() { 441 // Single Event Display 442 $("#mec_skin_" + settings.id + " .mec-agenda-event-title a").off('click').on('click', function (e) { 443 e.preventDefault(); 444 var href = $(this).attr('href'); 445 446 var id = $(this).data('event-id'); 447 var occurrence = get_parameter_by_name('occurrence', href); 448 mecSingleEventDisplayer.getSinglePage(id, occurrence, settings.ajax_url, settings.sed_method, settings.image_popup); 449 }); 450 } 451 452 function loadMoreButton(year) { 453 var $max_count, $current_count = 0; 454 $max_count = $("#mec_yearly_view_year_" + settings.id + "_" + year + " .mec-yearly-max").data('count'); 455 $current_count = $("#mec_yearly_view_year_" + settings.id + "_" + year + " .mec-util-hidden").length; 456 457 if ($current_count > 10) { 458 for (var i = 0; i < 10; i++) { 459 $("#mec_yearly_view_year_" + settings.id + "_" + year + " .mec-util-hidden").slice(0, 2).each(function () { 460 $(this).removeClass('mec-util-hidden'); 461 }); 462 } 463 } 464 465 if ($current_count < 10 && $current_count != 0) { 466 for (var j = 0; j < $current_count; j++) { 467 $("#mec_yearly_view_year_" + settings.id + "_" + year + " .mec-util-hidden").slice(0, 2).each(function () { 468 $(this).removeClass('mec-util-hidden'); 469 $("#mec_yearly_view_year_" + settings.id + "_" + year + " .mec-load-more-wrap").css('display', 'none'); 470 }); 471 } 472 } 473 } 474 }; 475 476}(jQuery)); 477 478// MEC MONTHLY VIEW PLUGIN 479(function ($) { 480 $.fn.mecMonthlyView = function (options) { 481 var active_month; 482 var active_year; 483 484 // Default Options 485 var settings = $.extend({ 486 // These are the defaults. 487 today: null, 488 id: 0, 489 events_label: 'Events', 490 event_label: 'Event', 491 month_navigator: 0, 492 atts: '', 493 active_month: {}, 494 next_month: {}, 495 sf: {}, 496 ajax_url: '', 497 }, options); 498 499 // Initialize Month Navigator 500 if (settings.month_navigator) initMonthNavigator(); 501 502 // Load Next Month in background 503 setMonth(settings.next_month.year, settings.next_month.month, true); 504
505 active_month = settings.active_month.month; 506 active_year = settings.active_month.year; 507 508 // Set onclick Listeners 509 setListeners(); 510 511 // Search Widget 512 if (settings.sf.container !== '') { 513 sf = $(settings.sf.container).mecSearchForm({ 514 id: settings.id, 515 atts: settings.atts, 516 callback: function (atts) { 517 settings.atts = atts; 518 search(active_year, active_month); 519 } 520 }); 521 } 522 523 function initMonthNavigator() { 524 // Remove the onclick event 525 $("#mec_skin_" + settings.id + " .mec-load-month").off("click"); 526 527 // Add onclick event 528 $("#mec_skin_" + settings.id + " .mec-load-month").on("click", function () { 529 var year = $(this).data("mec-year"); 530 var month = $(this).data("mec-month"); 531 532 setMonth(year, month, false, true); 533 }); 534 } 535 536 function search(year, month) { 537 // Add Loading Class 538 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 539 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 540 541 $.ajax({
542 url: settings.ajax_url, 543 data: "action=mec_monthly_view_load_month&mec_year=" + year + "&mec_month=" + month + "&" + settings.atts + "&apply_sf_date=1", 544 dataType: "json", 545 type: "post", 546 success: function (response) { 547 active_month = response.current_month.month; 548 active_year = response.current_month.year; 549 550 // Append Month 551 $("#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>'); 552 553 // Append Month Navigator 554 $("#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>'); 555 556 // Append Events Side 557 $("#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>'); 558 559 // Re-initialize Month Navigator 560 initMonthNavigator(); 561 562 // Set onclick Listeners 563 setListeners(); 564 565 // Toggle Month 566 toggleMonth(response.current_month.id); 567 568 // Remove loading Class 569 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 570 571 }, 572 error: function () {} 573 }); 574 } 575 576 function setMonth(year, month, do_in_background, navigator_click) { 577 if (typeof do_in_background === "undefined") do_in_background = false; 578 navigator_click = navigator_click || false; 579 var month_id = year + "" + month; 580 581 if (!do_in_background) { 582 active_month = month; 583 active_year = year; 584 } 585 586 // Month exists so we just show it 587 if ($("#mec_monthly_view_month_" + settings.id + "_" + month_id).length) { 588 // Toggle Month 589 toggleMonth(month_id); 590 } else { 591 if (!do_in_background) { 592 593 // Add Loading Class 594 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 595 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 596 } 597 598 $.ajax({
599 url: settings.ajax_url, 600 data: "action=mec_monthly_view_load_month&mec_year=" + year + "&mec_month=" + month + "&" + settings.atts + "&apply_sf_date=0" + "&navigator_click=" + navigator_click, 601 dataType: "json", 602 type: "post", 603 success: function (response) { 604 // Append Month 605 $("#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>'); 606 607 // Append Month Navigator 608 $("#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>'); 609 610 // Append Events Side 611 $("#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>'); 612 613 // Re-initialize Month Navigator 614 initMonthNavigator(); 615 616 // Set onclick Listeners 617 setListeners(); 618 619 if (!do_in_background) { 620 // Toggle Month 621 toggleMonth(response.current_month.id); 622 623 // Remove loading Class 624 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 625 626 627 // Set Month Filter values in search widget 628 $("#mec_sf_month_" + settings.id).val(month); 629 $("#mec_sf_year_" + settings.id).val(year); 630 } else { 631 $("#mec_monthly_view_month_" + settings.id + "_" + response.current_month.id).hide(); 632 $("#mec_month_navigator_" + settings.id + "_" + response.current_month.id).hide(); 633 $("#mec_month_side_" + settings.id + "_" + response.current_month.id).hide(); 634 } 635 if (typeof custom_month !== undefined) var custom_month; 636 if (typeof custom_month != undefined) { 637 if (custom_month == 'true') { 638 $(".mec-month-container .mec-calendar-day").removeClass('mec-has-event'); 639 $(".mec-month-container .mec-calendar-day").removeClass('mec-selected-day'); 640 $('.mec-calendar-day').unbind('click'); 641 } 642 } 643 644 }, 645 error: function () {} 646 }); 647 } 648 } 649 650 function toggleMonth(month_id) { 651 var active_month = $("#mec_skin_" + settings.id + " .mec-month-container-selected").data("month-id"); 652 var active_day = $("#mec_monthly_view_month_" + settings.id + "_" + active_month + " .mec-selected-day").data("day"); 653 654 if (active_day <= 9) active_day = "0" + active_day; 655 656 // Toggle Month Navigator 657 $("#mec_skin_" + settings.id + " .mec-month-navigator").hide(); 658 $("#mec_month_navigator_" + settings.id + "_" + month_id).show(); 659 660 // Toggle Month 661 $("#mec_skin_" + settings.id + " .mec-month-container").hide(); 662 $("#mec_monthly_view_month_" + settings.id + "_" + month_id).show(); 663 664 // Add selected class 665 $("#mec_skin_" + settings.id + " .mec-month-container").removeClass("mec-month-container-selected"); 666 $("#mec_monthly_view_month_" + settings.id + "_" + month_id).addClass("mec-month-container-selected"); 667 668 // Toggle Events Side 669 $("#mec_skin_" + settings.id + " .mec-month-side").hide(); 670 $("#mec_month_side_" + settings.id + "_" + month_id).show(); 671 } 672 673 var sf; 674 675 function setListeners() { 676 // Remove the onclick event 677 $("#mec_skin_" + settings.id + " .mec-has-event").off("click"); 678 679 // Add the onclick event 680 $("#mec_skin_" + settings.id + " .mec-has-event").on('click', function (e) { 681 e.preventDefault(); 682 683 // define variables 684 var $this = $(this), 685 data_mec_cell = $this.data('mec-cell'),
686 month_id = $this.data('month'); 687 688 $("#mec_monthly_view_month_" + settings.id + "_" + month_id + " .mec-calendar-day").removeClass('mec-selected-day'); 689 $this.addClass('mec-selected-day'); 690 691 $('#mec_month_side_' + settings.id + '_' + month_id + ' .mec-calendar-events-sec:not([data-mec-cell=' + data_mec_cell + '])').slideUp(); 692 $('#mec_month_side_' + settings.id + '_' + month_id + ' .mec-calendar-events-sec[data-mec-cell=' + data_mec_cell + ']').slideDown(); 693 694 $('#mec_monthly_view_month_' + settings.id + '_' + month_id + ' .mec-calendar-events-sec:not([data-mec-cell=' + data_mec_cell + '])').slideUp(); 695 $('#mec_monthly_view_month_' + settings.id + '_' + month_id + ' .mec-calendar-events-sec[data-mec-cell=' + data_mec_cell + ']').slideDown(); 696 }); 697 698 mec_tooltip(); 699 700 // Single Event Method 701 if (settings.sed_method != '0') { 702 sed(); 703 } 704 705 if (settings.style == 'novel') { 706 if ($('.mec-single-event-novel').length > 0) { 707 $('.mec-single-event-novel').colourBrightness(); 708 $('.mec-single-event-novel').each(function () { 709 $(this).colourBrightness() 710 }); 711 } 712 } 713 } 714 715 function sed() { 716 // Single Event Display 717 $("#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) { 718 e.preventDefault(); 719 var href = $(this).attr('href'); 720 721 var id = $(this).data('event-id'); 722 var occurrence = get_parameter_by_name('occurrence', href); 723 mecSingleEventDisplayer.getSinglePage(id, occurrence, settings.ajax_url, settings.sed_method, settings.image_popup); 724 }); 725 726 } 727 728 function mec_tooltip() { 729 if ($('.mec-monthly-tooltip').length > 1) { 730 if (Math.max(document.documentElement.clientWidth, window.innerWidth || 0) > 768) { 731 $('.mec-monthly-tooltip').tooltipster({ 732 theme: 'tooltipster-shadow', 733 interactive: true, 734 delay: 100, 735 minWidth: 350, 736 maxWidth: 350 737 }); 738 if (settings.sed_method != '0') { 739 sed(); 740 } 741 } else { 742 var touchtime = 0; 743 $(".mec-monthly-tooltip").on("click", function (event) { 744 event.preventDefault(); 745 if (touchtime == 0) { 746 $('.mec-monthly-tooltip').tooltipster({ 747 theme: 'tooltipster-shadow', 748 interactive: true, 749 delay: 100, 750 minWidth: 350, 751 maxWidth: 350, 752 trigger: "custom", 753 triggerOpen: { 754 click: true, 755 tap: true 756 }, 757 triggerClose: { 758 click: true, 759 tap: true 760 } 761 }); 762 touchtime = new Date().getTime(); 763 } else { 764 if (((new Date().getTime()) - touchtime) < 200) { 765 var el = $(this); 766 var link = el.attr("href"); 767 window.location = link; 768 touchtime = 0; 769 } else { 770 touchtime = new Date().getTime(); 771 } 772 } 773 }); 774 } 775 } 776 } 777 }; 778 779}(jQuery)); 780 781// MEC WEEKLY VIEW PLUGIN 782(function ($) {
783 $.fn.mecWeeklyView = function (options) { 784 var active_year; 785 var active_month; 786 var active_week; 787 var active_week_number; 788 789 // Default Options 790 var settings = $.extend({ 791 // These are the defaults. 792 today: null, 793 week: 1, 794 id: 0, 795 current_year: null, 796 current_month: null, 797 changeWeekElement: '.mec-load-week', 798 month_navigator: 0, 799 atts: '', 800 ajax_url: '', 801 sf: {} 802 }, options); 803 804 // Set Active Time 805 active_year = settings.current_year; 806 active_month = settings.current_month; 807 808 // Search Widget 809 if (settings.sf.container !== '') { 810 $(settings.sf.container).mecSearchForm({ 811 id: settings.id, 812 atts: settings.atts, 813 callback: function (atts) { 814 settings.atts = atts; 815 search(active_year, active_month, active_week); 816 } 817 }); 818 } 819 820 // Set The Week 821 setThisWeek(settings.month_id + settings.week); 822 823 // Set Listeners 824 setListeners(); 825 826 // Initialize Month Navigator 827 if (settings.month_navigator) initMonthNavigator(settings.month_id); 828 829 function setListeners() { 830 $(settings.changeWeekElement).off('click').on('click', function (e) { 831 var week = $('#mec_skin_' + settings.id + ' .mec-weekly-view-week-active').data('week-id'); 832 var max_weeks = $('#mec_skin_' + settings.id + ' .mec-weekly-view-week-active').data('max-weeks'); 833 var new_week_number = active_week_number; 834 835 if ($(this).hasClass('mec-previous-month')) { 836 week = parseInt(week) - 1; 837 new_week_number--; 838 } else { 839 week = parseInt(week) + 1; 840 new_week_number++; 841 } 842 843 if (new_week_number <= 1 || new_week_number >= max_weeks) { 844 // Disable Next/Previous Button 845 $(this).css({ 846 'opacity': .6, 847 'cursor': 'default' 848 }); 849 $(this).find('i').css({ 850 'opacity': .6, 851 'cursor': 'default' 852 }); 853 } else { 854 // Enable Next/Previous Buttons 855 $('#mec_skin_' + settings.id + ' .mec-load-week, #mec_skin_' + settings.id + ' .mec-load-week i').css({ 856 'opacity': 1, 857 'cursor': 'pointer' 858 }); 859 } 860 861 // Week is not in valid range 862 if (new_week_number === 0 || new_week_number > max_weeks) {} else { 863 setThisWeek(week); 864 } 865 }); 866 867 // Single Event Method 868 if (settings.sed_method != '0') { 869 sed(); 870 } 871 } 872 873 function setThisWeek(week, auto_focus) { 874 if (typeof auto_focus === 'undefined') auto_focus = false; 875 876 // Week is not exists 877 if (!$('#mec_weekly_view_week_' + settings.id + '_' + week).length) { 878 return setThisWeek((parseInt(week) - 1)); 879 } 880 881 // Set week to active in week list 882 $('#mec_skin_' + settings.id + ' .mec-weekly-view-week').removeClass('mec-weekly-view-week-active'); 883 $('#mec_weekly_view_week_' + settings.id + '_' + week).addClass('mec-weekly-view-week-active'); 884 885 // Show related events 886 $('#mec_skin_' + settings.id + ' .mec-weekly-view-date-events').addClass('mec-util-hidden'); 887 $('.mec-weekly-view-week-' + settings.id + '-' + week).removeClass('mec-util-hidden'); 888 889 active_week = week; 890 active_week_number = $('#mec_skin_' + settings.id + ' .mec-weekly-view-week-active').data('week-number'); 891 892 $('#mec_skin_' + settings.id + ' .mec-calendar-d-top').find('.mec-current-week').find('span').remove(); 893 $('#mec_skin_' + settings.id + ' .mec-calendar-d-top').find('.mec-current-week').append('<span>' + active_week_number + '</span>'); 894 895 if (active_week_number === 1) { 896 // Disable Previous Button 897 $('#mec_skin_' + settings.id + ' .mec-previous-month.mec-load-week').css({ 898 'opacity': .6, 899 'cursor': 'default' 900 }); 901 $('#mec_skin_' + settings.id + ' .mec-previous-month.mec-load-week').find('i').css({ 902 'opacity': .6, 903 'cursor': 'default' 904 }); 905 } 906 907 // Go To Event Week
908 if (auto_focus) mec_focus_week(settings.id); 909 } 910 911 function initMonthNavigator(month_id) { 912 $('#mec_month_navigator' + settings.id + '_' + month_id + ' .mec-load-month').off('click'); 913 $('#mec_month_navigator' + settings.id + '_' + month_id + ' .mec-load-month').on('click', function () { 914 var year = $(this).data('mec-year'); 915 var month = $(this).data('mec-month'); 916 917 setMonth(year, month, active_week, true); 918 }); 919 } 920 921 function search(year, month, week, navigation_click) { 922 var week_number = (String(week).slice(-1)); 923 924 // Add Loading Class 925 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 926 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 927 928 $.ajax({ 929 url: settings.ajax_url, 930 data: "action=mec_weekly_view_load_month&mec_year=" + year + "&mec_month=" + month + "&mec_week=" + week_number + "&" + settings.atts + "&apply_sf_date=1", 931 dataType: "json", 932 type: "post", 933 success: function (response) { 934 // Remove Loading Class 935 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 936 937 // Append Month 938 $("#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>'); 939 940 // Append Month Navigator 941 $("#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>'); 942 943 // Set Listeners 944 setListeners(); 945 946 // Toggle Month 947 toggleMonth(response.current_month.id); 948 949 // Set active week 950 setThisWeek(response.week_id, true); 951 }, 952 error: function () {} 953 }); 954 } 955 956 function setMonth(year, month, week, navigation_click) { 957 var month_id = '' + year + month; 958 var week_number = (String(week).slice(-1)); 959 960 active_month = month; 961 active_year = year; 962 navigation_click = navigation_click || false; 963 964 // Month exists so we just show it 965 if ($("#mec_weekly_view_month_" + settings.id + "_" + month_id).length) { 966 // Toggle Month 967 toggleMonth(month_id); 968 969 // Set active week 970 setThisWeek('' + month_id + week_number); 971 } else { 972 // Add Loading Class 973 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 974 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 975 976 $.ajax({
977 url: settings.ajax_url, 978 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, 979 dataType: "json", 980 type: "post", 981 success: function (response) { 982 // Remove Loading Class 983 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 984 985 // Append Month 986 $("#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>'); 987 988 // Append Month Navigator 989 $("#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>'); 990 991 // Set Listeners 992 setListeners(); 993 994 // Toggle Month 995 toggleMonth(response.current_month.id); 996 997 // Set active week 998 setThisWeek(response.week_id, true); 999 1000 // Set Month Filter values in search widget 1001 $("#mec_sf_month_" + settings.id).val(month); 1002 $("#mec_sf_year_" + settings.id).val(year); 1003 }, 1004 error: function () {} 1005 }); 1006 } 1007 } 1008 1009 function toggleMonth(month_id) { 1010 // Show related events 1011 $('#mec_skin_' + settings.id + ' .mec-month-container').addClass('mec-util-hidden'); 1012 $('#mec_weekly_view_month_' + settings.id + '_' + month_id).removeClass('mec-util-hidden'); 1013 1014 $('#mec_skin_' + settings.id + ' .mec-month-navigator').addClass('mec-util-hidden'); 1015 $('#mec_month_navigator' + settings.id + '_' + month_id).removeClass('mec-util-hidden'); 1016 1017 // Initialize Month Navigator 1018 if (settings.month_navigator) initMonthNavigator(month_id); 1019 } 1020 1021 function sed() { 1022 // Single Event Display 1023 $("#mec_skin_" + settings.id + " .mec-event-title a").off('click').on('click', function (e) { 1024 e.preventDefault(); 1025 var href = $(this).attr('href'); 1026 1027 var id = $(this).data('event-id'); 1028 var occurrence = get_parameter_by_name('occurrence', href); 1029 1030 mecSingleEventDisplayer.getSinglePage(id, occurrence, settings.ajax_url, settings.sed_method, settings.image_popup); 1031 }); 1032 } 1033 }; 1034 1035}(jQuery)); 1036 1037// MEC DAILY VIEW PLUGIN 1038(function ($) { 1039 $.fn.mecDailyView = function (options) { 1040 var active_month; 1041 var active_year; 1042 var active_day; 1043 1044 // Default Options 1045 var settings = $.extend({ 1046 // These are the defaults. 1047 today: null, 1048 id: 0, 1049 changeDayElement: '.mec-daily-view-day', 1050 events_label: 'Events', 1051 event_label: 'Event', 1052 month_navigator: 0, 1053 atts: '', 1054 ajax_url: '', 1055 sf: {}, 1056 }, options); 1057 1058 active_month = settings.month; 1059 active_year = settings.year; 1060 active_day = settings.day; 1061 1062 // Set Today 1063 setToday(settings.today); 1064 1065 // Set Listeners 1066 setListeners(); 1067 1068 // Initialize Month Navigator 1069 if (settings.month_navigator) initMonthNavigator(settings.month_id); 1070 1071 // Initialize Days Slider 1072 initDaysSlider(settings.month_id); 1073 1074 // Slider first event day focus when page load. 1075 mecFocusDay(settings); 1076 1077 // Search Widget 1078 if (settings.sf.container !== '') { 1079 $(settings.sf.container).mecSearchForm({ 1080 id: settings.id, 1081 atts: settings.atts, 1082 callback: function (atts) { 1083 settings.atts = atts; 1084 search(active_year, active_month, active_day); 1085 } 1086 }); 1087 } 1088 1089 function setListeners() { 1090 $(settings.changeDayElement).on('click', function () { 1091 var today = $(this).data('day-id'); 1092 setToday(today); 1093 }); 1094 1095 // Single Event Method 1096 if (settings.sed_method != '0') { 1097 sed(); 1098 } 1099 } 1100 1101 var current_monthday; 1102 1103 function setToday(today) { 1104 // For caring about 31st, 30th and 29th of some months 1105 if (!$('#mec_daily_view_day' + settings.id + '_' + today).length) { 1106 setToday(parseInt(today) - 1); 1107 return false; 1108 } 1109 1110 // Set day to active in day list
1111 $('.mec-daily-view-day').removeClass('mec-daily-view-day-active mec-color'); 1112 $('#mec_daily_view_day' + settings.id + '_' + today).addClass('mec-daily-view-day-active mec-color'); 1113 1114 // Show related events 1115 $('.mec-daily-view-date-events').addClass('mec-util-hidden'); 1116 $('#mec_daily_view_date_events' + settings.id + '_' + today).removeClass('mec-util-hidden'); 1117 1118 // Set today label 1119 var weekday = $('#mec_daily_view_day' + settings.id + '_' + today).data('day-weekday'); 1120 var monthday = $('#mec_daily_view_day' + settings.id + '_' + today).data('day-monthday'); 1121 var count = $('#mec_daily_view_day' + settings.id + '_' + today).data('events-count'); 1122 var month_id = $('#mec_daily_view_day' + settings.id + '_' + today).data('month-id'); 1123 1124 $('#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>'); 1125 1126 if (monthday <= 9) current_monthday = '0' + monthday; 1127 else current_monthday = monthday; 1128 } 1129 1130 function initMonthNavigator(month_id) { 1131 $('#mec_month_navigator' + settings.id + '_' + month_id + ' .mec-load-month').off('click'); 1132 $('#mec_month_navigator' + settings.id + '_' + month_id + ' .mec-load-month').on('click', function () { 1133 var year = $(this).data('mec-year'); 1134 var month = $(this).data('mec-month'); 1135 1136 setMonth(year, month, current_monthday, true); 1137 }); 1138 } 1139 1140 function initDaysSlider(month_id, day_id) { 1141 // Set Global Month Id
1142 mec_g_month_id = month_id; 1143 1144 // Check RTL website 1145 var owl_rtl = $('body').hasClass('rtl') ? true : false; 1146 1147 // Init Days slider 1148 var owl = $("#mec-owl-calendar-d-table-" + settings.id + "-" + month_id); 1149 owl.owlCarousel({ 1150 responsiveClass: true, 1151 responsive: { 1152 0: { 1153 items: 2, 1154 }, 1155 479: { 1156 items: 4, 1157 }, 1158 767: { 1159 items: 7, 1160 }, 1161 960: { 1162 items: 14, 1163 }, 1164 1000: { 1165 items: 19, 1166 }, 1167 1200: { 1168 items: 22, 1169 } 1170 }, 1171 dots: false, 1172 loop: false, 1173 rtl: owl_rtl, 1174 }); 1175 1176 // Custom Navigation Events 1177 $("#mec_daily_view_month_" + settings.id + "_" + month_id + " .mec-table-d-next").click(function (e) { 1178 e.preventDefault(); 1179 owl.trigger('next.owl.carousel'); 1180 }); 1181 1182 $("#mec_daily_view_month_" + settings.id + "_" + month_id + " .mec-table-d-prev").click(function (e) { 1183 e.preventDefault(); 1184 owl.trigger('prev.owl.carousel'); 1185 }); 1186 1187 if (typeof day_id === 'undefined') day_id = $('.mec-daily-view-day-active').data('day-id'); 1188 1189 var today_str = day_id.toString().substring(6, 8); 1190 var today_int = parseInt(today_str); 1191 1192 owl.trigger('owl.goTo', [today_int]); 1193 } 1194 1195 function search(year, month, day) { 1196 // Add Loading Class 1197 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 1198 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 1199 1200 $.ajax({
1201 url: settings.ajax_url, 1202 data: "action=mec_daily_view_load_month&mec_year=" + year + "&mec_month=" + month + "&mec_day=" + day + "&" + settings.atts + "&apply_sf_date=1", 1203 dataType: "json", 1204 type: "post", 1205 success: function (response) { 1206 // Remove Loading Class 1207 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 1208 1209 // Append Month 1210 $("#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>'); 1211 1212 // Append Month Navigator 1213 $("#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>'); 1214 1215 // Set Listeners 1216 setListeners(); 1217 1218 active_year = response.current_month.year; 1219 active_month = response.current_month.month; 1220 1221 // Toggle Month 1222 toggleMonth(response.current_month.id, '' + active_year + active_month + active_day); 1223 1224 // Set Today 1225 setToday('' + active_year + active_month + active_day); 1226 1227 // Focus First Active Day 1228 mecFocusDay(settings); 1229 }, 1230 error: function () {} 1231 }); 1232 } 1233 1234 function setMonth(year, month, day, navigation_click) { 1235 var month_id = '' + year + month; 1236 1237 active_month = month; 1238 active_year = year; 1239 active_day = day; 1240 navigation_click = navigation_click || false; 1241 1242 // Month exists so we just show it 1243 if ($("#mec_daily_view_month_" + settings.id + "_" + month_id).length) { 1244 // Toggle Month 1245 toggleMonth(month_id); 1246 1247 // Set Today 1248 setToday('' + month_id + day); 1249 } else { 1250 // Add Loading Class 1251 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 1252 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 1253 1254 $.ajax({
1255 url: settings.ajax_url, 1256 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, 1257 dataType: "json", 1258 type: "post", 1259 success: function (response) { 1260 // Remove Loading Class 1261 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 1262 1263 // Append Month 1264 $("#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>'); 1265 1266 // Append Month Navigator 1267 $("#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>'); 1268 1269 // Set Listeners 1270 setListeners(); 1271 1272 // Toggle Month 1273 toggleMonth(response.current_month.id, '' + year + month + '01'); 1274 1275 // Set Today 1276 setToday('' + year + month + '01'); 1277 1278 // Set Month Filter values in search widget 1279 $("#mec_sf_month_" + settings.id).val(month); 1280 $("#mec_sf_year_" + settings.id).val(year); 1281 }, 1282 error: function () {} 1283 }); 1284 } 1285 } 1286 1287 function toggleMonth(month_id, day_id) { 1288 // Show related events 1289 $('#mec_skin_' + settings.id + ' .mec-month-container').addClass('mec-util-hidden'); 1290 $('#mec_daily_view_month_' + settings.id + '_' + month_id).removeClass('mec-util-hidden'); 1291 1292 $('#mec_skin_' + settings.id + ' .mec-month-navigator').addClass('mec-util-hidden'); 1293 $('#mec_month_navigator' + settings.id + '_' + month_id).removeClass('mec-util-hidden'); 1294 1295 // Initialize Month Navigator 1296 if (settings.month_navigator) initMonthNavigator(month_id); 1297 1298 // Initialize Days Slider 1299 initDaysSlider(month_id, day_id); 1300 1301 // Focus First Active Day 1302 mecFocusDay(settings); 1303 } 1304 1305 function sed() { 1306 // Single Event Display 1307 $("#mec_skin_" + settings.id + " .mec-event-title a").off('click').on('click', function (e) { 1308 e.preventDefault(); 1309 var href = $(this).attr('href'); 1310 1311 var id = $(this).data('event-id'); 1312 var occurrence = get_parameter_by_name('occurrence', href); 1313 1314 mecSingleEventDisplayer.getSinglePage(id, occurrence, settings.ajax_url, settings.sed_method, settings.image_popup); 1315 }); 1316 } 1317 }; 1318 1319}(jQuery)); 1320 1321// MEC TIMETABLE PLUGIN 1322(function ($) { 1323 $.fn.mecTimeTable = function (options) { 1324 var active_year; 1325 var active_month; 1326 var active_week; 1327 var active_week_number; 1328 var active_day; 1329 1330 // Default Options 1331 var settings = $.extend({ 1332 // These are the defaults. 1333 today: null, 1334 week: 1, 1335 active_day: 1, 1336 id: 0, 1337 changeWeekElement: '.mec-load-week', 1338 month_navigator: 0, 1339 atts: '', 1340 ajax_url: '', 1341 sf: {} 1342 }, options); 1343 1344 // Search Widget 1345 if (settings.sf.container !== '') { 1346 $(settings.sf.container).mecSearchForm({ 1347 id: settings.id, 1348 atts: settings.atts, 1349 callback: function (atts) { 1350 settings.atts = atts; 1351 search(active_year, active_month, active_week, active_day); 1352 } 1353 }); 1354 } 1355 1356 // Set The Week
1357 setThisWeek(settings.month_id + settings.week, settings.active_day); 1358 1359 // Set Listeners 1360 setListeners(); 1361 1362 // Initialize Month Navigator 1363 if (settings.month_navigator) initMonthNavigator(settings.month_id); 1364 1365 function setListeners() { 1366 // Change Week Listener 1367 $(settings.changeWeekElement).off('click').on('click', function () { 1368 var week = $('#mec_skin_' + settings.id + ' .mec-weekly-view-week-active').data('week-id'); 1369 var max_weeks = $('#mec_skin_' + settings.id + ' .mec-weekly-view-week-active').data('max-weeks'); 1370 var new_week_number = active_week_number; 1371 1372 if ($(this).hasClass('mec-previous-month')) { 1373 week = parseInt(week) - 1; 1374 new_week_number--; 1375 } else { 1376 week = parseInt(week) + 1; 1377 new_week_number++; 1378 } 1379 1380 if (new_week_number <= 1 || new_week_number >= max_weeks) { 1381 // Disable Next/Previous Button 1382 $(this).css({ 1383 'opacity': .6, 1384 'cursor': 'default' 1385 }); 1386 $(this).find('i').css({ 1387 'opacity': .6, 1388 'cursor': 'default' 1389 }); 1390 } else { 1391 // Enable Next/Previous Buttons 1392 $('#mec_skin_' + settings.id + ' .mec-load-week, #mec_skin_' + settings.id + ' .mec-load-week i').css({ 1393 'opacity': 1, 1394 'cursor': 'pointer' 1395 }); 1396 } 1397 1398 // Week is not in valid range 1399 if (new_week_number === 0 || new_week_number > max_weeks) {} else { 1400 setThisWeek(week); 1401 } 1402 }); 1403 1404 // Change Day Listener 1405 $('#mec_skin_' + settings.id + ' .mec-weekly-view-week dt').not('.mec-timetable-has-no-event').off('click').on('click', function () { 1406 var day = $(this).data('date-id'); 1407 setDay(day); 1408 }); 1409 1410 // Single Event Method 1411 if (settings.sed_method != '0') { 1412 sed(); 1413 } 1414 } 1415 1416 function setThisWeek(week, day) { 1417 // Week is not exists 1418 if (!$('#mec_weekly_view_week_' + settings.id + '_' + week).length) { 1419 return setThisWeek((parseInt(week) - 1), day); 1420 } 1421 1422 // Set week to active in week list 1423 $('#mec_skin_' + settings.id + ' .mec-weekly-view-week').removeClass('mec-weekly-view-week-active'); 1424 $('#mec_weekly_view_week_' + settings.id + '_' + week).addClass('mec-weekly-view-week-active'); 1425 1426 setDay(day); 1427 1428 active_week = week; 1429 active_week_number = $('#mec_skin_' + settings.id + ' .mec-weekly-view-week-active').data('week-number'); 1430 1431 $('#mec_skin_' + settings.id + ' .mec-calendar-d-top').find('.mec-current-week').find('span').remove(); 1432 $('#mec_skin_' + settings.id + ' .mec-calendar-d-top').find('.mec-current-week').append('<span>' + active_week_number + '</span>'); 1433 1434 if (active_week_number === 1) { 1435 // Disable Previous Button 1436 $('#mec_skin_' + settings.id + ' .mec-previous-month.mec-load-week').css({ 1437 'opacity': .6, 1438 'cursor': 'default' 1439 }); 1440 $('#mec_skin_' + settings.id + ' .mec-previous-month.mec-load-week').find('i').css({ 1441 'opacity': .6, 1442 'cursor': 'default' 1443 }); 1444 } 1445 } 1446 1447 function setDay(day) { 1448 // Find the date automatically 1449 if (typeof day === 'undefined') { 1450 day = $('#mec_skin_' + settings.id + ' .mec-weekly-view-week-active dt').not('.mec-timetable-has-no-event').first().data('date-id'); 1451 } 1452 1453 // Activate the date element 1454 $('#mec_skin_' + settings.id + ' dt').removeClass('mec-timetable-day-active'); 1455 $('#mec_skin_' + settings.id + ' .mec-weekly-view-week-active dt[data-date-id="' + day + '"]').addClass('mec-timetable-day-active'); 1456 1457 // Show related events 1458 $('#mec_skin_' + settings.id + ' .mec-weekly-view-date-events').addClass('mec-util-hidden'); 1459 $('#mec_weekly_view_date_events' + settings.id + '_' + day).removeClass('mec-util-hidden'); 1460 } 1461 1462 function initMonthNavigator(month_id) { 1463 $('#mec_month_navigator' + settings.id + '_' + month_id + ' .mec-load-month').off('click').on('click', function () { 1464 var year = $(this).data('mec-year');
1465 var month = $(this).data('mec-month'); 1466 1467 setMonth(year, month, active_week); 1468 }); 1469 } 1470 1471 function search(year, month, week) { 1472 var week_number = (String(week).slice(-1)); 1473 1474 // Add Loading Class 1475 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 1476 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 1477 1478 // Set MEC Year And Month If Undefined 1479 year = typeof year == 'undefined' ? '' : year; 1480 month = typeof month == 'undefined' ? '' : month; 1481 1482 // Append current week to data body for used after filter. 1483 $('body').data('currentweek', $("#mec_skin_events_" + settings.id).find('.mec-current-week > span').html()); 1484 1485 $.ajax({ 1486 url: settings.ajax_url, 1487 data: "action=mec_timetable_load_month&mec_year=" + year + "&mec_month=" + month + "&mec_week=" + week_number + "&" + settings.atts + "&apply_sf_date=1", 1488 dataType: "json", 1489 type: "post", 1490 success: function (response) { 1491 // Remove Loading Class 1492 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 1493 1494 // Append Month 1495 $("#mec_skin_events_" + settings.id).html('<div class="mec-month-container" id="mec_timetable_month_' + settings.id + '_' + response.current_month.id + '">' + response.month + '</div>'); 1496 1497 // Append Month Navigator 1498 $("#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>'); 1499 1500 // Set Listeners 1501 setListeners(); 1502 1503 // Toggle Month 1504 toggleMonth(response.current_month.id); 1505 1506 // Set active week 1507 setThisWeek(response.week_id); 1508 1509 // Focus First Active Week 1510 mec_focus_week(settings.id, 'timetable'); 1511 }, 1512 error: function () {} 1513 }); 1514 } 1515 1516 function setMonth(year, month, week) { 1517 var month_id = '' + year + month; 1518 var week_number = (String(week).slice(-1)); 1519 1520 active_month = month; 1521 active_year = year; 1522 1523 // Month exists so we just show it 1524 if ($("#mec_timetable_month_" + settings.id + "_" + month_id).length) { 1525 // Toggle Month 1526 toggleMonth(month_id); 1527 1528 // Set active week 1529 setThisWeek('' + month_id + week_number); 1530 } else { 1531 // Add Loading Class 1532 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 1533 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 1534 1535 $.ajax({
1536 url: settings.ajax_url, 1537 data: "action=mec_timetable_load_month&mec_year=" + year + "&mec_month=" + month + "&mec_week=" + week_number + "&" + settings.atts + "&apply_sf_date=0", 1538 dataType: "json", 1539 type: "post", 1540 success: function (response) { 1541 // Remove Loading Class 1542 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 1543 1544 // Append Month 1545 $("#mec_skin_events_" + settings.id).append('<div class="mec-month-container" id="mec_timetable_month_' + settings.id + '_' + response.current_month.id + '">' + response.month + '</div>'); 1546 1547 // Append Month Navigator 1548 $("#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>'); 1549 1550 // Set Listeners 1551 setListeners(); 1552 1553 // Toggle Month 1554 toggleMonth(response.current_month.id); 1555 1556 // Set active week 1557 setThisWeek(response.week_id); 1558 1559 // Set Month Filter values in search widget 1560 $("#mec_sf_month_" + settings.id).val(month); 1561 $("#mec_sf_year_" + settings.id).val(year); 1562 }, 1563 error: function () {} 1564 }); 1565 } 1566 } 1567 1568 function toggleMonth(month_id) { 1569 // Show related events 1570 $('#mec_skin_' + settings.id + ' .mec-month-container').addClass('mec-util-hidden'); 1571 $('#mec_timetable_month_' + settings.id + '_' + month_id).removeClass('mec-util-hidden'); 1572 1573 $('#mec_skin_' + settings.id + ' .mec-month-navigator').addClass('mec-util-hidden'); 1574 $('#mec_month_navigator' + settings.id + '_' + month_id).removeClass('mec-util-hidden'); 1575 1576 // Initialize Month Navigator 1577 if (settings.month_navigator) initMonthNavigator(month_id); 1578 } 1579 1580 function sed() { 1581 // Single Event Display 1582 $("#mec_skin_" + settings.id + " .mec-timetable-event-title a").off('click').on('click', function (e) { 1583 e.preventDefault(); 1584 var href = $(this).attr('href'); 1585 1586 var id = $(this).data('event-id'); 1587 var occurrence = get_parameter_by_name('occurrence', href); 1588 1589 mecSingleEventDisplayer.getSinglePage(id, occurrence, settings.ajax_url, settings.sed_method, settings.image_popup); 1590 }); 1591 } 1592 }; 1593 1594}(jQuery)); 1595 1596// MEC WEEKLY PROGRAM PLUGIN 1597(function ($) { 1598 $.fn.mecWeeklyProgram = function (options) { 1599 // Default Options 1600 var settings = $.extend({ 1601 // These are the defaults. 1602 id: 0, 1603 atts: '', 1604 sf: {} 1605 }, options); 1606 1607 // Search Widget 1608 if (settings.sf.container !== '') { 1609 $(settings.sf.container).mecSearchForm({ 1610 id: settings.id, 1611 atts: settings.atts, 1612 callback: function (atts) { 1613 settings.atts = atts; 1614 search(); 1615 } 1616 }); 1617 } 1618 1619 // Set Listeners 1620 setListeners(); 1621 1622 function setListeners() { 1623 // Single Event Method 1624 if (settings.sed_method != '0') { 1625 sed(); 1626 } 1627 } 1628 1629 function search() { 1630 var $modal = $('.mec-modal-result'); 1631 1632 // Add Loading Class 1633 if ($modal.length === 0) $('.mec-wrap').append('<div class="mec-modal-result"></div>'); 1634 $modal.addClass('mec-month-navigator-loading'); 1635 1636 $.ajax({
1637 url: settings.ajax_url, 1638 data: "action=mec_weeklyprogram_load&" + settings.atts + "&apply_sf_date=1", 1639 dataType: "json", 1640 type: "post", 1641 success: function (response) { 1642 // Remove Loading Class 1643 $modal.removeClass("mec-month-navigator-loading"); 1644 1645 // Append Month 1646 $("#mec_skin_events_" + settings.id).html(response.date_events); 1647 1648 // Set Listeners 1649 setListeners(); 1650 }, 1651 error: function () {} 1652 }); 1653 } 1654 1655 function sed() { 1656 // Single Event Display 1657 $("#mec_skin_" + settings.id + " .mec-event-title a").off('click').on('click', function (e) { 1658 e.preventDefault(); 1659 var href = $(this).attr('href'); 1660 1661 var id = $(this).data('event-id'); 1662 var occurrence = get_parameter_by_name('occurrence', href); 1663 1664 mecSingleEventDisplayer.getSinglePage(id, occurrence, settings.ajax_url, settings.sed_method, settings.image_popup); 1665 }); 1666 } 1667 }; 1668 1669}(jQuery)); 1670 1671// MEC MASONRY VIEW PLUGIN 1672(function ($) { 1673 $.fn.mecMasonryView = function (options) { 1674 // Default Options 1675 var settings = $.extend({ 1676 // These are the defaults. 1677 id: 0, 1678 atts: '', 1679 ajax_url: '', 1680 sf: {}, 1681 end_date: '', 1682 offset: 0, 1683 start_date: '', 1684 }, options); 1685 1686 // Set onclick Listeners 1687 setListeners(); 1688 1689 // Init Masonry 1690 jQuery(window).load(function () { 1691 1692 initMasonry(); 1693 if (typeof custom_dev !== undefined) var custom_dev; 1694 if (custom_dev == 'yes') { 1695 $(".mec-wrap").css("height", "1550"); 1696 if (Math.max(document.documentElement.clientWidth, window.innerWidth || 0) < 768) { 1697 $(".mec-wrap").css("height", "5500"); 1698 } 1699 if (Math.max(document.documentElement.clientWidth, window.innerWidth || 0) < 480) { 1700 $(".mec-wrap").css("height", "5000"); 1701 } 1702 $(".mec-event-masonry .mec-masonry-item-wrap:nth-child(n+20)").css("display", "none"); 1703 $(".mec-load-more-button").on("click", function () { 1704 $(".mec-event-masonry .mec-masonry-item-wrap:nth-child(n+20)").css("display", "block"); 1705 $(".mec-wrap").css("height", "auto"); 1706 initMasonry(); 1707 $(".mec-load-more-button").hide(); 1708 }) 1709 $(".mec-events-masonry-cats a:first-child").on("click", function () { 1710 $(".mec-wrap").css("height", "auto"); 1711 $(".mec-event-masonry .mec-masonry-item-wrap:nth-child(n+20)").css("display", "block"); 1712 $(".mec-load-more-button").hide(); 1713 initMasonry(); 1714 }) 1715 $(".mec-events-masonry-cats a:not(:first-child)").on("click", function () { 1716 $(".mec-load-more-button").hide(); 1717 $(".mec-wrap").css("height", "auto"); 1718 $(".mec-wrap").css("min-height", "400"); 1719 $(".mec-event-masonry .mec-masonry-item-wrap").css("display", "block"); 1720 var element = document.querySelector("#mec_skin_" + settings.id + " .mec-event-masonry"); 1721 var selector = $(this).attr('data-group'); 1722 var CustomShuffle = new Shuffle(element, { 1723 itemSelector: '.mec-masonry-item-wrap', 1724 }); 1725 CustomShuffle.sort({ 1726 by: element.getAttribute('data-created'), 1727 }); 1728 CustomShuffle.filter(selector != '*' ? selector : Shuffle.ALL_ITEMS); 1729 $(".mec-event-masonry .mec-masonry-item-wrap").css("visibility", "visible"); 1730 }) 1731 } 1732 }); 1733 1734 // Fix Elementor Masonry 1735 if ( mecdata.elementor_edit_mode != 'no' ) elementorFrontend.hooks.addAction('frontend/element_ready/global', initMasonry()); 1736 1737 function initMasonry() { 1738 var $container = $("#mec_skin_" + settings.id + " .mec-event-masonry"); 1739 var data_sortAscending = $("#mec_skin_" + settings.id).data('sortascending'); 1740 var $grid = $container.isotope({ 1741 filter: '*', 1742 itemSelector: '.mec-masonry-item-wrap', 1743 getSortData: { 1744 date: '[data-sort-masonry]', 1745 }, 1746 sortBy: 'date', 1747 sortAscending: data_sortAscending, 1748 animationOptions: { 1749 duration: 750, 1750 easing: 'linear', 1751 queue: false 1752 }, 1753 }); 1754 1755 if (settings.fit_to_row == 1) $grid.isotope({ 1756 layoutMode: 'fitRows', 1757 sortAscending: data_sortAscending, 1758 }); 1759 1760 // Fix Elementor tab 1761 $('.elementor-tabs').find('.elementor-tab-title').click(function () { 1762 $grid.isotope({ 1763 sortBy: 'date', 1764 sortAscending: data_sortAscending, 1765 }); 1766 }); 1767 1768 $("#mec_skin_" + settings.id + " .mec-events-masonry-cats a").click(function () { 1769 var selector = $(this).attr('data-filter'); 1770 var $grid_cat = $container.isotope({ 1771 filter: selector, 1772 itemSelector: '.mec-masonry-item-wrap', 1773 getSortData: { 1774 date: '[data-sort-masonry]', 1775 }, 1776 sortBy: 'date', 1777 sortAscending: data_sortAscending, 1778 animationOptions: { 1779 duration: 750, 1780 easing: 'linear', 1781 queue: false 1782 }, 1783 }); 1784 if (settings.masonry_like_grid == 1) $grid_cat.isotope({ 1785 sortBy: 'date', 1786 sortAscending: data_sortAscending, 1787 }); 1788 return false; 1789 }); 1790 1791 var $optionSets = $("#mec_skin_" + settings.id + " .mec-events-masonry-cats"), 1792 $optionLinks = $optionSets.find('a'); 1793 1794 $optionLinks.click(function () { 1795 var $this = $(this); 1796 1797 // don't proceed if already selected 1798 if ($this.hasClass('selected')) return false; 1799 1800 var $optionSet = $this.parents('.mec-events-masonry-cats'); 1801 $optionSet.find('.mec-masonry-cat-selected').removeClass('mec-masonry-cat-selected'); 1802 $this.addClass('mec-masonry-cat-selected'); 1803 }); 1804 } 1805 1806 function setListeners() { 1807 if (settings.sed_method != '0') { 1808 sed(); 1809 } 1810 1811 } 1812 1813 $("#mec_skin_" + settings.id + " .mec-events-masonry-cats > a").click(function() 1814 { 1815 var mec_load_more_btn = $("#mec_skin_" + settings.id + " .mec-load-more-button"); 1816 var mec_filter_value = $(this).data('filter').replace('.mec-t', ''); 1817 1818 if(mec_load_more_btn.hasClass('mec-load-more-loading')) mec_load_more_btn.removeClass('mec-load-more-loading'); 1819 if(mec_load_more_btn.hasClass("mec-hidden-" + mec_filter_value)) mec_load_more_btn.addClass("mec-util-hidden"); 1820 else mec_load_more_btn.removeClass("mec-util-hidden"); 1821 }); 1822 1823 $("#mec_skin_" + settings.id + " .mec-load-more-button").on("click", function () {
1824 loadMore(); 1825 }); 1826 1827 function sed() { 1828 // Single Event Display 1829 $("#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) { 1830 e.preventDefault(); 1831 var href = $(this).attr('href'); 1832 1833 var id = $(this).data('event-id'); 1834 var occurrence = get_parameter_by_name('occurrence', href); 1835 1836 mecSingleEventDisplayer.getSinglePage(id, occurrence, settings.ajax_url, settings.sed_method, settings.image_popup); 1837 }); 1838 } 1839 1840 function loadMore() { 1841 // Add loading Class 1842 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-load-more-loading"); 1843 var mec_cat_elem = $('#mec_skin_' + settings.id).find('.mec-masonry-cat-selected'); 1844 var mec_filter_value = (mec_cat_elem && mec_cat_elem.data('filter') != undefined) ? mec_cat_elem.data('filter').replace('.mec-t', '') : ''; 1845 var mec_filter_by = $('#mec_skin_' + settings.id).data('filterby'); 1846 1847 $.ajax({
1848 url: settings.ajax_url, 1849 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", 1850 dataType: "json", 1851 type: "post", 1852 success: function (response) { 1853 if (response.count == "0") { 1854 // Remove loading Class 1855 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading"); 1856 1857 // Hide load more button 1858 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden mec-hidden-" + mec_filter_value); 1859 } else { 1860 // Show load more button 1861 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-util-hidden"); 1862 1863 // Append Items 1864 var node = $("#mec_skin_" + settings.id + " .mec-event-masonry"); 1865 var markup = '', 1866 newItems = $(response.html).find('.mec-masonry-item-wrap'); 1867 1868 newItems.each(function (index) { 1869 node.isotope() 1870 .append(newItems[index]) 1871 .isotope('appended', newItems[index]); 1872 }); 1873 1874 // Remove loading Class 1875 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading"); 1876 1877 // Update the variables 1878 settings.end_date = response.end_date; 1879 settings.offset = response.offset; 1880 1881 // Single Event Method 1882 if (settings.sed_method != '0') { 1883 sed(); 1884 } 1885 } 1886 }, 1887 error: function () {} 1888 }); 1889 } 1890 }; 1891}(jQuery)); 1892 1893// MEC LIST VIEW PLUGIN 1894(function ($) { 1895 $.fn.mecListView = function (options) { 1896 // Default Options 1897 var settings = $.extend({ 1898 // These are the defaults. 1899 id: 0, 1900 atts: '', 1901 ajax_url: '', 1902 sf: {}, 1903 current_month_divider: '', 1904 end_date: '', 1905 offset: 0, 1906 limit: 0 1907 }, options); 1908 1909 // Set onclick Listeners 1910 setListeners(); 1911 1912 var sf; 1913 1914 function setListeners() { 1915 // Search Widget 1916 if (settings.sf.container !== '') { 1917 sf = $(settings.sf.container).mecSearchForm({ 1918 id: settings.id, 1919 atts: settings.atts, 1920 callback: function (atts) { 1921 settings.atts = atts; 1922 search(); 1923 } 1924 }); 1925 } 1926 1927 $("#mec_skin_" + settings.id + " .mec-load-more-button").on("click", function () { 1928 loadMore(); 1929 }); 1930 1931 // Accordion Toggle 1932 if (settings.style === 'accordion') { 1933 if (settings.toggle_month_divider) { 1934 $('#mec_skin_' + settings.id + ' .mec-month-divider:first-of-type').addClass('active'); 1935 $('#mec_skin_' + settings.id + ' .mec-month-divider:first-of-type').find('i').removeClass('mec-sl-arrow-down').addClass('mec-sl-arrow-up'); 1936 1937 toggle(); 1938 } 1939 1940 accordion(); 1941 } 1942 1943 // Single Event Method 1944 if (settings.sed_method != '0') { 1945 sed(); 1946 } 1947 } 1948 1949 function toggle() { 1950 $('#mec_skin_' + settings.id + ' .mec-month-divider').off("click").on("click", function (event) { 1951 event.preventDefault(); 1952 1953 var status = $(this).hasClass('active'); 1954
1955 // Remove Active Style of Month Divider 1956 $('#mec_skin_' + settings.id + ' .mec-month-divider').removeClass('active'); 1957 1958 // Hide All Events 1959 $('#mec_skin_' + settings.id + ' .mec-divider-toggle').slideUp('fast'); 1960 1961 if (status) { 1962 $(this).removeClass('active'); 1963 $('.mec-month-divider').find('i').removeClass('mec-sl-arrow-up').addClass('mec-sl-arrow-down'); 1964 } else { 1965 $(this).addClass('active'); 1966 $('.mec-month-divider').find('i').removeClass('mec-sl-arrow-up').addClass('mec-sl-arrow-down') 1967 $(this).find('i').removeClass('mec-sl-arrow-down').addClass('mec-sl-arrow-up'); 1968 1969 var month = $(this).data('toggle-divider'); 1970 $('#mec_skin_' + settings.id + ' .' + month).slideDown('fast'); 1971 } 1972 }); 1973 } 1974 1975 function toggleLoadmore() 1976 { 1977 $('#mec_skin_' + settings.id + ' .mec-month-divider:not(:last)').each(function () 1978 { 1979 if($(this).hasClass('active')) $(this).removeClass('active'); 1980 var month = $(this).data('toggle-divider'); 1981 $('#mec_skin_' + settings.id + ' .' + month).slideUp('fast'); 1982 }); 1983 1984 // Set Active Class For Last Article 1985 $('#mec_skin_' + settings.id + ' .mec-month-divider:last').addClass('active'); 1986 1987 // Register Listeners 1988 toggle(); 1989 } 1990 1991 function accordion() { 1992 // Accordion Toggle 1993 $("#mec_skin_" + settings.id + " .mec-toggle-item-inner").off("click").on("click", function (event) { 1994 event.preventDefault(); 1995 1996 var $this = $(this); 1997 $(this).parent().find(".mec-content-toggle").slideToggle("fast", function () { 1998 $this.children("i").toggleClass("mec-sl-arrow-down mec-sl-arrow-up"); 1999 }); 2000 2001 // Trigger Google Map 2002 var unique_id = $(this).parent().find(".mec-modal-wrap").data('unique-id'); 2003 2004 window['mec_init_gmap' + unique_id](); 2005 }); 2006 } 2007 2008 function sed() { 2009 // Single Event Display 2010 $("#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) { 2011 e.preventDefault(); 2012 var href = $(this).attr('href'); 2013 2014 var id = $(this).data('event-id'); 2015 var occurrence = get_parameter_by_name('occurrence', href); 2016 2017 mecSingleEventDisplayer.getSinglePage(id, occurrence, settings.ajax_url, settings.sed_method, settings.image_popup); 2018 }); 2019 2020 $("#mec_skin_" + settings.id + " .mec-event-image a img").off('click').on('click', function (e) { 2021 e.preventDefault(); 2022 var href = $(this).parent().attr('href'); 2023 2024 var id = $(this).parent().data('event-id'); 2025 var occurrence = get_parameter_by_name('occurrence', href); 2026 2027 mecSingleEventDisplayer.getSinglePage(id, occurrence, settings.ajax_url, settings.sed_method, settings.image_popup); 2028 }); 2029 } 2030 2031 function loadMore() { 2032 // Add loading Class 2033 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-load-more-loading"); 2034 2035 $.ajax({
2036 url: settings.ajax_url, 2037 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", 2038 dataType: "json", 2039 type: "post", 2040 success: function (response) { 2041 if (response.count == '0') { 2042 // Remove loading Class 2043 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading"); 2044 2045 // Hide load more button 2046 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 2047 } else { 2048 // Show load more button 2049 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-util-hidden"); 2050 2051 // Append Items 2052 $("#mec_skin_events_" + settings.id).append(response.html); 2053 2054 // Remove loading Class 2055 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading"); 2056 2057 // Update the variables 2058 settings.end_date = response.end_date; 2059 settings.offset = response.offset; 2060 settings.current_month_divider = response.current_month_divider; 2061 2062 // Single Event Method 2063 if (settings.sed_method != '0') { 2064 sed(); 2065 } 2066 2067 // Accordion Toggle 2068 if (settings.style === 'accordion') { 2069 if (settings.toggle_month_divider) toggleLoadmore(); 2070 2071 accordion(); 2072 } 2073 } 2074 }, 2075 error: function () {} 2076 }); 2077 } 2078 2079 function search() { 2080 // Hide no event message 2081 $("#mec_skin_no_events_" + settings.id).addClass("mec-util-hidden"); 2082 2083 // Add loading Class 2084 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 2085 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 2086 jQuery("#gmap-data").val(""); 2087 2088 $.ajax({
2089 url: settings.ajax_url, 2090 data: "action=mec_list_load_more&mec_start_date=" + settings.start_date + "&" + settings.atts + "¤t_month_divider=0&apply_sf_date=1", 2091 dataType: "json", 2092 type: "post", 2093 success: function (response) { 2094 if (response.count == "0") { 2095 // Append Items 2096 $("#mec_skin_events_" + settings.id).html(''); 2097 2098 // Remove loading Class 2099 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 2100 2101 // Hide Map 2102 $('.mec-skin-map-container').addClass("mec-util-hidden"); 2103 2104 // Hide it 2105 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 2106 2107 // Show no event message 2108 $("#mec_skin_no_events_" + settings.id).removeClass("mec-util-hidden"); 2109 } else { 2110 // Append Items 2111 $("#mec_skin_events_" + settings.id).html(response.html); 2112 2113 // Remove loading Class 2114 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 2115 2116 // Show Map 2117 $('.mec-skin-map-container').removeClass("mec-util-hidden"); 2118 2119 // Show load more button 2120 if (response.count >= settings.limit) $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-util-hidden"); 2121 // Hide load more button 2122 else $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 2123 2124 // Update the variables 2125 settings.end_date = response.end_date; 2126 settings.offset = response.offset; 2127 settings.current_month_divider = response.current_month_divider; 2128 2129 // Single Event Method 2130 if (settings.sed_method != '0') { 2131 sed(); 2132 } 2133 2134 // Accordion Toggle 2135 if (settings.style === 'accordion') { 2136 if (settings.toggle_month_divider) toggle(); 2137 2138 accordion(); 2139 } 2140 } 2141 }, 2142 error: function () {} 2143 }); 2144 } 2145 }; 2146 2147}(jQuery)); 2148 2149// MEC GRID VIEW PLUGIN 2150(function ($) { 2151 $.fn.mecGridView = function (options) { 2152 // Default Options 2153 var settings = $.extend({ 2154 // These are the defaults. 2155 id: 0, 2156 atts: '', 2157 ajax_url: '', 2158 sf: {}, 2159 end_date: '', 2160 offset: 0, 2161 start_date: '', 2162 }, options); 2163 2164 // Set onclick Listeners 2165 setListeners(); 2166 2167 var sf; 2168 2169 function setListeners() { 2170 // Search Widget 2171 if (settings.sf.container !== '') { 2172 sf = $(settings.sf.container).mecSearchForm({ 2173 id: settings.id, 2174 atts: settings.atts, 2175 callback: function (atts) { 2176 settings.atts = atts; 2177 search(); 2178 } 2179 }); 2180 } 2181 2182 $("#mec_skin_" + settings.id + " .mec-load-more-button").on("click", function () { 2183 loadMore(); 2184 }); 2185 2186 // Single Event Method 2187 if (settings.sed_method != '0') { 2188 sed(); 2189 } 2190 } 2191 2192 function sed() { 2193 // Single Event Display 2194 $("#mec_skin_" + settings.id + " .mec-event-title a, #mec_skin_" + settings.id + " .mec-booking-button").off('click').on('click', function (e) { 2195 e.preventDefault(); 2196 var href = $(this).attr('href'); 2197 2198 var id = $(this).data('event-id'); 2199 var occurrence = get_parameter_by_name('occurrence', href); 2200 2201 mecSingleEventDisplayer.getSinglePage(id, occurrence, settings.ajax_url, settings.sed_method, settings.image_popup); 2202 }); 2203 $("#mec_skin_" + settings.id + " .mec-event-image a img").off('click').on('click', function (e) { 2204 e.preventDefault(); 2205 var href = $(this).parent().attr('href'); 2206 2207 var id = $(this).parent().data('event-id'); 2208 var occurrence = get_parameter_by_name('occurrence', href); 2209 2210 mecSingleEventDisplayer.getSinglePage(id, occurrence, settings.ajax_url, settings.sed_method, settings.image_popup); 2211 }); 2212 } 2213 2214 function loadMore() { 2215 // Add loading Class 2216 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-load-more-loading"); 2217 2218 $.ajax({
2219 url: settings.ajax_url, 2220 data: "action=mec_grid_load_more&mec_start_date=" + settings.end_date + "&mec_offset=" + settings.offset + "&" + settings.atts + "&apply_sf_date=0", 2221 dataType: "json", 2222 type: "post", 2223 success: function (response) { 2224 if (response.count == "0") { 2225 // Remove loading Class 2226 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading"); 2227 2228 // Hide load more button 2229 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 2230 } else { 2231 // Show load more button 2232 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-util-hidden"); 2233 2234 // Append Items 2235 $("#mec_skin_events_" + settings.id).append(response.html); 2236 2237 // Remove loading Class 2238 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading"); 2239 2240 // Update the variables 2241 settings.end_date = response.end_date; 2242 settings.offset = response.offset; 2243 2244 // Single Event Method 2245 if (settings.sed_method != '0') { 2246 sed(); 2247 } 2248 } 2249 }, 2250 error: function () {} 2251 }); 2252 } 2253 2254 function search() { 2255 // Hide no event message 2256 $("#mec_skin_no_events_" + settings.id).addClass("mec-util-hidden"); 2257 2258 // Add loading Class 2259 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 2260 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 2261 jQuery("#gmap-data").val(""); 2262 2263 $.ajax({
2264 url: settings.ajax_url, 2265 data: "action=mec_grid_load_more&mec_start_date=" + settings.start_date + "&" + settings.atts + "&apply_sf_date=1", 2266 dataType: "json", 2267 type: "post", 2268 success: function (response) { 2269 if (response.count == "0") { 2270 // Append Items 2271 $("#mec_skin_events_" + settings.id).html(''); 2272 2273 // Remove loading Class 2274 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 2275 2276 // Hide Map 2277 $('.mec-skin-map-container').addClass("mec-util-hidden"); 2278 2279 // Hide it 2280 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 2281 2282 // Show no event message 2283 $("#mec_skin_no_events_" + settings.id).removeClass("mec-util-hidden"); 2284 } else { 2285 // Append Items 2286 $("#mec_skin_events_" + settings.id).html(response.html); 2287 2288 // Remove loading Class 2289 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 2290 2291 // Show Map 2292 $('.mec-skin-map-container').removeClass("mec-util-hidden"); 2293 2294 // Show load more button 2295 if (response.count >= settings.limit) $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-util-hidden"); 2296 // Hide load more button 2297 else $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 2298 2299 // Update the variables 2300 settings.end_date = response.end_date; 2301 settings.offset = response.offset; 2302 2303 // Single Event Method 2304 if (settings.sed_method != '0') { 2305 sed(); 2306 } 2307 } 2308 }, 2309 error: function () {} 2310 }); 2311 } 2312 }; 2313 2314}(jQuery)); 2315 2316// MEC CUSTOM VIEW PLUGIN 2317(function ($) { 2318 $.fn.mecCustomView = function (options) { 2319 // Default Options 2320 var settings = $.extend({ 2321 // These are the defaults. 2322 id: 0, 2323 atts: '', 2324 ajax_url: '', 2325 sf: {}, 2326 end_date: '', 2327 offset: 0, 2328 start_date: '', 2329 }, options); 2330 2331 // Set onclick Listeners 2332 setListeners(); 2333 2334 var sf; 2335 2336 function setListeners() { 2337 // Search Widget 2338 if (settings.sf.container !== '') { 2339 sf = $(settings.sf.container).mecSearchForm({ 2340 id: settings.id, 2341 atts: settings.atts, 2342 callback: function (atts) { 2343 settings.atts = atts; 2344 search(); 2345 } 2346 }); 2347 } 2348 2349 $("#mec_skin_" + settings.id + " .mec-load-more-button").on("click", function () { 2350 loadMore(); 2351 }); 2352 2353 // Single Event Method 2354 if (settings.sed_method != '0') { 2355 sed(); 2356 } 2357 } 2358 2359 function sed() { 2360 // Single Event Display 2361 $("#mec_skin_" + settings.id + " .mec-event-title a, #mec_skin_" + settings.id + " .mec-booking-button").off('click').on('click', function (e) { 2362 e.preventDefault(); 2363 var href = $(this).attr('href'); 2364 2365 var id = $(this).data('event-id'); 2366 var occurrence = get_parameter_by_name('occurrence', href); 2367 2368 mecSingleEventDisplayer.getSinglePage(id, occurrence, settings.ajax_url, settings.sed_method, settings.image_popup); 2369 }); 2370 $("#mec_skin_" + settings.id + " .mec-event-image a img").off('click').on('click', function (e) { 2371 e.preventDefault(); 2372 var href = $(this).parent().attr('href'); 2373 2374 var id = $(this).parent().data('event-id'); 2375 var occurrence = get_parameter_by_name('occurrence', href); 2376 2377 mecSingleEventDisplayer.getSinglePage(id, occurrence, settings.ajax_url, settings.sed_method, settings.image_popup); 2378 }); 2379 } 2380 2381 function loadMore() { 2382 // Add loading Class 2383 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-load-more-loading"); 2384 2385 $.ajax({
2386 url: settings.ajax_url, 2387 data: "action=mec_custom_load_more&mec_start_date=" + settings.end_date + "&mec_offset=" + settings.offset + "&" + settings.atts + "&apply_sf_date=0", 2388 dataType: "json", 2389 type: "post", 2390 success: function (response) { 2391 if (response.count == "0") { 2392 // Remove loading Class 2393 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading"); 2394 2395 // Hide load more button 2396 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 2397 } else { 2398 // Show load more button 2399 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-util-hidden"); 2400 2401 // Append Items 2402 $("#mec_skin_events_" + settings.id).append(response.html); 2403 2404 // Remove loading Class 2405 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading"); 2406 2407 // Update the variables 2408 settings.end_date = response.end_date; 2409 settings.offset = response.offset; 2410 2411 if ( $('.mec-event-sd-countdown').length > 0 ) 2412 { 2413 $('.mec-event-sd-countdown').each(function (event) { 2414 var dc= $(this).attr('data-date-custom'); 2415 $(this).mecCountDown( 2416 { 2417 date: dc, 2418 format: "off" 2419 }, 2420 function () { 2421 }); 2422 }) 2423 } 2424 // Single Event Method 2425 if (settings.sed_method != '0') { 2426 sed(); 2427 } 2428 } 2429 }, 2430 error: function () {} 2431 }); 2432 } 2433 2434 function search() { 2435 // Hide no event message 2436 $("#mec_skin_no_events_" + settings.id).addClass("mec-util-hidden"); 2437 2438 // Add loading Class 2439 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 2440 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 2441 jQuery("#gmap-data").val(""); 2442 2443 $.ajax({
2444 url: settings.ajax_url, 2445 data: "action=mec_custom_load_more&mec_start_date=" + settings.start_date + "&" + settings.atts + "&apply_sf_date=1", 2446 dataType: "json", 2447 type: "post", 2448 success: function (response) { 2449 if (response.count == "0") { 2450 // Append Items 2451 $("#mec_skin_events_" + settings.id).html(''); 2452 2453 // Remove loading Class 2454 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 2455 2456 // Hide Map 2457 $('.mec-skin-map-container').addClass("mec-util-hidden"); 2458 2459 // Hide it 2460 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 2461 2462 // Show no event message 2463 $("#mec_skin_no_events_" + settings.id).removeClass("mec-util-hidden"); 2464 } else { 2465 // Append Items 2466 $("#mec_skin_events_" + settings.id).html(response.html); 2467 2468 // Remove loading Class 2469 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 2470 2471 // Show Map 2472 $('.mec-skin-map-container').removeClass("mec-util-hidden"); 2473 2474 // Show load more button 2475 if (response.count >= settings.limit) $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-util-hidden"); 2476 // Hide load more button 2477 else $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 2478 2479 // Update the variables 2480 settings.end_date = response.end_date; 2481 settings.offset = response.offset; 2482 2483 // Single Event Method 2484 if (settings.sed_method != '0') { 2485 sed(); 2486 } 2487 } 2488 }, 2489 error: function () {} 2490 }); 2491 } 2492 }; 2493 2494}(jQuery)); 2495 2496// MEC TIMELINE VIEW PLUGIN 2497(function ($) { 2498 $.fn.mecTimelineView = function (options) { 2499 // Default Options 2500 var settings = $.extend({ 2501 // These are the defaults. 2502 id: 0, 2503 atts: '', 2504 ajax_url: '', 2505 sf: {}, 2506 end_date: '', 2507 offset: 0, 2508 start_date: '', 2509 }, options); 2510 2511 // Set onclick Listeners 2512 setListeners(); 2513 2514 var sf; 2515 2516 function setListeners() { 2517 // Search Widget 2518 if (settings.sf.container !== '') { 2519 sf = $(settings.sf.container).mecSearchForm({ 2520 id: settings.id, 2521 atts: settings.atts, 2522 callback: function (atts) { 2523 settings.atts = atts; 2524 search(); 2525 } 2526 }); 2527 } 2528 2529 $("#mec_skin_" + settings.id + " .mec-load-more-button").on("click", function () { 2530 loadMore(); 2531 }); 2532 2533 // Single Event Method 2534 if (settings.sed_method != '0') { 2535 sed(); 2536 } 2537 } 2538 2539 function sed() { 2540 // Single Event Display 2541 $("#mec_skin_" + settings.id + " .mec-event-title a, #mec_skin_" + settings.id + " .mec-booking-button").off('click').on('click', function (e) { 2542 e.preventDefault(); 2543 var href = $(this).attr('href'); 2544 2545 var id = $(this).data('event-id'); 2546 var occurrence = get_parameter_by_name('occurrence', href); 2547 2548 mecSingleEventDisplayer.getSinglePage(id, occurrence, settings.ajax_url, settings.sed_method, settings.image_popup); 2549 }); 2550 $("#mec_skin_" + settings.id + " .mec-event-image a img").off('click').on('click', function (e) { 2551 e.preventDefault(); 2552 var href = $(this).parent().attr('href'); 2553 2554 var id = $(this).parent().data('event-id'); 2555 var occurrence = get_parameter_by_name('occurrence', href); 2556 2557 mecSingleEventDisplayer.getSinglePage(id, occurrence, settings.ajax_url, settings.sed_method, settings.image_popup); 2558 }); 2559 } 2560 2561 function loadMore() { 2562 // Add loading Class 2563 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-load-more-loading"); 2564 2565 $.ajax({
2566 url: settings.ajax_url, 2567 data: "action=mec_timeline_load_more&mec_start_date=" + settings.end_date + "&mec_offset=" + settings.offset + "&" + settings.atts + "&apply_sf_date=0", 2568 dataType: "json", 2569 type: "post", 2570 success: function (response) { 2571 if (response.count == "0") { 2572 // Remove loading Class 2573 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading"); 2574 2575 // Hide load more button 2576 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 2577 } else { 2578 // Show load more button 2579 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-util-hidden"); 2580 2581 // Append Items 2582 $("#mec_skin_events_" + settings.id).append(response.html); 2583 2584 // Remove loading Class 2585 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading"); 2586 2587 // Update the variables 2588 settings.end_date = response.end_date; 2589 settings.offset = response.offset; 2590 2591 // Single Event Method 2592 if (settings.sed_method != '0') { 2593 sed(); 2594 } 2595 2596 } 2597 }, 2598 error: function () { } 2599 }); 2600 } 2601 2602 function search() { 2603 // Hide no event message 2604 $("#mec_skin_no_events_" + settings.id).addClass("mec-util-hidden"); 2605 2606 // Add loading Class 2607 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 2608 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 2609 2610 $.ajax({
2611 url: settings.ajax_url, 2612 data: "action=mec_timeline_load_more&mec_start_date=" + settings.start_date + "&" + settings.atts + "&apply_sf_date=1", 2613 dataType: "json", 2614 type: "post", 2615 success: function (response) { 2616 if (response.count == "0") { 2617 // Append Items 2618 $("#mec_skin_events_" + settings.id).html(''); 2619 2620 // Remove loading Class 2621 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 2622 2623 // Hide Map 2624 $('.mec-skin-map-container').addClass("mec-util-hidden"); 2625 2626 // Hide it 2627 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 2628 2629 // Show no event message 2630 $("#mec_skin_no_events_" + settings.id).removeClass("mec-util-hidden"); 2631 } else { 2632 // Append Items 2633 $("#mec_skin_events_" + settings.id).html(response.html); 2634 2635 // Remove loading Class 2636 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 2637 2638 // Show Map 2639 $('.mec-skin-map-container').removeClass("mec-util-hidden"); 2640 2641 // Show load more button 2642 if (response.count >= settings.limit) $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-util-hidden"); 2643 // Hide load more button 2644 else $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 2645 2646 // Update the variables 2647 settings.end_date = response.end_date; 2648 settings.offset = response.offset; 2649 2650 // Single Event Method 2651 if (settings.sed_method != '0') { 2652 sed(); 2653 } 2654 } 2655 }, 2656 error: function () { } 2657 }); 2658 } 2659 }; 2660 2661}(jQuery)); 2662 2663// MEC AGENDA VIEW PLUGIN 2664(function ($) { 2665 $.fn.mecAgendaView = function (options) { 2666 // Default Options 2667 var settings = $.extend({ 2668 // These are the defaults. 2669 id: 0, 2670 atts: '', 2671 ajax_url: '', 2672 sf: {}, 2673 current_month_divider: '', 2674 end_date: '', 2675 offset: 0, 2676 }, options); 2677 2678 // Set onclick Listeners 2679 setListeners(); 2680 2681 var sf; 2682 2683 function setListeners() { 2684 // Search Widget 2685 if (settings.sf.container !== '') { 2686 sf = $(settings.sf.container).mecSearchForm({ 2687 id: settings.id, 2688 atts: settings.atts, 2689 callback: function (atts) { 2690 settings.atts = atts; 2691 search(); 2692 } 2693 }); 2694 } 2695 2696 $("#mec_skin_" + settings.id + " .mec-load-more-button").on("click", function () { 2697 loadMore(); 2698 }); 2699 2700 // Single Event Method 2701 if (settings.sed_method != '0') { 2702 sed(); 2703 } 2704 } 2705 2706 function sed() { 2707 // Single Event Display 2708 $("#mec_skin_" + settings.id + " .mec-agenda-event-title a").off('click').on('click', function (e) { 2709 e.preventDefault(); 2710 var href = $(this).attr('href'); 2711 2712 var id = $(this).data('event-id'); 2713 var occurrence = get_parameter_by_name('occurrence', href); 2714 2715 mecSingleEventDisplayer.getSinglePage(id, occurrence, settings.ajax_url, settings.sed_method, settings.image_popup); 2716 }); 2717 } 2718 2719 function loadMore() { 2720 // Add loading Class 2721 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-load-more-loading"); 2722 2723 $.ajax({
2724 url: settings.ajax_url, 2725 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", 2726 dataType: "json", 2727 type: "post", 2728 success: function (response) { 2729 if (response.count == "0") { 2730 // Remove loading Class 2731 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading"); 2732 2733 // Hide load more button 2734 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 2735 } else { 2736 // Show load more button 2737 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-util-hidden"); 2738 2739 // Append Items 2740 $("#mec_skin_events_" + settings.id + " .mec-events-agenda-container").append(response.html); 2741 2742 // Remove loading Class 2743 $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-load-more-loading"); 2744 2745 // Update the variables 2746 settings.end_date = response.end_date; 2747 settings.offset = response.offset; 2748 settings.current_month_divider = response.current_month_divider; 2749 2750 // Single Event Method 2751 if (settings.sed_method != '0') { 2752 sed(); 2753 } 2754 } 2755 }, 2756 error: function () {} 2757 }); 2758 } 2759 2760 function search() { 2761 // Hide no event message 2762 $("#mec_skin_no_events_" + settings.id).addClass("mec-util-hidden"); 2763 2764 // Add loading Class 2765 if (jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 2766 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 2767 2768 $.ajax({
2769 url: settings.ajax_url, 2770 data: "action=mec_agenda_load_more&mec_start_date=" + settings.start_date + "&" + settings.atts + "¤t_month_divider=0&apply_sf_date=1", 2771 dataType: "json", 2772 type: "post", 2773 success: function (response) { 2774 if (response.count == "0") { 2775 // Append Items 2776 $("#mec_skin_events_" + settings.id + " .mec-events-agenda-container").html(''); 2777 2778 // Remove loading Class 2779 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 2780 2781 // Hide it 2782 $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 2783 2784 // Show no event message 2785 $("#mec_skin_no_events_" + settings.id).removeClass("mec-util-hidden"); 2786 } else { 2787 // Append Items 2788 $("#mec_skin_events_" + settings.id + " .mec-events-agenda-container").html(response.html); 2789 2790 // Remove loading Class 2791 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 2792 2793 // Show load more button 2794 if (response.count >= settings.limit) $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-util-hidden"); 2795 // Hide load more button 2796 else $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 2797 2798 // Update the variables 2799 settings.end_date = response.end_date; 2800 settings.offset = response.offset; 2801 settings.current_month_divider = response.current_month_divider; 2802 2803 // Single Event Method 2804 if (settings.sed_method != '0') { 2805 sed(); 2806 } 2807 } 2808 }, 2809 error: function () {} 2810 }); 2811 } 2812 }; 2813}(jQuery)); 2814 2815// MEC CAROUSEL VIEW PLUGIN 2816(function ($) { 2817 $.fn.mecCarouselView = function (options) { 2818 // Default Options 2819 var settings = $.extend({ 2820 // These are the defaults. 2821 id: 0, 2822 atts: '', 2823 ajax_url: '', 2824 sf: {}, 2825 items: 3, 2826 autoplay: '', 2827 style: 'type1', 2828 start_date: '' 2829 }, options); 2830 2831 // Init Sliders 2832 initSlider(settings); 2833 2834 // Single Event Method 2835 if (settings.sed_method != '0') { 2836 sed(settings); 2837 } 2838 2839 function initSlider(settings) { 2840 // Check RTL website 2841 if ($('body').hasClass('rtl')) { 2842 var owl_rtl = true; 2843 } else { 2844 var owl_rtl = false; 2845 } 2846 2847 if (settings.style === 'type1') { 2848 2849 // Start carousel skin 2850 var owl = $("#mec_skin_" + settings.id + " .mec-event-carousel-type1 .mec-owl-carousel"); 2851 2852 owl.owlCarousel({ 2853 autoplay: true, 2854 autoplayTimeout: settings.autoplay, // Set AutoPlay to 3 seconds 2855 loop: true, 2856 items: settings.items, 2857 responsiveClass: true, 2858 responsive: { 2859 0: { 2860 items: 1, 2861 }, 2862 979: { 2863 items: 2, 2864 }, 2865 1199: { 2866 items: settings.count, 2867 } 2868 }, 2869 dots: true, 2870 nav: false, 2871 autoplayHoverPause: true, 2872 rtl: owl_rtl, 2873 }); 2874 owl.bind( 2875 "mouseleave", 2876 function (event) { 2877 $("#mec_skin_" + settings.id + " .mec-owl-carousel").trigger('play.owl.autoplay'); 2878 } 2879 ); 2880 } else if (settings.style === 'type4') { 2881 $("#mec_skin_" + settings.id + " .mec-owl-carousel").owlCarousel({ 2882 autoplay: true, 2883 loop: true, 2884 autoplayTimeout: settings.autoplay, 2885 items: settings.items, 2886 dots: false, 2887 nav: true, 2888 responsiveClass: true, 2889 responsive: { 2890 0: { 2891 items: 1, 2892 stagePadding: 50, 2893 }, 2894 979: { 2895 items: 2, 2896 }, 2897 1199: { 2898 items: settings.count, 2899 } 2900 }, 2901 autoplayHoverPause: true, 2902 navText: ["<i class='mec-sl-arrow-left'></i>", " <i class='mec-sl-arrow-right'></i>"], 2903 rtl: owl_rtl, 2904 }); 2905 $("#mec_skin_" + settings.id + " .mec-owl-carousel").bind( 2906 "mouseleave", 2907 function (event) { 2908 $("#mec_skin_" + settings.id + " .mec-owl-carousel").trigger('play.owl.autoplay'); 2909 } 2910 ); 2911 } else { 2912 $("#mec_skin_" + settings.id + " .mec-owl-carousel").owlCarousel({ 2913 autoplay: true, 2914 loop: true, 2915 autoplayTimeout: settings.autoplay, 2916 items: settings.items, 2917 dots: false, 2918 nav: true, 2919 responsiveClass: true, 2920 responsive: { 2921 0: { 2922 items: 1, 2923 }, 2924 979: { 2925 items: 2, 2926 }, 2927 1199: { 2928 items: settings.count, 2929 } 2930 }, 2931 autoplayHoverPause: true, 2932 navText: ["<i class='mec-sl-arrow-left'></i>", " <i class='mec-sl-arrow-right'></i>"], 2933 rtl: owl_rtl, 2934 }); 2935 $("#mec_skin_" + settings.id + " .mec-owl-carousel").bind( 2936 "mouseleave", 2937 function (event) { 2938 $("#mec_skin_" + settings.id + " .mec-owl-carousel").trigger('play.owl.autoplay'); 2939 } 2940 ); 2941 } 2942 } 2943 }; 2944 2945 function sed(settings) { 2946 // Single Event Display
2947 $("#mec_skin_" + settings.id + " .mec-event-carousel-title a, #mec_skin_" + settings.id + " .mec-booking-button, #mec_skin_" + settings.id + " .mec-event-button").off('click').on('click', function (e) { 2948 e.preventDefault(); 2949 var href = $(this).attr('href'); 2950 2951 var id = $(this).data('event-id'); 2952 var occurrence = get_parameter_by_name('occurrence', href); 2953 2954 mecSingleEventDisplayer.getSinglePage(id, occurrence, settings.ajax_url, settings.sed_method, settings.image_popup); 2955 }); 2956 } 2957}(jQuery)); 2958 2959// MEC SLIDER VIEW PLUGIN 2960(function ($) { 2961 $.fn.mecSliderView = function (options) { 2962 // Default Options 2963 var settings = $.extend({ 2964 // These are the defaults. 2965 id: 0, 2966 atts: '', 2967 autoplay: false, 2968 ajax_url: '', 2969 sf: {}, 2970 start_date: '' 2971 }, options); 2972 2973 // Init Sliders 2974 initSlider(); 2975 2976 function initSlider() { 2977 // Check RTL website 2978 if ($('body').hasClass('rtl')) { 2979 var owl_rtl = true; 2980 } else { 2981 var owl_rtl = false; 2982 } 2983 2984 $("#mec_skin_" + settings.id + " .mec-owl-carousel").owlCarousel({ 2985 autoplay: true, 2986 autoplayTimeout: settings.autoplay, 2987 loop: true, 2988 items: 1, 2989 responsiveClass: true, 2990 responsive: { 2991 0: { 2992 items: 1, 2993 }, 2994 960: { 2995 items: 1, 2996 }, 2997 1200: { 2998 items: 1, 2999 } 3000 }, 3001 dots: false, 3002 nav: true, 3003 autoplayHoverPause: true, 3004 navText: ["<i class='mec-sl-arrow-left'></i>", " <i class='mec-sl-arrow-right'></i>"], 3005 rtl: owl_rtl, 3006 }); 3007 } 3008 }; 3009 3010}(jQuery)); 3011 3012// MEC COUNTDOWN MODULE 3013(function ($) { 3014 $.fn.mecCountDown = function (options, callBack) { 3015 // Default Options 3016 var settings = $.extend({ 3017 // These are the defaults. 3018 date: null, 3019 format: null 3020 }, options); 3021 3022 var callback = callBack; 3023 var selector = $(this); 3024 3025 startCountdown(); 3026 var interval = setInterval(startCountdown, 1000); 3027 3028 function startCountdown() { 3029 var eventDate = Date.parse(settings.date) / 1000; 3030 var currentDate = Math.floor($.now() / 1000); 3031 3032 if (eventDate <= currentDate) { 3033 callback.call(this); 3034 clearInterval(interval); 3035 } 3036 3037 var seconds = eventDate - currentDate; 3038 3039 var days = Math.floor(seconds / (60 * 60 * 24)); 3040 seconds -= days * 60 * 60 * 24; 3041 3042 var hours = Math.floor(seconds / (60 * 60)); 3043 seconds -= hours * 60 * 60; 3044 3045 var minutes = Math.floor(seconds / 60); 3046 seconds -= minutes * 60; 3047 3048 if (days == 1) selector.find(".mec-timeRefDays").text(mecdata.day); 3049 else selector.find(".mec-timeRefDays").text(mecdata.days); 3050 3051 if (hours == 1) selector.find(".mec-timeRefHours").text(mecdata.hour); 3052 else selector.find(".mec-timeRefHours").text(mecdata.hours); 3053 3054 if (minutes == 1) selector.find(".mec-timeRefMinutes").text(mecdata.minute); 3055 else selector.find(".mec-timeRefMinutes").text(mecdata.minutes); 3056 3057 if (seconds == 1) selector.find(".mec-timeRefSeconds").text(mecdata.second); 3058 else selector.find(".mec-timeRefSeconds").text(mecdata.seconds); 3059 3060 if (settings.format === "on") { 3061 days = (String(days).length >= 2) ? days : "0" + days; 3062 hours = (String(hours).length >= 2) ? hours : "0" + hours; 3063 minutes = (String(minutes).length >= 2) ? minutes : "0" + minutes; 3064 seconds = (String(seconds).length >= 2) ? seconds : "0" + seconds; 3065 } 3066 3067 if (!isNaN(eventDate)) { 3068 selector.find(".mec-days").text(days);
3069 selector.find(".mec-hours").text(hours); 3070 selector.find(".mec-minutes").text(minutes); 3071 selector.find(".mec-seconds").text(seconds); 3072 } else { 3073 clearInterval(interval); 3074 } 3075 } 3076 }; 3077 3078}(jQuery)); 3079 3080// MEC TILE VIEW PLUGIN 3081(function($) 3082{ 3083 $.fn.mecTileView = function(options) 3084 { 3085 var active_month; 3086 var active_year; 3087 3088 // Default Options 3089 var settings = $.extend({ 3090 // These are the defaults. 3091 today: null, 3092 id: 0, 3093 events_label: 'Events', 3094 event_label: 'Event', 3095 month_navigator: 0, 3096 atts: '', 3097 active_month: {}, 3098 next_month: {}, 3099 sf: {}, 3100 ajax_url: '' 3101 }, options); 3102 3103 // Initialize Month Navigator 3104 if(settings.month_navigator) initMonthNavigator(); 3105 3106 // Load Next Month in background 3107 if(settings.load_method === 'month') setMonth(settings.next_month.year, settings.next_month.month, true); 3108 3109 active_month = settings.active_month.month; 3110 active_year = settings.active_month.year; 3111 3112 // Set onclick Listeners 3113 setListeners(); 3114 3115 // Search Widget 3116 if(settings.sf.container !== '') 3117 { 3118 sf = $(settings.sf.container).mecSearchForm( 3119 { 3120 id: settings.id, 3121 atts: settings.atts, 3122 callback: function(atts) 3123 { 3124 settings.atts = atts; 3125 search(active_year, active_month); 3126 } 3127 }); 3128 } 3129 3130 function initMonthNavigator() 3131 { 3132 $("#mec_skin_" + settings.id + " .mec-load-month").off("click").on("click", function() 3133 { 3134 var year = $(this).data("mec-year"); 3135 var month = $(this).data("mec-month"); 3136 3137 setMonth(year, month, false, true); 3138 }); 3139 } 3140 3141 function search(year, month) 3142 { 3143 // Add Loading Class 3144 if(jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 3145 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 3146 3147 $.ajax( 3148 { 3149 url: settings.ajax_url, 3150 data: "action=mec_tile_load_month&mec_year=" + year + "&mec_month=" + month + "&" + settings.atts + "&apply_sf_date=1", 3151 dataType: "json", 3152 type: "post", 3153 success: function(response) 3154 { 3155 if(settings.load_method === 'month') 3156 { 3157 active_month = response.current_month.month; 3158 active_year = response.current_month.year; 3159 3160 // Append Month 3161 $("#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>'); 3162 3163 // Append Month Navigator 3164 $("#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>'); 3165 3166 // Re-initialize Month Navigator 3167 initMonthNavigator(); 3168 3169 // Set onclick Listeners 3170 setListeners(); 3171 3172 // Toggle Month 3173 toggleMonth(response.current_month.id); 3174 } 3175 else 3176 { 3177 // Append Items 3178 $("#mec_skin_events_" + settings.id).html(response.html); 3179 3180 // Show load more button 3181 if (response.count >= settings.limit) $("#mec_skin_" + settings.id + " .mec-load-more-button").removeClass("mec-util-hidden"); 3182 // Hide load more button 3183 else $("#mec_skin_" + settings.id + " .mec-load-more-button").addClass("mec-util-hidden"); 3184 3185 // Update the variables 3186 settings.end_date = response.end_date; 3187 settings.offset = response.offset; 3188 3189 // Set onclick Listeners 3190 setListeners(); 3191 } 3192 3193 // Remove loading Class 3194 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 3195 }, 3196 error: function(){} 3197 }); 3198 } 3199 3200 function setMonth(year, month, do_in_background, navigator_click) 3201 { 3202 if(typeof do_in_background === "undefined") do_in_background = false; 3203 navigator_click = navigator_click || false; 3204
3205 var month_id = year + "" + month; 3206 3207 if(!do_in_background) 3208 { 3209 active_month = month; 3210 active_year = year; 3211 } 3212 3213 // Month exists so we just show it 3214 if($("#mec_tile_month_" + settings.id + "_" + month_id).length) 3215 { 3216 // Toggle Month 3217 toggleMonth(month_id); 3218 } 3219 else 3220 { 3221 if(!do_in_background) 3222 { 3223 // Add Loading Class 3224 if(jQuery('.mec-modal-result').length === 0) jQuery('.mec-wrap').append('<div class="mec-modal-result"></div>'); 3225 jQuery('.mec-modal-result').addClass('mec-month-navigator-loading'); 3226 } 3227 3228 $.ajax( 3229 { 3230 url: settings.ajax_url, 3231 data: "action=mec_tile_load_month&mec_year=" + year + "&mec_month=" + month + "&" + settings.atts + "&apply_sf_date=0" + "&navigator_click=" + navigator_click, 3232 dataType: "json", 3233 type: "post", 3234 success: function(response) 3235 { 3236 // Append Month 3237 $("#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>'); 3238 3239 // Append Month Navigator 3240 $("#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>'); 3241 3242 // Re-initialize Month Navigator 3243 initMonthNavigator(); 3244 3245 // Set onclick Listeners 3246 setListeners(); 3247 3248 if(!do_in_background) 3249 { 3250 // Toggle Month 3251 toggleMonth(response.current_month.id); 3252 3253 // Remove loading Class 3254 $('.mec-modal-result').removeClass("mec-month-navigator-loading"); 3255 3256 // Set Month Filter values in search widget 3257 $("#mec_sf_month_" + settings.id).val(month); 3258 $("#mec_sf_year_" + settings.id).val(year); 3259 } 3260 else 3261 { 3262 $("#mec_tile_month_" + settings.id + "_" + response.current_month.id).hide(); 3263 $("#mec_month_navigator_" + settings.id + "_" + response.current_month.id).hide(); 3264 } 3265 }, 3266 error: function(){} 3267 }); 3268 } 3269 } 3270 3271 function toggleMonth(month_id) 3272 { 3273 var active_month = $("#mec_skin_" + settings.id + " .mec-month-container-selected").data("month-id"); 3274 var active_day = $("#mec_tile_month_" + settings.id + "_" + active_month + " .mec-selected-day").data("day"); 3275 3276 if(active_day <= 9) active_day = "0" + active_day; 3277 3278 // Toggle Month Navigator 3279 $("#mec_skin_" + settings.id + " .mec-month-navigator").hide(); 3280 $("#mec_month_navigator_" + settings.id + "_" + month_id).show(); 3281 3282 // Toggle Month 3283 $("#mec_skin_" + settings.id + " .mec-month-container").hide().removeClass("mec-month-container-selected"); 3284 $("#mec_tile_month_" + settings.id + "_" + month_id).show().addClass("mec-month-container-selected"); 3285 } 3286 3287 var sf; 3288 3289 function setListeners() 3290 { 3291 $("#mec_skin_" + settings.id + " .mec-load-more-button").off("click").on("click", function() 3292 { 3293 loadMore(); 3294 }); 3295 3296 // Add the onclick event 3297 $("#mec_skin_" + settings.id + " .mec-has-event").off("click").on('click', function(e) 3298 { 3299 e.preventDefault(); 3300 3301 // define variables 3302 var $this = $(this), 3303 data_mec_cell = $this.data('mec-cell'),
3304 month_id = $this.data('month'); 3305 3306 $("#mec_monthly_view_month_" + settings.id + "_" + month_id + " .mec-calendar-day").removeClass('mec-selected-day'); 3307 $this.addClass('mec-selected-day'); 3308 3309 $('#mec_month_side_' + settings.id + '_' + month_id + ' .mec-calendar-events-sec:not([data-mec-cell=' + data_mec_cell + '])').slideUp(); 3310 $('#mec_month_side_' + settings.id + '_' + month_id + ' .mec-calendar-events-sec[data-mec-cell=' + data_mec_cell + ']').slideDown(); 3311 3312 $('#mec_monthly_view_month_' + settings.id + '_' + month_id + ' .mec-calendar-events-sec:not([data-mec-cell=' + data_mec_cell + '])').slideUp(); 3313 $('#mec_monthly_view_month_' + settings.id + '_' + month_id + ' .mec-calendar-events-sec[data-mec-cell=' + data_mec_cell + ']').slideDown(); 3314 }); 3315 3316 // Single Event Method 3317 if(settings.sed_method != '0') 3318 { 3319 sed(); 3320 } 3321 } 3322 3323 function sed() 3324 { 3325 // Single Event Display 3326 $("#mec_skin_" + settings.id + " .mec-event-title a").off('click').on('click', function(e) 3327 { 3328 e.preventDefault(); 3329 var href = $(this).attr('href'); 3330 3331 var id = $(this).data('event-id'); 3332 var occurrence = get_parameter_by_name('occurrence', href); 3333 mecSingleEventDisplayer.getSinglePage(id, occurrence, settings.ajax_url, settings.sed_method, settings.image_popup); 3334 }); 3335 } 3336 3337 function loadMore() 3338 { 3339 // Load More Button 3340 var $load_more_button = $("#mec_skin_" + settings.id + " .mec-load-more-button"); 3341 3342 // Add loading Class 3343 $load_more_button.addClass("mec-load-more-loading"); 3344 3345 $.ajax( 3346 { 3347 url: settings.ajax_url, 3348 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", 3349 dataType: "json", 3350 type: "post", 3351 success: function(response) 3352 { 3353 if(response.count == '0') 3354 { 3355 // Remove loading Class 3356 $load_more_button.removeClass("mec-load-more-loading"); 3357 3358 // Hide load more button 3359 $load_more_button.addClass("mec-util-hidden"); 3360 } 3361 else 3362 { 3363 // Show load more button 3364 $load_more_button.removeClass("mec-util-hidden"); 3365 3366 // Append Items 3367 $("#mec_skin_events_" + settings.id).append(response.html); 3368 3369 // Remove loading Class 3370 $load_more_button.removeClass("mec-load-more-loading"); 3371 3372 // Update the variables 3373 settings.end_date = response.end_date; 3374 settings.offset = response.offset; 3375 settings.current_month_divider = response.current_month_divider; 3376 3377 // Single Event Method 3378 if(settings.sed_method != '0') 3379 { 3380 sed(); 3381 } 3382 } 3383 }, 3384 error: function(){} 3385 }); 3386 } 3387 }; 3388}(jQuery)); 3389 3390function mec_gateway_selected(gateway_id) { 3391 // Hide all gateway forms 3392 jQuery('.mec-book-form-gateway-checkout').addClass('mec-util-hidden'); 3393 3394 // Show selected gateway form 3395 jQuery('#mec_book_form_gateway_checkout' + gateway_id).removeClass('mec-util-hidden'); 3396} 3397 3398function mec_wrap_resize() { 3399 var $mec_wrap = jQuery('.mec-wrap'), 3400 mec_width = $mec_wrap.width(); 3401 if (mec_width < 959) { 3402 $mec_wrap.addClass('mec-sm959'); 3403 } else { 3404 $mec_wrap.removeClass('mec-sm959'); 3405 } 3406} 3407 3408function get_parameter_by_name(name, url) { 3409 if (!url) { 3410 url = window.location.href; 3411 } 3412 3413 name = name.replace(/[\[\]]/g, "\\$&"); 3414 var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"), 3415 results = regex.exec(url); 3416 3417 if (!results) return null; 3418 if (!results[2]) return ''; 3419 3420 return decodeURIComponent(results[2].replace(/\+/g, " "));
3421} 3422 3423// Focus events day 3424var mec_g_month_id = null; 3425 3426function mecFocusDay(settings) 3427{ 3428 setTimeout(function() 3429 { 3430 var id = settings.id, 3431 date = new Date(), 3432 mec_owl_year = mec_g_month_id.substr(0, 4), 3433 mec_current_year = date.getFullYear(), 3434 mec_owl_month = mec_g_month_id.substr(4, 6), 3435 mec_current_month = date.getMonth() + 1, 3436 mec_current_day = date.getDate(), 3437 mec_owl_go = jQuery("#mec-owl-calendar-d-table-" + id + "-" + mec_g_month_id), 3438 mec_day_exist = false; 3439 mec_owl_go.find('.owl-stage > div').each(function (index) 3440 { 3441 if(parseInt(jQuery(this).children('div').data("events-count")) > 0) 3442 { 3443 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) 3444 { 3445 var index_plus = index + 1; 3446 jQuery('#mec_daily_view_day' + id + '_' + mec_g_month_i
3446d + (index < 10 ? '0' + index_plus : index_plus)).trigger('click'); 3447 mec_owl_go.trigger('to.owl.carousel', index_plus); 3448 mec_day_exist = true; 3449 return false; 3450 } 3451 else 3452 { 3453 jQuery('#mec_daily_view_day' + id + '_' + mec_g_month_id + mec_current_day).trigger('click'); 3454 mec_owl_go.trigger('to.owl.carousel', mec_current_day); 3455 mec_day_exist = true; 3456 return false; 3457 } 3458 } 3459 }); 3460 3461 if(!mec_day_exist && ((mec_owl_year == mec_current_year) && (mec_owl_month == mec_current_month))) 3462 { 3463 jQuery('#mec_daily_view_day' + id + '_' + mec_g_month_id + mec_current_day).trigger('click'); 3464 mec_owl_go.trigger('to.owl.carousel', mec_current_day); 3465 } 3466 }, 1000); 3467} 3468 3469// Focus events week 3470function mec_focus_week(id, skin) { 3471 skin = skin || 'weekly'; 3472 var wrap_elem = jQuery('.mec-weeks-container .mec-weekly-view-week-active').parent(); 3473 var days = wrap_elem.find('dt'); 3474 var week = wrap_elem.find('dl').length; 3475 var focus_week = false; 3476 var i = j = 1; 3477 3478 for (i = 1; i < week; i++) { 3479 setTimeout(function () { 3480 var event = new Event('click'); 3481 jQuery('#mec_skin_' + id + ' .mec-previous-month.mec-load-week')[0].dispatchEvent(event); 3482 }, 33); 3483 } 3484 3485 days.each(function (i) { 3486 if (jQuery(this).data('events-count') > 0) { 3487 if (focus_week === false) { 3488 focus_week = parseInt(jQuery(this).parent().data('week-number')); 3489 } 3490 3491 if (skin == 'timetable') { 3492 if (parseInt(jQuery(this).parent().data('week-number')) == parseInt(jQuery('body').data('currentweek'))) { 3493 focus_week = parseInt(jQuery(this).parent().data('week-number')); 3494 return false; 3495 } 3496 } 3497 else { 3498 return false; 3499 } 3500 } 3501 }); 3502 3503 if (focus_week !== false) { 3504 for (j = 1; j < focus_week; j++) { 3505 setTimeout(function () { 3506 var event = new Event('click'); 3507 jQuery('#mec_skin_' + id + ' .mec-next-month.mec-load-week')[0].dispatchEvent(event); 3508 }, 33); 3509 } 3510 } 3511} 3512 3513// TODO must be cleaned JS codes 3514(function ($) { 3515 $(document).ready(function () { 3516 // Check RTL website 3517 if ($('body').hasClass('rtl')) { 3518 var owl_rtl = true; 3519 } else { 3520 var owl_rtl = false; 3521 } 3522 3523 // MEC WIDGET CAROUSEL 3524 $(".mec-widget .mec-event-grid-classic").addClass('mec-owl-carousel mec-owl-theme'); 3525 $(".mec-widget .mec-event-grid-classic").owlCarousel({ 3526 autoplay: true, 3527 autoplayTimeout: 3000, // Set AutoPlay to 3 seconds 3528 autoplayHoverPause: true, 3529 loop: true, 3530 dots: false, 3531 nav: true, 3532 navText: ["<i class='mec-sl-arrow-left'></i>", " <i class='mec-sl-arrow-right'></i>"], 3533 items: 1, 3534 autoHeight: true, 3535 responsiveClass: true, 3536 rtl: owl_rtl, 3537 }); 3538 3539 // add mec-sm959 class if mec-wrap div size < 959 3540 mec_wrap_resize(); 3541 3542 jQuery(window).bind('resize', function () { 3543 mec_wrap_resize(); 3544 }); 3545 3546 // Fixed: social hover in iphone 3547 $('.mec-event-sharing-wrap').hover(function () { 3548 $(this).find('.mec-event-sharing').show(0); 3549 }, 3550 function () { 3551 $(this).find('.mec-event-sharing').hide(0); 3552 }); 3553 3554 // Register Booking Smooth Scroll 3555 $('a.simple-booking[href^="#mec-events-meta-group-booking"]').click(function () { 3556 if (location.pathname.replace(/^\//, '') == this.pathname.replace(/^\//, '') && location.hostname == this.hostname) { 3557 var target = $(this.hash); 3558 target = target.length ? target : $('[name=' + this.hash.slice(1) + ']'); 3559 3560 if (target.length) { 3561 var scrollTopVal = target.offset().top - 30; 3562 3563 $('html, body').animate({ 3564 scrollTop: scrollTopVal 3565 }, 600); 3566 3567 return false; 3568 } 3569 } 3570 }); 3571 3572 // Load Information widget under title in mobile/tablet 3573 if ($('.single-mec-events .mec-single-event:not(".mec-single-modern")').length > 0) { 3574 if ($('.single-mec-events .mec-event-info-desktop.mec-event-meta.mec-color-before.mec-frontbox').length > 0) { 3575 var html = $('.single-mec-events .mec-event-info-desktop.mec-event-meta.mec-color-before.mec-frontbox')[0].outerHTML; 3576 if (Math.max(document.documentElement.clientWidth, window.innerWidth || 0) < 960) { 3577 $('.single-mec-events .col-md-4 .mec-event-info-desktop.mec-event-meta.mec-color-before.mec-frontbox').remove(); 3578 $('.single-mec-events .mec-event-info-mobile').html(html) 3579 } 3580 } 3581 } 3582 3583 // Yearly view 3584 $('.mec-yearly-calendar .mec-has-event a').on('click', function(e) { 3585 e.preventDefault(); 3586 var des = $(this).attr('href'); 3587 $('.mec-events-agenda').removeClass('mec-selected'); 3588 $(des).closest('.mec-events-agenda').addClass('mec-selected'); 3589 var scrollTopVal = $(des).closest('.mec-events-agenda').offset().top - 35; 3590 3591 $('html, body').animate({ 3592 scrollTop: scrollTopVal 3593 }, 300); 3594 }); 3595 3596 });
3597})(jQuery); 3598 3599// Weather 3600(function ($) { 3601 // Convart fahrenheit to centigrade 3602 function convertToC(value) { 3603 return Math.round(((parseFloat(value) - 32) * 5 / 9)); 3604 } 3605 3606 // Convert centigrade to fahrenheit 3607 function convertToF(value) { 3608 return Math.round(((1.8 * parseFloat(value)) + 32)); 3609 } 3610 3611 // Convert miles to kilometers 3612 function MPHToKPH(value) { 3613 return Math.round(1.609344 * parseFloat(value)); 3614 } 3615 3616 // Convert kilometers to miles 3617 function KPHToMPH(value) { 3618 return Math.round((0.6214 * parseFloat(value))); 3619 } 3620 3621 $(document).ready(function ($) { 3622 var degree = $('.mec-weather-summary-temp'); 3623 var weather_extra = $('.mec-weather-extras'); 3624 var wind = weather_extra.children('.mec-weather-wind'); 3625 var visibility = weather_extra.children('.mec-weather-visibility'); 3626 3627 // Events 3628 $('.degrees-mode').click(function () { 3629 var degree_mode = degree.children('var').text().trim(); 3630 var wind_text = wind.text().substring(5); 3631 var visibility_text = visibility.text().substring(11); 3632 3633 if (degree_mode == degree.data('c').trim()) { 3634 degree.html(convertToF(parseInt(degree.text())) + ' <var>' + degree.data('f') + '</var>'); 3635 wind.html('<span>Wind:</span> ' + KPHToMPH(parseInt(wind_text)) + '<var>' + wind.data('mph') + '</var>'); 3636 visibility.html('<span>Visibility:</span> ' + KPHToMPH(parseInt(visibility_text)) + '<var>' + visibility.data('mph') + '</var>'); 3637 $(this).text($(this).data('metric')); 3638 } else if (degree_mode == degree.data('f').trim()) { 3639 degree.html(convertToC(parseInt(degree.text())) + ' <var>' + degree.data('c') + '</var>'); 3640 wind.html('<span>Wind:</span> ' + MPHToKPH(parseInt(wind_text)) + '<var>' + wind.data('kph') + '</var>'); 3641 visibility.html('<span>Visibility:</span> ' + MPHToKPH(parseInt(visibility_text)) + '<var>' + visibility.data('kph') + '</var>'); 3642 $(this).text($(this).data('imperial')); 3643 } 3644 }); 3645 3646 $('a').on('click', function () {}) 3647 3648 // FES Speakers Adding 3649 $('#mec_add_speaker_button').on('click', function () { 3650 var $this = this; 3651 var content = $($this).parent().find('input'); 3652 var list = $('#mec-fes-speakers-list'); 3653 var key = list.find('.mec-error').length; 3654 3655 $($this).prop("disabled", true).css('cursor', 'wait'); 3656 $.post(ajaxurl, { 3657 action: "speaker_adding", 3658 content: content.val(), 3659 key: key 3660 }) 3661 .done(function (data) { 3662 if ($(data).hasClass('mec-error')) { 3663 list.prepend(data); 3664 setTimeout(function () { 3665 $('#mec-speaker-error-${key}').remove(); 3666 }, 1500); 3667 } else { 3668 list.html(data); 3669 content.val(''); 3670 } 3671 3672 $($this).prop("disabled", false).css('cursor', 'pointer'); 3673 }); 3674 }); 3675 3676 // Check RTL website 3677 var owl_rtl = $('body').hasClass('rtl') ? true : false; 3678 3679 // MEC FES Date Wrappers 3680 var fes_export_list = $('.mec-export-list-wrapper'); 3681 3682 // MEC FES Date Item Event 3683 fes_export_list.find('.mec-export-list-item').click(function() 3684 { 3685 $('.mec-export-list-item').removeClass('fes-export-date-active'); 3686 $(this).addClass('fes-export-date-active'); 3687 }); 3688 3689 // MEC BuddyPress Integration Attendees Modules 3690 var mec_bd_attendees_modules = $('.mec-attendees-list-details > ul > li'); 3691 mec_bd_attendees_modules.click(function() 3692 { 3693 $(this).find('.mec-attendees-toggle').toggle(); 3694 }); 3695 3696 // MEC FES export csv 3697 $('.mec-event-export-csv, .mec-event-export-excel').click(function() 3698 { 3699 var mec_event_id = $(this).parent().parent().data('event-id'); 3700 var booking_data = $(this).parent().parent().find('.mec-fes-btn-date .mec-certain-user-booking-ids').val(); 3701 var certain_data = $(this).parent().parent().find('.fes-export-date-active').data('ids'); 3702 3703 if(typeof booking_data == 'undefined') booking_data = ','; 3704 if(typeof certain_data != 'undefined') booking_data = certain_data; 3705 3706 booking_data = booking_data.substr(0, booking_data.length -1); 3707 $.ajax({
3708 url: mecdata.ajax_url, 3709 data: "action=mec_fes_csv_export&fes_nonce=" + mecdata.fes_nonce + "&mec_event_id=" + mec_event_id + "&booking_ids=" + booking_data, 3710 dataType: 'json', 3711 type: "post", 3712 success: function (res) { 3713 if(res.ex != 'error') 3714 { 3715 var $csv = $('<a>'); 3716 $csv.attr('href', res.ex); 3717 $('body').append($csv); 3718 $csv.attr('download', 'bookings-' + res.name + '.csv'); 3719 $csv[0].click(); 3720 $csv.remove(); 3721 } 3722 }, 3723 error: function () {} 3724 }); 3725 }); 3726 }); 3727})(jQuery); 3728 3729function mec_book_form_submit(event, unique_id) 3730{ 3731 event.preventDefault(); 3732 window["mec_book_form_submit" + unique_id](); 3733} 3734 3735function mec_book_form_back_btn_cache(context, unique_id) 3736{ 3737 var id = jQuery(context).attr('id'); 3738 var mec_form_data = jQuery('#mec_book_form' + unique_id).serializeArray(); 3739 3740 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); 3741 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); 3742} 3743 3744function mec_agreement_change(context) 3745{ 3746 var status = jQuery(context).is(":checked") ? true : false; 3747 3748 if(status) jQuery(context).attr("checked", "checked"); 3749 else jQuery(context).removeAttr("checked"); 3750} 3751 3752function mec_book_form_back_btn_click(context, unique_id) 3753{ 3754 var id = jQuery(context).attr('id'); 3755 unique_id = jQuery('body').data('unique-id'); 3756 3757 jQuery('#mec_booking_message' + unique_id).hide(); 3758 if(id == "mec-book-form-back-btn-step-2") 3759 { 3760 var mec_form_data_step_1 = jQuery('body').data('mec-book-form-data-step-1'); 3761 3762 jQuery('#mec_booking' + unique_id).html(jQuery('body').data('mec-book-form-step-1')); 3763 jQuery.each(mec_form_data_step_1, function(index, object_item) 3764 { 3765 jQuery('[name="' + object_item.name + '"]').val(object_item.value); 3766 }); 3767 3768 // Booking Refresh Recaptcha When Back Button Click. 3769 var recaptcha_check = jQuery('#mec_booking' + unique_id).find('#g-recaptcha').length; 3770 if(recaptcha_check != 0) 3771 { 3772 jQuery('#g-recaptcha').html(''); 3773 grecaptcha.render("g-recaptcha", { 3774 sitekey: mecdata.recapcha_key 3775 }); 3776 } 3777 } 3778 else if(id == "mec-book-form-back-btn-step-3") 3779 { 3780 var mec_form_data_step_2 = jQuery('body').data('mec-book-form-data-step-2'); 3781 3782 jQuery('#mec_booking' + unique_id).html(jQuery('body').data('mec-book-form-step-2')); 3783 jQuery.each(mec_form_data_step_2, function(index, object_item) 3784 { 3785 var mec_elem = jQuery('[name="'+ object_item.name +'"]'); 3786 var mec_type = mec_elem.attr('type'); 3787 3788 if((mec_type == 'checkbox' || mec_type == 'radio')) 3789 { 3790 var mec_elem_len = jQuery('[name="'+ object_item.name +'"]').length; 3791 3792 if(mec_elem_len > 1) 3793 { 3794 var id = '#' + mec_elem.attr('id').match(/mec_book_reg_field_reg.*_/g) + object_item.value.toLowerCase(); 3795 jQuery(id).prop('checked', true); 3796 } 3797 else 3798 { 3799 mec_elem.prop('checked', true); 3800 } 3801 } 3802 3803 mec_elem.val(object_item.value); 3804 }); 3805 } 3806} 3807 3808// Google map Skin 3809function gmapSkin(NewJson) { 3810 var gmap_temp = jQuery("#gmap-data"); 3811 var beforeJson = gmap_temp.val(); 3812 if (typeof beforeJson === 'undefined') beforeJson = ''; 3813 3814 var newJson = NewJson; 3815 var jsonPush = (typeof beforeJson != 'undefined' && beforeJson.trim() == "") ? [] : JSON.parse(beforeJson); 3816 var pushState = jsonPush.length < 1 ? false : true; 3817 3818 for (var key in newJson) { 3819 if (pushState) {
3820 jsonPush.forEach(function (Item, Index) { 3821 var render_location = jsonPush[Index].latitude + "," + jsonPush[Index].longitude; 3822 if (key.trim() == render_location.trim()) { 3823 // LightBox Count Update 3824 newJson[key].count = newJson[key].count + jsonPush[Index].count; 3825 3826 // LightBox Ids Update 3827 newJson[key].event_ids = newJson[key].event_ids.concat(jsonPush[Index].event_ids); 3828 3829 // LightBox Initialize 3830 var dom = jQuery(newJson[key].lightbox).find("div:nth-child(2)"); 3831 var main_items = dom.html(); 3832 var new_items = jQuery(jsonPush[Index].lightbox).find("div:nth-child(2)").html(); 3833 3834 var render_items = dom.html(main_items + new_items).html(); 3835 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>'; 3836 newJson[key].lightbox = new_info_lightbox; 3837 3838 // LightBox info 3839 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>'; 3840 newJson[key].infowindow = new_info_window; 3841 3842 // Remove before values of this location 3843 jsonPush.splice(Index, 1); 3844 } 3845 }); 3846 } 3847 3848 jsonPush.push(newJson[key]); 3849 } 3850 3851 gmap_temp.val(JSON.stringify(jsonPush)); 3852 return jsonPush; 3853}
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.