Ejemplo n.º 1
0
 /**
  * End Date
  *
  * Returns the event end date
  *
  * @param int $event (optional)
  * @param bool $displayTime If true shows date and time, if false only shows date
  * @param string $dateFormat Allows date and time formating using standard php syntax (http://php.net/manual/en/function.date.php)
  * @return string Date
  * @since 2.0
  */
 function tribe_get_end_date($event = null, $displayTime = true, $dateFormat = '')
 {
     if (is_null($event)) {
         global $post;
         $event = $post;
     }
     if (is_numeric($event)) {
         $event = get_post($event);
     }
     if (tribe_event_is_all_day($event)) {
         $displayTime = false;
     }
     if (empty($event->EventEndDate) && is_object($event)) {
         $event->EventEndDate = tribe_get_event_meta($event->ID, '_EventEndDate', true);
     }
     if (isset($event->EventEndDate)) {
         if (tribe_event_is_all_day($event) && empty($event->_end_date_fixed) && TribeDateUtils::timeOnly($event->EventEndDate) != '23:59:59' && TribeDateUtils::timeOnly(tribe_event_end_of_day()) != '23:59') {
             // set the event end date to be one day earlier, if it's an all day event and the cutoff is past midnight
             // @todo remove this once we can have all day events without a start / end time
             $event->EventEndDate = date_create($event->EventEndDate);
             $event->EventEndDate->modify('-1 day');
             $event->EventEndDate = $event->EventEndDate->format(TribeDateUtils::DBDATEFORMAT);
             $event->_end_date_fixed = true;
         }
         $date = strtotime($event->EventEndDate);
     } else {
         return;
         // '—';
     }
     return tribe_event_format_date($date, $displayTime, $dateFormat);
 }
Ejemplo n.º 2
0
 /**
  * Get the event date
  *
  * @param int $meta_id
  * @return string
  */
 public static function event_date($meta_id)
 {
     $time_format = get_option('time_format', TribeDateUtils::TIMEFORMAT);
     $start_time = tribe_get_start_date(null, false, $time_format);
     $end_time = tribe_get_end_date(null, false, $time_format);
     if (tribe_event_is_all_day()) {
         if (tribe_event_is_multiday()) {
             $html = Tribe_Meta_Factory::template(__('Start:', 'tribe-events-calendar'), sprintf('<abbr class="tribe-events-abbr updated published dtstart" title="%s">%s</abbr>', tribe_get_start_date(null, false, TribeDateUtils::DBDATEFORMAT), tribe_get_start_date()), $meta_id);
             $html .= Tribe_Meta_Factory::template(__('End:', 'tribe-events-calendar'), sprintf('<abbr class="tribe-events-abbr dtend" title="%s">%s</abbr>', tribe_get_end_date(null, false, TribeDateUtils::DBDATEFORMAT), tribe_get_end_date()), $meta_id);
         } else {
             // If all day event, show only start date
             $html = Tribe_Meta_Factory::template(__('Date:', 'tribe-events-calendar'), sprintf('<abbr class="tribe-events-abbr updated published dtstart" title="%s">%s</abbr>', tribe_get_start_date(null, false, TribeDateUtils::DBDATEFORMAT), tribe_get_start_date()), $meta_id);
         }
     } elseif (tribe_event_is_multiday()) {
         // If multiday, show start date+time and end date+time
         $html = Tribe_Meta_Factory::template(__('Start:', 'tribe-events-calendar'), sprintf('<abbr class="tribe-events-abbr updated published dtstart" title="%s">%s</abbr>', tribe_get_start_date(null, false, TribeDateUtils::DBDATEFORMAT), tribe_get_start_date()), $meta_id);
         $html .= Tribe_Meta_Factory::template(__('End:', 'tribe-events-calendar'), sprintf('<abbr class="tribe-events-abbr dtend" title="%s">%s</abbr>', tribe_get_end_date(null, false, TribeDateUtils::DBDATEFORMAT), tribe_get_end_date()), $meta_id);
     } else {
         // show start date
         $html = Tribe_Meta_Factory::template(__('Date:', 'tribe-events-calendar'), sprintf('<abbr class="tribe-events-abbr updated published dtstart" title="%s">%s</abbr>', tribe_get_start_date(null, false, TribeDateUtils::DBDATEFORMAT), tribe_get_start_date(null, false)), $meta_id);
         if ($start_time == $end_time) {
             // if start and end time are the same, just show the start time
             $html .= Tribe_Meta_Factory::template(__('Time:', 'tribe-events-calendar'), sprintf('<abbr class="tribe-events-abbr dtend" title="%s">%s</abbr>', tribe_get_end_date(null, false, TribeDateUtils::DBDATEFORMAT), $start_time), $meta_id);
         } else {
             // show start and end time
             $html .= Tribe_Meta_Factory::template(__('Time:', 'tribe-events-calendar'), sprintf('<abbr class="tribe-events-abbr dtend" title="%s">%s</abbr>', tribe_get_end_date(null, false, TribeDateUtils::DBDATEFORMAT), $start_time . ' - ' . $end_time), $meta_id);
         }
     }
     return apply_filters('tribe_event_meta_event_date', $html);
 }
 /**
  * Organize and reorder the events posts according to time slot
  *
  * @return void
  * @since 1.0
  **/
 public function setup_view()
 {
     global $wp_query;
     if ($wp_query->have_posts()) {
         foreach ($wp_query->posts as &$post) {
             $post->timeslot = tribe_event_is_all_day($post->ID) ? __('All Day', 'tribe-events-calendar-pro') : ($post->timeslot = tribe_get_start_date($post, false, 'l, F jS Y g:i A'));
         }
         $wp_query->rewind_posts();
     }
 }
    function front_end($args, $instance)
    {
        extract($args);
        $limit = intval($instance['load']);
        $title = $instance['title'];
        $events = tribe_get_events(array('eventDisplay' => 'upcoming', 'posts_per_page' => $event_count));
        if (!empty($events)) {
            echo $title ? $before_title . $title . $after_title : '';
            foreach ($events as $event) {
                $start_date = strtotime(tribe_get_start_date($event->ID));
                $start_date_day = date('Y-m-d', $start_date);
                $end_date = strtotime(tribe_get_end_date($event->ID));
                $end_date_day = date('Y-m-d', $end_date);
                $all_day = tribe_event_is_all_day($event->ID);
                $time_format = get_option('time_format');
                if ($all_day) {
                    $date_format = date('F jS', $start_date) . '<span>&bullet;</span> <em>' . __('All day', 'espresso') . '</em>';
                } else {
                    if ($end_date_day) {
                        if ($start_date_day == $end_date_day) {
                            $date_format = date('F jS', $start_date) . '<span>&bullet;</span> <em>' . date($time_format, $start_date) . ' &ndash; ' . date($time_format, $end_date) . '</em>';
                        } else {
                            $date_format = date('F jS', $start_date) . ' <em>@ ' . date($time_format, $start_date) . '<br />' . __('to', 'espresso') . '</em> ' . date('F jS', $end_date) . ' <em>@' . date($time_format, $end_date) . '</em>';
                        }
                    }
                }
                ?>
<article class="upcoming-event-block clearfix">
					<h3><a href="<?php 
                echo get_permalink($event->ID);
                ?>
"><?php 
                echo apply_filters('the_title', $event->post_title);
                ?>
</a></h3>
					<small><?php 
                echo $date_format;
                ?>
</small>
					<p><?php 
                echo $event->post_excerpt ? $event->post_excerpt : espressoTruncate($event->post_content, 155) . ' ...';
                ?>
</p>
					<a class="es-button" href="<?php 
                echo get_permalink($event->ID);
                ?>
"><?php 
                _e('Event Information', 'espresso');
                ?>
</a>
				</article><?php 
            }
        }
        wp_reset_query();
    }
 /**
  * Adds the timezone to the event schedule information.
  *
  * @param string   $schedule_text
  * @param int|null $event_id
  *
  * @return string
  */
 public static function append_timezone($schedule_text, $event_id = null)
 {
     static $hide_for_all_day;
     if (!isset($hide_for_all_day)) {
         $hide_for_all_day = apply_filters('tribe_events_hide_timezone_for_all_day_events', true);
     }
     if (tribe_event_is_all_day($event_id) && $hide_for_all_day) {
         return $schedule_text;
     }
     $timezone = self::is_mode('site') ? self::wp_timezone_abbr(tribe_get_start_date($event_id, true, Tribe__Date_Utils::DBDATETIMEFORMAT)) : self::get_event_timezone_abbr($event_id);
     if (!empty($timezone)) {
         $timezone_text = " <span class='timezone'> {$timezone} </span>";
         $schedule_text = $schedule_text . $timezone_text;
     }
     return $schedule_text;
 }
