diff --git a/.gitignore b/.gitignore
index 6a7441a..9e9d241 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,6 +1,9 @@
.project
.settings
+node
+node_modules
/sci-types-project/target/
/scientificcms/target/
/sci-publications/nbproject/
/sci-publications/target/
+/scicms-bundle-devel-wildfly/target/
diff --git a/pom.xml b/pom.xml
index 7b74901..cbe9874 100644
--- a/pom.xml
+++ b/pom.xml
@@ -42,9 +42,12 @@
sci-types-project
- scientificcms
- sci-publications
-
+ scientificcms
+ sci-publications
+
+ scicms-bundle-devel
+ scicms-bundle-devel-wildfly
+
true
diff --git a/sci-types-project/pom.xml b/sci-types-project/pom.xml
index 74fca5a..eabdde5 100644
--- a/sci-types-project/pom.xml
+++ b/sci-types-project/pom.xml
@@ -19,6 +19,7 @@
org.scientificcms
sci-types-project
+ 7.0.0-SNAPSHOT
ScientificCMS SciProject Content Type
diff --git a/scicms-bundle-devel-wildfly/.classpath b/scicms-bundle-devel-wildfly/.classpath
new file mode 100644
index 0000000..39abf1c
--- /dev/null
+++ b/scicms-bundle-devel-wildfly/.classpath
@@ -0,0 +1,49 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/scicms-bundle-devel-wildfly/.factorypath b/scicms-bundle-devel-wildfly/.factorypath
new file mode 100644
index 0000000..cd76a4e
--- /dev/null
+++ b/scicms-bundle-devel-wildfly/.factorypath
@@ -0,0 +1,80 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/scicms-bundle-devel-wildfly/package.json b/scicms-bundle-devel-wildfly/package.json
new file mode 100644
index 0000000..a455136
--- /dev/null
+++ b/scicms-bundle-devel-wildfly/package.json
@@ -0,0 +1,21 @@
+{
+ "name": "scientificcms-bundle-devel-wildfly",
+ "version": "7.0.0",
+ "scripts": {
+ "build": "webpack"
+ },
+ "dependencies": {
+ "@librecms/ccm-cms-pagemodelseditor": "7.0.0",
+ "tinymce": "^4.8.2"
+ },
+ "devDependencies": {
+ "@types/tinymce": "^4.5.16",
+ "@types/webpack-env": "^1.13.6",
+ "file-loader": "^1.1.11",
+ "ts-loader": "^4.4.2",
+ "tslint": "^5.11.0",
+ "typescript": "^3.0.1",
+ "webpack": "^4.16.4",
+ "webpack-cli": "^3.1.0"
+ }
+}
diff --git a/scicms-bundle-devel-wildfly/pom.xml b/scicms-bundle-devel-wildfly/pom.xml
new file mode 100644
index 0000000..dffaa96
--- /dev/null
+++ b/scicms-bundle-devel-wildfly/pom.xml
@@ -0,0 +1,255 @@
+
+
+
+
+ UTF-8
+
+
+ 4.0.0
+
+
+ org.scientificcms
+ scientificcms-bundle-devel
+ ../scicms-bundle-devel
+ 7.0.0-SNAPSHOT
+
+
+ org.scientificcms
+ scicms-bundle-devel-wildfly
+
+ war
+
+ ScientificCMS Devel Bundle for Wildfly
+ http://www.scientificcms.org/modules/web/wildfly
+
+
+
+ org.webjars
+ font-awesome
+
+
+
+ org.webjars
+ requirejs
+
+
+
+ org.webjars
+ requirejs-domready
+
+
+
+ org.webjars.npm
+ tinymce
+
+
+
+
+ org.librecms
+ ccm-cms-pagemodelseditor
+ ${project.parent.version}
+
+
+ org.librecms
+ ccm-cms-tinymce
+ ${project.parent.version}
+
+
+
+
+ scientificcms-bundle-devel-wildfly
+
+
+
+ src/main/resources
+
+
+ ${project.build.directory}/generated-resources
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+ 1.8
+ 1.8
+ true
+ true
+ ${project.build.sourceEncoding}
+
+
+
+
+ com.github.eirslett
+ frontend-maven-plugin
+
+
+ ../node
+
+
+
+
+ Install node.js and NPM
+
+ install-node-and-npm
+
+
+ v8.11.4
+
+
+
+
+
+
+
+ npm install
+
+ npm
+
+
+ --userconfig ../scicms.npmrc install
+
+
+
+ build
+
+ npm
+
+
+ --userconfig ../scicms.npmrc run build
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-war-plugin
+
+
+
+
+ src/main/resources
+
+
+ ${project.build.directory}/generated-resources
+
+
+
+
+
+
+ org.libreccm
+ ccm-pagemodelseditor
+ jar
+
+
+ org.libreccm
+ ccm-theme-foundry
+ jar
+
+
+ org.libreccm
+ ccm-core
+ jar
+
+ assets/
+
+
+
+ org.librecms
+ ccm-cms
+ jar
+
+ templates/
+
+
+
+ org.librecms
+ ccm-cms-tinymce
+ jar
+
+ scripts/
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+
+
+ org.apache.maven.plugins
+ maven-project-info-reports-plugin
+
+
+
+ summary
+ licenses
+ scm
+ dependency-management
+ plugin-management
+
+
+
+
+
+
+
+
+
+
diff --git a/scicms-bundle-devel-wildfly/src/main/resources/log4j2.xml b/scicms-bundle-devel-wildfly/src/main/resources/log4j2.xml
new file mode 100644
index 0000000..ad3d929
--- /dev/null
+++ b/scicms-bundle-devel-wildfly/src/main/resources/log4j2.xml
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/scicms-bundle-devel-wildfly/src/main/resources/scripts/ccm-cms/tinymce-loader.js b/scicms-bundle-devel-wildfly/src/main/resources/scripts/ccm-cms/tinymce-loader.js
new file mode 100644
index 0000000..251a540
--- /dev/null
+++ b/scicms-bundle-devel-wildfly/src/main/resources/scripts/ccm-cms/tinymce-loader.js
@@ -0,0 +1,10 @@
+document.addEventListener("DOMContentLoaded", function() {
+ tinymce.init({
+ contentsection: document.querySelector(".tinymce").getAttribute("data-contentsection"),
+ contextprefix: document.querySelector(".tinymce").getAttribute("data-contextprefix"),
+ menubar: "edit view insert format tools table",
+ plugins: "ccm-cms-insertimage code lists nonbreaking noneditable paste searchreplace table template visualblocks wordcount",
+ selector: ".tinymce",
+ toolbar: "undo redo formatselect bold italic underline strikethrough alignleft aligncenter alignright alignjustify alignnone insert indent outdent blockquote bullist numlist link unlink openlink insertimage table",
+ });
+});
diff --git a/scicms-bundle-devel-wildfly/src/main/resources/shiro.ini b/scicms-bundle-devel-wildfly/src/main/resources/shiro.ini
new file mode 100644
index 0000000..056b076
--- /dev/null
+++ b/scicms-bundle-devel-wildfly/src/main/resources/shiro.ini
@@ -0,0 +1,17 @@
+[main]
+
+filterChainResolver = org.apache.shiro.web.filter.mgt.PathMatchingFilterChainResolver
+
+passwordMatcher = org.apache.shiro.authc.credential.PasswordMatcher
+passwordService = org.apache.shiro.authc.credential.DefaultPasswordService
+passwordMatcher.passwordService = $passwordService
+
+ccmRealm = org.libreccm.security.CcmShiroRealm
+ccmRealm.credentialsMatcher = $passwordMatcher
+
+securityManager.realms = $ccmRealm
+securityManager.rememberMeManager.cipherKey = p5h/Aphy0gfV+XThbEPqSG4iQNh2fTNH9ZEkSBAt/Ok=
+
+cacheManager = org.apache.shiro.cache.MemoryConstrainedCacheManager
+securityManager.cacheManager = $cacheManager
+
diff --git a/scicms-bundle-devel-wildfly/src/main/resources/stylesheet-paths.txt b/scicms-bundle-devel-wildfly/src/main/resources/stylesheet-paths.txt
new file mode 100644
index 0000000..221b973
--- /dev/null
+++ b/scicms-bundle-devel-wildfly/src/main/resources/stylesheet-paths.txt
@@ -0,0 +1,65 @@
+# -*- text -*-
+# This file locates stylesheets, if you are using the
+# "PatternStylesheetResolver". Please read the Javadoc for that file for
+# the full story.
+
+# Currently the "resource" part is actually "short-circuited", see
+# Templating#transformURL(url). As long as we store and synchronize all theme
+# files in each server's local file system, we use the direct file apprach to
+# avoid unnecessary http request and traffic between client (user) and server!
+# Additionally all modules are installed into one webapp context, so the
+# webapp tag is redundant, but sort of required by some part of the code.
+
+
+# Theme with single entry point (e.g Mandalay) managed by themedirector
+#http://::host::/resource/::webapp::/themes/::themedir::/::theme::/start.xsl
+http://::host::/::webapp::/themes/::themedir::/::theme::/start.xsl
+
+# Theme with single entry point (e.g Mandalay) unmanaged default
+#http://::host::/resource/::webapp::/themes/mandalay/start.xsl
+#http://::host::/::webapp::/themes/mandalay/start.xsl
+
+# Theme with single entry point (e.g Mandalay) unmanaged default
+#http://::host::/resource/::webapp::/themes/mandalay/start.xsl
+http://::host::/::webapp::/themes/libreccm-default/start.xsl
+
+
+
+
+# ==============================================================================
+# The following is for multi-entry themes, not used in ScientificCMS
+# ==============================================================================
+
+# Output type is for things such as text/javascript
+# NOT used by ScientificCMS, uses Mandalay only!
+#http://::host::/resource/::webapp::/themes/heirloom/apps/::application::/xsl/::url::-::outputtype::-::locale::.xsl
+#http://::host::/resource/::webapp::/themes/heirloom/apps/::application::/xsl/::url::-::outputtype::.xsl
+
+# Grabs custom item xsl for CMS
+# NOT used by ScientificCMS, uses Mandalay only!
+#http://::host::/themes/servlet/content-item/index.xsl?oid=::item_template_oid::&delegated=::item_delegated_url::
+
+# Theme, with optional locale & prefix
+# NOT used by ScientificCMS, uses Mandalay only!
+#http://::host::/resource/::webapp::/themes/::themedir::/::theme::/::application::-::url::-::prefix::-::locale::.xsl
+#http://::host::/resource/::webapp::/themes/::themedir::/::theme::/::application::-::url::-::prefix::.xsl
+
+# Theme, with optional locale
+# NOT used by ScientificCMS, uses Mandalay only!
+#http://::host::/resource/::webapp::/themes/::themedir::/::theme::/::application::-::url::-::locale::.xsl
+#http://::host::/resource/::webapp::/themes/::themedir::/::theme::/::application::-::url::.xsl
+
+# APLAWS generic default, with locale and prefix
+# XXX change ROOT -> ccm-ldn-aplaws
+# http://::host::/resource/ROOT/themes/static/aplaws-generic/::application::-::url::-::prefix::-::locale::.xsl
+# http://::host::/resource/ROOT/themes/static/aplaws-generic/::application::-::url::-::prefix::.xsl
+
+# APLAWS generic default, with locale
+# XXX change ROOT -> ccm-ldn-aplaws
+# http://::host::/resource/ROOT/themes/static/aplaws-generic/::application::-::url::-::locale::.xsl
+# http://::host::/resource/ROOT/themes/static/aplaws-generic/::application::-::url::.xsl
+
+# Global default, from application's own web app
+# NOT used by ScientificCMS
+#http://::host::/resource/::webapp::/themes/heirloom/apps/::application::/xsl/::url::-::locale::.xsl
+#http://::host::/resource/::webapp::/themes/heirloom/apps/::application::/xsl/::url::.xsl
diff --git a/scicms-bundle-devel-wildfly/src/main/resources/systeminformation.properties b/scicms-bundle-devel-wildfly/src/main/resources/systeminformation.properties
new file mode 100644
index 0000000..0946562
--- /dev/null
+++ b/scicms-bundle-devel-wildfly/src/main/resources/systeminformation.properties
@@ -0,0 +1,3 @@
+version = 7.0.0-SNAPSHOT
+appname = ScientificCMS
+apphomepage = https://scientificcms.org
diff --git a/scicms-bundle-devel-wildfly/src/main/typescript/ccm-cms-pagemodelseditor.ts b/scicms-bundle-devel-wildfly/src/main/typescript/ccm-cms-pagemodelseditor.ts
new file mode 100644
index 0000000..b67791f
--- /dev/null
+++ b/scicms-bundle-devel-wildfly/src/main/typescript/ccm-cms-pagemodelseditor.ts
@@ -0,0 +1 @@
+import "@librecms/ccm-cms-pagemodelseditor";
diff --git a/scicms-bundle-devel-wildfly/src/main/webapp/WEB-INF/beans.xml b/scicms-bundle-devel-wildfly/src/main/webapp/WEB-INF/beans.xml
new file mode 100644
index 0000000..79f7733
--- /dev/null
+++ b/scicms-bundle-devel-wildfly/src/main/webapp/WEB-INF/beans.xml
@@ -0,0 +1,7 @@
+
+
+
diff --git a/scicms-bundle-devel-wildfly/src/main/webapp/WEB-INF/classes/persistence.xml b/scicms-bundle-devel-wildfly/src/main/webapp/WEB-INF/classes/persistence.xml
new file mode 100644
index 0000000..bf88464
--- /dev/null
+++ b/scicms-bundle-devel-wildfly/src/main/webapp/WEB-INF/classes/persistence.xml
@@ -0,0 +1,52 @@
+
+
+
+
+
+
+
+
+ org.hibernate.jpa.HibernatePersistenceProvider
+
+ java:/comp/env/jdbc/scientificcms/db
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/scicms-bundle-devel-wildfly/src/main/webapp/WEB-INF/conf/registry.properties b/scicms-bundle-devel-wildfly/src/main/webapp/WEB-INF/conf/registry.properties
new file mode 100644
index 0000000..dd78e55
--- /dev/null
+++ b/scicms-bundle-devel-wildfly/src/main/webapp/WEB-INF/conf/registry.properties
@@ -0,0 +1 @@
+waf.config.packages=ccm-core
diff --git a/scicms-bundle-devel-wildfly/src/main/webapp/WEB-INF/faces-config.xml b/scicms-bundle-devel-wildfly/src/main/webapp/WEB-INF/faces-config.xml
new file mode 100644
index 0000000..fdcd190
--- /dev/null
+++ b/scicms-bundle-devel-wildfly/src/main/webapp/WEB-INF/faces-config.xml
@@ -0,0 +1,8 @@
+
+
+
+
diff --git a/scicms-bundle-devel-wildfly/src/main/webapp/WEB-INF/web.xml b/scicms-bundle-devel-wildfly/src/main/webapp/WEB-INF/web.xml
new file mode 100644
index 0000000..3c14fd9
--- /dev/null
+++ b/scicms-bundle-devel-wildfly/src/main/webapp/WEB-INF/web.xml
@@ -0,0 +1,84 @@
+
+
+
+ ScientificCMS
+
+
+ ccm.develmode
+ true
+
+
+ ccm.distribution
+ scientificcms
+
+
+
+
+ COOKIE
+
+
+
+
+ ShiroFilter
+ org.apache.shiro.web.servlet.ShiroFilter
+
+
+
+ ShiroFilter
+ /*
+
+
+
+ org.apache.shiro.web.env.EnvironmentLoaderListener
+
+
+
+
+
+
+ Faces Servlet
+ javax.faces.webapp.FacesServlet
+ 1
+
+
+
+ Faces Servlet
+ *.xhtml
+
+
+
+ javax.faces.PROJECT_STAGE
+ Development
+
+
+ javax.faces.FACELETS_SKIP_COMMENTS
+ true
+
+
+
+
+
+
diff --git a/scicms-bundle-devel-wildfly/tsconfig.json b/scicms-bundle-devel-wildfly/tsconfig.json
new file mode 100644
index 0000000..5381779
--- /dev/null
+++ b/scicms-bundle-devel-wildfly/tsconfig.json
@@ -0,0 +1,11 @@
+{
+ "compilerOptions": {
+ "module": "commonjs",
+ "moduleResolution": "node",
+ "rootDir": "src/main/typescript",
+ "sourceMap": true,
+ "strict": true,
+ "target": "es6"
+ },
+ "include": ["src/main/typescript/*"]
+}
diff --git a/scicms-bundle-devel-wildfly/tslint.conf b/scicms-bundle-devel-wildfly/tslint.conf
new file mode 100644
index 0000000..3e8e90f
--- /dev/null
+++ b/scicms-bundle-devel-wildfly/tslint.conf
@@ -0,0 +1,19 @@
+{
+ "defaultSeverity": "error",
+ "extends": [
+ "tslint:recommended"
+ ],
+ "jsRules": {},
+ "rules": {
+ "interface-name": {
+ "options": ["never-prefix"]
+ },
+ "max-classes-per-file": {
+ "options": [100]
+ },
+ "max-line-length": {
+ "options": [80]
+ }
+ },
+ "rulesDirectory": []
+}
diff --git a/scicms-bundle-devel-wildfly/webpack.config.js b/scicms-bundle-devel-wildfly/webpack.config.js
new file mode 100644
index 0000000..91b8cb1
--- /dev/null
+++ b/scicms-bundle-devel-wildfly/webpack.config.js
@@ -0,0 +1,29 @@
+const path = require('path');
+
+module.exports = {
+
+ devtool: "source-map",
+
+ entry: {
+ "ccm-cms-pagemodelseditor": "./src/main/typescript/ccm-cms-pagemodelseditor.ts",
+ // "ccm-cms-tinymce-loader": "./src/main/typescript/tinymce/ccm-cms-tinymce-loader.ts",
+ },
+
+ mode: "development",
+
+ output: {
+ //path: path.resolve(__dirname, "src/main/resources/dist"),
+ path: path.resolve(__dirname, "target/generated-resources/scripts/dist"),
+ filename: "[name].js"
+ },
+
+ resolve: {
+ extensions: [".webpack.js", "web.js", ".ts", ".tsx", ".js"]
+ },
+
+ module: {
+ rules: [
+ { test: /\.tsx?$/, loader: "ts-loader"}
+ ]
+ }
+};
diff --git a/scicms-bundle-devel/pom.xml b/scicms-bundle-devel/pom.xml
new file mode 100644
index 0000000..2d31e56
--- /dev/null
+++ b/scicms-bundle-devel/pom.xml
@@ -0,0 +1,116 @@
+
+
+
+ 4.0.0
+
+
+ org.scientificcms
+ scientificcms-parent
+ 7.0.0-SNAPSHOT
+
+
+ org.scientificcms
+ scientificcms-bundle-devel
+ pom
+
+ ScientificCMS Devel Bundle
+
+
+
+
+ org.libreccm
+ ccm-core
+ ${project.parent.version}
+
+
+
+ org.libreccm
+ ccm-editor
+ ${project.parent.version}
+
+
+ org.libreccm
+ ccm-pagemodelseditor
+ ${project.parent.version}
+
+
+ org.libreccm
+ ccm-theme-foundry
+ ${project.parent.version}
+
+
+ org.librecms
+ ccm-theme-ftllibs-devel
+ ${project.parent.version}
+
+
+
+ net.sf.saxon
+ Saxon-HE
+
+
+
+
+ org.libreccm
+ ccm-shortcuts
+ ${project.parent.version}
+
+
+ org.librecms
+ ccm-cms
+ ${project.parent.version}
+
+
+
+
+
+ org.scientificcms
+ scientificcms
+ 1.0.0-SNAPSHOT
+
+
+ org.scientificcms
+ sci-publications
+ 7.0.0-SNAPSHOT
+
+
+ org.scientificcms
+ sci-types-project
+ 7.0.0-SNAPSHOT
+
+
+
+
+ org.apache.logging.log4j
+ log4j-core
+
+
+ org.apache.logging.log4j
+ log4j-api
+
+
+
+
+
+
+ true
+
+
+ org.apache.maven.plugins
+ maven-project-info-reports-plugin
+
+
+
+ summary
+ licenses
+ scm
+ dependency-management
+ plugin-management
+
+
+
+
+
+
+
+
diff --git a/scicms.npmrc b/scicms.npmrc
new file mode 100644
index 0000000..395197d
--- /dev/null
+++ b/scicms.npmrc
@@ -0,0 +1,3 @@
+@libreccm:registry=https://packages.libreccm.org/repository/libreccm-npm/
+@librecms:registry=https://packages.libreccm.org/repository/libreccm-npm/
+