cspace.ui.library.name=cspaceUI
cspace.ui.version=9.0.1
cspace.ui.build.branch=master
-cspace.ui.build.node.ver=14
+cspace.ui.build.node.ver=20
service.ui.library.name=${cspace.ui.library.name}-service
+# Public browser settings
+cspace.public.browser.package.name=@collectionspace/cspace-public-browser
+cspace.public.browser.library.name=cspacePublicBrowser
+cspace.public.browser.version=3.1.0
+cspace.public.browser.build.branch=master
+cspace.public.browser.build.node.ver=20
+
#nuxeo
nuxeo.release=9.10-HF30
nuxeo.ear=nuxeo.ear
<filter-name>FallbackResourceFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
+
+ <filter>
+ <filter-name>PublicBrowserFallbackResourceFilter</filter-name>
+ <filter-class>org.collectionspace.services.common.filter.FallbackResourceFilter</filter-class>
+ <init-param>
+ <param-name>file</param-name>
+ <param-value>/public/index.jsp</param-value>
+ </init-param>
+ </filter>
+ <filter-mapping>
+ <filter-name>PublicBrowserFallbackResourceFilter</filter-name>
+ <url-pattern>/public/*</url-pattern>
+ </filter-mapping>
+
<filter>
<filter-name>ExpiresFilter</filter-name>
<filter-class>org.apache.catalina.filters.ExpiresFilter</filter-class>
tenant.ui.profile.plugin.library.name=cspaceUIPluginProfileAnthro
tenant.ui.profile.plugin.version=8.0.0
tenant.ui.profile.plugin.build.branch=master
+
+# If not set, defaults to /gateway/${tenant.shortname} on the current host.
+# tenant.public.browser.gateway.url=https://core.dev.collectionspace.org/gateway/${tenant.shortname}
--- /dev/null
+<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
+<%! String configuredGatewayUrl = "@GATEWAY_URL@"; %>
+<html>
+ <head>
+ <meta charset="UTF-8" />
+ </head>
+ <body>
+ <div id="cspace-browser"></div>
+ <script src="/cspace-ui/@PUBLIC_BROWSER_FILENAME@"></script>
+ <script>
+ cspacePublicBrowser({
+ basename: '@BASENAME@/public',
+ baseConfig: '@TENANT_SHORTNAME@',
+ gatewayUrl: '<%=
+ configuredGatewayUrl.length() > 0
+ ? configuredGatewayUrl
+ : request.getRequestURL().substring(0, request.getRequestURL().length() - request.getRequestURI().length()) + "/gateway/@TENANT_SHORTNAME@"
+ %>',
+ });
+ </script>
+ </body>
+</html>
<filter-name>FallbackResourceFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
+
+ <filter>
+ <filter-name>PublicBrowserFallbackResourceFilter</filter-name>
+ <filter-class>org.collectionspace.services.common.filter.FallbackResourceFilter</filter-class>
+ <init-param>
+ <param-name>file</param-name>
+ <param-value>/public/index.jsp</param-value>
+ </init-param>
+ </filter>
+ <filter-mapping>
+ <filter-name>PublicBrowserFallbackResourceFilter</filter-name>
+ <url-pattern>/public/*</url-pattern>
+ </filter-mapping>
+
<filter>
<filter-name>ExpiresFilter</filter-name>
<filter-class>org.apache.catalina.filters.ExpiresFilter</filter-class>
tenant.ui.profile.plugin.library.name=cspaceUIPluginProfileBonsai
tenant.ui.profile.plugin.version=6.0.0
tenant.ui.profile.plugin.build.branch=master
+
+# If not set, defaults to /gateway/${tenant.shortname} on the current host.
+# tenant.public.browser.gateway.url=https://core.dev.collectionspace.org/gateway/${tenant.shortname}
--- /dev/null
+<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
+<%! String configuredGatewayUrl = "@GATEWAY_URL@"; %>
+<html>
+ <head>
+ <meta charset="UTF-8" />
+ </head>
+ <body>
+ <div id="cspace-browser"></div>
+ <script src="/cspace-ui/@PUBLIC_BROWSER_FILENAME@"></script>
+ <script>
+ cspacePublicBrowser({
+ basename: '@BASENAME@/public',
+ baseConfig: '@TENANT_SHORTNAME@',
+ gatewayUrl: '<%=
+ configuredGatewayUrl.length() > 0
+ ? configuredGatewayUrl
+ : request.getRequestURL().substring(0, request.getRequestURL().length() - request.getRequestURI().length()) + "/gateway/@TENANT_SHORTNAME@"
+ %>',
+ });
+ </script>
+ </body>
+</html>
<filter-name>FallbackResourceFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
+
+ <filter>
+ <filter-name>PublicBrowserFallbackResourceFilter</filter-name>
+ <filter-class>org.collectionspace.services.common.filter.FallbackResourceFilter</filter-class>
+ <init-param>
+ <param-name>file</param-name>
+ <param-value>/public/index.jsp</param-value>
+ </init-param>
+ </filter>
+ <filter-mapping>
+ <filter-name>PublicBrowserFallbackResourceFilter</filter-name>
+ <url-pattern>/public/*</url-pattern>
+ </filter-mapping>
+
<filter>
<filter-name>ExpiresFilter</filter-name>
<filter-class>org.apache.catalina.filters.ExpiresFilter</filter-class>
tenant.ui.profile.plugin.library.name=cspaceUIPluginProfileBotGarden
tenant.ui.profile.plugin.version=3.1.1
tenant.ui.profile.plugin.build.branch=master
+
+# If not set, defaults to /gateway/${tenant.shortname} on the current host.
+# tenant.public.browser.gateway.url=https://core.dev.collectionspace.org/gateway/${tenant.shortname}
--- /dev/null
+<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
+<%! String configuredGatewayUrl = "@GATEWAY_URL@"; %>
+<html>
+ <head>
+ <meta charset="UTF-8" />
+ </head>
+ <body>
+ <div id="cspace-browser"></div>
+ <script src="/cspace-ui/@PUBLIC_BROWSER_FILENAME@"></script>
+ <script>
+ cspacePublicBrowser({
+ basename: '@BASENAME@/public',
+ baseConfig: '@TENANT_SHORTNAME@',
+ gatewayUrl: '<%=
+ configuredGatewayUrl.length() > 0
+ ? configuredGatewayUrl
+ : request.getRequestURL().substring(0, request.getRequestURL().length() - request.getRequestURI().length()) + "/gateway/@TENANT_SHORTNAME@"
+ %>',
+ });
+ </script>
+ </body>
+</html>
<property environment="env" />
<property file="${services.trunk}/build.properties" />
<propertycopy name="cspace.ui.build" from="env.CSPACE_UI_BUILD" />
+ <propertycopy name="cspace.public.browser.build" from="env.CSPACE_UI_BUILD" />
<target name="clean">
<delete includeEmptyDirs="true">
</exec>
</target>
- <target name="install_node" depends="install_nvm" if="${cspace.ui.build}">
+ <target name="install_cspace_ui_node" depends="install_nvm" if="${cspace.ui.build}">
<exec executable="bash" failonerror="true">
<arg value="-c" />
<arg value='source "$HOME/.nvm/nvm.sh" && nvm install ${cspace.ui.build.node.ver} && nvm use ${cspace.ui.build.node.ver} && nvm install-latest-npm' />
</exec>
</target>
- <target name="build_cspace_ui_js" depends="ensure_staging_dir,ensure_source_dir,install_node" if="${cspace.ui.build}">
+ <target name="build_cspace_ui_js" depends="ensure_staging_dir,ensure_source_dir,install_cspace_ui_node" if="${cspace.ui.build}">
<exec executable="bash" failonerror="true">
<arg value="-c" />
<arg value="./build_js.sh ${cspace.ui.package.name} ${cspace.ui.build.branch} ${source.dir} ${staging.dir} ${cspace.ui.library.name} ${service.ui.library.name}"/>
<target name="download_cspace_ui_js" depends="ensure_staging_dir" unless="${cspace.ui.build}">
<exec executable="curl" failonerror="true">
- <arg line="-o ${staging.dir}/${cspace.ui.library.name}@${cspace.ui.version}.min.js --fail --insecure --location https://cdn.jsdelivr.net/npm/cspace-ui@${cspace.ui.version}/dist/${cspace.ui.library.name}.min.js"/>
- </exec>
- </target>
-
- <target name="download_service_ui_js" depends="ensure_staging_dir" unless="${cspace.ui.build}">
- <exec executable="curl" failonerror="true">
- <arg line="-o ${staging.dir}/${service.ui.library.name}@${cspace.ui.version}.min.js --fail --insecure --location https://cdn.jsdelivr.net/npm/cspace-ui@${cspace.ui.version}/dist/${service.ui.library.name}.min.js"/>
+ <arg line="-o ${staging.dir}/${cspace.ui.library.name}@${cspace.ui.version}.min.js --fail --insecure --location https://cdn.jsdelivr.net/npm/${cspace.ui.package.name}@${cspace.ui.version}/dist/${cspace.ui.library.name}.min.js"/>
</exec>
</target>
<copy file="${staging.dir}/${cspace.ui.install.filename}" todir="${jee.deploy.cspace.ui.shared}" />
</target>
+ <target name="download_service_ui_js" depends="ensure_staging_dir" unless="${cspace.ui.build}">
+ <exec executable="curl" failonerror="true">
+ <arg line="-o ${staging.dir}/${service.ui.library.name}@${cspace.ui.version}.min.js --fail --insecure --location https://cdn.jsdelivr.net/npm/${cspace.ui.package.name}@${cspace.ui.version}/dist/${service.ui.library.name}.min.js"/>
+ </exec>
+ </target>
+
<target name="deploy_service_ui_js" depends="build_cspace_ui_js,download_service_ui_js">
<pathconvert property="service.ui.install.filename" targetos="unix">
<first>
<copy file="${staging.dir}/${service.ui.install.filename}" todir="${jee.deploy.cspace.ui.shared}" />
</target>
- <target name="deploy_tenants" depends="deploy_cspace_ui_js">
+ <target name="install_cspace_public_browser_node" depends="install_nvm" if="${cspace.public.browser.build}">
+ <exec executable="bash" failonerror="true">
+ <arg value="-c" />
+ <arg value='source "$HOME/.nvm/nvm.sh" && nvm install ${cspace.public.browser.build.node.ver} && nvm use ${cspace.public.browser.build.node.ver} && nvm install-latest-npm' />
+ </exec>
+ </target>
+
+ <target name="build_cspace_public_browser_js" depends="ensure_staging_dir,ensure_source_dir,install_cspace_public_browser_node" if="${cspace.public.browser.build}">
+ <exec executable="bash" failonerror="true">
+ <arg value="-c" />
+ <arg value="./build_js.sh ${cspace.public.browser.package.name} ${cspace.public.browser.build.branch} ${source.dir} ${staging.dir} ${cspace.public.browser.library.name}"/>
+ </exec>
+ </target>
+
+ <target name="download_cspace_public_browser_js" depends="ensure_staging_dir" unless="${cspace.public.browser.build}">
+ <exec executable="curl" failonerror="true">
+ <arg line="-o ${staging.dir}/${cspace.public.browser.library.name}@${cspace.public.browser.version}.min.js --fail --insecure --location https://cdn.jsdelivr.net/npm/${cspace.public.browser.package.name}@${cspace.public.browser.version}/dist/${cspace.public.browser.library.name}.min.js"/>
+ </exec>
+ </target>
+
+ <target name="deploy_cspace_public_browser_js" depends="build_cspace_public_browser_js,download_cspace_public_browser_js">
+ <pathconvert property="cspace.public.browser.install.filename" targetos="unix">
+ <first>
+ <fileset dir="${staging.dir}" includes="${cspace.public.browser.library.name}@*.min.js" />
+ </first>
+
+ <mapper type="flatten" />
+ </pathconvert>
+
+ <copy file="${staging.dir}/${cspace.public.browser.install.filename}" todir="${jee.deploy.cspace.ui.shared}" />
+ </target>
+
+ <target name="deploy_tenants" depends="deploy_cspace_ui_js,deploy_cspace_public_browser_js">
<subant target="deploy_tenant" genericantfile="${ant.file}" inheritall="true">
<dirset dir="." includes="*" excludes="${build.dir.name}" />
</subant>
</condition>
</target>
- <target name="build_tenant_js" depends="check_build_tenant_js,ensure_staging_dir,ensure_source_dir,install_node" if="should.build.tenant.js">
+ <target name="build_tenant_js" depends="check_build_tenant_js,ensure_staging_dir,ensure_source_dir,install_cspace_ui_node" if="should.build.tenant.js">
<fail message="Build branch not found for ${tenant.shortname}. Set the tenant.ui.profile.plugin.build.branch property in ${basedir}/build.properties.">
<condition>
<not>
</target>
<target name="deploy_tenant_webapp" depends="deploy_tenant_js" unless="${tenant.create.disabled}">
+ <!-- Default values, in case these weren't set in the tenant's build.properties. -->
+ <property name="tenant.public.browser.gateway.url" value="" />
+
<filter token="UI_FILENAME" value="${cspace.ui.install.filename}" />
<filter token="UI_PROFILE_PLUGIN_FILENAME" value="${tenant.ui.profile.plugin.install.filename}" />
<filter token="UI_PROFILE_PLUGIN_LIBRARY_NAME" value="${tenant.ui.profile.plugin.library.name}" />
<filter token="BASENAME" value="${tenant.ui.basename}" />
+ <filter token="PUBLIC_BROWSER_FILENAME" value="${cspace.public.browser.install.filename}" />
+ <filter token="GATEWAY_URL" value="${tenant.public.browser.gateway.url}" />
<filter token="TENANT_ID" value="${resolved.tenant.id}" />
+ <filter token="TENANT_SHORTNAME" value="${tenant.shortname}" />
<copy todir="${jee.deploy.cspace}/${tenant.ui.webapp.dir}" failonerror="false" filtering="true" overwrite="true">
<fileset dir="${basedir}">
LIBRARY_NAME=$5
SERVICE_LIBRARY_NAME=$6
-CODE_DIR=$CHECKOUT_DIR/$PACKAGE_NAME.js
+UNORG_PACKAGE_NAME=`echo $PACKAGE_NAME | sed -e 's/^@.*\///'`
+CODE_DIR=$CHECKOUT_DIR/$UNORG_PACKAGE_NAME.js
. "$HOME/.nvm/nvm.sh"
rm -r $CODE_DIR
-git clone --branch $BRANCH_NAME --depth 1 https://github.com/collectionspace/$PACKAGE_NAME.js.git $CODE_DIR
+git clone --branch $BRANCH_NAME --depth 1 https://github.com/collectionspace/$UNORG_PACKAGE_NAME.js.git $CODE_DIR
pushd $CODE_DIR
COMMIT_HASH=`git rev-parse --short HEAD`
<filter-name>FallbackResourceFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
+
+ <filter>
+ <filter-name>PublicBrowserFallbackResourceFilter</filter-name>
+ <filter-class>org.collectionspace.services.common.filter.FallbackResourceFilter</filter-class>
+ <init-param>
+ <param-name>file</param-name>
+ <param-value>/public/index.jsp</param-value>
+ </init-param>
+ </filter>
+ <filter-mapping>
+ <filter-name>PublicBrowserFallbackResourceFilter</filter-name>
+ <url-pattern>/public/*</url-pattern>
+ </filter-mapping>
+
<filter>
<filter-name>ExpiresFilter</filter-name>
<filter-class>org.apache.catalina.filters.ExpiresFilter</filter-class>
tenant.ui.webapp.dir=cspace#${tenant.shortname}
tenant.ui.basename=/cspace/${tenant.shortname}
+
+# If not set, defaults to /gateway/${tenant.shortname} on the current host.
+# tenant.public.browser.gateway.url=https://core.dev.collectionspace.org/gateway/${tenant.shortname}
--- /dev/null
+<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
+<%! String configuredGatewayUrl = "@GATEWAY_URL@"; %>
+<html>
+ <head>
+ <meta charset="UTF-8" />
+ </head>
+ <body>
+ <div id="cspace-browser"></div>
+ <script src="/cspace-ui/@PUBLIC_BROWSER_FILENAME@"></script>
+ <script>
+ cspacePublicBrowser({
+ basename: '@BASENAME@/public',
+ gatewayUrl: '<%=
+ configuredGatewayUrl.length() > 0
+ ? configuredGatewayUrl
+ : request.getRequestURL().substring(0, request.getRequestURL().length() - request.getRequestURI().length()) + "/gateway/@TENANT_SHORTNAME@"
+ %>',
+ });
+ </script>
+ </body>
+</html>
<filter-name>FallbackResourceFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
+
+ <filter>
+ <filter-name>PublicBrowserFallbackResourceFilter</filter-name>
+ <filter-class>org.collectionspace.services.common.filter.FallbackResourceFilter</filter-class>
+ <init-param>
+ <param-name>file</param-name>
+ <param-value>/public/index.jsp</param-value>
+ </init-param>
+ </filter>
+ <filter-mapping>
+ <filter-name>PublicBrowserFallbackResourceFilter</filter-name>
+ <url-pattern>/public/*</url-pattern>
+ </filter-mapping>
+
<filter>
<filter-name>ExpiresFilter</filter-name>
<filter-class>org.apache.catalina.filters.ExpiresFilter</filter-class>
tenant.ui.profile.plugin.library.name=cspaceUIPluginProfileFCart
tenant.ui.profile.plugin.version=7.0.0
tenant.ui.profile.plugin.build.branch=master
+
+# If not set, defaults to /gateway/${tenant.shortname} on the current host.
+# tenant.public.browser.gateway.url=https://core.dev.collectionspace.org/gateway/${tenant.shortname}
--- /dev/null
+<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
+<%! String configuredGatewayUrl = "@GATEWAY_URL@"; %>
+<html>
+ <head>
+ <meta charset="UTF-8" />
+ </head>
+ <body>
+ <div id="cspace-browser"></div>
+ <script src="/cspace-ui/@PUBLIC_BROWSER_FILENAME@"></script>
+ <script>
+ cspacePublicBrowser({
+ basename: '@BASENAME@/public',
+ baseConfig: '@TENANT_SHORTNAME@',
+ gatewayUrl: '<%=
+ configuredGatewayUrl.length() > 0
+ ? configuredGatewayUrl
+ : request.getRequestURL().substring(0, request.getRequestURL().length() - request.getRequestURI().length()) + "/gateway/@TENANT_SHORTNAME@"
+ %>',
+ });
+ </script>
+ </body>
+</html>
<filter-name>FallbackResourceFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
+
+ <filter>
+ <filter-name>PublicBrowserFallbackResourceFilter</filter-name>
+ <filter-class>org.collectionspace.services.common.filter.FallbackResourceFilter</filter-class>
+ <init-param>
+ <param-name>file</param-name>
+ <param-value>/public/index.jsp</param-value>
+ </init-param>
+ </filter>
+ <filter-mapping>
+ <filter-name>PublicBrowserFallbackResourceFilter</filter-name>
+ <url-pattern>/public/*</url-pattern>
+ </filter-mapping>
+
<filter>
<filter-name>ExpiresFilter</filter-name>
<filter-class>org.apache.catalina.filters.ExpiresFilter</filter-class>
tenant.ui.profile.plugin.library.name=cspaceUIPluginProfileHerbarium
tenant.ui.profile.plugin.version=2.0.12
tenant.ui.profile.plugin.build.branch=master
+
+# If not set, defaults to /gateway/${tenant.shortname} on the current host.
+# tenant.public.browser.gateway.url=https://core.dev.collectionspace.org/gateway/${tenant.shortname}
--- /dev/null
+<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
+<%! String configuredGatewayUrl = "@GATEWAY_URL@"; %>
+<html>
+ <head>
+ <meta charset="UTF-8" />
+ </head>
+ <body>
+ <div id="cspace-browser"></div>
+ <script src="/cspace-ui/@PUBLIC_BROWSER_FILENAME@"></script>
+ <script>
+ cspacePublicBrowser({
+ basename: '@BASENAME@/public',
+ baseConfig: '@TENANT_SHORTNAME@',
+ gatewayUrl: '<%=
+ configuredGatewayUrl.length() > 0
+ ? configuredGatewayUrl
+ : request.getRequestURL().substring(0, request.getRequestURL().length() - request.getRequestURI().length()) + "/gateway/@TENANT_SHORTNAME@"
+ %>',
+ });
+ </script>
+ </body>
+</html>
<filter-name>FallbackResourceFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
+
+ <filter>
+ <filter-name>PublicBrowserFallbackResourceFilter</filter-name>
+ <filter-class>org.collectionspace.services.common.filter.FallbackResourceFilter</filter-class>
+ <init-param>
+ <param-name>file</param-name>
+ <param-value>/public/index.jsp</param-value>
+ </init-param>
+ </filter>
+ <filter-mapping>
+ <filter-name>PublicBrowserFallbackResourceFilter</filter-name>
+ <url-pattern>/public/*</url-pattern>
+ </filter-mapping>
+
<filter>
<filter-name>ExpiresFilter</filter-name>
<filter-class>org.apache.catalina.filters.ExpiresFilter</filter-class>
tenant.ui.profile.plugin.library.name=cspaceUIPluginProfileLHMC
tenant.ui.profile.plugin.version=7.0.0
tenant.ui.profile.plugin.build.branch=master
+
+# If not set, defaults to /gateway/${tenant.shortname} on the current host.
+# tenant.public.browser.gateway.url=https://core.dev.collectionspace.org/gateway/${tenant.shortname}
--- /dev/null
+<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
+<%! String configuredGatewayUrl = "@GATEWAY_URL@"; %>
+<html>
+ <head>
+ <meta charset="UTF-8" />
+ </head>
+ <body>
+ <div id="cspace-browser"></div>
+ <script src="/cspace-ui/@PUBLIC_BROWSER_FILENAME@"></script>
+ <script>
+ cspacePublicBrowser({
+ basename: '@BASENAME@/public',
+ baseConfig: '@TENANT_SHORTNAME@',
+ gatewayUrl: '<%=
+ configuredGatewayUrl.length() > 0
+ ? configuredGatewayUrl
+ : request.getRequestURL().substring(0, request.getRequestURL().length() - request.getRequestURI().length()) + "/gateway/@TENANT_SHORTNAME@"
+ %>',
+ });
+ </script>
+ </body>
+</html>
<filter-name>FallbackResourceFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
+
+ <filter>
+ <filter-name>PublicBrowserFallbackResourceFilter</filter-name>
+ <filter-class>org.collectionspace.services.common.filter.FallbackResourceFilter</filter-class>
+ <init-param>
+ <param-name>file</param-name>
+ <param-value>/public/index.jsp</param-value>
+ </init-param>
+ </filter>
+ <filter-mapping>
+ <filter-name>PublicBrowserFallbackResourceFilter</filter-name>
+ <url-pattern>/public/*</url-pattern>
+ </filter-mapping>
+
<filter>
<filter-name>ExpiresFilter</filter-name>
<filter-class>org.apache.catalina.filters.ExpiresFilter</filter-class>
tenant.ui.profile.plugin.library.name=cspaceUIPluginProfileMaterials
tenant.ui.profile.plugin.version=4.0.0
tenant.ui.profile.plugin.build.branch=master
+
+# If not set, defaults to /gateway/${tenant.shortname} on the current host.
+# tenant.public.browser.gateway.url=https://core.dev.collectionspace.org/gateway/${tenant.shortname}
--- /dev/null
+<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
+<%! String configuredGatewayUrl = "@GATEWAY_URL@"; %>
+<html>
+ <head>
+ <meta charset="UTF-8" />
+ </head>
+ <body>
+ <div id="cspace-browser"></div>
+ <script src="/cspace-ui/@PUBLIC_BROWSER_FILENAME@"></script>
+ <script>
+ cspacePublicBrowser({
+ basename: '@BASENAME@/public',
+ baseConfig: '@TENANT_SHORTNAME@',
+ gatewayUrl: '<%=
+ configuredGatewayUrl.length() > 0
+ ? configuredGatewayUrl
+ : request.getRequestURL().substring(0, request.getRequestURL().length() - request.getRequestURI().length()) + "/gateway/@TENANT_SHORTNAME@"
+ %>',
+ });
+ </script>
+ </body>
+</html>
<filter-name>FallbackResourceFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
+
+ <filter>
+ <filter-name>PublicBrowserFallbackResourceFilter</filter-name>
+ <filter-class>org.collectionspace.services.common.filter.FallbackResourceFilter</filter-class>
+ <init-param>
+ <param-name>file</param-name>
+ <param-value>/public/index.jsp</param-value>
+ </init-param>
+ </filter>
+ <filter-mapping>
+ <filter-name>PublicBrowserFallbackResourceFilter</filter-name>
+ <url-pattern>/public/*</url-pattern>
+ </filter-mapping>
+
<filter>
<filter-name>ExpiresFilter</filter-name>
<filter-class>org.apache.catalina.filters.ExpiresFilter</filter-class>
tenant.ui.profile.plugin.library.name=cspaceUIPluginProfilePublicArt
tenant.ui.profile.plugin.version=6.0.0
tenant.ui.profile.plugin.build.branch=master
+
+# If not set, defaults to /gateway/${tenant.shortname} on the current host.
+# tenant.public.browser.gateway.url=https://core.dev.collectionspace.org/gateway/${tenant.shortname}
--- /dev/null
+<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
+<%! String configuredGatewayUrl = "@GATEWAY_URL@"; %>
+<html>
+ <head>
+ <meta charset="UTF-8" />
+ </head>
+ <body>
+ <div id="cspace-browser"></div>
+ <script src="/cspace-ui/@PUBLIC_BROWSER_FILENAME@"></script>
+ <script>
+ cspacePublicBrowser({
+ basename: '@BASENAME@/public',
+ baseConfig: '@TENANT_SHORTNAME@',
+ gatewayUrl: '<%=
+ configuredGatewayUrl.length() > 0
+ ? configuredGatewayUrl
+ : request.getRequestURL().substring(0, request.getRequestURL().length() - request.getRequestURI().length()) + "/gateway/@TENANT_SHORTNAME@"
+ %>',
+ });
+ </script>
+ </body>
+</html>