Catch exceptions too, so that the callback in js is still called.
authorJan Schneider <jan@horde.org>
Mon, 7 Sep 2009 13:23:26 +0000 (15:23 +0200)
committerJan Schneider <jan@horde.org>
Mon, 7 Sep 2009 13:23:26 +0000 (15:23 +0200)
kronolith/ajax.php

index d60d6c1..19374db 100644 (file)
@@ -197,14 +197,19 @@ try {
 
     case 'QuickSaveEvent':
         $kronolith_driver = Kronolith::getDriver();
-        $event = Kronolith::quickAdd(Horde_Util::getFormData('text'),
-                                     Kronolith::getDefaultCalendar(PERMS_EDIT));
-        if (is_a($event, 'PEAR_Error')) {
-            $notification->push($event, 'horde.error');
+        try {
+            $event = Kronolith::quickAdd(Horde_Util::getFormData('text'),
+                                         Kronolith::getDefaultCalendar(PERMS_EDIT));
+            if (is_a($event, 'PEAR_Error')) {
+                $notification->push($event, 'horde.error');
+                $result = true;
+                break;
+            }
+            $result = saveEvent($event);
+        } catch (Horde_Exception $e) {
+            $notification->push($e);
             $result = true;
-            break;
         }
-        $result = saveEvent($event);
         break;
 
     case 'UpdateEvent':