public function delete($id) {
        if (!$this->Model->admin['deletable']) {
            throw new ForbiddenException(__d('admin', 'Delete Access Protected'));
        }

        if ($this->overrideAction('delete', $id)) {
            return;
        }

        $this->Model->id = $id;

        $result = $this->AdminToolbar->getRecordById($this->Model, $id);

        if (!$result) {
            throw new NotFoundException(__d('admin', '%s Not Found', $this->Model->singularName));
        }

        if ($this->request->is('post')) {
            if ($this->Model->delete($id, true)) {
                $this->AdminToolbar->logAction(ActionLog::DELETE, $this->Model, $id);

                $this->AdminToolbar->setFlashMessage(__d('admin', 'Successfully deleted %s with ID %s', array(mb_strtolower($this->Model->singularName), $id)));
                $this->AdminToolbar->redirectAfter($this->Model);

            } else {
                $this->AdminToolbar->setFlashMessage(__d('admin', 'Failed to delete %s with ID %s', array(mb_strtolower($this->Model->singularName), $id)), 'is-error');
            }
        }

        $this->set('result', $result);
        $this->overrideView('delete');
    }