Ejemplo n.º 1
0
 /**
  * @param mixed $handler_id The ID of the handler.
  * @param Array $args The argument list.
  * @param Array &$data The local request data.
  */
 public function _handler_delete($handler_id, array $args, array &$data)
 {
     midcom::get('auth')->require_valid_user();
     $this->_document = $this->_load_document($args[0]);
     $this->_document->require_do('midgard:delete');
     $data['controller'] = midcom_helper_datamanager2_handler::get_delete_controller();
     switch ($data['controller']->process_form()) {
         case 'delete':
             if ($this->_document->delete()) {
                 // Update the index
                 $indexer = midcom::get('indexer');
                 $indexer->delete($this->_document->guid);
                 // Redirect to the directory
                 return new midcom_response_relocate('');
             } else {
                 // Failure, give a message
                 midcom::get('uimessages')->add($this->_l10n->get('org.openpsa.documents'), $this->_l10n->get("failed to delete document, reason ") . midcom_connection::get_error_string(), 'error');
             }
             //Fall-through
         //Fall-through
         case 'cancel':
             return new midcom_response_relocate("document/" . $this->_document->guid . "/");
     }
     $data['document_dm'] = $this->_datamanager;
     $data['document'] = $this->_document;
     org_openpsa_helpers::dm2_savecancel($this, 'delete');
     $this->_update_breadcrumb_line('delete');
 }
Ejemplo n.º 2
0
 private function _populate_toolbar()
 {
     if ($this->_document->can_do('midgard:update')) {
         $this->_view_toolbar->add_item(array(MIDCOM_TOOLBAR_URL => "document/edit/{$this->_document->guid}/", MIDCOM_TOOLBAR_LABEL => $this->_l10n_midcom->get('edit'), MIDCOM_TOOLBAR_ICON => 'stock-icons/16x16/edit.png', MIDCOM_TOOLBAR_ACCESSKEY => 'e'));
     }
     if ($this->_document->can_do('midgard:delete')) {
         $this->_view_toolbar->add_item(array(MIDCOM_TOOLBAR_URL => "document/delete/{$this->_document->guid}/", MIDCOM_TOOLBAR_LABEL => $this->_l10n_midcom->get('delete'), MIDCOM_TOOLBAR_ICON => 'stock-icons/16x16/trash.png'));
     }
 }