Ejemplo n.º 6
0
 /**
  * End Time
  *
  * Returns the event end time
  *
  * @category Events
  * @param int    $event       (optional)
  * @param string $dateFormat  Allows date and time formating using standard php syntax (http://php.net/manual/en/function.date.php)
  * @param string $timezone    Timezone in which to present the date/time (or default behaviour if not set)
  *
  * @return string|null Time
  */
 function tribe_get_end_time($event = null, $dateFormat = '', $timezone = null)
 {
     if (is_null($event)) {
         global $post;
         $event = $post;
     }
     if (is_numeric($event)) {
         $event = get_post($event);
     }
     if (!is_object($event)) {
         return;
     }
     if (tribe_event_is_all_day($event)) {
         return;
     }
     $end_date = Tribe__Events__Timezones::event_end_timestamp($event->ID, $timezone);
     if ('' == $dateFormat) {
         $dateFormat = tribe_get_time_format();
     }
     return tribe_format_date($end_date, false, $dateFormat);
 }
Ejemplo n.º 7
0
 /**
  * End Date
  *
  * Returns the event end date
  *
  * @param int $event (optional) this only works for non recurring events
  * @param bool $displayTime If true shows date and time, if false only shows date
  * @param string $dateFormat Allows date and time formating using standard php syntax (http://php.net/manual/en/function.date.php)
  * @return string Date
  * @todo support $postId for recurring events.
  * @since 2.0
  */
 function tribe_get_end_date($event = null, $displayTime = true, $dateFormat = '')
 {
     if (is_null($event)) {
         global $post;
         $event = $post;
     }
     if (is_numeric($event)) {
         $event = get_post($event);
     }
     if (tribe_event_is_all_day($event)) {
         $displayTime = false;
     }
     if (empty($event->EventEndDate) && is_object($event)) {
         $event->EventEndDate = tribe_get_event_meta($event->ID, '_EventEndDate', true);
     }
     if (isset($event->EventEndDate)) {
         $date = strtotime($event->EventEndDate);
     } else {
         return;
         // '&mdash;';
     }
     return tribe_event_format_date($date, $displayTime, $dateFormat);
 }
Ejemplo n.º 8
0
 /**
  * Organize and reorder the events posts according to time slot
  *
  * @return void
  **/
 public function setup_view()
 {
     global $wp_query;
     $time_format = apply_filters('tribe_events_day_timeslot_format', get_option('time_format', TribeDateUtils::TIMEFORMAT));
     if ($wp_query->have_posts()) {
         $unsorted_posts = $wp_query->posts;
         foreach ($unsorted_posts as &$post) {
             if (tribe_event_is_all_day($post->ID)) {
                 $post->timeslot = __('All Day', 'tribe-events-calendar');
             } else {
                 if (strtotime(tribe_get_start_date($post->ID, true, TribeDateUtils::DBDATETIMEFORMAT)) < strtotime($wp_query->get('start_date'))) {
                     $post->timeslot = __('Ongoing', 'tribe-events-calendar');
                 } else {
                     $post->timeslot = tribe_get_start_date($post, false, $time_format);
                 }
             }
         }
         unset($post);
         // Make sure All Day events come first
         $all_day = array();
         $ongoing = array();
         $hourly = array();
         foreach ($unsorted_posts as $i => $post) {
             if ($post->timeslot == __('All Day', 'tribe-events-calendar')) {
                 $all_day[$i] = $post;
             } else {
                 if ($post->timeslot == __('Ongoing', 'tribe-events-calendar')) {
                     $ongoing[$i] = $post;
                 } else {
                     $hourly[$i] = $post;
                 }
             }
         }
         $wp_query->posts = array_values($all_day + $ongoing + $hourly);
         $wp_query->rewind_posts();
     }
 }
