From: bsinou Date: Sat, 21 Jan 2017 12:54:44 +0000 (+0100) Subject: Fix glitches. Enable Node file browsing for admin only. X-Git-Tag: argeo-commons-2.1.58~13 X-Git-Url: http://git.argeo.org/?a=commitdiff_plain;h=c51703d1f196aab3a3b5a02496b804e14b6bcf25;p=lgpl%2Fargeo-commons.git Fix glitches. Enable Node file browsing for admin only. --- diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/JcrBrowserPerspective.java b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/JcrBrowserPerspective.java index c18778cee..53a916a15 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/JcrBrowserPerspective.java +++ b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/JcrBrowserPerspective.java @@ -26,10 +26,9 @@ public class JcrBrowserPerspective implements IPerspectiveFactory { public void createInitialLayout(IPageLayout layout) { layout.setEditorAreaVisible(true); - IFolderLayout upperLeft = layout.createFolder( - WorkbenchUiPlugin.PLUGIN_ID + ".upperLeft", IPageLayout.LEFT, + IFolderLayout upperLeft = layout.createFolder(WorkbenchUiPlugin.PLUGIN_ID + ".upperLeft", IPageLayout.LEFT, 0.4f, layout.getEditorArea()); upperLeft.addView(JcrBrowserView.ID); - // upperLeft.addView(NodeFsBrowserView.ID); + upperLeft.addView(NodeFsBrowserView.ID); } } diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/jcr/NodeFsBrowserView.java b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/jcr/NodeFsBrowserView.java index ba279d825..578fe1009 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/jcr/NodeFsBrowserView.java +++ b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/jcr/NodeFsBrowserView.java @@ -18,20 +18,18 @@ package org.argeo.cms.ui.workbench.jcr; import java.net.URI; import java.nio.file.FileSystem; import java.nio.file.Path; -import java.nio.file.Paths; import java.nio.file.spi.FileSystemProvider; import org.argeo.cms.CmsException; +import org.argeo.cms.auth.CurrentUser; import org.argeo.cms.ui.workbench.WorkbenchUiPlugin; -import org.argeo.eclipse.ui.EclipseUiUtils; -// import org.argeo.eclipse.ui.fs.SimpleFsBrowser; +import org.argeo.eclipse.ui.fs.SimpleFsBrowser; +import org.argeo.node.NodeConstants; import org.eclipse.swt.SWT; import org.eclipse.swt.widgets.Composite; import org.eclipse.ui.part.ViewPart; -/** - * Browse the node file system. - */ +/** Browse the node file system. */ public class NodeFsBrowserView extends ViewPart { public final static String ID = WorkbenchUiPlugin.PLUGIN_ID + ".nodeFsBrowserView"; @@ -39,22 +37,18 @@ public class NodeFsBrowserView extends ViewPart { @Override public void createPartControl(Composite parent) { - try { -// Display nothing yet -// URI uri = new URI("node:///home"); -// FileSystem fileSystem = nodeFileSystemProvider.getFileSystem(uri); -// if(fileSystem==null) -// fileSystem = nodeFileSystemProvider.newFileSystem(uri,null); -// Path nodePath = fileSystem.getPath("/home"); -//// Path nodePath = Paths.get(uri); -// -// Path path = Paths.get("/"); -// SimpleFsBrowser browser = new SimpleFsBrowser(parent, SWT.NO_FOCUS); -// browser.setInput(path, nodePath); -// browser.setLayoutData(EclipseUiUtils.fillAll()); - } catch (Exception e) { - throw new CmsException("Cannot open file system browser", e); - } + if (CurrentUser.isInRole(NodeConstants.ROLE_ADMIN)) + try { + URI uri = new URI("node:///home"); + FileSystem fileSystem = nodeFileSystemProvider.getFileSystem(uri); + if (fileSystem == null) + fileSystem = nodeFileSystemProvider.newFileSystem(uri, null); + Path nodePath = fileSystem.getPath("/home"); + SimpleFsBrowser browser = new SimpleFsBrowser(parent, SWT.NO_FOCUS); + browser.setInput(nodePath); + } catch (Exception e) { + throw new CmsException("Cannot open file system browser", e); + } } @Override