I have modified your event query to just find all events instead of the one’s within a group.
// create the widget output
function widget( $args, $instance ) {
$title = apply_filters( 'widget_title', $instance[ 'title' ] );
$categories = get_categories( array(
'orderby' => 'name',
'order' => 'ASC'
) );
echo $args['before_widget'] . $args['before_title'] . $title . $args['after_title'];
$group_name = bp_get_group_id();
$event_data = array();
$args = array(
'post_type' => 'bpem_event',
'posts_per_page' => -1,
);
$i=0;
$event_query = new WP_Query( $args );
if ( $event_query->have_posts() ) : while ( $event_query->have_posts() ) :
$event_query->the_post();
$start_date = get_post_meta( get_the_id(), 'evn_startDate');
$start_d = date("Y-m-d", strtotime($start_date[0]));
$start_time = get_post_meta(get_the_id(), 'evn_startTime');
$start_t = date("H:i:s", strtotime($start_time[0]));
$end_date = get_post_meta( get_the_id(), 'evn_endDate');
$end_d = date("Y-m-d", strtotime($end_date[0]));
$end_time = get_post_meta(get_the_id(), 'evn_endTime');
$end_t = date("H:i:s", strtotime($end_time[0]));
$event_data[] = array(
'title' => get_the_title(),
'start' => $start_d.'T'.$start_t,
'end' => $end_d.'T'.$end_t,
'url' => get_the_permalink(),
'imageurl' => get_the_post_thumbnail_url( get_the_id(), array(200,200) )
);
$i++;
endwhile;
wp_reset_postdata();
endif;
echo "<div id='bpem-calendar'></div>";
?>
<script type="text/javascript">
jQuery(document).ready(function() {
var todayDate = jQuery.datepicker.formatDate('yy-mm-dd', new Date());
jQuery('#bpem-calendar').fullCalendar({
header: {
left: 'prev,next today',
center: 'title',
right: 'month,agendaWeek,agendaDay'
},
defaultDate: todayDate,
//businessHours: true, // display business hours
editable: true,
eventLimit: true,
navLinks: true,
events:<?php echo json_encode($event_data); ?>
,
//timeFormat: 'H(:mm)'
eventRender: function(event, eventElement) {
if (event.imageurl) {
eventElement.find("div.fc-content").prepend("<img src='" + event.imageurl + "' width='60' height='60'>");
}
},
});
jQuery('.fc-agendaWeek-button').click(function() {
var str = jQuery('.fc-toolbar .fc-center').text().replace(/a€”/g, '-');
jQuery('.fc-toolbar .fc-center h2').text(str);
});
});
</script>
<?php
echo $args['after_widget'];
}
function form( $instance ) {
$title = ! empty( $instance['title'] ) ? $instance['title'] : ''; ?>
<p>
<label for="<?php echo $this->get_field_id( 'title' ); ?>">Title:</label>
<input type="text" id="<?php echo $this->get_field_id( 'title' ); ?>" name="<?php echo $this->get_field_name( 'title' ); ?>" value="<?php echo esc_attr( $title ); ?>" />
</p>
<p>This widget displays all of your post categories as a two-column list (or a one-column list when rendered responsively).</p>
<?php }
// Update database with new info
function update( $new_instance, $old_instance ) {
$instance = $old_instance;
$instance[ 'title' ] = strip_tags( $new_instance[ 'title' ] );
return $instance;
}
}
// register the widget
function bpem_register_widgets() {
register_widget( 'bpem_Events_Calendar_Widget' );
}
add_action( 'widgets_init', 'bpem_register_widgets' );