diff --git a/cod_session/cod_session.module b/cod_session/cod_session.module index 92c0c16..f502fd8 100644 --- a/cod_session/cod_session.module +++ b/cod_session/cod_session.module @@ -860,11 +860,23 @@ function cod_session_days() { static $days; if (empty($days)) { $days = array(); - $sql = "SELECT DATE_FORMAT(s.field_slot_datetime_value, '%s') AS day FROM {content_type_time_slot} s - INNER JOIN {node} n ON s.nid = n.nid AND s.vid = n.vid - GROUP BY DATE_FORMAT(s.field_slot_datetime_value, '%s') - ORDER BY s.field_slot_datetime_value ASC"; - $result = db_query(db_rewrite_sql($sql), '%Y-%m-%d', '%Y-%m-%d'); + + $db_type = $GLOBALS['db_type']; + switch ($db_type) { + case 'mysql': + case 'mysqli': + $sql = "SELECT DATE_FORMAT(s.field_slot_datetime_value, '%s') AS day FROM {content_type_time_slot} s + INNER JOIN {node} n ON s.nid = n.nid AND s.vid = n.vid + GROUP BY DATE_FORMAT(s.field_slot_datetime_value, '%s') + ORDER BY s.field_slot_datetime_value ASC"; + $result = db_query(db_rewrite_sql($sql), '%Y-%m-%d', '%Y-%m-%d'); + case 'pgsql': + $sql = "SELECT TO_CHAR(s.field_slot_datetime_value, '%s') AS day FROM {content_type_time_slot} s + INNER JOIN {node} n ON s.nid = n.nid AND s.vid = n.vid + GROUP BY TO_CHAR(s.field_slot_datetime_value, '%s') + ORDER BY day ASC"; + $result = db_query(db_rewrite_sql($sql), 'YYYY-MM-DD', 'YYYY-MM-DD'); + } while ($record = db_fetch_array($result)) { $date = date_make_date($record['day'], NULL, DATE_DATETIME, array('year', 'month', 'day')); $days[$record['day']] = date_format_date($date, 'custom', 'l F, d Y');