public function createCalendar(ICalendar $calendar) { try { $dbHandler = $this->getConnection(); $data = array(CalendarManager::CALENDAR_KEY_ID => $calendar->getId(), CalendarManager::CALENDAR_KEY_NAME => $calendar->getName(), CalendarManager::CALENDAR_KEY_DESCRIPTION => $calendar->getDescription(), CalendarManager::CALENDAR_KEY_TIMEZONE => $calendar->getTimezone(), CalendarManager::CALENDAR_KEY_OWNERID => $calendar->getOwnerId(), CalendarManager::CALENDAR_KEY_USERNAME => $calendar->getUsername(), CalendarManager::CALENDAR_KEY_PASSWORD => $calendar->getPassword()); $sqlQuery = 'INSERT INTO ' . self::REMOTE_CALENDAR_TABLE_NAME . ' VALUES (' . ' :' . CalendarManager::CALENDAR_KEY_ID . ',' . ' :' . CalendarManager::CALENDAR_KEY_NAME . ',' . ' :' . CalendarManager::CALENDAR_KEY_DESCRIPTION . ',' . ' :' . CalendarManager::CALENDAR_KEY_TIMEZONE . ',' . ' :' . CalendarManager::CALENDAR_KEY_OWNERID . ',' . ' :' . CalendarManager::CALENDAR_KEY_USERNAME . ',' . ' :' . CalendarManager::CALENDAR_KEY_PASSWORD . ')'; // print_r($sqlQuery); $stmt = $dbHandler->prepare($sqlQuery); $stmt->execute($data); } catch (PDOException $e) { $this->destroyConnection(); throw new EyeDBException('An error occured while attempting to store calendar data.', 0, $e); } }
public function updateCalendar(ICalendar $calendar) { try { $dbHandler = $this->getConnection(); $data = array(CalendarManager::CALENDAR_KEY_ID => $calendar->getId(), CalendarManager::CALENDAR_KEY_NAME => $calendar->getName(), CalendarManager::CALENDAR_KEY_DESCRIPTION => $calendar->getDescription(), CalendarManager::CALENDAR_KEY_TIMEZONE => $calendar->getTimezone(), CalendarManager::CALENDAR_KEY_OWNERID => $calendar->getOwnerId()); $sqlQuery = 'UPDATE ' . self::CALENDAR_TABLE_NAME . ' SET '; foreach ($data as $key => $value) { if ($key != CalendarManager::CALENDAR_KEY_ID) { $sqlQuery .= $key . ' = :' . $key . ', '; } } $sqlQuery = substr($sqlQuery, 0, -2); $sqlQuery .= ' WHERE ' . CalendarManager::CALENDAR_KEY_ID . ' = :' . CalendarManager::CALENDAR_KEY_ID; $stmt = $dbHandler->prepare($sqlQuery); $stmt->execute($data); } catch (Exception $e) { $this->destroyConnection(); throw new EyeDBException('An error occured while attempting to update calendar with ID "' . $calendar->getId() . '".', 0, $e); } $this->destroyConnection(); }