notes_delete() публичный Метод

Delete a note from the backend.
С версии: 5.1
public notes_delete ( string $id )
$id string The task's uid
Пример #1
0
 /**
  * Delete a message
  *
  * @param string $folderid  The folder id
  * @param array $ids        The message ids to delete
  *
  * @return array  An array of succesfully deleted messages (currently
  *                only guarenteed for email messages).
  */
 public function deleteMessage($folderid, array $ids)
 {
     $this->_logger->info(sprintf("[%s] Horde_Core_ActiveSync_Driver::deleteMessage() %s: %s", $this->_pid, $folderid, print_r($ids, true)));
     $parts = $this->_parseFolderId($folderid);
     if (is_array($parts)) {
         $class = $parts[self::FOLDER_PART_CLASS];
         $folder_id = $parts[self::FOLDER_PART_ID];
     } else {
         $class = $parts;
         $folder_id = null;
     }
     ob_start();
     $results = $ids;
     switch ($class) {
         case Horde_ActiveSync::CLASS_CALENDAR:
             try {
                 $this->_connector->calendar_delete($ids, $folder_id);
             } catch (Horde_Exception $e) {
                 // Since we don't get back successfully deleted ids and we can
                 // can pass an array of ids to delete, we need to see what ids
                 // were deleted if there was an error.
                 // @todo For Horde 6, the API should return successfully
                 // deleted ids.
                 $this->_logger->err($e->getMessage());
                 $success = array();
                 foreach ($ids as $uid) {
                     if ($mod_time = $this->_connector->calendar_getActionTimestamp($uid, 'delete', $folder_id)) {
                         $success[] = $uid;
                     }
                 }
                 $results = $success;
             }
             break;
         case Horde_ActiveSync::CLASS_CONTACTS:
             try {
                 $this->_connector->contacts_delete($ids);
             } catch (Horde_Exception $e) {
                 $this->_logger->err($e->getMessage());
                 // Since we don't get back successfully deleted ids and we can
                 // can pass an array of ids to delete, we need to see what ids
                 // were deleted if there was an error.
                 // @todo For Horde 6, the API should return successfully
                 // deleted ids.
                 $this->_logger->err($e->getMessage());
                 $success = array();
                 foreach ($ids as $uid) {
                     if ($mod_time = $this->_connector->contacts_getActionTimestamp($uid, 'delete', $folder_id)) {
                         $success[] = $uid;
                     }
                 }
                 $results = $success;
             }
             break;
         case Horde_ActiveSync::CLASS_TASKS:
             try {
                 $this->_connector->tasks_delete($ids);
             } catch (Horde_Exception $e) {
                 $this->_logger->err($e->getMessage());
                 // Since we don't get back successfully deleted ids and we can
                 // can pass an array of ids to delete, we need to see what ids
                 // were deleted if there was an error.
                 // @todo For Horde 6, the API should return successfully
                 // deleted ids.
                 $this->_logger->err($e->getMessage());
                 $success = array();
                 foreach ($ids as $uid) {
                     if ($mod_time = $this->_connector->tasks_getActionTimestamp($uid, 'delete', $folder_id)) {
                         $success[] = $uid;
                     }
                 }
                 $results = $success;
             }
             break;
         case Horde_ActiveSync::CLASS_NOTES:
             try {
                 $this->_connector->notes_delete($ids);
             } catch (Horde_Exception $e) {
                 $this->_logger->err($e->getMessage());
                 // Since we don't get back successfully deleted ids and we can
                 // can pass an array of ids to delete, we need to see what ids
                 // were deleted if there was an error.
                 // @todo For Horde 6, the API should return successfully
                 // deleted ids.
                 $success = array();
                 foreach ($ids as $uid) {
                     if ($mod_time = $this->_connector->tasks_getActionTimestamp($uid, 'delete', $folder_id)) {
                         $success[] = $uid;
                     }
                 }
                 $results = $success;
             }
             break;
         default:
             // Must be mail folder
             try {
                 $results = $this->_imap->deleteMessages($ids, $folderid);
             } catch (Horde_ActiveSync_Exception $e) {
                 $this->_logger->err($e->getMessage());
             }
     }
     $this->_endBuffer();
     return $results;
 }