]> git.argeo.org Git - gpl/argeo-slc.git/blobdiff - plugins/org.argeo.slc.akb.ui/src/main/java/org/argeo/slc/akb/ui/commands/DeleteAkbNodes.java
work on active environments
[gpl/argeo-slc.git] / plugins / org.argeo.slc.akb.ui / src / main / java / org / argeo / slc / akb / ui / commands / DeleteAkbNodes.java
index 76d8cdb5085c3ce5180c061833d1334bb1b3463f..3a3e9a0a9e0804ba112e284f07467775bf93f2f5 100644 (file)
@@ -7,6 +7,7 @@ import javax.jcr.Session;
 
 import org.argeo.jcr.JcrUtils;
 import org.argeo.slc.akb.AkbException;
+import org.argeo.slc.akb.AkbTypes;
 import org.argeo.slc.akb.ui.AkbUiPlugin;
 import org.argeo.slc.akb.ui.editors.AkbNodeEditorInput;
 import org.argeo.slc.akb.utils.AkbJcrUtils;
@@ -48,8 +49,10 @@ public class DeleteAkbNodes extends AbstractHandler {
                        if (nodeJcrId != null)
                                node = session.getNodeByIdentifier(nodeJcrId);
 
-                       // We must be in a template to delete nodes...
-                       Node template = AkbJcrUtils.getCurrentTemplate(node);
+                       // We must be in a template or on the root of an env instance to
+                       // delete nodes.
+                       Node template = node.isNodeType(AkbTypes.AKB_ENV) ? node
+                                       : AkbJcrUtils.getCurrentTemplate(node);
 
                        if (node != null) {
                                Boolean ok = MessageDialog.openConfirm(