Ejemplo n.º 9
0
 /**
  * Organize and reorder the events posts according to time slot
  *
  * @return void
  * @since 3.0
  **/
 public function setup_view()
 {
     global $wp_query;
     $time_format = apply_filters('tribe_events_pro_day_timeslot_format', 'ga ');
     if ($wp_query->have_posts()) {
         $unsorted_posts = $wp_query->posts;
         foreach ($unsorted_posts as &$post) {
             $post->timeslot = tribe_event_is_all_day($post->ID) ? __('All Day', 'tribe-events-calendar-pro') : ($post->timeslot = tribe_get_start_date($post, false, $time_format));
         }
         unset($post);
         // Make sure All Day events come first
         $all_day = array();
         $hourly = array();
         foreach ($unsorted_posts as $i => $post) {
             if ($post->timeslot == __('All Day', 'tribe-events-calendar-pro')) {
                 $all_day[$i] = $post;
             } else {
                 $hourly[$i] = $post;
             }
         }
         $wp_query->posts = array_values($all_day + $hourly);
         $wp_query->rewind_posts();
     }
 }
/**
 * Return form select fields for event end time.
 *
 * @param null|int $event_id
 * @return string time select HTML
 * @author Peter Chester
 * @since 3.1
 */
function tribe_community_events_form_end_time_selector($event_id = null)
{
    $event_id = TribeEvents::postIdHelper($event_id);
    $is_all_day = tribe_event_is_all_day($event_id);
    $end_date = tribe_get_end_date($event_id);
    $end_minutes = TribeEventsViewHelpers::getMinuteOptions($end_date);
    $end_hours = TribeEventsViewHelpers::getHourOptions($is_all_day == 'yes' ? null : $end_date);
    $end_meridian = TribeEventsViewHelpers::getMeridianOptions($end_date);
    $output = '';
    $output .= sprintf('<select name="EventEndHour">%s</select>', $end_hours);
    $output .= sprintf('<select name="EventEndMinute">%s</select>', $end_minutes);
    if (!strstr(get_option('time_format', TribeDateUtils::TIMEFORMAT), 'H')) {
        $output .= sprintf('<select name="EventEndMeridian">%s</select>', $end_meridian);
    }
    return apply_filters('tribe_community_events_form_end_time_selector', $output, $event_id);
}
        _e('All Day', 'church-event');
        ?>
</div>
						<?php 
    }
    ?>
					<?php 
}
?>
				</div>
				<div class="wpv-single-event-schedule-block address">
					<?php 
