--- iCalendar.php.old	2009-10-28 18:39:38.000000000 +0100
+++ iCalendar.php	2009-10-28 18:39:38.000000000 +0100
@@ -677,14 +677,22 @@
                         $this->setAttribute($tag, $this->_parseDateTime($ts[0], $tzid), $params);
                     }
                     break;
-
+                                                               case 'DESCRIPTION':
+                                                               case 'ACTION':
+                                                               case 'X-MOZ-LASTACK': 
+                                                               case 'X-MOZ-SNOOZE-TIME': 
+                                                                       $this->setAttribute($tag, $value);
                 case 'TRIGGER':
                     if (isset($params['VALUE']) &&
                         $params['VALUE'] == 'DATE-TIME') {
                             $this->setAttribute($tag, $this->_parseDateTime($value, $tzid), $params);
                     } else {
-                        $this->setAttribute($tag, $this->_parseDuration($value), $params);
-                    }
+                                                                                                       if($base == 'VALARM') {
+                               $this->setAttribute($tag . ";VALUE=DURATION", $value);
+                                                                                                       } else {
+                               $this->setAttribute($tag, $this->_parseDuration($value), $params);
+                                                                                                       }
+                      }
                     break;
 
                 // Comma seperated dates.