import org.argeo.app.api.EntityNames;
import org.argeo.app.api.EntityType;
import org.argeo.app.api.RankedObject;
+import org.argeo.app.core.SuiteUtils;
import org.argeo.cms.AbstractCmsApp;
import org.argeo.cms.LocaleUtils;
import org.argeo.cms.Localized;
import org.argeo.cms.acr.ContentUtils;
import org.argeo.cms.jcr.CmsJcrUtils;
import org.argeo.cms.jcr.acr.JcrContent;
+import org.argeo.cms.jcr.acr.JcrContentProvider;
import org.argeo.cms.swt.CmsSwtUtils;
import org.argeo.cms.swt.acr.SwtUiProvider;
import org.argeo.cms.swt.dialogs.CmsFeedback;
// ACR
private ContentRepository contentRepository;
-// private JcrContentProvider jcrContentProvider;
+ private JcrContentProvider jcrContentProvider;
// JCR
// private Repository repository;
.get(ContentUtils.SLASH + CmsConstants.SYS_WORKSPACE + publicBasePath);
ui.setUserDir(userDir);
} else {
- Content userDir = contentSession.getSessionRunDir();
+ Node userDirNode = jcrContentProvider.doInAdminSession((adminSession) -> {
+ Node node = SuiteUtils.getOrCreateCmsSessionNode(adminSession, cmsSession);
+ return node;
+ });
+ Content userDir = contentSession
+ .get(ContentUtils.SLASH + CmsConstants.SYS_WORKSPACE + userDirNode.getPath());
ui.setUserDir(userDir);
+// Content userDir = contentSession.getSessionRunDir();
+// ui.setUserDir(userDir);
}
}
initLocale(cmsSession);
public void setContentRepository(ContentRepository contentRepository) {
this.contentRepository = contentRepository;
}
+
+ public void setJcrContentProvider(JcrContentProvider jcrContentProvider) {
+ this.jcrContentProvider = jcrContentProvider;
+ }
+
}