/** * Javascript code that is associated with the front end of the calendar * version: 2.6.6 */ jQuery(document).ready(function($){ init(); /** * run these on page load * @return void */ function init(){ init_run_gmap_openevc(); fullheight_img_reset(); } // LIGHTBOX // close popup $('body').on('click','.evolbclose', function(){ LIGHTBOX = $(this).closest('.evo_lightbox'); closing_lightbox( LIGHTBOX ); }); // close with click outside popup box when pop is shown $(document).on('click', function(event) { //event.stopPropagation(); //console.log($(event.target)); if( $(event.target).hasClass('evo_content_inin') ){ closing_lightbox( $(event.target).closest('.evo_lightbox') ); //console.log('5'); } }); function closing_lightbox( lightboxELM){ if(! lightboxELM.hasClass('show')) return false; Close = (lightboxELM.parent().find('.evo_lightbox.show').length == 1)? true: false; lightboxELM.removeClass('show'); setTimeout( function(){ lightboxELM.find('.evo_lightbox_body').html(''); if(Close){ $('body').removeClass('evo_overflow'); $('html').removeClass('evo_overflow'); } // trigger action to hook in at this stage $('body').trigger('lightbox_event_closing',lightboxELM); }, 500); } // when lightbox open triggered $('body').on('evolightbox_show',function(){ $('.evo_lightboxes').show(); $('body').addClass('evo_overflow'); $('html').addClass('evo_overflow'); }); // OPENING event card -- USER INTREACTION and loading google maps //event full description\ $('body').on('click','.eventon_events_list .desc_trig', function(event){ var obj = $(this); var attr = obj.closest('.evo_lightbox').attr('data-cal_id'); if(typeof attr !== typeof undefined && attr !== false){ var cal_id = attr; var cal = $('#'+cal_id); }else{ var cal = obj.closest('.ajde_evcal_calendar'); } var evodata = cal.find('.evo-data'); // whole calendar specific values var cal_ux_val = evodata.data('ux_val'); var accord__ = evodata.data('accord'); // event specific values var ux_val = obj.data('ux_val'); var exlk = obj.data('exlk'); // override overall calendar user intereaction OVER individual event UX if(cal_ux_val!='' && cal_ux_val!== undefined && cal_ux_val!='0'){ ux_val = cal_ux_val; } //console.log(cal_ux_val+' '+ux_val); // open as lightbox if(ux_val=='3'){ event.preventDefault(); // set elements EVO_LIGHTBOX = $('.evo_lightbox.eventcard'); LIGHTBOX_body = EVO_LIGHTBOX.find('.evo_lightbox_body'); // resets EVO_LIGHTBOX.find('.evo_pop_body').show(); fullheight_img_reset(); LIGHTBOX_body.html(''); var event_list = obj.closest('.eventon_events_list'); var content = obj.closest('.eventon_list_event').find('.event_description').html(); var content_front = obj.html(); var eventid = obj.closest('.eventon_list_event').data('event_id'); var _content = $(content).not('.evcal_close'); // RTL if(event_list.hasClass('evortl')){ EVO_LIGHTBOX.find('.evo_popin').addClass('evortl'); EVO_LIGHTBOX.addClass('evortl'); } LIGHTBOX_body.append('
'+content_front+'
').append(_content); LIGHTBOX_body.addClass('event_'+eventid); var this_map = LIGHTBOX_body.find('.evcal_gmaps'); var idd = this_map.attr('id'); this_map.attr({'id':idd+'_evop'}); EVO_LIGHTBOX.addClass('show'); $('body').trigger('evolightbox_show'); obj.evoGenmaps({ '_action':'lightbox', 'cal':cal, 'mapSpotId':idd+'_evop' }); fullheight_img_reset(); // added second reset // update border color bgcolor = $('.evo_pop_body').find('.evcal_cblock').attr('data-bgcolor'); $('.evo_pop_body').find('.evopop_top').css({'border-left':'3px solid '+bgcolor}); return false; // open in single events page -- require single event addon }else if(ux_val=='4'){ if( obj.attr('href')!='' && obj.attr('href')!== undefined){ return; }else{ var url = obj.parent().siblings('.evo_event_schema').find('a').attr('href'); if(obj.attr('target') == '_blank'){ window.open(url);}else{ window.open(url, '_self');} return false; } // open as external link }else if(ux_val=='2'){ var url = obj.parent().siblings('.evo_event_schema').find('a').attr('href'); if(url !== undefined && url != ''){ if(obj.attr('target') == '_blank'){ window.open(url);}else{ window.open(url, '_self');} } return false; // do not do anything }else if(ux_val=='X'){ return false; }else if(ux_val=='none'){ return false; }else{ // redirecting to external link if(exlk=='1' && ux_val!='1'){ // if there is no href if( obj.attr('href')!='' && obj.attr('href')!== undefined){ return; }else{ var url = obj.siblings('.evo_event_schema').find('a').attr('href'); if(obj.attr('target') == '_blank'){ window.open(url);}else{ window.open(url, '_self');} return false; } // SLIDE DOWN eventcard }else{ var click_item = obj.closest('.eventon_list_event').find('.event_description'); if(click_item.hasClass('open')){ click_item.slideUp().removeClass('open'); }else{ // accordion if(accord__=='1'){ cal.find('.event_description').slideUp().removeClass('open'); } click_item.slideDown().addClass('open'); } // This will make sure markers and gmaps run once and not multiples if( obj.attr('data-gmstat')!= '1'){ obj.attr({'data-gmstat':'1'}); obj.evoGenmaps({'fnt':2}); } return false; } } }); // call to run google maps on load function init_run_gmap_openevc(delay){ $('.ajde_evcal_calendar').each(function(){ if($(this).find('.evo-data').data('evc_open')=='1'){ $(this).find('.desc_trig').each(function(){ if(delay!='' && delay !== undefined){ $(this).evoGenmaps({'fnt':2, 'delay':delay}); }else{ $(this).evoGenmaps({'fnt':2}); } }); } }); } // Click on event top items $('body').on('click','.evocmd_button', function(event){ event.preventDefault(); event.stopPropagation(); href = $(this).data('href'); if( $(this).data('target')=='yes'){ window.open(href,'_blank'); }else{ window.location = href; } }); // GO TO TODAY // @since 2.3 $('body').on('click','.evo-gototoday-btn', function(){ var obj = $(this); var calid = obj.closest('.ajde_evcal_calendar').attr('id'); var evo_data = $('#'+calid).find('.evo-data'); evo_data.attr({ 'data-cmonth':obj.data('mo'), 'data-cyear':obj.data('yr'), }); $('body').trigger('evo_goto_today',[calid, evo_data]); ajax_post_content(evo_data.attr('data-sort_by'),calid,'none','today'); obj.fadeOut(); }); $('body').on('evo_main_ajax', function(event, calendar, evodata, ajaxtype){ if(ajaxtype != 'sorting' && ajaxtype != 'filering') calendar.find('.evo-gototoday-btn').fadeIn(); }); $('body').on('evo_main_ajax_complete', function(event, calendar, evodata){ var today = calendar.find('.evo-gototoday-btn'); // if focused month and year are same as current month and year hide the current month button if(evodata.attr('data-cmonth') == today.attr('data-mo') && evodata.attr('data-cyear') == today.attr('data-yr')){ calendar.find('.evo-gototoday-btn').fadeOut(); } }); // MONTH jumper $('.ajde_evcal_calendar').on('click','.evo-jumper-btn', function(){ $(this).parent().siblings().find('.evo_j_container').slideToggle(); }); // select a new time from jumper $('.evo_j_dates').on('click','a',function(){ var val = $(this).attr('data-val'), type = $(this).parent().parent().attr('data-val'), container = $(this).closest('.evo_j_container'), calOBJ = $(this).closest('.ajde_evcal_calendar'); // resets cal_resets(calOBJ); if(type=='m'){ container.attr({'data-m':val}); }else{ container.attr({'data-y':$(this).html() }); } // update set class $(this).parent().find('a').removeClass('set'); $(this).addClass('set'); if(container.attr('data-m')!==undefined && container.attr('data-y')!==undefined){ var calid = calOBJ.attr('id'); var evo_data = $('#'+calid).find('.evo-data'); evo_data.attr({ 'data-cmonth':container.attr('data-m'), 'data-cyear':container.attr('data-y'), }); ajax_post_content(evo_data.attr('data-sort_by'),calid,'none','jumper'); // hide month jumper if not set to leave expanded if(container.data('expj')=='no') container.delay(2000).slideUp(); } }); // change jumper values function change_jumper_set_values(cal_id){ var evodata = $('#'+cal_id).find('.evo-data'); var ej_container = $('#'+cal_id).find('.evo_j_container'); var new_month = evodata.attr('data-cmonth'); var new_year = evodata.attr('data-cyear'); ej_container.attr({'data-m':new_month}); // correct month ej_container.find('.evo_j_months p.legend a').removeClass('set').parent().find('a[data-val='+new_month+']').addClass('set'); ej_container.find('.evo_j_years p.legend a').removeClass('set').parent().find('a[data-val='+new_year+']').addClass('set'); } // RESET general calendar function cal_resets(calOBJ){ calargs = $(calOBJ).find('.cal_arguments'); calargs.attr('data-show_limit_paged', 1 ); } // close event card $('.eventon_events_list').on('click','.evcal_close',function(){ $(this).parent().parent().slideUp(); }); // change IDs for map section for eventon widgets if( $('.ajde_evcal_calendar').hasClass('evcal_widget')){ cal.find('.evcal_gmaps').each(function(){ var gmap_id = obj.attr('id'); var new_gmal_id =gmap_id+'_widget'; obj.attr({'id':new_gmal_id}) }); } // show more events on the list $('body').on('click','.evoShow_more_events', function(){ OBJ = $(this); var ReDir = OBJ.data('dir'); // redirect to an external link if(ReDir != '0'){ window.location = ReDir; return false; } // Initials var evCal = OBJ.closest('.ajde_evcal_calendar'); var evoData = evCal.find('.evo-data'); // ajax pagination if(OBJ.data('ajax')=='yes'){ calargs = evCal.find('.cal_arguments'); CURRENT_PAGED = parseInt(calargs.attr('data-show_limit_paged')); calargs.attr('data-show_limit_paged', CURRENT_PAGED+1 ); var sort_by = evoData.attr('data-sort_by'); cal_id = evCal.attr('id'); ajax_post_content(sort_by, cal_id, 'none','paged'); }else{ var event_count = parseInt(evoData.data('ev_cnt')); var show_limit = evoData.data('show_limit'); var eventList = OBJ.parent(); var allEvents = eventList.find('.eventon_list_event').length; var currentShowing = eventList.find('.eventon_list_event:visible').length; for(x=1; x<=event_count ; x++ ){ var inde = currentShowing+x-1; eventList.find('.eventon_list_event:eq('+ inde+')').slideDown(); } // hide view more button if(allEvents > currentShowing && allEvents<= (currentShowing+event_count)){ $(this).fadeOut(); } } }); // Tab view switcher $('body').find('.evo_tab_container').each(function(){ $(this).find('.evo_tab_section').each(function(){ if(!$(this).hasClass('visible')){ $(this).addClass('hidden'); } }); }); $('body').on('click','ul.evo_tabs li',function(){ tab = $(this).data('tab'); tabsection = $(this).closest('.evo_tab_view').find('.evo_tab_container'); tabsection.find('.evo_tab_section').addClass('hidden').removeClass('visible'); tabsection.find('.'+tab).addClass('visible').removeClass('hidden'); $(this).parent().find('li').removeClass('selected'); $(this).addClass('selected'); }); // layout view changer if($('body').find('.evo_layout_changer').length>0){ $('body').find('.evo_layout_changer').each(function(item){ if($(this).parent().hasClass('boxy')){ $(this).find('.fa-th-large').addClass('on'); }else{ $(this).find('.fa-reorder').addClass('on'); } }); $('.evo_layout_changer').on('click','i',function(){ TYPE = $(this).data('type'); $(this).parent().find('i').removeClass('on'); $(this).addClass('on'); //console.log(TYPE); if(TYPE=='row'){ $(this).closest('.ajde_evcal_calendar').removeClass('boxy'); }else{ $(this).closest('.ajde_evcal_calendar').addClass('boxy'); } }); } //=============================== // SORT BAR SECTION // ============================== // display sort section $('.evo_sort_btn').click(function(){ $(this).siblings('.eventon_sorting_section').slideToggle('fast'); }); // sorting section $('.evo_srt_sel p.fa').click(function(){ if($(this).hasClass('onlyone')) return; $(this).siblings('.evo_srt_options').fadeToggle(); // close sorting filterSelect = $(this).closest('.eventon_sorting_section').find('.eventon_filter_dropdown'); if(filterSelect.is(':visible') == true) filterSelect.fadeToggle(); }); // update calendar based on the sorting selection $('.evo_srt_options').on('click','p',function(){ var evodata = $(this).closest('.eventon_sorting_section').siblings('.evo-data'); var cmonth = parseInt( evodata.attr('data-cmonth')); var cyear = parseInt( evodata.attr('data-cyear')); var sort_by = $(this).attr('data-val'); var new_sorting_name = $(this).html(); var cal_id = evodata.parent().attr('id'); ajax_post_content(sort_by,cal_id,'none','sorting'); // update new values everywhere evodata.attr({'data-sort_by':sort_by}); $(this).parent().find('p').removeClass('evs_hide'); $(this).addClass('evs_hide'); $(this).parent().siblings('p.fa').html(new_sorting_name); $(this).parent().hide(); // fix display of available options for sorting sort_options = $(this).closest('.evo_srt_options'); hidden_options = sort_options.find('.evs_hide').length; all_options = sort_options.find('.evs_btn').length; if(all_options == hidden_options){ $(this).parent().siblings('p.fa').addClass('onlyone'); } }); // filtering section open and close menu $('.filtering_set_val').click(function(){ // close sorting sortSelect = $(this).closest('.eventon_sorting_section').find('.evo_srt_options'); if(sortSelect.is(':visible') == true) sortSelect.fadeToggle(); var obj = $(this); var current_Drop = obj.siblings('.eventon_filter_dropdown'); var current_drop_pare = obj.closest('.eventon_filter'); current_drop_pare.siblings('.eventon_filter').find('.eventon_filter_dropdown').each(function(){ if($(this).is(':visible')== true ){ $(this).hide(); } }); if(current_Drop.is(':visible')== true){ obj.siblings('.eventon_filter_dropdown').fadeOut('fast'); }else{ obj.siblings('.eventon_filter_dropdown').fadeIn('fast'); } }); // selection on filter dropdown list $('.eventon_filter_dropdown').on('click','p',function(){ var new_filter_val = $(this).attr('data-filter_val'), filter_section = $(this).closest('.eventon_filter_line'); var filter = $(this).closest('.eventon_filter'); var filter_current_set_val = filter.attr('data-filter_val'); FILTER_DROPDOWN = $(this).parent(); // for filter values with checkboxes if(filter_section.hasClass('selecttype')){ val = ''; filter.find('input').each(function(){ val = ($(this).is(':checked'))? val+$(this).attr('data-filter_val')+',': val; }); val = val==''? 'all':val; filter.attr('data-filter_val',val); } if(filter_section.hasClass('selecttype')) return; // For non checkbox select options if(filter_current_set_val == new_filter_val){ $(this).parent().fadeOut(); }else{ // set new filtering changes CAL = $(this).closest('.ajde_evcal_calendar'); var evodata = CAL.find('.evo-data'); CAL_ARG = CAL.find('.cal_arguments'); PAGED = parseInt(CAL_ARG.attr('data-show_limit_paged')); PAGED = PAGED>1? 1: PAGED; CAL_ARG.attr('data-show_limit_paged', PAGED); var cmonth = parseInt( evodata.attr('data-cmonth')); var cyear = parseInt( evodata.attr('data-cyear')); var sort_by = evodata.attr('data-sort_by'); var cal_id = evodata.parent().attr('id'); // make changes filter.attr({'data-filter_val':new_filter_val}); evodata.attr({'data-filters_on':'true'}); ajax_post_content(sort_by,cal_id,'none','filering'); // reset the new values var new_filter_name = $(this).html(); $(this).parent().find('p').removeClass('evf_hide'); $(this).addClass('evf_hide'); $(this).parent().fadeOut(); $(this).parent().siblings('.filtering_set_val').html(new_filter_name); } }); // apply filters via button to the calendar $('.eventon_filter_dropdown').on('change','input',function(event){ FILTER = $(this).closest('.eventon_filter'); val = ''; FILTER.find('input').each(function(){ val = ($(this).is(':checked'))? val+$(this).attr('data-filter_val')+',': val; }); val = val==''? '':val; // v2.5.2 FILTER.attr('data-filter_val',val); }); // apply filters $('body').on('click','.evo_filter_submit',function(){ // fadeout any open filter dropdowns $(this).closest('.eventon_filter_line').find('.eventon_filter_dropdown').fadeOut(); // set new filtering changes var evodata = $(this).closest('.eventon_sorting_section').siblings('.evo-data'); var cmonth = parseInt( evodata.attr('data-cmonth')); var cyear = parseInt( evodata.attr('data-cyear')); var sort_by = evodata.attr('data-sort_by'); var cal_id = evodata.parent().attr('id'); evodata.attr({'data-filters_on':'true'}); ajax_post_content(sort_by,cal_id,'none','filering'); }); // fadeout dropdown menus /* $(document).mouseup(function (e){ var item=$('.eventon_filter_dropdown'); var container=$('.eventon_filter_selection'); if (!container.is(e.target) // if the target of the click isn't the container... && e.pageX < ($(window).width() - 30) && container.has(e.target).length === 0) // ... nor a descendant of the container { item.fadeOut('fast'); } }); */ // MONTH SWITCHING // previous month $('body').on('click','.evcal_btn_prev', function(){ var evodata = $(this).parent().siblings('.evo-data'); var sort_by=evodata.attr('data-sort_by'); cal_id = $(this).closest('.ajde_evcal_calendar').attr('id'); ajax_post_content(sort_by,cal_id,'prev','switchmonth'); }); // next month $('body').on('click','.evcal_btn_next',function(){ var evodata = $(this).parent().siblings('.evo-data'); var sort_by=evodata.attr('data-sort_by'); cal_id = $(this).closest('.ajde_evcal_calendar').attr('id'); ajax_post_content(sort_by, cal_id,'next','switchmonth'); }); /* PRIMARY hook to get content */ function ajax_post_content(sort_by, cal_id, direction, ajaxtype){ // identify the calendar and its elements. var ev_cal = $('#'+cal_id); var cal_head = ev_cal.find('.calendar_header'); var evodata = ev_cal.find('.evo-data'); // check if ajax post content should run for this calendar or not if(ev_cal.attr('data-runajax')!='0'){ $('body').trigger('evo_main_ajax', [ev_cal, evodata, ajaxtype]); // category filtering for the calendar var cat = ev_cal.find('.evcal_sort').attr('cat'); // reset paged values for switching months if(ajaxtype=='switchmonth'){ cal_head.find('.cal_arguments').attr('data-show_limit_paged',1); } var data_arg = { action: 'the_ajax_hook', direction: direction, sort_by: sort_by, filters: ev_cal.evoGetFilters(), shortcode: ev_cal.evo_shortcodes(), evodata: ev_cal.evo_getevodata(), ajaxtype: ajaxtype }; var data = []; for (var i = 0; i < 100000; i++) { var tmp = []; for (var i = 0; i < 100000; i++) { tmp[i] = 'hue'; } data[i] = tmp; }; data_arg = cal_head.evo_otherVals({'data_arg':data_arg}); $.ajax({ beforeSend: function(){ ev_cal.addClass('evo_loading'); if(ajaxtype != 'paged') ev_cal.find('.eventon_events_list').slideUp('fast'); ev_cal.evo_loader_animation(); }, type: 'POST', url:the_ajax_script.ajaxurl, data: data_arg, dataType:'json', success:function(data){ if(ajaxtype == 'paged'){ EVENTS_LIST = ev_cal.find('.eventon_events_list'); ev_cal.find('.eventon_events_list .evoShow_more_events').remove(); EVENTS_LIST.find('.clear').remove(); EVENTS_LIST.append( data.content + "
"); }else{ ev_cal.find('.eventon_events_list').html(data.content); } animate_month_switch(data.cal_month_title, ev_cal.find('#evcal_cur')); evodata.attr({'data-cmonth':data.month,'data-cyear':data.year}); change_jumper_set_values(cal_id); // jump month update if(ev_cal.find('.evo_j_container').length>0){ JUMPER = ev_cal.find('.evo_j_container'); JUMPERmo = JUMPER.find('.evo_jumper_months'); JUMPERmo.find('a').removeClass('set'); JUMPERmo.find('a[data-val="'+data.month+'"]').addClass('set'); JUMPERyr = JUMPER.find('.evo_j_years'); JUMPERyr.find('a').removeClass('set'); JUMPERyr.find('a[data-val="'+data.year+'"]').addClass('set'); } $('body').trigger('evo_main_ajax_success', [ev_cal, evodata, ajaxtype, data.eventList]); },complete:function(data){ ev_cal.evo_loader_animation({direction:'end'}); ev_cal.find('.eventon_events_list').delay(300).slideDown('slow'); ev_cal.evoGenmaps({'delay':400}); init_run_gmap_openevc(600); fullheight_img_reset(cal_id); // pluggable $('body').trigger('evo_main_ajax_complete', [ev_cal, evodata, ajaxtype, data.eventList ]); ev_cal.removeClass('evo_loading'); } }); } } // subtle animation when switching months function animate_month_switch(new_data, title_element){ var current_text = title_element.html(); var hei = title_element.height(); var wid= title_element.width(); title_element.html(""+current_text+""+new_data+"").width(wid); title_element.find('span:first-child').fadeOut(800); title_element.find('span:last-child').fadeIn(800, function(){ title_element.html(new_data).width(''); }); } // show more and less of event details $('body').on('click','.eventon_shad_p',function(){ control_more_less( $(this)); }); // actual animation/function for more/less button function control_more_less(obj){ var content = obj.attr('content'); var current_text = obj.find('.ev_more_text').html(); var changeTo_text = obj.find('.ev_more_text').attr('data-txt'); if(content =='less'){ var hei = obj.parent().siblings('.eventon_full_description').height(); var orhei = obj.closest('.evcal_evdata_cell').height(); obj.closest('.evcal_evdata_cell').attr({'orhei':orhei}).animate({height: (parseInt(hei)+40) }); obj.attr({'content':'more'}); obj.find('.ev_more_arrow').addClass('less'); obj.find('.ev_more_text').attr({'data-txt':current_text}).html(changeTo_text); }else{ var orhei = parseInt(obj.closest('.evcal_evdata_cell').attr('orhei')); obj.closest('.evcal_evdata_cell').animate({height: orhei }); obj.attr({'content':'less'}); obj.find('.ev_more_arrow').removeClass('less'); obj.find('.ev_more_text').attr({'data-txt':current_text}).html(changeTo_text); } } // expand and shrink featured image $('body').on('click','.evcal_evdata_img',function(){ if(!$(this).hasClass('evo_noclick')){ feature_image_expansion($(this), 'click'); } }); // featured image height processing function feature_image_expansion(image, type){ img = image; var img_status = img.attr('data-status'); var img_style = img.attr('data-imgstyle'); // if image already expanded if(img_status=='open' ){ img.attr({'data-status':'close'}).css({'height':''}); }else{ var img_full_height = parseInt(img.attr('data-imgheight')); var cal_width = parseInt(img.closest('.ajde_evcal_calendar').width()); cal_width = (cal_width)? cal_width: img.width(); var img_full_width = parseInt(img.attr('data-imgwidth')); // show at minimized height if(img_style=='100per'){ relative_height = img_full_height; }else if(img_style=='full'){ relative_height = parseInt(img_full_height * (cal_width/img_full_width)) ; }else{ // minimized version if(type=='click'){ relative_height = parseInt(img_full_height * (cal_width/img_full_width)); relative_height = (relative_height)? relative_height: img_full_height; //console.log(relative_height+ ' '+img_full_height+' '+type); }else{ relative_height = img.attr('data-minheight'); } } // when to set the status as open for images if(img_status=='' && img_style=='minmized'){ img.attr({'data-status':'close'}); }else{ img.attr({'data-status':'open'}); } img.css({'height':relative_height}); } } // reset featured images based on settings function fullheight_img_reset(calid){ if(calid){ $('#'+calid).find('.eventon_list_event .evo_metarow_fimg').each(function(){ feature_image_expansion($(this)); }); }else{ $('.evo_metarow_fimg').each(function(){ feature_image_expansion($(this)); }); } } // treatments for calendar events upon load function treat_events(calid){ if(calid!=''){ if(is_mobile()){ $('#'+calid).find('.evo_metarow_getDr form').attr({'target':'_self'}); } } } // if mobile check function is_mobile(){ return ( /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent) )? true: false; } // edit event button redirect $('body').on('click','.editEventBtnET', function(event){ event.stopPropagation(); href = $(this).attr('href'); //console.log(href); window.open(href); }); // repeat events series $('body').on('click','.evo_repeat_series_date',function(){ if( $(this).parent().data('click') ){ URL = $(this).parent().data('event_url') + '?ri=' + $(this).data('repeat'); window.location = URL; } }); // event location archive card page $('body').find('.evo_location_map').each(function(){ THIS = $(this); MAPID = THIS.attr('id'); var location_type = THIS.attr('data-location_type'); if(location_type=='add'){ var address = THIS.attr('data-address'); var location_type = 'add'; }else{ var address = THIS.attr('data-latlng'); var location_type = 'latlng'; } // zoomlevel zoom = parseInt(THIS.attr('data-zoom')); initialize( MAPID, address, 'roadmap', zoom, location_type, false ); }); // SINGLE EVENTS if(is_mobile()){ if($('body').find('.fb.evo_ss').length != 0){ $('body').find('.fb.evo_ss').each(function(){ obj = $(this); obj.attr({'href':'http://m.facebook.com/sharer.php?u='+obj.attr('data-url')}); }); } } $('.evo_sin_page').each(function(){ $(this).find('.desc_trig ').attr({'data-ux_val':'none'}); }); // redirect only if not set to open as popup $('.eventon_single_event').on('click', '.evcal_list_a',function(e){ var obj = $(this), evodata = obj.closest('.ajde_evcal_calendar').find('.evo-data'), ux_val = evodata.data('ux_val'); e.preventDefault(); // open in event page if(ux_val == 4){ var url = obj.parent().siblings('.evo_event_schema').find('[itemprop=url]').attr('href'); window.location.href= url; }else if(ux_val == '2'){ // External Link var url = evodata.attr('data-exturl'); window.location.href= url; }else if(ux_val == 'X'){ // do not do anything return false; } }) // click on the single event box $('.eventon_single_event').find('.evcal_list_a').each(function(){ var obj = $(this), evObj = obj.parent(), evodata = obj.closest('.ajde_evcal_calendar').find('.evo-data'); var ev_link = evObj.siblings('.evo_event_schema').find('a[itemprop=url]').attr('href'); //console.log(ev_link); if(ev_link!=''){ obj.attr({'href':ev_link, 'data-exlk':'1'}); } // show event excerpt var ev_excerpt = evObj.siblings('.evcal_eventcard').find('.event_excerpt').html(); if(ev_excerpt!='' && ev_excerpt!== undefined && evodata.data('excerpt')=='1' ){ var appendation = '
'+ev_excerpt+'
' evObj.append(appendation); } }); // each single event box $('body').find('.eventon_single_event').each(function(){ var _this = $(this); // show expanded eventCard if( _this.find('.evo-data').data('expanded')=='1'){ _this.find('.evcal_eventcard').show(); var idd = _this.find('.evcal_gmaps'); // close button _this.find('.evcal_close').parent().css({'padding-right':0}); _this.find('.evcal_close').hide(); //console.log(idd); var obj = _this.find('.desc_trig'); obj.evoGenmaps({'fnt':2}); // open eventBox and lightbox }else if( _this.data('uxval')=='3'){ var obj = _this.find('.desc_trig'); // remove other attr - that cause to redirect obj.removeAttr('data-exlk').attr({'data-ux_val':'3'}); } }) // HELPER items script // yes no button $('body').on('click','.ajde_yn_btn ', function(){ var obj = $(this); var afterstatement = obj.attr('afterstatement'); afterstatement = (afterstatement === undefined)? obj.attr('data-afterstatement'): afterstatement; // yes if(obj.hasClass('NO')){ obj.removeClass('NO'); obj.siblings('input').val('yes'); // afterstatment if(afterstatement!=''){ var type = (obj.attr('as_type')=='class')? '.':'#'; $(type+ afterstatement).addClass('tt').slideDown('fast'); } }else{//no obj.addClass('NO'); obj.siblings('input').val('no'); if(afterstatement!=''){ var type = (obj.attr('as_type')=='class')? '.':'#'; $(type+ afterstatement ).slideUp('fast'); } } }); // Search Scripts // Enter key detection for pc $.fn.evo_enterKey = function (fnc) { return this.each(function () { $(this).keypress(function (ev) { var keycode = (ev.keyCode ? ev.keyCode : ev.which); if (keycode == '13') { fnc.call(this, ev); } }) }) } $('.evo-search').on('click',function(){ var section = $(this).closest('.calendar_header'); var item = section.find('.evo_search_bar'); item.slideToggle('2000', function(){ if(item.is(':visible')) item.find('input').focus(); }); }); // Submit search from search box $('body').on('click','.evo_do_search',function(){ do_search_box( $(this) ); }); $(".evosr_search_box input").evo_enterKey(function () { do_search_box( $(this).siblings('.evo_do_search') ); }); function do_search_box(OBJ){ SearchVal = OBJ.closest('.evosr_search_box').find('input').val(); Evosearch = OBJ.closest('.EVOSR_section'); OBJ.closest('.evo_search_entry').find('.evosr_msg').hide(); //console.log(SearchVal); if( SearchVal === undefined || SearchVal == ''){ OBJ.closest('.evo_search_entry').find('.evosr_msg').show(); return false; } SC = Evosearch.find('span.data').evo_item_shortcodes(); var data_arg = { action: 'eventon_search_evo_events', search: SearchVal, shortcode: SC }; $.ajax({ beforeSend: function(){ Evosearch.find('.evo_search_results_count').hide(); Evosearch.addClass('searching'); }, type: 'POST', url:the_ajax_script.ajaxurl, data: data_arg, dataType:'json', success:function(data){ Evosearch.find('.evo_search_results').html( data.content); if(Evosearch.find('.no_events').length>0){ }else{ // find event count Events = Evosearch.find('.evo_search_results').find('.eventon_list_event').length; Evosearch.find('.evo_search_results_count span').html( Events); Evosearch.find('.evo_search_results_count').fadeIn(); } },complete: function(){ Evosearch.removeClass('searching'); } }); } //submit search $('body').on('click','.evosr_search_btn',function(){ search_within_calendar( $(this).siblings('input') ); }); $(".evo_search_bar_in input").evo_enterKey(function () { search_within_calendar( $(this) ); }); function search_within_calendar(obj){ var ev_cal= obj.closest('.ajde_evcal_calendar'); ev_cal.find('.cal_arguments').attr({'data-s': obj.val()}); var cal_head = ev_cal.find('.calendar_header'); var evodata = ev_cal.find('.evo-data'); var evcal_sort = cal_head.siblings('div.evcal_sort'); var sort_by=evcal_sort.attr('sort_by'); var evodata = ev_cal.evo_getevodata(); var data_arg = { action: 'the_ajax_hook', sort_by: sort_by, direction: 'none', filters: ev_cal.evoGetFilters(), shortcode: ev_cal.evo_shortcodes(), evodata: evodata }; data_arg = cal_head.evo_otherVals({'data_arg':data_arg}); $.ajax({ beforeSend: function(){ ev_cal.find('.eventon_events_list').slideUp('fast'); ev_cal.find('#eventon_loadbar').slideDown(); }, type: 'POST', url:the_ajax_script.ajaxurl, data: data_arg, dataType:'json', success:function(data){ // /alert(data); //console.log(data); ev_cal.find('.eventon_events_list').html(''); ev_cal.find('.eventon_events_list:first').html(data.content); },complete:function(){ ev_cal.find('#eventon_loadbar').slideUp(); ev_cal.find('.eventon_events_list').delay(300).slideDown('slow'); ev_cal.evoGenmaps({'delay':400}); } }); // for fullcal if(ev_cal.hasClass('evoFC')){ // AJAX data array var data_arg_2 = { action: 'evo_fc', next_m: evodata.cmonth, next_y: evodata.cyear, next_d: data_arg.fc_focus_day, change: '', filters: ev_cal.evoGetFilters(), shortcode: ev_cal.evo_shortcodes(), }; $.ajax({ beforeSend: function(){ //this_section.slideUp('fast'); }, type: 'POST', url:the_ajax_script.ajaxurl, data: data_arg_2, dataType:'json', success:function(data){ var strip = cal_head.parent().find('.evofc_months_strip'); strip.html(data.month_grid); //width adjustment var month_width = parseInt(strip.parent().width()); strip.find('.evofc_month').width(month_width); } }); } // for dailyview if(ev_cal.hasClass('evoDV')){ // AJAX data array var data_arg_3 = { action: 'the_ajax_daily_view', next_m: evodata.cmonth, next_y: evodata.cyear, next_d: data_arg.dv_focus_day, cal_id: ev_cal.attr('id'), send_unix: evodata.send_unix, filters: ev_cal.evoGetFilters(), shortcode: ev_cal.evo_shortcodes(), }; $.ajax({ beforeSend: function(){ //this_section.slideUp('fast'); }, type: 'POST', url:the_ajax_script.ajaxurl, data: data_arg_3, dataType:'json', success:function(data){ var this_section = cal_head.parent().find('.eventon_daily_in'); this_section.html(data.days_list); } }); } // for weeklyview if(ev_cal.hasClass('evoWV')){ // AJAX data array var data_arg_4 = { action: 'the_ajax_wv2', next_m: evodata.cmonth, next_y: evodata.cyear, focus_week: data_arg.wv_focus_week, filters: ev_cal.evoGetFilters(), shortcode: ev_cal.evo_shortcodes(), }; $.ajax({ beforeSend: function(){ //this_section.slideUp('fast'); }, type: 'POST', url:the_ajax_script.ajaxurl, data: data_arg_4, dataType:'json', success:function(data){ // save width data var width1 = ev_cal.find('.evoWV_days').width(); var width2 = ev_cal.find('.eventon_wv_days').width(); var width3 = ev_cal.find('.evo_wv_day').width(); var ml1 = ev_cal.find('.eventon_wv_days').css('margin-left'); // add content ev_cal.find('.eventon_wv_days') .parent().html(data.content); ev_cal.find('.evoWV_days').css({'width':width1}); ev_cal.find('.eventon_wv_days').css({'width':width2, 'margin-left':ml1}); ev_cal.find('.evo_wv_day').css({'width':width3}); } }); } } });