if ($image === false) {
    ?>
						<?php 
    if (!tribe_event_is_all_day($post->ID)) {
        ?>
							<div class="time"><?php 
        echo $stime;
        ?>
 <?php 
        if ($stime !== $etime) {
            echo '&mdash; ' . $etime;
        }
        ?>
</div>
						<?php 
    } else {
        ?>
							<div class="time"><?php 
        _e('All Day', 'church-event');
Ejemplo n.º 12
0
 /**
  * Return the details of the start/end date/time.
  *
  * The highest level means of customizing this function's output is simply to adjust the date format settings under
  * Events > Settings > Display, and WordPress time formats (via the General Settings admin screen).
  * Beyond that, however, there are two filters which can be used to exercise further control here.
  *
  * The first is 'tribe_events_event_schedule_details_formatting' which allows an array of format settings to be
  * altered - it's basic make-up is as a simple set of key:value pairs as follows.
  *
  * "show_end_time": for single day events only (not including all day events) it may not always be desirable to
  *     include the end time. In that situation, this setting can be set to false and the end time will not be
  *     displayed.
  *
  * "time": if it is undesirable to show times and only dates should be displayed then this setting can be set to
  *     false. If it is false it will by extension cause 'show_end_time' to be false.
  *
  * The resulting string can also be caught and manipulated, or completely overridden, using the
  * 'tribe_events_event_schedule_details' filter, should none of the above settings be sufficient.
  *
  * @category Events
  * @TODO use tribe_get_datetime_format() and related functions if possible
  *
  * @param int|null $event
  * @param string $before
  * @param string $after
  *
  * @return mixed|void
  */
 function tribe_events_event_schedule_details($event = null, $before = '', $after = '')
 {
     if (is_null($event)) {
         global $post;
         $event = $post;
     }
     if (is_numeric($event)) {
         $event = get_post($event);
     }
     $schedule = '<span class="date-start dtstart">';
     $format = '';
     $date_without_year_format = tribe_get_date_format();
     $date_with_year_format = tribe_get_date_format(true);
     $time_format = get_option('time_format');
     $datetime_separator = tribe_get_option('dateTimeSeparator', ' @ ');
     $time_range_separator = tribe_get_option('timeRangeSeparator', ' - ');
     $microformatStartFormat = tribe_get_start_date($event, false, 'Y-m-dTh:i');
     $microformatEndFormat = tribe_get_end_date($event, false, 'Y-m-dTh:i');
     $settings = array('show_end_time' => true, 'time' => true);
     $settings = wp_parse_args(apply_filters('tribe_events_event_schedule_details_formatting', $settings), $settings);
     if (!$settings['time']) {
         $settings['show_end_time'] = false;
     }
     extract($settings);
     $format = $date_with_year_format;
     // if it starts and ends in the current year then there is no need to display the year
     if (tribe_get_start_date($event, false, 'Y') === date('Y') && tribe_get_end_date($event, false, 'Y') === date('Y')) {
         $format = $date_without_year_format;
     }
     if (tribe_event_is_multiday($event)) {
         // multi-date event
         $format2ndday = apply_filters('tribe_format_second_date_in_range', $format, $event);
         if (tribe_event_is_all_day($event)) {
             $schedule .= tribe_get_start_date($event, true, $format);
             $schedule .= '<span class="value-title" title="' . $microformatStartFormat . '"></span>';
             $schedule .= '</span>' . $time_range_separator;
             $schedule .= '<span class="date-end dtend">';
             $schedule .= tribe_get_end_date($event, true, $format2ndday);
             $schedule .= '<span class="value-title" title="' . $microformatEndFormat . '"></span>';
         } else {
             $schedule .= tribe_get_start_date($event, false, $format) . ($time ? $datetime_separator . tribe_get_start_date($event, false, $time_format) : '');
             $schedule .= '<span class="value-title" title="' . $microformatStartFormat . '"></span>';
             $schedule .= '</span>' . $time_range_separator;
             $schedule .= '<span class="date-end dtend">';
             $schedule .= tribe_get_end_date($event, false, $format2ndday) . ($time ? $datetime_separator . tribe_get_end_date($event, false, $time_format) : '');
             $schedule .= '<span class="value-title" title="' . $microformatEndFormat . '"></span>';
         }
     } elseif (tribe_event_is_all_day($event)) {
         // all day event
         $schedule .= tribe_get_start_date($event, true, $format);
         $schedule .= '<span class="value-title" title="' . $microformatStartFormat . '"></span>';
     } else {
         // single day event
         if (tribe_get_start_date($event, false, 'g:i A') === tribe_get_end_date($event, false, 'g:i A')) {
             // Same start/end time
             $schedule .= tribe_get_start_date($event, false, $format) . ($time ? $datetime_separator . tribe_get_start_date($event, false, $time_format) : '');
             $schedule .= '<span class="value-title" title="' . $microformatStartFormat . '"></span>';
         } else {
             // defined start/end time
             $schedule .= tribe_get_start_date($event, false, $format) . ($time ? $datetime_separator . tribe_get_start_date($event, false, $time_format) : '');
             $schedule .= '<span class="value-title" title="' . $microformatStartFormat . '"></span>';
             $schedule .= '</span>' . ($show_end_time ? $time_range_separator : '');
             $schedule .= '<span class="end-time dtend">';
             $schedule .= ($show_end_time ? tribe_get_end_date($event, false, $time_format) : '') . '<span class="value-title" title="' . $microformatEndFormat . '"></span>';
         }
     }
     $schedule .= '</span>';
     $schedule = $before . $schedule . $after;
     return apply_filters('tribe_events_event_schedule_details', $schedule, $event->ID);
 }
Ejemplo n.º 13
0
 /**
  * Determine and return the CSS classes needed for each event on week view
  *
  * @param $classes array
  *
  * @return string
  * @see 'tribe_events_event_classes'
  */
 public function event_classes($classes)
 {
     global $post;
     $event = $post;
     // we need to adjust on behalf of weekly span scripts
     $day_span_length = $event->days_between + 1;
     if ($day_span_length > 0) {
         $classes[] = 'tribe-dayspan' . $day_span_length . ' ';
     }
     if (isset(self::$previous_event) && !tribe_event_is_all_day($event) && strtotime(self::$previous_event->EventStartDate) < strtotime($event->EventStartDate)) {
         $classes[] = 'tribe-event-overlap ';
     }
     if (!tribe_event_is_all_day($event)) {
         $classes[] = 'tribe-events-week-hourly-single';
     } else {
         $classes[] = 'tribe-events-week-allday-single';
     }
     return $classes;
 }
      <img class="bg-image" src="<?php echo $src[0]; ?>" alt="">
      <span class="bg-image-mask"></span>
      <div class="item-content">
        <div class="date">
          <span class="num"><?php echo tribe_get_start_date( $event, false, 'd' ); ?></span>
          <?php echo tribe_get_start_date( $event, false, 'F' ); ?>
        </div>

        <?php 
          $term_color = get_term_meta( array_pop( tribe_get_event_cat_ids(  $event ) ) , '_events_category_color', true ); 
          $term_color = implode(',', sscanf($term_color, "#%02x%02x%02x")) ;
        ?>
        <div class="title-wrap" style="background-color: rgba(<?php echo $term_color; ?>, .7);" >

          <strong>
            <?php if( tribe_event_is_all_day($event) ): ?>
              All Day
            <?php else: ?>  
              <?php printf('%s - %s', tribe_get_start_time( $event, 'ga' ), tribe_get_end_time( $event, 'ga' ) ); ?>
            <?php endif; ?>
          </strong>
          <h3 class="item-title"><?php echo get_the_title( $event ); ?></h3>
        </div>
      </div>      

    </a>
  </li>

<?php endforeach; ?>
</ul>
if (!empty($events)) {
    ?>
<section id="homepage-events" class="homepage-block">
		<div class="shell clearfix">
			<h2 class="centered"><span><?php 
    echo $event_items_title;
    ?>
</span></h2>
			<div class="widget"><?php 
    foreach ($events as $event) {
        $temp_count++;
        $start_date = strtotime(tribe_get_start_date($event->ID, false, 'Y-m-d H:i:s'));
        $start_date_day = date('Y-m-d', $start_date);
        $end_date = strtotime(tribe_get_end_date($event->ID, false, 'Y-m-d H:i:s'));
        $end_date_day = date('Y-m-d', $end_date);
        $all_day = tribe_event_is_all_day($event->ID);
        $time_format = get_option('time_format');
        if ($all_day) {
            $date_format = strftime('%B %e', $start_date) . '<span>&bullet;</span> <em>' . __('All day', 'espresso') . '</em>';
        } else {
            if ($end_date_day) {
                if ($start_date_day == $end_date_day) {
                    $date_format = strftime('%B %e', $start_date) . '<span>&bullet;</span> <em>' . date($time_format, $start_date) . ' &ndash; ' . date($time_format, $end_date) . '</em>';
                } else {
                    $date_format = strftime('%B %e', $start_date) . ' <em>@ ' . date($time_format, $start_date) . '<br />' . __('to', 'espresso') . '</em> ' . strftime('%B %e', $end_date) . ' <em>@' . date($time_format, $end_date) . '</em>';
                }
            }
        }
        ?>
<article class="upcoming-event-block clearfix">
						<h3><a href="<?php 
Ejemplo n.º 16
0
 /**
  * Return the details of the start/end date/time.
  *
  * The highest level means of customizing this function's output is simply to adjust the date format settings under
  * Events > Settings > Display, and WordPress time formats (via the General Settings admin screen).
  * Beyond that, however, there are two filters which can be used to exercise further control here.
  *
  * The first is 'tribe_events_event_schedule_details_formatting' which allows an array of format settings to be
  * altered - it's basic make-up is as a simple set of key:value pairs as follows.
  *
  * "show_end_time": for single day events only (not including all day events) it may not always be desirable to
  *     include the end time. In that situation, this setting can be set to false and the end time will not be
  *     displayed.
  *
  * "time": if it is undesirable to show times and only dates should be displayed then this setting can be set to
  *     false. If it is false it will by extension cause 'show_end_time' to be false.
  *
  * The resulting string can also be caught and manipulated, or completely overridden, using the
  * 'tribe_events_event_schedule_details' filter, should none of the above settings be sufficient.
  *
  * @category Events
  * @TODO use tribe_get_datetime_format() and related functions if possible
  *
  * @param int|null $event
  * @param string $before
  * @param string $after
  *
  * @return mixed|void
  */
 function tribe_events_event_schedule_details($event = null, $before = '', $after = '')
 {
     if (is_null($event)) {
         global $post;
         $event = $post;
     }
     if (is_numeric($event)) {
         $event = get_post($event);
     }
     $inner = '<span class="tribe-event-date-start">';
     $format = '';
     $date_without_year_format = tribe_get_date_format();
     $date_with_year_format = tribe_get_date_format(true);
     $time_format = get_option('time_format');
     $datetime_separator = tribe_get_option('dateTimeSeparator', ' @ ');
     $time_range_separator = tribe_get_option('timeRangeSeparator', ' - ');
     $settings = array('show_end_time' => true, 'time' => true);
     $settings = wp_parse_args(apply_filters('tribe_events_event_schedule_details_formatting', $settings), $settings);
     if (!$settings['time']) {
         $settings['show_end_time'] = false;
     }
     /**
      * @var $show_end_time
      * @var $time
      */
     extract($settings);
     $format = $date_with_year_format;
     // if it starts and ends in the current year then there is no need to display the year
     if (tribe_get_start_date($event, false, 'Y') === date('Y') && tribe_get_end_date($event, false, 'Y') === date('Y')) {
         $format = $date_without_year_format;
     }
     if (tribe_event_is_multiday($event)) {
         // multi-date event
         $format2ndday = apply_filters('tribe_format_second_date_in_range', $format, $event);
         if (tribe_event_is_all_day($event)) {
             $inner .= tribe_get_start_date($event, true, $format);
             $inner .= '</span>' . $time_range_separator;
             $inner .= '<span class="tribe-event-date-end">';
             $inner .= tribe_get_end_date($event, true, $format2ndday);
         } else {
             $inner .= tribe_get_start_date($event, false, $format) . ($time ? $datetime_separator . tribe_get_start_date($event, false, $time_format) : '');
             $inner .= '</span>' . $time_range_separator;
             $inner .= '<span class="tribe-event-date-end">';
             $inner .= tribe_get_end_date($event, false, $format2ndday) . ($time ? $datetime_separator . tribe_get_end_date($event, false, $time_format) : '');
         }
     } elseif (tribe_event_is_all_day($event)) {
         // all day event
         $inner .= tribe_get_start_date($event, true, $format);
     } else {
         // single day event
         if (tribe_get_start_date($event, false, 'g:i A') === tribe_get_end_date($event, false, 'g:i A')) {
             // Same start/end time
             $inner .= tribe_get_start_date($event, false, $format) . ($time ? $datetime_separator . tribe_get_start_date($event, false, $time_format) : '');
         } else {
             // defined start/end time
             $inner .= tribe_get_start_date($event, false, $format) . ($time ? $datetime_separator . tribe_get_start_date($event, false, $time_format) : '');
             $inner .= '</span>' . ($show_end_time ? $time_range_separator : '');
             $inner .= '<span class="tribe-event-time">';
             $inner .= $show_end_time ? tribe_get_end_date($event, false, $time_format) : '';
         }
     }
     $inner .= '</span>';
     /**
      * Provides an opportunity to modify the *inner* schedule details HTML (ie before it is
      * wrapped).
      *
      * @param string $inner_html  the output HTML
      * @param int    $event_id    post ID of the event we are interested in
      */
     $inner = apply_filters('tribe_events_event_schedule_details_inner', $inner, $event->ID);
     // Wrap the schedule text
     $schedule = $before . $inner . $after;
     /**
      * Provides an opportunity to modify the schedule details HTML for a specific event after
      * it has been wrapped in the before and after markup.
      *
      * @param string $schedule  the output HTML
      * @param int    $event_id  post ID of the event we are interested in
      * @param string $before    part of the HTML wrapper that was prepended
      * @param string $after     part of the HTML wrapper that was appended
      */
     return apply_filters('tribe_events_event_schedule_details', $schedule, $event->ID, $before, $after);
 }
Ejemplo n.º 17
0
						<div>


							<?php 
        $shortdater = tribe_get_start_date($post->ID, true, 'M');
        $shortdaterend = tribe_get_end_date($post->ID, true, 'M');
        $shortdaterz = substr($shortdater, 0, 3);
        $shortdaterendz = substr($shortdaterend, 0, 3);
        $shortdate = tribe_get_start_date($post->ID, true, 'j');
        $shortdateend = tribe_get_end_date($post->ID, true, 'j');
        $shortdatez = substr($shortdate, 0, 2);
        $shortdateendz = substr($shortdateend, 0, 2);
        ?>

							<?php 
        if (tribe_event_is_all_day() == true) {
            ?>

								<div class="post-date post-date-start" style="right: 20px;">
									<span class="date-month"><?php 
            echo $shortdaterz;
            ?>
</span>
									<span class="date-number"><?php 
            echo $shortdatez;
            ?>
</span>
								</div>

							<?php 
        } else {
Ejemplo n.º 18
0
 /**
  * Return the details of the start/end date/time
  *
  * @since 3.0
  * @param int|null $event
  * @return string
  */
 function tribe_events_event_schedule_details($event = null)
 {
     if (is_null($event)) {
         global $post;
         $event = $post;
     }
     if (is_numeric($event)) {
         $event = get_post($event);
     }
     $format = '';
     $timeFormat = get_option('time_format');
     $microformatStartFormat = tribe_get_start_date($event, false, 'Y-m-dTh:i');
     $microformatEndFormat = tribe_get_end_date($event, false, 'Y-m-dTh:i');
     // If the WordPress date setting matches DATEONLYFORMAT, make the string more readable
     if (get_option('date_format') == TribeDateUtils::DATEONLYFORMAT) {
         /* If the event happens this year, no need to show the year, unless it ends on another year (multi-day) */
         if (tribe_get_start_date($event, false, 'Y') === date('Y') && tribe_get_end_date($event, false, 'Y') === date('Y')) {
             $format = 'F j';
         }
     }
     $schedule = '';
     if (tribe_event_is_multiday($event)) {
         // multi-date event
         $format2ndday = $format;
         // If the WordPress date setting matches DATEONLYFORMAT, make the string more readable
         if (get_option('date_format') == TribeDateUtils::DATEONLYFORMAT) {
             //If it's all day and the end date is in the same month and year, just show the day.
             if (tribe_event_is_all_day($event) && tribe_get_end_date($event, false, 'm') === tribe_get_start_date($event, false, 'm') && tribe_get_end_date($event, false, 'Y') === date('Y')) {
                 $format2ndday = 'j';
             }
         }
         if (tribe_event_is_all_day($event)) {
             // If the multi-day event begins and ends in the same month, just show the month once.
             if (tribe_get_end_date($event, false, 'm') === tribe_get_start_date($event, false, 'm') && tribe_get_end_date($event, false, 'Y') === date('Y')) {
                 $schedule .= '<span class="date-start dtstart">';
                 $schedule .= tribe_get_start_date($event, true, $format);
                 $schedule .= '<span class="value-title" title="' . $microformatStartFormat . '"></span>';
                 $schedule .= '</span> - ';
                 $schedule .= '<span class="date-end dtend">';
                 $schedule .= tribe_get_end_date($event, true, $format2ndday);
                 $schedule .= '<span class="value-title" title="' . $microformatEndFormat . '"></span>';
                 $schedule .= '</span>';
             } else {
                 $schedule .= '<span class="date-start dtstart">';
                 $schedule .= tribe_get_start_date($event, true, $format);
                 $schedule .= '<span class="value-title" title="' . $microformatStartFormat . '"></span>';
                 $schedule .= '</span> - ';
                 $schedule .= '<span class="date-end dtend">';
                 $schedule .= tribe_get_end_date($event, true, $format2ndday);
                 $schedule .= '<span class="value-title" title="' . $microformatEndFormat . '"></span>';
                 $schedule .= '</span>';
             }
         } else {
             $schedule .= '<span class="date-start dtstart">';
             $schedule .= tribe_get_start_date($event, false, $format) . ' @ ' . tribe_get_start_date($event, false, $timeFormat);
             $schedule .= '<span class="value-title" title="' . $microformatStartFormat . '"></span>';
             $schedule .= '</span> - ';
             $schedule .= '<span class="date-end dtend">';
             $schedule .= tribe_get_end_date($event, false, $format2ndday) . ' @ ' . tribe_get_end_date($event, false, $timeFormat);
             $schedule .= '<span class="value-title" title="' . $microformatEndFormat . '"></span>';
             $schedule .= '</span>';
         }
     } elseif (tribe_event_is_all_day($event)) {
         // all day event
         $schedule .= '<span class="date-start dtstart">';
         $schedule .= tribe_get_start_date($event, true, $format);
         $schedule .= '<span class="value-title" title="' . $microformatStartFormat . '"></span>';
         $schedule .= '</span>';
     } else {
         // single day event
         if (tribe_get_start_date($event, false, 'g:i A') === tribe_get_end_date($event, false, 'g:i A')) {
             // Same start/end time
             $schedule .= '<span class="date-start dtstart">';
             $schedule .= tribe_get_start_date($event, false, $format) . ' @ ' . tribe_get_start_date($event, false, $timeFormat);
             $schedule .= '<span class="value-title" title="' . $microformatStartFormat . '"></span>';
             $schedule .= '</span>';
         } else {
             // defined start/end time
             $schedule .= '<span class="date-start dtstart">';
             $schedule .= tribe_get_start_date($event, false, $format) . ' @ ' . tribe_get_start_date($event, false, $timeFormat);
             $schedule .= '<span class="value-title" title="' . $microformatStartFormat . '"></span>';
             $schedule .= '</span> - ';
             $schedule .= '<span class="end-time dtend">';
             $schedule .= tribe_get_end_date($event, false, $timeFormat) . '<span class="value-title" title="' . $microformatEndFormat . '"></span>';
             $schedule .= '</span>';
         }
     }
     return apply_filters('tribe_events_event_schedule_details', $schedule);
 }
Ejemplo n.º 19
0
    if ($featured_image) {
        ?>
					<img class="event-image" src="<?php 
        the_field('featured_image');
        ?>
" > 
				<?php 
    }
    ?>
			</div>


			<!-- Schedule & Recurrence Details -->
			<div class="updated published time-details">
				<?php 
    if (!tribe_event_is_all_day($event)) {
        echo tribe_get_start_date(null, TRUE, 'l, F j, g:i a');
    } else {
        echo tribe_get_start_date(null, FALSE, 'F j');
        ?>
 - <?php 
        echo tribe_get_end_date(null, FALSE, 'F j');
    }
    ?>

				<?php 
    if (!($rsvp == 'No')) {
        ?>

					<button class="register-button">Register Now</button>
					<?php 
Ejemplo n.º 20
0
<?php

/**
 * @var array $events
 */
$columns = array(_x('ID', 'csv-data', 'eventrocket'), _x('Title', 'csv-data', 'eventrocket'), _x('Description', 'csv-data', 'eventrocket'), _x('Start Date', 'csv-data', 'eventrocket'), _x('Start Time', 'csv-data', 'eventrocket'), _x('End Date', 'csv-data', 'eventrocket'), _x('End Time', 'csv-data', 'eventrocket'), _x('Venue', 'csv-data', 'eventrocket'), _x('Organizer', 'csv-data', 'eventrocket'), _x('All Day', 'csv-data', 'eventrocket'), _x('Recurring', 'csv-data', 'eventrocket'));
echo join(', ', $columns) . "\n";
foreach ($events as $event) {
    $fields = array(absint($event->ID), get_the_title($event), $event->post_content, tribe_get_start_date($event->ID, false, 'Y-m-d'), tribe_get_start_date($event->ID, false, 'H:i:s'), tribe_get_end_date($event->ID, false, 'Y-m-d'), tribe_get_end_date($event->ID, false, 'H:i:s'), tribe_get_venue($event->ID), tribe_get_organizer($event->ID), tribe_event_is_all_day($event->ID) ? '1' : '0', tribe_is_recurring_event($event->ID) ? '1' : '0');
    foreach ($fields as &$csv_field) {
        $csv_field = '"' . str_replace('"', '""', $csv_field) . '"';
    }
    echo join(', ', $fields) . "\n";
}
Ejemplo n.º 21
0
foreach($all_events as $post) {
?>
			<tr>
			<td width="10%">
			<figure id="figure">
				<header id="figure_header">
					<?php echo sp_get_start_date(null,true,"M"); ?>
				</header>
				<section id="figure_section">
					<?php echo sp_get_start_date(null,true,"d"); ?>
				</section>
			</figure>
			</td>
			<td>
			<a href="<?php the_permalink();?>"><h3><?php the_title(); ?></h3></a>
			<?php if(tribe_event_is_all_day(null)==true){
				echo sp_get_start_date();
			}
			else echo sp_get_start_date(null,true,"F j, Y, g:i a")." - ".sp_get_end_date(null,true,"F j, Y, g:i a");?>
			</td>
			</tr>
			<?php  } wp_reset_query();?>
			</table>
			<a class="link_button" href="events">See all events</a>
		</article>
		
	</div>


</div>
Ejemplo n.º 22
0
 /**
  * End Date
  *
  * Returns the event end date
  *
  * @category Events
  * @param int    $event       (optional)
  * @param bool   $displayTime If true shows date and time, if false only shows date
  * @param string $dateFormat  Allows date and time formating using standard php syntax (http://php.net/manual/en/function.date.php)
  * @param string $timezone    Timezone in which to present the date/time (or default behaviour if not set)
  *
  * @return string|null Date
  */
 function tribe_get_end_date($event = null, $displayTime = true, $dateFormat = '', $timezone = null)
 {
     if (is_null($event)) {
         global $post;
         $event = $post;
     }
     if (is_numeric($event)) {
         $event = get_post($event);
     }
     if (!is_object($event)) {
         return '';
     }
     if (tribe_event_is_all_day($event)) {
         $displayTime = false;
     }
     $end_date = Tribe__Events__Timezones::event_end_timestamp($event->ID, $timezone);
     return tribe_event_format_date($end_date, $displayTime, $dateFormat);
 }
Ejemplo n.º 23
0
 /**
  * Return the details of the start/end date/time.
  *
  * The highest level means of customizing this function's output is simply to adjust the WordPress date and time
  * formats (via the General Settings admin screen). Beyond that however there are two filters which can be used to
  * exercise further control here.
  *
  * The first is 'tribe_events_event_schedule_details_formatting' which allows an array of format settings to be
  * altered - it's basic make-up is as a simple set of key:value pairs as follows.
  *
  * "datetime_separator": this is inserted between the date and the time and defaults to an ampersat @ character.
  *     Note that if you modify this you should ordinarily be careful to include leading and trailing spaces (an
  *     example might be ' at ').
  *
  * "same_year_format": if an event starts and ends in the same year it's assumed that including the year in the
  *     output is superfluous. That being the case the function changes the date format, by default, to 'F j'. This
  *     may not be ideal in all locales so an alternative can be provided here. Do note that this substitution is
  *     only ever made if A) the event starts and ends in the same year and B) the date format does not include any
  *     time formatting characters.
  *
  *     This can also effectively be used to turn off the assumption that the year should be omitted, simply by
  *     setting it to the value of the 'date_format' option, for example.
  *
  * "show_end_time": for single day events only (not including all day events) it may not always be desirable to
  *     include the end time. In that situation, this setting can be set to false and the end time will not be
  *     displayed.
  *
  * "time": if it is undesirable to show times and only dates should be displayed then this setting can be set to
  *     false. If it is false it will by extension cause 'show_end_time' to be false.
  *
  * The resulting string can also be caught and manipulated, or completely overridden, using the
  * 'tribe_events_event_schedule_details' filter, should none of the above settings be sufficient.
  *
  * @since 3.0
  * @param int|null $event
  * @return string
  */
 function tribe_events_event_schedule_details($event = null, $before = '', $after = '')
 {
     if (is_null($event)) {
         global $post;
         $event = $post;
     }
     if (is_numeric($event)) {
         $event = get_post($event);
     }
     $schedule = '';
     $format = '';
     $date_format = get_option('date_format');
     $time_format = get_option('time_format');
     $microformatStartFormat = tribe_get_start_date($event, false, 'Y-m-dTh:i');
     $microformatEndFormat = tribe_get_end_date($event, false, 'Y-m-dTh:i');
     $settings = array('datetime_separator' => ' @ ', 'same_year_format' => 'F j', 'show_end_time' => true, 'time' => true);
     $settings = wp_parse_args(apply_filters('tribe_events_event_schedule_details_formatting', $settings), $settings);
     if (!$settings['time']) {
         $settings['show_end_time'] = false;
     }
     extract($settings);
     // If the date format will result in the year being shown but does *not* include any time formatting...
     if (TribeDateUtils::formatContainsYear($date_format) && !TribeDateUtils::formatContainsTime($date_format)) {
         // ... and it starts and ends in the current year then there is no need to display the year
         if (tribe_get_start_date($event, false, 'Y') === date('Y') && tribe_get_end_date($event, false, 'Y') === date('Y')) {
             $format = $same_year_format;
         }
     }
     if (tribe_event_is_multiday($event)) {
         // multi-date event
         $format2ndday = $format;
         // If the WordPress date setting matches DATEONLYFORMAT, make the string more readable
         if (get_option('date_format') == TribeDateUtils::DATEONLYFORMAT) {
             //If it's all day and the end date is in the same month and year, just show the day.
             if (tribe_event_is_all_day($event) && tribe_get_end_date($event, false, 'm') === tribe_get_start_date($event, false, 'm') && tribe_get_end_date($event, false, 'Y') === date('Y')) {
                 $format2ndday = 'j';
             }
         }
         if (tribe_event_is_all_day($event)) {
             // If the multi-day event begins and ends in the same month, just show the month once.
             if (tribe_get_end_date($event, false, 'm') === tribe_get_start_date($event, false, 'm') && tribe_get_end_date($event, false, 'Y') === date('Y')) {
                 $schedule .= '<span class="date-start dtstart">';
                 $schedule .= tribe_get_start_date($event, true, $format);
                 $schedule .= '<span class="value-title" title="' . $microformatStartFormat . '"></span>';
                 $schedule .= '</span> - ';
                 $schedule .= '<span class="date-end dtend">';
                 $schedule .= tribe_get_end_date($event, true, $format2ndday);
                 $schedule .= '<span class="value-title" title="' . $microformatEndFormat . '"></span>';
                 $schedule .= '</span>';
             } else {
                 $schedule .= '<span class="date-start dtstart">';
                 $schedule .= tribe_get_start_date($event, true, $format);
                 $schedule .= '<span class="value-title" title="' . $microformatStartFormat . '"></span>';
                 $schedule .= '</span> - ';
                 $schedule .= '<span class="date-end dtend">';
                 $schedule .= tribe_get_end_date($event, true, $format2ndday);
                 $schedule .= '<span class="value-title" title="' . $microformatEndFormat . '"></span>';
                 $schedule .= '</span>';
             }
         } else {
             $schedule .= '<span class="date-start dtstart">';
             $schedule .= tribe_get_start_date($event, false, $format) . ($time ? $datetime_separator . tribe_get_start_date($event, false, $time_format) : '');
             $schedule .= '<span class="value-title" title="' . $microformatStartFormat . '"></span>';
             $schedule .= '</span> - ';
             $schedule .= '<span class="date-end dtend">';
             $schedule .= tribe_get_end_date($event, false, $format2ndday) . ($time ? $datetime_separator . tribe_get_end_date($event, false, $time_format) : '');
             $schedule .= '<span class="value-title" title="' . $microformatEndFormat . '"></span>';
             $schedule .= '</span>';
         }
     } elseif (tribe_event_is_all_day($event)) {
         // all day event
         $schedule .= '<span class="date-start dtstart">';
         $schedule .= tribe_get_start_date($event, true, $format);
         $schedule .= '<span class="value-title" title="' . $microformatStartFormat . '"></span>';
         $schedule .= '</span>';
     } else {
         // single day event
         if (tribe_get_start_date($event, false, 'g:i A') === tribe_get_end_date($event, false, 'g:i A')) {
             // Same start/end time
             $schedule .= '<span class="date-start dtstart">';
             $schedule .= tribe_get_start_date($event, false, $format) . ($time ? $datetime_separator . tribe_get_start_date($event, false, $time_format) : '');
             $schedule .= '<span class="value-title" title="' . $microformatStartFormat . '"></span>';
             $schedule .= '</span>';
         } else {
             // defined start/end time
             $schedule .= '<span class="date-start dtstart">';
             $schedule .= tribe_get_start_date($event, false, $format) . ($time ? $datetime_separator . tribe_get_start_date($event, false, $time_format) : '');
             $schedule .= '<span class="value-title" title="' . $microformatStartFormat . '"></span>';
             $schedule .= '</span>' . ($show_end_time ? ' - ' : '');
             $schedule .= '<span class="end-time dtend">';
             $schedule .= ($show_end_time ? tribe_get_end_date($event, false, $time_format) : '') . '<span class="value-title" title="' . $microformatEndFormat . '"></span>';
             $schedule .= '</span>';
         }
     }
     if (!empty($schedule)) {
         $schedule = $before . $schedule . $after;
     }
     return apply_filters('tribe_events_event_schedule_details', $schedule);
 }
Ejemplo n.º 24
0
/**
 * Returns the event date, or today's date if the event has started and is not over yet.
 *
 * @return int
 **/
function tribe_events_get_widget_event_post_date()
{
    global $post, $wp_query;
    if (class_exists('Tribe__Events__Timezones')) {
        $startDate = Tribe__Events__Timezones::event_start_timestamp($post->ID, null);
        $endDate = Tribe__Events__Timezones::event_end_timestamp($post->ID, null);
    } else {
        $startDate = strtotime($post->EventStartDate);
        $endDate = strtotime($post->EventEndDate);
    }
    $is_multiday = tribe_event_is_multiday($post->ID);
    $is_all_day = tribe_event_is_all_day($post->ID);
    $today = current_time('timestamp');
    $yesterday = $today - DAY_IN_SECONDS;
    // Gets Yesterday cutoff to check which date we pick
    $yesterday_end = tribe_end_of_day(date(Tribe__Date_Utils::DBDATETIMEFORMAT, $yesterday), 'U') + 1;
    // Check if the yesterday cutoff will get the start date of the event
    if ($yesterday_end >= $startDate && !$is_multiday && !$is_all_day) {
        $postDate = $yesterday;
        // If the event starts way in the past or ends way in the future, let's show today's date
    } elseif ($today > $startDate && $today < $endDate) {
        $postDate = $today;
    } else {
        $postDate = $startDate;
    }
    /* If the user clicked in a particular day, let's show that day as the event date, even if the event spans a few days */
    if (defined('DOING_AJAX') && DOING_AJAX && isset($_POST['action']) && $_POST['action'] == 'tribe-mini-cal-day') {
        $postDate = strtotime($_POST['eventDate']);
    }
    return apply_filters('tribe_events_get_widget_event_post_date', $postDate);
}
Ejemplo n.º 25
0
    esc_html_e('End:', 'the-events-calendar');
    ?>
 </dt>
			<dd>
				<abbr class="tribe-events-abbr dtend" title="<?php 
    esc_attr_e($end_ts);
    ?>
"> <?php 
    esc_html_e($end_date);
    ?>
 </abbr>
			</dd>

		<?php 
    // All day (single day) events
} elseif (tribe_event_is_all_day()) {
    ?>

			<dt> <?php 
    esc_html_e('Date:', 'the-events-calendar');
    ?>
 </dt>
			<dd>
				<abbr class="tribe-events-abbr updated published dtstart" title="<?php 
    esc_attr_e($start_ts);
    ?>
"> <?php 
    esc_html_e($start_date);
    ?>
 </abbr>
			</dd>
Ejemplo n.º 26
0
 /**
  * @deprecated
  */
 function tribe_get_all_day($postId = null)
 {
     _deprecated_function(__FUNCTION__, '3.0', 'tribe_event_is_all_day( $postId )');
     return apply_filters('tribe_get_all_day', tribe_event_is_all_day($postId));
 }