Function Reference: geodir_imex_get_event_data
Summary
Retrieves the event data to export.
Package
GeoDirectory
Parameters
- $post
- (array) (required) Post array.
- Default: None
- $gd_post_info
- (object) (required) Geodirectory Post object.
- Default: None
Return Values
- (array)
- Event data array.
Change Log
Since: 1.5.1
Source File
geodir_imex_get_event_data() is located in geodirectory-admin/admin_functions.php [Line: 5798]
Source Code
function geodir_imex_get_event_data($post, $gd_post_info) { $event_date = isset( $post['event_date'] ) && $post['event_date'] != '' && $post['event_date'] != '0000-00-00 00:00:00' ? date_i18n( 'd/m/Y', strtotime( $post['event_date'] ) ) : ''; $event_enddate = $event_date; $starttime = isset( $post['starttime'] ) && $post['starttime'] != '' && $post['starttime'] != '00:00:00' ? date_i18n( 'H:i', strtotime( $post['starttime'] ) ) : ''; $endtime = isset( $post['endtime'] ) && $post['endtime'] != '' && $post['endtime'] != '00:00:00' ? date_i18n( 'H:i', strtotime( $post['endtime'] ) ) : ''; $is_recurring_event = ''; $event_duration_days = ''; $is_whole_day_event = ''; $recurring_dates = ''; $event_starttimes = ''; $event_endtimes = ''; $recurring_type = ''; $recurring_interval = ''; $recurring_week_days = ''; $recurring_week_nos = ''; $max_recurring_count = ''; $recurring_end_date = ''; $recurring_data = isset($gd_post_info->recurring_dates) ? maybe_unserialize($gd_post_info->recurring_dates) : array(); if (!empty($recurring_data)) { $event_date = isset( $recurring_data['event_start'] ) && $recurring_data['event_start'] != '' && $recurring_data['event_start'] != '0000-00-00 00:00:00' ? date_i18n( 'd/m/Y', strtotime( $recurring_data['event_start'] ) ) : $event_date; $event_enddate = isset( $recurring_data['event_end'] ) && $recurring_data['event_end'] != '' && $recurring_data['event_end'] != '0000-00-00 00:00:00' ? date_i18n( 'd/m/Y', strtotime( $recurring_data['event_end'] ) ) : $event_date; $starttime = isset( $recurring_data['starttime'] ) && $recurring_data['starttime'] != '' && $recurring_data['starttime'] != '00:00:00' ? date_i18n( 'H:i', strtotime( $recurring_data['starttime'] ) ) : $starttime; $endtime = isset( $recurring_data['endtime'] ) && $recurring_data['endtime'] != '' && $recurring_data['endtime'] != '00:00:00' ? date_i18n( 'H:i', strtotime( $recurring_data['endtime'] ) ) : $endtime; $is_whole_day_event = !empty($recurring_data['all_day']) ? 1 : ''; $different_times = !empty($recurring_data['different_times']) ? true : false; $recurring_pkg = geodir_event_recurring_pkg( $gd_post_info ); $is_recurring = isset( $gd_post_info->is_recurring ) && (int)$gd_post_info->is_recurring == 0 ? false : true; if ($recurring_pkg && $is_recurring) { $recurring_dates = $event_date; $event_enddate = ''; $is_recurring_event = 1; $recurring_type = !empty($recurring_data['repeat_type']) && in_array($recurring_data['repeat_type'], array('day', 'week', 'month', 'year', 'custom')) ? $recurring_data['repeat_type'] : 'custom'; if (!empty($recurring_data['event_recurring_dates'])) { $event_recurring_dates = explode( ',', $recurring_data['event_recurring_dates'] ); if (!empty($event_recurring_dates)) { $recurring_dates = array(); foreach ($event_recurring_dates as $date) { $recurring_dates[] = date_i18n( 'd/m/Y', strtotime( $date ) ); } $recurring_dates = implode(",", $recurring_dates); } } if ($recurring_type == 'custom') { if (!$is_whole_day_event) { $event_starttimes = $starttime; $event_endtimes = $endtime; if (!empty($recurring_data['starttimes'])) { $times = array(); foreach ($recurring_data['starttimes'] as $time) { $times[] = $time != '00:00:00' ? date_i18n( 'H:i', strtotime( $time ) ) : '00:00'; } $event_starttimes = implode(",", $times); } if (!empty($recurring_data['endtimes'])) { $times = array(); foreach ($recurring_data['endtimes'] as $time) { $times[] = $time != '00:00:00' ? date_i18n( 'H:i', strtotime( $time ) ) : '00:00'; } $event_endtimes = implode(",", $times); } if (!$different_times) { $event_starttimes = ''; $event_endtimes = ''; } } } else { $event_duration_days = isset($recurring_data['duration_x']) ? (int)$recurring_data['duration_x'] : 1; $recurring_interval = !empty($recurring_data['repeat_x']) && (int)$recurring_data['repeat_x'] > 0 ? $recurring_data['repeat_x'] : 1; if (($recurring_type == 'week' || $recurring_type == 'month') && !empty($recurring_data['repeat_days'])) { $week_days = array('Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'); $days = array(); foreach ($recurring_data['repeat_days'] as $day) { if (isset($week_days[$day])) { $days[] = $week_days[$day]; } } $recurring_week_days = implode(",", array_unique($days)); } $recurring_week_nos = $recurring_type == 'month' && !empty($recurring_data['repeat_weeks']) ? implode(",", $recurring_data['repeat_weeks']) : $recurring_week_nos; if (!empty($recurring_data['repeat_end_type']) && (int)$recurring_data['repeat_end_type'] == 1) { $recurring_end_date = isset($recurring_data['repeat_end']) && $recurring_data['repeat_end'] != '' && $recurring_data['repeat_end'] != '0000-00-00 00:00:00' ? date_i18n( 'd/m/Y', strtotime( $recurring_data['repeat_end'] ) ) : ''; $max_recurring_count = empty($recurring_end_date) ? 1 : ''; } else { $max_recurring_count = (!empty($recurring_data['max_repeat']) && (int)$recurring_data['max_repeat'] > 0 ? (int)$recurring_data['max_repeat'] : 1); } } } } if ($is_whole_day_event) { $starttime = ''; $endtime = ''; $event_starttimes = ''; $event_endtimes = ''; } $data = array(); $data['event_date'] = $event_date; $data['event_enddate'] = $event_enddate; $data['starttime'] = $starttime; $data['endtime'] = $endtime; $data['is_recurring_event'] = $is_recurring_event; $data['recurring_dates'] = $recurring_dates; $data['event_duration_days'] = $event_duration_days; $data['is_whole_day_event'] = $is_whole_day_event; $data['event_starttimes'] = $event_starttimes; $data['event_endtimes'] = $event_endtimes; $data['recurring_type'] = $recurring_type; $data['recurring_interval'] = $recurring_interval; $data['recurring_week_days'] = $recurring_week_days; $data['recurring_week_nos'] = $recurring_week_nos; $data['max_recurring_count'] = $max_recurring_count; $data['recurring_end_date'] = $recurring_end_date; return $data; }