jQuery(document).ready(function($){ var load_ui_css=false; $('#start-time').each(function(i, el){ $(el).addClass('em-time-input em-time-start').next('#end-time').addClass('em-time-input em-time-end').parent().addClass('em-time-range'); }); if($(".em-time-input").length > 0){ em_setup_timepicker('body'); } $('.em-calendar-wrapper a').off("click"); $('.em-calendar-wrapper').on('click', 'a.em-calnav, a.em-calnav', function(e){ e.preventDefault(); $(this).closest('.em-calendar-wrapper').prepend('
'); var url=em_ajaxify($(this).attr('href')); $(this).closest('.em-calendar-wrapper').load(url, function(){$(this).trigger('em_calendar_load');}); }); $(document).on('click change', '.em-toggle', function(e){ e.preventDefault(); var el=$(this); var rel=el.attr('rel').split(':'); if(el.hasClass('show-search')){ if(rel.length > 1){ el.closest(rel[1]).find(rel[0]).slideUp(); }else{ $(rel[0]).slideUp(); } el.find('.show, .show-advanced').show(); el.find('.hide, .hide-advanced').hide(); el.removeClass('show-search'); }else{ if(rel.length > 1){ el.closest(rel[1]).find(rel[0]).slideDown(); }else{ $(rel[0]).slideDown(); } el.find('.show, .show-advanced').hide(); el.find('.hide, .hide-advanced').show(); el.addClass('show-search'); }}); if(EM.search_term_placeholder){ if('placeholder' in document.createElement('input')){ $('input.em-events-search-text, input.em-search-text').attr('placeholder', EM.search_term_placeholder); }else{ $('input.em-events-search-text, input.em-search-text').blur(function(){ if(this.value=='') this.value=EM.search_term_placeholder; }).focus(function(){ if(this.value==EM.search_term_placeholder) this.value=''; }).trigger('blur'); }} $('.em-search-form select[name=country]').change(function(){ var el=$(this); $('.em-search select[name=state]').html(''); $('.em-search select[name=region]').html(''); $('.em-search select[name=town]').html(''); if(el.val()!=''){ el.closest('.em-search-location').find('.em-search-location-meta').slideDown(); var data={ action:'search_states', country:el.val(), return_html:true }; $('.em-search select[name=state]').load(EM.ajaxurl, data); data.action='search_regions'; $('.em-search select[name=region]').load(EM.ajaxurl, data); data.action='search_towns'; $('.em-search select[name=town]').load(EM.ajaxurl, data); }else{ el.closest('.em-search-location').find('.em-search-location-meta').slideUp(); }}); $('.em-search-form select[name=region]').change(function(){ $('.em-search select[name=state]').html(''); $('.em-search select[name=town]').html(''); var data={ action:'search_states', region:$(this).val(), country:$('.em-search-form select[name=country]').val(), return_html:true }; $('.em-search select[name=state]').load(EM.ajaxurl, data); data.action='search_towns'; $('.em-search select[name=town]').load(EM.ajaxurl, data); }); $('.em-search-form select[name=state]').change(function(){ $('.em-search select[name=town]').html(''); var data={ action:'search_towns', state:$(this).val(), region:$('.em-search-form select[name=region]').val(), country:$('.em-search-form select[name=country]').val(), return_html:true }; $('.em-search select[name=town]').load(EM.ajaxurl, data); }); $(document).on('submit', '.em-search-form, .em-events-search-form', function(e){ var form=$(this); if(this.em_search&&this.em_search.value==EM.txt_search){ this.em_search.value=''; } var results_wrapper=form.closest('.em-search-wrapper').find('.em-search-ajax'); if(results_wrapper.length==0) results_wrapper=$('.em-search-ajax'); if(results_wrapper.length > 0){ results_wrapper.append(''); var submitButton=form.find('.em-search-submit'); submitButton.data('buttonText', submitButton.val()).val(EM.txt_searching); var img=submitButton.children('img'); if(img.length > 0) img.attr('src', img.attr('src').replace('search-mag.png', 'search-loading.gif')); var vars=form.serialize(); $.ajax(EM.ajaxurl, { type:'POST', dataType:'html', data:vars, success:function(responseText){ submitButton.val(submitButton.data('buttonText')); if(img.length > 0) img.attr('src', img.attr('src').replace('search-loading.gif', 'search-mag.png')); results_wrapper.replaceWith(responseText); if(form.find('input[name=em_search]').val()==''){ form.find('input[name=em_search]').val(EM.txt_search); } results_wrapper=form.closest('.em-search-wrapper').find('.em-search-ajax'); if(results_wrapper.length==0) results_wrapper=$('.em-search-ajax'); jQuery(document).triggerHandler('em_search_ajax', [vars, results_wrapper, e]); }}); e.preventDefault(); return false; }}); if($('.em-search-ajax').length > 0){ $(document).on('click', '.em-search-ajax a.page-numbers', function(e){ var a=$(this); var data=a.closest('.em-pagination').attr('data-em-ajax'); var wrapper=a.closest('.em-search-ajax'); var wrapper_parent=wrapper.parent(); var qvars=a.attr('href').split('?'); var vars=qvars[1]; if(data!=''){ vars=vars!='' ? vars+'&'+data:data; } wrapper.append(''); $.ajax(EM.ajaxurl, { type:'POST', dataType:'html', data:vars, success:function(responseText){ wrapper.replaceWith(responseText); wrapper=wrapper_parent.find('.em-search-ajax'); jQuery(document).triggerHandler('em_search_ajax', [vars, wrapper, e]); }}); e.preventDefault(); return false; }); } $('.events-table').on('click', '.em-event-delete', function(){ if(!confirm("Are you sure you want to delete?")){ return false; } window.location.href=this.href; }); $('#event-form #event-image-delete, #location-form #location-image-delete').on('click', function(){ var el=$(this); if(el.is(':checked')){ el.closest('.event-form-image, .location-form-image').find('#event-image-img, #location-image-img').hide(); }else{ el.closest('.event-form-image, .location-form-image').find('#event-image-img, #location-image-img').show(); }}); $('#event-form.em-event-admin-recurring').submit(function(event){ var form=$(this); if(form.find('input[name="event_reschedule"]').first().val()==1){ var warning_text=EM.event_reschedule_warning; }else if(form.find('input[name="event_recreate_tickets"]').first().val()==1){ var warning_text=EM.event_recurrence_bookings; }else{ var warning_text=EM.event_recurrence_overwrite; } confirmation=confirm(warning_text); if(confirmation==false){ event.preventDefault(); }}); $('.em-reschedule-trigger').click(function(e){ e.preventDefault(); var trigger=$(this); trigger.closest('.em-recurrence-reschedule').find(trigger.data('target')).removeClass('reschedule-hidden'); trigger.siblings('.em-reschedule-value').val(1); trigger.addClass('reschedule-hidden').siblings('a').removeClass('reschedule-hidden'); }); $('.em-reschedule-cancel').click(function(e){ e.preventDefault(); var trigger=$(this); trigger.closest('.em-recurrence-reschedule').find(trigger.data('target')).addClass('reschedule-hidden'); trigger.siblings('.em-reschedule-value').val(0); trigger.addClass('reschedule-hidden').siblings('a').removeClass('reschedule-hidden'); }); if($("#em-tickets-form").length > 0){ $('#event-rsvp').click(function(event){ if(!this.checked){ confirmation=confirm(EM.disable_bookings_warning); if(confirmation==false){ event.preventDefault(); }else{ $('#event-rsvp-options').hide(); }}else{ $('#event-rsvp-options').fadeIn(); }}); if($('input#event-rsvp').is(":checked")){ $("div#rsvp-data").fadeIn(); }else{ $("div#rsvp-data").hide(); } var reset_ticket_forms=function(){ $('#em-tickets-form table tbody tr.em-tickets-row').show(); $('#em-tickets-form table tbody tr.em-tickets-row-form').hide(); }; if($('#em-recurrence-checkbox').length > 0){ $('#em-recurrence-checkbox').change(function(){ if($('#em-recurrence-checkbox').is(':checked')){ $('#em-tickets-form .ticket-dates-from-recurring, #em-tickets-form .ticket-dates-to-recurring, #event-rsvp-options .em-booking-date-recurring').show(); $('#em-tickets-form .ticket-dates-from-normal, #em-tickets-form .ticket-dates-to-normal, #event-rsvp-options .em-booking-date-normal, #em-tickets-form .hidden').hide(); }else{ $('#em-tickets-form .ticket-dates-from-normal, #em-tickets-form .ticket-dates-to-normal, #event-rsvp-options .em-booking-date-normal').show(); $('#em-tickets-form .ticket-dates-from-recurring, #em-tickets-form .ticket-dates-to-recurring, #event-rsvp-options .em-booking-date-recurring, #em-tickets-form .hidden').hide(); }}).trigger('change'); }else if($('#em-form-recurrence').length > 0){ $('#em-tickets-form .ticket-dates-from-recurring, #em-tickets-form .ticket-dates-to-recurring, #event-rsvp-options .em-booking-date-recurring').show(); $('#em-tickets-form .ticket-dates-from-normal, #em-tickets-form .ticket-dates-to-normal, #event-rsvp-options .em-booking-date-normal, #em-tickets-form .hidden').hide(); }else{ $('#em-tickets-form .ticket-dates-from-recurring, #em-tickets-form .ticket-dates-to-recurring, #event-rsvp-options .em-booking-date-recurring, #em-tickets-form .hidden').hide(); } $("#em-tickets-add").click(function(e){ e.preventDefault(); reset_ticket_forms(); var tickets=$('#em-tickets-form table tbody'); var rowNo=tickets.length+1; var slot=tickets.first('.em-ticket-template').clone(true).attr('id','em-ticket-'+ rowNo).removeClass('em-ticket-template').addClass('em-ticket').appendTo($('#em-tickets-form table')); slot.find('*[name]').each(function(index,el){ el=$(el); el.attr('name', el.attr('name').replace('em_tickets[0]','em_tickets['+rowNo+']')); }); slot.show().find('.ticket-actions-edit').trigger('click'); slot.find('.em-date-input-loc').datepicker('destroy').removeAttr('id'); slot.find('.em-time-input').unbind().each(function(index, el){ this.timePicker=false; }); em_setup_datepicker(slot); em_setup_timepicker(slot); $('html, body').animate({ scrollTop: slot.offset().top - 30 }); check_ticket_sortability(); }); $(document).on('click', '.ticket-actions-edit', function(e){ e.preventDefault(); reset_ticket_forms(); var tbody=$(this).closest('tbody'); tbody.find('tr.em-tickets-row').hide(); tbody.find('tr.em-tickets-row-form').fadeIn(); return false; }); $(document).on('click', '.ticket-actions-edited', function(e){ e.preventDefault(); var tbody=$(this).closest('tbody'); var rowNo=tbody.attr('id').replace('em-ticket-',''); tbody.find('.em-tickets-row').fadeIn(); tbody.find('.em-tickets-row-form').hide(); tbody.find('*[name]').each(function(index,el){ el=$(el); if(el.attr('name')=='ticket_start_pub'){ tbody.find('span.ticket_start').text(el.attr('value')); }else if(el.attr('name')=='ticket_end_pub'){ tbody.find('span.ticket_end').text(el.attr('value')); }else if(el.attr('name')=='em_tickets['+rowNo+'][ticket_type]'){ if(el.find(':selected').val()=='members'){ tbody.find('span.ticket_name').prepend('* '); }}else if(el.attr('name')=='em_tickets['+rowNo+'][ticket_start_recurring_days]'){ var text=tbody.find('select.ticket-dates-from-recurring-when').val()=='before' ? '-'+el.attr('value'):el.attr('value'); if(el.attr('value')!=''){ tbody.find('span.ticket_start_recurring_days').text(text); tbody.find('span.ticket_start_recurring_days_text, span.ticket_start_time').removeClass('hidden').show(); }else{ tbody.find('span.ticket_start_recurring_days').text(' - '); tbody.find('span.ticket_start_recurring_days_text, span.ticket_start_time').removeClass('hidden').hide(); }}else if(el.attr('name')=='em_tickets['+rowNo+'][ticket_end_recurring_days]'){ var text=tbody.find('select.ticket-dates-to-recurring-when').val()=='before' ? '-'+el.attr('value'):el.attr('value'); if(el.attr('value')!=''){ tbody.find('span.ticket_end_recurring_days').text(text); tbody.find('span.ticket_end_recurring_days_text, span.ticket_end_time').removeClass('hidden').show(); }else{ tbody.find('span.ticket_end_recurring_days').text(' - '); tbody.find('span.ticket_end_recurring_days_text, span.ticket_end_time').removeClass('hidden').hide(); }}else{ tbody.find('.'+el.attr('name').replace('em_tickets['+rowNo+'][','').replace(']','').replace('[]','')).text(el.attr('value')); }}); $(document).triggerHandler('em_maps_tickets_edit', [tbody, rowNo, true]); $('html, body').animate({ scrollTop: tbody.parent().offset().top - 30 }); return false; }); $(document).on('change', '.em-ticket-form select.ticket_type', function(e){ var el=$(this); if(el.find('option:selected').val()=='members'){ el.closest('.em-ticket-form').find('.ticket-roles').fadeIn(); }else{ el.closest('.em-ticket-form').find('.ticket-roles').hide(); }}); $(document).on('click', '.em-ticket-form .ticket-options-advanced', function(e){ e.preventDefault(); var el=$(this); if(el.hasClass('show')){ el.closest('.em-ticket-form').find('.em-ticket-form-advanced').fadeIn(); el.find('.show,.show-advanced').hide(); el.find('.hide,.hide-advanced').show(); }else{ el.closest('.em-ticket-form').find('.em-ticket-form-advanced').hide(); el.find('.show,.show-advanced').show(); el.find('.hide,.hide-advanced').hide(); } el.toggleClass('show'); }); $('.em-ticket-form').each(function(){ var show_advanced=false; var el=$(this); el.find('.em-ticket-form-advanced input[type="text"]').each(function(){ if(this.value!='') show_advanced=true; }); if(el.find('.em-ticket-form-advanced input[type="checkbox"]:checked').length > 0){ show_advanced=true; } el.find('.em-ticket-form-advanced option:selected').each(function(){ if(this.value!='') show_advanced=true; }); if(show_advanced) el.find('.ticket-options-advanced').trigger('click'); }); $(document).on('click', '.ticket-actions-delete', function(e){ e.preventDefault(); var el=$(this); var tbody=el.closest('tbody'); if(tbody.find('input.ticket_id').val() > 0){ el.text('Deleting...'); $.getJSON($(this).attr('href'), {'em_ajax_action':'delete_ticket', 'id':tbody.find('input.ticket_id').val()}, function(data){ if(data.result){ tbody.remove(); }else{ el.text('Delete'); alert(data.error); }}); }else{ tbody.remove(); } check_ticket_sortability(); return false; }); $('#em-tickets-form.em-tickets-sortable table').sortable({ items: '> tbody', placeholder: "em-ticket-sortable-placeholder", handle:'.ticket-status', helper: function(event, el){ var helper=$(el).clone().addClass('em-ticket-sortable-helper'); var tds=helper.find('.em-tickets-row td').length; helper.children().remove(); helper.append('