0,'show_image'=>'true','show_meta'=>'true','show_content'=>'true','show_gallery'=>'true','show_tickets'=>'true'],$atts,'evqra_single_event');$id=absint($atts['id']);if(!$id||get_post_type($id)!=='evqra_event'||get_post_status($id)!=='publish')return '
'.esc_html__('Event not found or not published.','eventqora').'
';$event=get_post($id);$date=get_post_meta($id,'_evqra_event_date',true);$start=get_post_meta($id,'_evqra_event_start_time',true)?:get_post_meta($id,'_evqra_event_time',true);$end=get_post_meta($id,'_evqra_event_end_time',true);$venue_id=absint(get_post_meta($id,'_evqra_event_venue_id',true));$organizer_id=absint(get_post_meta($id,'_evqra_event_organizer_id',true));$categories=wp_get_post_terms($id,'evqra_event_category');ob_start();echo '';if(evqra_sc_bool($atts['show_image'],true)&&has_post_thumbnail($id))echo ''.get_the_post_thumbnail($id,'large',['loading'=>'lazy']).'
';echo ''.esc_html(get_the_title($id)).'
';if(evqra_sc_bool($atts['show_meta'],true)){echo '';}if(evqra_sc_bool($atts['show_content'],true))echo ''.wp_kses_post(apply_filters('the_content',$event->post_content)).'
';if(evqra_sc_bool($atts['show_gallery'],true)){$gallery=get_post_meta($id,'_evqra_event_gallery',true);$ids=array_filter(array_map('absint',is_array($gallery)?$gallery:explode(',',(string)$gallery)));if($ids){echo ''.esc_html__('Gallery','eventqora').'
';}}if(evqra_sc_bool($atts['show_tickets'],true)&&class_exists('EVQRA_Ticket_Inventory')){$rows=EVQRA_Ticket_Inventory::all_for_event($id);if($rows){echo ''.esc_html__('Tickets','eventqora').'
';foreach($rows as $row){$available=max(0,(int)$row->available);echo '
'.esc_html($row->ticket_key).''.esc_html(sprintf(_n('%d available','%d available',$available,'eventqora'),absint($available))).'
';}echo '
';}}echo '';return ob_get_clean();}
function evqra_sc_event_details($atts=[]){return evqra_sc_single_event($atts);}
function evqra_sc_single_directory_item($atts,$post_type,$shortcode){evqra_sc_page_assets();$atts=shortcode_atts(['id'=>0,'show_content'=>'true'],$atts,$shortcode);$id=absint($atts['id']);if(!$id||get_post_type($id)!==$post_type||get_post_status($id)!=='publish')return ''.esc_html__('Item not found or not published.','eventqora').'
';$post=get_post($id);ob_start();echo '';if(has_post_thumbnail($id))echo ''.get_the_post_thumbnail($id,'large',['loading'=>'lazy']).'
';echo ''.esc_html(get_the_title($id)).'
';if($post_type==='evqra_venue'){$address=implode(', ',array_filter([get_post_meta($id,'_evqra_venue_address',true),get_post_meta($id,'_evqra_venue_city',true),get_post_meta($id,'_evqra_venue_state',true),get_post_meta($id,'_evqra_venue_country',true)]));if($address)echo ''.esc_html($address).'
';}else{$email=sanitize_email(get_post_meta($id,'_evqra_organizer_email',true));$website=esc_url(get_post_meta($id,'_evqra_organizer_website',true));if($email)echo ''.esc_html($email).'
';elseif($website)echo ''.esc_html__('Visit website','eventqora').'
';}if(evqra_sc_bool($atts['show_content'],true))echo ''.wp_kses_post(apply_filters('the_content',$post->post_content)).'
';echo '';return ob_get_clean();}
function evqra_sc_register_page_shortcodes(){add_shortcode('evqra_single_event','evqra_sc_single_event');add_shortcode('evqra_event_details','evqra_sc_event_details');add_shortcode('evqra_single_venue',function($atts){return evqra_sc_single_directory_item($atts,'evqra_venue','evqra_single_venue');});add_shortcode('evqra_single_organizer',function($atts){return evqra_sc_single_directory_item($atts,'evqra_organizer','evqra_single_organizer');});}
add_action('init','evqra_sc_register_page_shortcodes',101);
require_once EVQRA_PLUGIN_DIR . 'shortcodes/booking-shortcodes.php';