/* Prepare DB stuff. */
PEAR::pushErrorHandling(PEAR_ERROR_CALLBACK, create_function('$e', 'echo $e->toString()."\n";exit;'));
-$db = $injector->getInstance('Horde_Core_Factory_DbPear')->create();
-$result = $db->query('SELECT event_title, event_id, event_creator_id, event_start, event_end, event_allday, event_recurenddate FROM ' . $conf['calendar']['params']['table'] . ' ORDER BY event_creator_id');
-$stmt = $db->prepare('UPDATE kronolith_events SET event_start = ?, event_end = ?, event_recurenddate = ? WHERE event_id = ?');
+$db = $injector->getInstance('Horde_Db_Adapter');
+try {
+ $result = $db->selectAll('SELECT event_title, event_id, event_creator_id, event_start, event_end, event_allday, event_recurenddate FROM ' . $conf['calendar']['params']['table'] . ' ORDER BY event_creator_id');
+} catch (Horde_Db_Exception $e) {
+ echo $e->getMessage() . "\n";
+ exit;
+}
+
+$stmt = 'UPDATE kronolith_events SET event_start = ?, event_end = ?, event_recurenddate = ? WHERE event_id = ?';
/* Confirm changes. */
if (!isset($argv[1]) || $argv[1] != '--yes') {
$creator = null;
$utc = new DateTimeZone('UTC');
echo "Converting events for:\n";
-while ($row = $result->fetchRow(DB_FETCHMODE_ASSOC)) {
+foreach ($result as $row) {
if ($row['event_allday']) {
continue;
}
$end->setTimezone($utc);
$recur_end = new DateTime($row['event_recurenddate'], $timezone);
$recur_end->setTimezone($utc);
- $db->execute($stmt, array($start->format('Y-m-d H:i:s'), $end->format('Y-m-d H:i:s'), $recur_end->format('Y-m-d H:i:s'), $row['event_id']));
+
+ try {
+ $db->update($stmt, array($start->format('Y-m-d H:i:s'), $end->format('Y-m-d H:i:s'), $recur_end->format('Y-m-d H:i:s'), $row['event_id']));
+ } catch (Horde_Db_Exception $e) {
+ echo $e->getMessage() . "\n";
+ exit;
+ }
$count++;
}
echo "$count\n";