コード例 #1
0
 /**
  * Perform paste operation after cut
  *
  * @param Docman_Item   $itemToMove    Item to move
  * @param Docman_Folder $newParentItem New parent item
  * @param PFUser          $user          User who perform the paste
  * @param String        $ordering      Where the item should be paste within the new folder
  *
  * @return void
  */
 protected function _doCutPaste($itemToMove, $newParentItem, $user, $ordering)
 {
     if ($itemToMove && $newParentItem && $newParentItem->getId() != $itemToMove->getId()) {
         $item_factory = $this->_getItemFactory();
         $old_parent = $item_factory->getItemFromDb($itemToMove->getParentId());
         if ($item_factory->setNewParent($itemToMove->getId(), $newParentItem->getId(), $ordering)) {
             $itemToMove->fireEvent('plugin_docman_event_move', $user, $newParentItem);
             $hp = Codendi_HTMLPurifier::instance();
             $this->_controler->feedback->log('info', $GLOBALS['Language']->getText('plugin_docman', 'info_item_moved', array($itemToMove->getGroupId(), $old_parent->getId(), $hp->purify($old_parent->getTitle(), CODENDI_PURIFIER_CONVERT_HTML), $newParentItem->getId(), $hp->purify($newParentItem->getTitle(), CODENDI_PURIFIER_CONVERT_HTML))), CODENDI_PURIFIER_DISABLED);
             $item_factory->delCopyPreference();
             $item_factory->delCutPreference();
         } else {
             $this->_controler->feedback->log('error', $GLOBALS['Language']->getText('plugin_docman', 'error_item_not_moved'));
         }
     }
 }
コード例 #2
0
 /**
  * Mark item as deleted
  *
  * @param Docman_Item $item 
  *
  * @return void
  */
 function delete($item)
 {
     // The event must be processed before the item is deleted
     $um = UserManager::instance();
     $user = $um->getCurrentUser();
     $itemParent = $this->getItemFromDb($item->getParentId());
     $item->fireEvent('plugin_docman_event_del', $user, $itemParent);
     // Delete Lock if any
     $lF = new Docman_LockFactory();
     if ($lF->itemIsLocked($item)) {
         $lF->unlock($item);
     }
     $item->setDeleteDate(time());
     $this->delCutPreferenceForAllUsers($item->getId());
     $this->delCopyPreferenceForAllUsers($item->getId());
     $dao = $this->_getItemDao();
     $dao->updateFromRow($item->toRow());
     $dao->storeDeletedItem($item->getId());
 }