/** * Handler for folder deletion. * * @param mixed $handler_id The ID of the handler. * @param Array $args The argument list. * @param Array &$data The local request data. * @return boolean Indicating success */ public function _handler_delete($handler_id, array $args, array &$data) { // Symlink support requires that we use actual URL topic object here $urltopics = midcom_core_context::get()->get_key(MIDCOM_CONTEXT_URLTOPICS); if ($urltopic = end($urltopics)) { $this->_topic = $urltopic; } $this->_topic->require_do('midgard:delete'); $this->_topic->require_do('midcom.admin.folder:topic_management'); if (array_key_exists('f_cancel', $_REQUEST)) { return new midcom_response_relocate(''); } if (array_key_exists('f_submit', $_REQUEST)) { $nav = new midcom_helper_nav(); $upper_node = $nav->get_node($nav->get_current_upper_node()); if ($this->_process_delete_form()) { return new midcom_response_relocate($upper_node[MIDCOM_NAV_FULLURL]); } } $this->_request_data['topic'] = $this->_topic; // Add the view to breadcrumb trail $this->add_breadcrumb('__ais/folder/delete/', $this->_l10n->get('delete folder')); // Hide the button in toolbar $this->_node_toolbar->hide_item('__ais/folder/delete/'); // Set page title $data['title'] = sprintf(midcom::get('i18n')->get_string('delete folder %s', 'midcom.admin.folder'), $data['topic']->extra); midcom::get('head')->set_pagetitle($data['title']); // Set the help object in the toolbar $help_toolbar = midcom::get('toolbars')->get_help_toolbar(); $help_toolbar->add_help_item('delete_folder', 'midcom.admin.folder', null, null, 1); // Ensure we get the correct styles midcom::get('style')->prepend_component_styledir('midcom.admin.folder'); // Add style sheet $this->add_stylesheet(MIDCOM_STATIC_URL . '/midcom.admin.folder/folder.css'); }