// Load Management Events data abstract
require_once GLM_MEMBERS_EVENTS_PLUGIN_CLASS_PATH.'/data/dataManagement.php';
+require_once(GLM_MEMBERS_EVENTS_PLUGIN_CLASS_PATH.'/data/dataRecurrences.php');
/**
* GlmMembersAdmin_management_packaging
public function addEvents()
{
+ $Recurrences = new GlmDataEventsRecurrences($this->wpdb, $this->config);
$sql = "
SELECT *
FROM {$this->settings['schema']}.{$this->settings['tablename']}
WHERE edate >= '{$this->settings['sdate']}'::DATE";
+ $sql .= " AND reacur ";
try {
$events = $this->dbh->query($sql)->fetchAll(PDO::FETCH_ASSOC);
$return .= '<pre>$events: ' . print_r($events, true) . '</pre>';
FROM " . GLM_MEMBERS_EVENTS_PLUGIN_DB_PREFIX . "events
WHERE old_event_id = '" . esc_sql( trim($event['id']) ) . "'";
$found = $this->wpdb->get_row($sql, ARRAY_A);
+ echo '<pre>$found: ' . print_r($found, true) . '</pre>';
if ( isset($found) ) {
$this->wpdb->update(
GLM_MEMBERS_EVENTS_PLUGIN_DB_PREFIX . 'events',
'updated' => $event['create_date'],
'approved' => $event['approved_date'],
'name' => $event['header'],
+ 'intro' => $event['descr'],
'descr' => $event['descr'],
'image' => $event['image'],
),
'%s',
'%s',
'%s',
+ '%s',
),
array( '%d' )
);
+ $eventId = $found['id'];
} else {
$this->wpdb->insert(
GLM_MEMBERS_EVENTS_PLUGIN_DB_PREFIX . 'events',
'updated' => $event['create_date'],
'approved' => $event['approved_date'],
'name' => $event['header'],
+ 'intro' => $event['descr'],
'descr' => $event['descr'],
'image' => $event['image'],
'old_event_id' => $event['id']
'%s',
'%s',
'%s',
+ '%s',
'%d',
)
);
+ $eventId = $this->wpdb->insert_id;
+ echo '<pre>$eventId: from insert ' . print_r($eventId, true) . '</pre>';
+ if ( !$eventId ) {
+ echo $this->wpdb->last_error;
+ }
+ }
+ echo '<pre>$eventId: ' . print_r($eventId, true) . '</pre>';
+ if (!$eventId) {
+ die('something is wrong no eventId');
+ }
+ $allDates = !$event['reacur'];
+ $allDay = $event['all_day'];
+ $dayOfWeek =
+ $monthOfYear =
+ $weekOfMonth =
+ $byDayOfMonth =
+ $lastDayOfMonth = null;
+ if ( !$allDates ) {
+ if ( $event['daysow'] ) {
+ $dayOfWeek = $event['daysow'];
+ }
+ if ( $event['weekom'] ) {
+ switch ($event['weekom']) {
+ case '1':
+ $weekOfMonth = 1;
+ break;
+ case '2':
+ $weekOfMonth = 2;
+ break;
+ case '3':
+ $weekOfMonth = 4;
+ break;
+ case '4':
+ $weekOfMonth = 6;
+ break;
+ }
+ } else {
+ $weekOfMonth = 63;
+ }
+ $monthOfYear = 4095;
}
+ $this->wpdb->insert(
+ GLM_MEMBERS_EVENTS_PLUGIN_DB_PREFIX . 'recurrences',
+ array(
+ 'event' => $eventId,
+ 'start_time' => $event['bdate'],
+ 'end_time' => $event['bdate'],
+ 'from_date' => $event['bdate'],
+ 'to_date' => $event['edate'],
+ 'all_day' => $allDay,
+ 'all_dates' => $allDates,
+ 'month_of_year' => $monthOfYear,
+ 'week_of_month' => $weekOfMonth,
+ 'day_of_week' => $dayOfWeek,
+ 'by_day_of_month' => $byDayOfMonth,
+ 'last_day_of_month' => $lastDayOfMonth
+ ),
+ array(
+ '%d',
+ '%s',
+ '%s',
+ '%s',
+ '%s',
+ '%d',
+ '%d',
+ '%d',
+ '%d',
+ '%d',
+ '%d',
+ '%d',
+ )
+ );
+ $recurId = $this->wpdb->insert_id;
+ $Recurrences->createRecurrenceTimesEntries( $recurId, true, true );
}
} catch(PDOException $e) {
echo '<pre>$e: ' . print_r($e, true) . '</pre>';