Improve default app.
authorMathieu Baudier <mbaudier@argeo.org>
Sun, 2 May 2021 09:15:22 +0000 (11:15 +0200)
committerMathieu Baudier <mbaudier@argeo.org>
Sun, 2 May 2021 09:15:22 +0000 (11:15 +0200)
core/org.argeo.suite.ui/OSGI-INF/l10n/bundle.properties
core/org.argeo.suite.ui/src/org/argeo/suite/ui/SuiteUi.java
environment/org.argeo.geo.ui/OSGI-INF/l10n/bundle.properties [new file with mode: 0644]
environment/org.argeo.geo.ui/config/mapLayer.properties
environment/org.argeo.geo.ui/src/org/argeo/support/openlayers/OverviewMap.java
library/org.argeo.documents.ui/OSGI-INF/l10n/bundle.properties [new file with mode: 0644]
library/org.argeo.documents.ui/config/documentsLayer.properties
library/org.argeo.documents.ui/src/org/argeo/documents/ui/DocumentsFolderUiProvider.java
people/org.argeo.people.ui/OSGI-INF/l10n/bundle.properties [new file with mode: 0644]

index 3d0815543fac3bd7e2b3302010f0a14e25f6e068..5716780181a30dccf84dde6a90df9340f661794c 100644 (file)
@@ -1,5 +1,5 @@
 dashboard=dashboard
-people=contacts
+#people=contacts
 documents=documents
 locations=locations
 recentItems=recent items
index 816c65818605761c73d4713d3fda98471ba48806..ca2d9c38378321042e3997468a40bf431a3f8060 100644 (file)
@@ -32,7 +32,7 @@ class SuiteUi extends Composite {
        private Composite dynamicArea;
 
        private Session sysSession;
-//     private Session homeSession;
+       private Session homeSession;
        private Node userDir;
 
        private Map<String, SuiteLayer> layers = new HashMap<>();
@@ -205,11 +205,11 @@ class SuiteUi extends Composite {
 //
        synchronized void initSessions(Repository repository, String userDirPath) throws RepositoryException {
                this.sysSession = repository.login();
-//             this.homeSession = repository.login(NodeConstants.HOME_WORKSPACE);
+               this.homeSession = repository.login(NodeConstants.HOME_WORKSPACE);
                userDir = sysSession.getNode(userDirPath);
                addDisposeListener((e) -> {
                        Jcr.logout(sysSession);
-//                     Jcr.logout(homeSession);
+                       Jcr.logout(homeSession);
                });
        }
 
@@ -226,8 +226,8 @@ class SuiteUi extends Composite {
                        return sysSession;
                if (NodeConstants.SYS_WORKSPACE.equals(workspaceName))
                        return sysSession;
-//             else if (NodeConstants.HOME_WORKSPACE.equals(workspaceName))
-//                     return homeSession;
+               else if (NodeConstants.HOME_WORKSPACE.equals(workspaceName))
+                       return homeSession;
                else
                        throw new IllegalArgumentException("Unknown workspace " + workspaceName);
        }
diff --git a/environment/org.argeo.geo.ui/OSGI-INF/l10n/bundle.properties b/environment/org.argeo.geo.ui/OSGI-INF/l10n/bundle.properties
new file mode 100644 (file)
index 0000000..3ded5eb
--- /dev/null
@@ -0,0 +1 @@
+map=map
index 2931c2d485ac370416639d6dd4565bbf69cf6971..37bf3c73bf677ef9c88a9f5ce187d70b622a8a0a 100644 (file)
@@ -1,4 +1,6 @@
 service.pid=argeo.geo.ui.mapLayer
 
 title=%map
-icon=map
\ No newline at end of file
+icon=map
+
+entity.type=entity:geopoint
index 33e888f7e5d740d4e253ce2d423de2006c8f04a1..8ecdc1c6f2d28060d2260f91fdce5c846aac6aff 100644 (file)
@@ -9,10 +9,7 @@ import javax.jcr.observation.EventIterator;
 import javax.jcr.observation.EventListener;
 import javax.jcr.query.Query;
 
-import org.argeo.api.NodeConstants;
-import org.argeo.cms.auth.CurrentUser;
 import org.argeo.cms.ui.CmsUiProvider;
-import org.argeo.cms.ui.CmsView;
 import org.argeo.cms.ui.util.CmsUiUtils;
 import org.argeo.entity.EntityType;
 import org.argeo.jcr.JcrException;
@@ -45,8 +42,8 @@ public class OverviewMap implements CmsUiProvider {
                                                        }
                                                });
                                }
