if (!empty($google_events)) { $new_events = $google_events + $event_add; } else { $new_events = $event_add; } ksort($new_events); $month_tag = ''; foreach ($new_events as $key => $value) { $frequency = get_post_meta(get_the_ID(), 'imic_event_frequency', true); $frequency_count = get_post_meta(get_the_ID(), 'imic_event_frequency_count', true); if ($month_tag != imic_global_month_name($key)) { $month_check = 1; } $year_tag = date_i18n('Y', $key); if ($month_check == 1) { $month_tag = imic_global_month_name($key); } if ($month_check == 1) { $tag = '<div class="timeline-badge">' . $month_tag . '<span>' . $year_tag . '</span></div>'; } else { $tag = ''; } $month_check++; if (preg_match('/^[0-9]+$/', $value)) { $eventAddress = get_post_meta($value, 'imic_event_address', true); $eventContact = get_post_meta($value, 'imic_event_contact', true); $date_converted = date('Y-m-d', $key); $custom_event_url = imic_query_arg($date_converted, $value); $eventTime = get_post_meta($value, 'imic_event_start_tm', true); $eventEndTime = get_post_meta($value, 'imic_event_end_tm', true); //covert to timestamp
function imic_event($atts, $content = null) { extract(shortcode_atts(array("number" => 10, "title" => "", "category" => "", "style" => "", "type" => ""), $atts)); $output = ''; $number = $number == '' ? 10 : $number; if ($type == 'future') { $future_events = imic_recur_events("future", "", $category, ""); $google_events = getGoogleEvent(); $events = $future_events + $google_events; ksort($events); } else { $events = imic_recur_events("past", "", $category, ""); krsort($events); } if ($style == "list") { $count = 1; $output .= '<div class="listing events-listing"> <header class="listing-header"> <div class="row"> <div class="col-md-12 col-sm-12"> <h3>' . esc_attr($title) . '</h3> </div> </div> </header>'; $output .= '<section class="listing-cont"> <ul>'; if (!empty($events)) { foreach ($events as $key => $value) { if (preg_match('/^[0-9]+$/', $value)) { $eventStartTime = strtotime(get_post_meta($value, 'imic_event_start_tm', true)); $eventStartDate = strtotime(get_post_meta($value, 'imic_event_start_dt', true)); $eventEndTime = strtotime(get_post_meta($value, 'imic_event_end_tm', true)); $eventEndDate = strtotime(get_post_meta($value, 'imic_event_end_dt', true)); $evstendtime = $eventStartTime . '|' . $eventEndTime; $evstenddate = $eventStartDate . '|' . $eventEndDate; $date_converted = date('Y-m-d', $key); $custom_event_url = imic_query_arg($date_converted, $value); $event_dt_out = imic_get_event_timeformate($evstendtime, $evstenddate, $value, $key); $event_dt_out = explode('BR', $event_dt_out); if ($eventStartTime != '') { $eventStartTime = date(get_option('time_format'), $eventStartTime); } $custom_event_url = imic_query_arg($date_converted, $value); $event_title = get_the_title($value); $stime = ''; if ($eventStartTime != '') { $stime = ' | ' . $eventStartTime; } } else { $google_data = explode('!', $value); $event_title = $google_data[0]; $custom_event_url = $google_data[1]; $options = get_option('imic_options'); $eventTime = $key; if ($eventTime != '') { $eventTime = date_i18n(get_option('time_format'), $key); } $eventEndTime = $google_data[2]; if ($eventEndTime != '') { $eventEndTime = ' - ' . date_i18n(get_option('time_format'), strtotime($eventEndTime)); } $eventAddress = $google_data[3]; $event_dt_out = imic_get_event_timeformate($key . '|' . strtotime($google_data[2]), $key . '|' . $key, $value, $key); $event_dt_out = explode('BR', $event_dt_out); } $output .= '<li class="item event-item"> <div class="event-date"> <span class="date">' . date_i18n('d', $key) . '</span> <span class="month">' . imic_global_month_name($key) . '</span> </div> <div class="event-detail"> <h4> <a href="' . $custom_event_url . '"> ' . $event_title . ' </a>' . imicRecurrenceIcon($value) . ' </h4> <span class="event-dayntime meta-data"> ' . $event_dt_out[1] . ', ' . $event_dt_out[0] . '</span> </div> <div class="to-event-url"> <div> <a href="' . $custom_event_url . '" class="btn btn-default btn-sm">' . __('Details', 'framework') . '</a></div> </div> </li>'; if ($count++ >= $number) { break; } } } $output .= '</ul> </section></div>'; } else { $output .= '<header class="listing-header"> <div class="row"> <div class="col-md-12 col-sm-12"> <h3>' . esc_attr($title) . '</h3> </div> </div> </header>'; $output .= '<div class="container"><div class="row">'; $output .= '<ul class="grid-holder col-3 events-grid">'; $paged = get_query_var('paged') ? get_query_var('paged') : 1; $count = 1; $grid_item = 1; $perPage = get_option('posts_per_page'); $paginate = 1; if ($paged > 1) { $paginate = ($paged - 1) * $perPage; $paginate = $paginate + 1; } $TotalEvents = count($events); if ($TotalEvents % $perPage == 0) { $TotalPages = $TotalEvents / $perPage; } else { $TotalPages = $TotalEvents / $perPage; $TotalPages = $TotalPages + 1; } foreach ($events as $key => $value) { if (preg_match('/^[0-9]+$/', $value)) { $google_flag = 1; } else { $google_flag = 2; } if ($google_flag == 1) { setup_postdata(get_post($value)); $eventStartTime = strtotime(get_post_meta($value, 'imic_event_start_tm', true)); $eventStartDate = strtotime(get_post_meta($value, 'imic_event_start_dt', true)); $eventEndTime = strtotime(get_post_meta($value, 'imic_event_end_tm', true)); $eventEndDate = strtotime(get_post_meta($value, 'imic_event_end_dt', true)); $event_dt_out = imic_get_event_timeformate($eventStartTime . '|' . $eventEndTime, $eventStartDate . '|' . $eventEndDate, $value, $key); $event_dt_out = explode('BR', $event_dt_out); $registration_status = get_post_meta($value, 'imic_event_registration_status', true); /** Event Details Manage **/ if ($registration_status == 1 && function_exists('imic_get_currency_symbol')) { $eventDetailIcons = array('fa-calendar', 'fa-clock-o', 'fa-map-marker', 'fa-money'); } else { $eventDetailIcons = array('fa-calendar', 'fa-clock-o', 'fa-map-marker'); } $stime = ""; $etime = ""; if ($eventStartTime != '') { $stime = ' | ' . date_i18n(get_option('time_format'), $eventStartTime); } if ($eventEndTime != '') { $etime = ' - ' . date_i18n(get_option('time_format'), $eventEndTime); } if ($registration_status == 1 && function_exists('imic_get_currency_symbol')) { $event_registration_fee = get_post_meta($value, 'imic_event_registration_fee', true); $registration_charge = $event_registration_fee == '' ? 'Free' : imic_get_currency_symbol(get_option('paypal_currency_options')) . get_post_meta($value, 'imic_event_registration_fee', true); $eventDetailsData = array($event_dt_out[1], $event_dt_out[0], get_post_meta($value, 'imic_event_address', true), $registration_charge); /* $eventDetailsData = array(date_i18n('j M, ',$key).date_i18n('l',$key). $stime . $etime, get_post_meta($value,'imic_event_address',true),$registration_charge); */ } else { /*$eventDetailsData = array(date_i18n('j M, ',$key).date_i18n('l',$key). $stime . $etime, get_post_meta($value,'imic_event_address',true));*/ $eventDetailsData = array($event_dt_out[1], $event_dt_out[0], get_post_meta($value, 'imic_event_address', true)); } $eventValues = array_filter($eventDetailsData, 'strlen'); } if ($count == $paginate && $grid_item <= $perPage) { $paginate++; $grid_item++; if ($google_flag == 1) { $frequency = get_post_meta($value, 'imic_event_frequency', true); } //if ('' != get_the_post_thumbnail($value)) { $output .= '<li class="grid-item format-standard">'; if ($google_flag == 1) { $date_converted = date('Y-m-d', $key); $custom_event_url = imic_query_arg($date_converted, $value); } if ($google_flag == 2) { $google_data = explode('!', $value); $event_title = $google_data[0]; $custom_event_url = $google_data[1]; $stime = ""; $etime = ""; $etime = $google_data[2]; if ($key != '') { $stime = ' | ' . date_i18n(get_option('time_format'), $key); } if ($etime != '') { $etime = ' - ' . date_i18n(get_option('time_format'), strtotime($etime)); } $eventAddress = $google_data[3]; /* $eventDetailsData = array(date_i18n('j M, ',$key).date_i18n('l',$key). $stime . $etime,$eventAddress);*/ $event_dt_out = imic_get_event_timeformate($key . '|' . $google_data[2], $key . '|' . $key, $value, $key); $event_dt_out = explode('BR', $event_dt_out); $eventDetailsData = array($event_dt_out[1], $event_dt_out[0], $eventAddress); $eventValues = array_filter($eventDetailsData, 'strlen'); $eventDetailIcons = array('fa-calendar', 'fa-clock-o', 'fa-map-marker'); } $output .= '<div class="grid-item-inner">'; if ($google_flag == 1) { $output .= '<a href="' . $custom_event_url . '" class="media-box">'; $output .= get_the_post_thumbnail($value, 'full'); $output .= '</a>'; $event_title = get_the_title($value); } $output .= '<div class="grid-content">'; $output .= '<h3><a href="' . $custom_event_url . '">' . $event_title . '</a>' . imicRecurrenceIcon($value) . '</h3>'; if ($google_flag == 1) { $output .= '<div class="page-content">'; $output .= imic_excerpt(25); $output .= '</div>'; } $output .= '</div>'; if (!empty($eventValues)) { $output .= '<ul class="info-table">'; $flag = 0; foreach ($eventDetailsData as $edata) { if (!empty($edata)) { $output .= '<li><i class="fa ' . $eventDetailIcons[$flag] . '"></i> ' . $edata . ' </li>'; } $flag++; } $output .= '</ul>'; //} $output .= '</div> </li>'; } } $count++; } $output .= '</ul></div></div>'; } return $output; }
$eventAddress = $google_data[3]; $event_dt_out = imic_get_event_timeformate($key . '|' . strtotime($google_data[2]), $key . '|' . $key, $value, $key); $event_dt_out = explode('BR', $event_dt_out); } if ($key > date('U')) { ?> <li id="<?php echo date('y-n-d', $key); ?> " class="item event-item event-id"> <div class="event-date"> <span class="date"><?php echo date('d', $key); ?> </span> <span class="month"><?php echo imic_global_month_name($key); ?> </span> </div> <div class="event-detail"> <h4> <a href="<?php echo $custom_event_url; ?> "> <?php echo $event_title; ?> </a><?php echo imicRecurrenceIcon($value); ?> </h4>
} if ($nos_event == 1) { $firstEventTitle = $event_title; $firstEventURL = $custom_event_url; $date_timer_event = date('Y-m-d', $key); $firstEventDateData = date('Y-m-d G:i', $key); $eventTime = date_i18n(get_option('time_format'), $key); $unix_time = strtotime($date_timer_event . ' ' . $eventTime); $time_timer_event = date('G:i', $unix_time); $firstEventDate = date_i18n(get_option('date_format'), $key); $event_dt_out = imic_get_event_timeformate($key . '|' . strtotime($google_data[2]), $key . '|' . $key, $value, $key); $event_dt_out = explode('BR', $event_dt_out); } } $upcomingEvents .= '<li class="item event-item"> <div class="event-date"> <span class="date">' . date_i18n('d', $key) . '</span> <span class="month">' . imic_global_month_name($key) . '</span> </div> <div class="event-detail"> <h4><a href="' . $custom_event_url . '">' . $event_title . '</a>' . imicRecurrenceIcon($value) . '</h4>'; if (preg_match('/^[0-9]+$/', $value)) { $upcomingEvents .= '<span class="event-dayntime meta-data">' . $event_dt_out[1] . ', ' . $event_dt_out[0] . '</span>'; } else { $upcomingEvents .= '<span class="event-dayntime meta-data">' . date_i18n('l', $key) . $stime . '</span>'; } $upcomingEvents .= '</div> <div class="to-event-url"> <div><a href="' . $custom_event_url . '" class="btn btn-default btn-sm">' . __('Details', 'framework') . '</a></div> </div> </li>'; if (++$nos_event > $imic_events_to_show_on) { break; }
function imic_event_grid() { $EventTerm = ''; $offset = get_option('timezone_string'); if ($offset == '') { $offset = "Australia/Melbourne"; } date_default_timezone_set($offset); echo '<div class="listing events-listing"> <header class="listing-header"> <div class="row"> <div class="col-md-6 col-sm-6"> <h3>' . __('All events', 'framework') . '</h3> </div> <div class="listing-header-sub col-md-6 col-sm-6">'; $currentEventTime = $_POST['date']; $EventTerm = $_POST['term']; $prev_month = date('Y-m', strtotime('-1 month', strtotime($currentEventTime))); $next_month = date('Y-m', strtotime('+1 month', strtotime($currentEventTime))); echo '<h5>' . date_i18n('F', strtotime($currentEventTime)) . '</h5> <nav class="next-prev-nav"> <a href="javascript:" class="upcomingEvents" rel="' . $EventTerm . '" id="' . $prev_month . '"><i class="fa fa-angle-left"></i></a> <a href="javascript:" class="upcomingEvents" rel="' . $EventTerm . '" id="' . $next_month . '"><i class="fa fa-angle-right"></i></a> </nav> </div> </div> </header> <section class="listing-cont"> <ul>'; $today = date('Y-m'); $curr_month = date('Y-m-t', strtotime('-1 month', strtotime($currentEventTime))); $currentTime = date(get_option('time_format')); $sp = imic_recur_events('future', 'nos', $EventTerm, $currentEventTime); $this_month_last = strtotime(date('Y-m-t 23:59', strtotime($currentEventTime))); $google_events = getGoogleEvent($this_month_last); if (!empty($google_events)) { $new_events = $google_events + $sp; } else { $new_events = $sp; } ksort($new_events); if (!empty($new_events)) { foreach ($new_events as $key => $value) { if (preg_match('/^[0-9]+$/', $value)) { $frequency = get_post_meta($value, 'imic_event_frequency', true); $frequency_count = get_post_meta($value, 'imic_event_frequency_count', true); $satime = get_post_meta($value, 'imic_event_start_tm', true); $satime = strtotime($satime); $date_converted = date('Y-m-d', $key); $custom_event_url = imic_query_arg($date_converted, $value); $event_title = get_the_title($value); /* event time date formate */ $eventStartTime = strtotime(get_post_meta($value, 'imic_event_start_tm', true)); $eventStartDate = strtotime(get_post_meta($value, 'imic_event_start_dt', true)); $eventEndTime = strtotime(get_post_meta($value, 'imic_event_end_tm', true)); $eventEndDate = strtotime(get_post_meta($value, 'imic_event_end_dt', true)); $evstendtime = $eventStartTime . '|' . $eventEndTime; $evstenddate = $eventStartDate . '|' . $eventEndDate; $event_dt_out = imic_get_event_timeformate($evstendtime, $evstenddate, $value, $key); $event_dt_out = explode('BR', $event_dt_out); /* event time date formate end */ } else { $google_data = explode('!', $value); $event_title = $google_data[0]; $custom_event_url = $google_data[1]; $options = get_option('imic_options'); $satime = $key; /* event time date formate */ $event_dt_out = imic_get_event_timeformate($key . '|' . strtotime($google_data[2]), $key . '|' . $key, $value, $key); $event_dt_out = explode('BR', $event_dt_out); /* event time date formate end */ } echo '<li class="item event-item"> <div class="event-date"> <span class="date">' . date_i18n('d', $key) . '</span> <span class="month">' . imic_global_month_name($key) . '</span> </div> <div class="event-detail"> <h4><a href="' . $custom_event_url . '">' . $event_title . '</a>' . imicRecurrenceIcon($value) . '</h4>'; echo '<span class="event-dayntime meta-data">' . $event_dt_out[1] . ', ' . $event_dt_out[0] . '</span> </div> <div class="to-event-url"> <div><a href="' . $custom_event_url . '" class="btn btn-default btn-sm">' . __('Details', 'framework') . '</a></div> </div> </li>'; } } else { echo '<li class="item event-item"> <div class="event-detail"> <h4>' . __('Sorry, there are no events for this month.', 'framework') . '</h4> </div> </li>'; } echo '</ul> </section> </div>'; die; }
function widget($args, $instance) { extract($args); // these are the widget options $post_title = apply_filters('widget_title', $instance['title']); $number = apply_filters('widget_number', $instance['number']); $category = apply_filters('widget-category', empty($instance['category']) ? '' : $instance['category'], $instance, $this->id_base); $numberEvent = !empty($number) ? $number : 3; $EventHeading = !empty($post_title) ? $post_title : __('Upcoming Events', 'imic-framework-admin'); $today = date('Y-m-d'); echo $args['before_widget']; if (!empty($instance['title'])) { echo $args['before_title']; echo apply_filters('widget_title', $EventHeading, $instance, $this->id_base); echo $args['after_title']; } $event_add = imic_recur_events('future', '', $category, ''); $nos_event = 1; $google_events = getGoogleEvent(); if (!empty($google_events)) { $new_events = $google_events + $event_add; } else { $new_events = $event_add; } ksort($new_events); if (!empty($new_events)) { echo '<ul>'; foreach ($new_events as $key => $value) { if (preg_match('/^[0-9]+$/', $value)) { $eventTime = get_post_meta($value, 'imic_event_start_tm', true); if (!empty($eventTime)) { $eventTime = strtotime($eventTime); $eventTime = date_i18n(get_option('time_format'), $eventTime); } $date_converted = date('Y-m-d', $key); $custom_event_url = imic_query_arg($date_converted, $value); $event_title = get_the_title($value); } else { $google_data = explode('!', $value); $event_title = $google_data[0]; $custom_event_url = $google_data[1]; $eventTime = ''; if (!empty($key)) { $eventTime = ' | ' . date(get_option('time_format'), $key); } } echo '<li class="item event-item clearfix"> <div class="event-date"> <span class="date">' . date_i18n('d', $key) . '</span> <span class="month">' . imic_global_month_name($key) . '</span> </div> <div class="event-detail"> <h4><a href="' . $custom_event_url . '">' . $event_title . '</a>' . imicRecurrenceIcon($value) . '</h4>'; $stime = ''; if ($eventTime != '') { $stime = ' | ' . $eventTime; } echo '<span class="event-dayntime meta-data">' . date_i18n('l', $key) . $stime . '</span> </div> </li>'; if (++$nos_event > $numberEvent) { break; } } echo '</ul>'; } else { _e('No Upcoming Events Found', 'imic-framework-admin'); } echo $args['after_widget']; }