? feedapi_mapper_date_fix.patch.txt Index: mappers/feedapi_mapper_date.inc =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/feedapi_mapper/mappers/Attic/feedapi_mapper_date.inc,v retrieving revision 1.1.2.3.2.5 diff -u -p -r1.1.2.3.2.5 feedapi_mapper_date.inc --- mappers/feedapi_mapper_date.inc 20 Apr 2009 13:31:04 -0000 1.1.2.3.2.5 +++ mappers/feedapi_mapper_date.inc 28 Apr 2009 04:27:39 -0000 @@ -99,26 +99,27 @@ function feedapi_mapper_date_datetime(&$ */ function feedapi_mapper_date_ical($node, $field, $feed_element) { $field_name = $field['field_name']; + $date_element = !empty($feed_element['DATE']) ? $feed_element['DATE'] : $feed_element; - $timezone = $feed_element['DTSTART']['tz']; + $timezone = $date_element['DTSTART']['tz']; if (empty($timezone)) $timezone = date_default_timezone_name(); $date = new date_constructor(); $date->construct($field); $date->set_value('timezone', $timezone); - $date->set_value('start_datetime', $feed_element['DTSTART']['datetime']); - $date->set_value('end_datetime', $feed_element['DTEND']['datetime']); - $date->set_value('all_day', $feed_element['all_day']); + $date->set_value('start_datetime', $date_element['DTSTART']['datetime']); + $date->set_value('end_datetime', $date_element['DTEND']['datetime']); + $date->set_value('all_day', $date_element['all_day']); $date->build(); $node->$field_name = array($date->value); - if (array_key_exists('RRULE', $feed_element) && !empty($feed_element['RRULE']) && module_exists('date_repeat')) { + if (array_key_exists('RRULE', $date_element) && !empty($date_element['RRULE']) && module_exists('date_repeat')) { include_once('./'. drupal_get_path('module', 'date_repeat') .'/date_repeat_calc.inc'); include_once('./'. drupal_get_path('module', 'date') .'/date_repeat.inc'); // Explode the RRULE into parts so we can analyze it. - $rrule = $feed_element['RRULE'] . (!empty($feed_element['EXDATE']) ? "/n". $feed_element['EXDATE'] : ""); + $rrule = $date_element['RRULE'] . (!empty($date_element['EXDATE']) ? "/n". $date_element['EXDATE'] : ""); $form_values = date_ical_parse_rrule($field, $rrule); // Set an maximum value for repeating dates. @@ -287,4 +288,4 @@ class date_constructor { $this->value['value2'] = date_format($this->value['date2'], $this->format); $this->value['timezone'] = $this->to_tz; } -} \ No newline at end of file +}