-                       }, Event.PROPERTY_CHANGED | Event.NODE_ADDED | Event.NODE_REMOVED | Event.PROPERTY_ADDED,
-                                       "/", true, null, nodeTypes, false);
+                       }, Event.PROPERTY_CHANGED | Event.NODE_ADDED | Event.NODE_REMOVED | Event.PROPERTY_ADDED, "/", true, null,
+                                       nodeTypes, false);
                } catch (RepositoryException e) {
                        throw new IllegalStateException("Cannot add JCR observer", e);
                }
@@ -56,11 +53,8 @@ public class OverviewMap implements CmsUiProvider {
 
        protected void refreshUi(Composite parent, Node context) throws RepositoryException {
                CmsUiUtils.clear(parent);
-               boolean coworker = CmsView.getCmsView(parent).doAs(() -> CurrentUser.isInRole(NodeConstants.ROLE_USER_ADMIN));
                Query query = context.getSession().getWorkspace().getQueryManager()
-                               .createQuery("SELECT * FROM [" + EntityType.local.get() + "] WHERE [entity:type]='"
-                                               + EntityType.geopoint.get() + "'",
-                                               Query.JCR_SQL2);
+                               .createQuery("SELECT * FROM [" + EntityType.geopoint.get() + "]", Query.JCR_SQL2);
                List<Node> geoPoints = JcrUtils.nodeIteratorToList(query.execute().getNodes());
                OpenLayersMap apafMap = new OpenLayersMap(parent, SWT.NONE, getClass().getResource("map-osm.html"));
                apafMap.setLayoutData(CmsUiUtils.fillAll());
diff --git a/library/org.argeo.documents.ui/OSGI-INF/l10n/bundle.properties b/library/org.argeo.documents.ui/OSGI-INF/l10n/bundle.properties
new file mode 100644 (file)
index 0000000..8015421
--- /dev/null
@@ -0,0 +1 @@
+content=content
index 1c6222298cbc7099f428577a6fc5cfa78592c37f..78382a6952585ec7d76374ec106cb9b748f04ba0 100644 (file)
@@ -1,4 +1,6 @@
 service.pid=argeo.documents.ui.documentsLayer
 
-title=Documents
-icon=documents
\ No newline at end of file
+title=%content
+icon=documents
+
+entity.type=nt:folder
index 2210b9fec8ac3b420f59cad3eabc87b08a1ebf86..e525a9e61cff9b43e75bb53b751e88b45361a4a1 100644 (file)
@@ -1,5 +1,6 @@
 package org.argeo.documents.ui;
 
+import java.nio.file.Path;
 import java.nio.file.spi.FileSystemProvider;
 
 import javax.jcr.Node;
@@ -9,6 +10,8 @@ import org.argeo.cms.fs.CmsFsUtils;
 import org.argeo.cms.ui.CmsUiProvider;
 import org.argeo.cms.ui.CmsView;
 import org.argeo.cms.ui.util.CmsUiUtils;
+import org.argeo.jcr.Jcr;
+import org.argeo.suite.ui.SuiteEvent;
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.widgets.Composite;
 import org.eclipse.swt.widgets.Control;
@@ -20,7 +23,15 @@ public class DocumentsFolderUiProvider implements CmsUiProvider {
        @Override
        public Control createUi(Composite parent, Node context) throws RepositoryException {
                CmsView cmsView = CmsView.getCmsView(parent);
-               DocumentsFolderComposite dfc = new DocumentsFolderComposite(parent, SWT.NONE, context);
+               DocumentsFolderComposite dfc = new DocumentsFolderComposite(parent, SWT.NONE, context) {
+
+                       @Override
+                       protected void externalNavigateTo(Path path) {
+                               Node folderNode = cmsView.doAs(() -> CmsFsUtils.getNode(Jcr.getSession(context).getRepository(), path));
+                               parent.addDisposeListener((e1) -> Jcr.logout(folderNode));
+                               cmsView.sendEvent(SuiteEvent.openNewPart.topic(), SuiteEvent.eventProperties(folderNode));
+                       }
+               };
                dfc.setLayoutData(CmsUiUtils.fillAll());
                dfc.populate(cmsView.doAs(() -> CmsFsUtils.getPath(nodeFileSystemProvider, context)));
                return dfc;
diff --git a/people/org.argeo.people.ui/OSGI-INF/l10n/bundle.properties b/people/org.argeo.people.ui/OSGI-INF/l10n/bundle.properties
new file mode 100644 (file)
index 0000000..e619de4
--- /dev/null
@@ -0,0 +1 @@
+people=people