diff --git a/Makefile b/Makefile index 882f9d4d938ec73ea895003e79c52f958828944d..2c12ee4e67becfd7713ae305c4ab7432bda84391 100644 --- a/Makefile +++ b/Makefile @@ -52,9 +52,9 @@ LIBS_SUBDIRS = $(addprefix $(LIBS_DIR)/, js css fonts) ALL: install -install: clean install-sss cp-src cp-ext cp-conf $(addprefix $(PUBLIC_DIR)/, $(LIBS)) build_properties merge_xsl +install: clean-ignore-zips install-sss cp-src cp-ext cp-conf $(addprefix $(PUBLIC_DIR)/, $(LIBS)) build_properties merge_xsl merge_js -test: clean install-sss cp-src cp-ext cp-ext-test cp-conf $(addprefix $(PUBLIC_DIR)/, $(TEST_LIBS)) build_properties merge_xsl +test: clean-ignore-zips install-sss cp-src cp-ext cp-ext-test cp-conf $(addprefix $(PUBLIC_DIR)/, $(TEST_LIBS)) build_properties merge_xsl merge_js @for f in $(shell find $(TEST_EXT_DIR) -type f -iname *.js) ; do \ sed -i "/EXTENSIONS/a \<script src=\"$${f#$(TEST_EXT_DIR)/}\" ></script>" $(PUBLIC_DIR)/index.html ; \ echo include $$f; \ @@ -67,6 +67,10 @@ test: clean install-sss cp-src cp-ext cp-ext-test cp-conf $(addprefix $(PUBLIC_D merge_xsl: misc/merge_xsl.sh +merge_js: + for f in ${BUILDFILELIST} ; do source "$$f" ; done ; \ + misc/merge_js.sh $${MODULE_DEPENDENCIES[*]} + EXCLUDE_EXPR = %~ %.backup BUILDFILELIST = $(filter-out $(EXCLUDE_EXPR),$(wildcard build.properties.d/*)) build_properties: @@ -213,9 +217,6 @@ $(PUBLIC_DIR)/%: $(TEST_EXT_DIR)/% $(LIBS_DIR)/fonts: unzip ln -s $(LIBS_DIR)/bootstrap-icons-1.4.1/fonts/ $@ -$(LIBS_DIR)/css/fonts: unzip - ln -s $(LIBS_DIR)/css/fonts $@ - $(LIBS_DIR)/js/bootstrap.js: unzip $(LIBS_DIR)/js ln -s $(LIBS_DIR)/bootstrap-5.0.0-beta3-dist/js/bootstrap.min.js $@ @@ -304,17 +305,20 @@ $(addprefix $(LIBS_DIR)/, js css): $(LIBS_DIR)/css/fonts: $(LIBS_DIR)/css ln -s $(LIBS_DIR)/fonts/ $(LIBS_DIR)/css/fonts -.PHONY: clean -clean: +.PHONY: clean-ignore-zips +clean-ignore-zips: $(RM) -r $(SSS_BIN_DIR) $(RM) -r $(PUBLIC_DIR) for f in $(LIBS_SUBDIRS); do unlink $$f || $(RM) -r $$f || true; done - for f in $(patsubst %.zip,%/,$(LIBS_ZIP)); do $(RM) -r $$f; done $(RM) .server_done +.PHONY: clean +clean: clean-ignore-zips + for f in $(patsubst %.zip,%/,$(LIBS_ZIP)); do $(RM) -r $$f; done + .PHONY: unzip unzip: - for f in $(LIBS_ZIP); do unzip -q -o -d libs $$f; done + for f in $(LIBS_ZIP); do echo "unzip $$f" ; unzip -u -q -o -d libs $$f; done PYLINT ?= pylint diff --git a/build.properties.d/00_default.properties b/build.properties.d/00_default.properties index 482913473a8d2620a4484b69424aab82e52e48f3..36d296789f6058d106b450f405af726bf0273b9d 100644 --- a/build.properties.d/00_default.properties +++ b/build.properties.d/00_default.properties @@ -90,3 +90,48 @@ BUILD_CUSTOM_IMPRINT='<p> Put an imprint note here </p>' # ext_trigger_crawler_form properties ############################################################################## BUILD_MODULE_EXT_TRIGGER_CRAWLER_FORM_TOOLBOX="Tools" + +############################################################################## +# Module dependencies +# Override or extend to specify the order of js files in the resulting +# bundled js file +############################################################################## +MODULE_DEPENDENCIES=( + jquery.js + bootstrap.bundle.min.js + bootstrap-autocomplete.min.js + bootstrap-select.js + state-machine.js + showdown.js + dropzone.js + loglevel.js + plotly.js + webcaosdb.js + pako.js + utif.js + caosdb.js + form_elements.js + ext_autocomplete.js + preview.js + ext_references.js + ext_table_preview.js + ext_xls_download.js + query_shortcuts.js + ext_jupyterdrag.js + annotation.js + edit_mode.js + ext_entity_state.js + ext_file_download.js + leaflet.js + leaflet-graticule.js + leaflet-latlng-graticule.js + leaflet-coordinates.js + proj4.js + proj4leaflet.js + ext_map.js + tour.js + ext_bottom_line.js + ext_sss_markdown.js + ext_trigger_crawler_form.js + ext_bookmarks.js +) diff --git a/misc/merge_js.sh b/misc/merge_js.sh new file mode 100755 index 0000000000000000000000000000000000000000..375529fe472a05caafb12981a6fb17aef0ae8db9 --- /dev/null +++ b/misc/merge_js.sh @@ -0,0 +1,70 @@ +#!/bin/bash +# +# ** header v3.0 +# This file is a part of the CaosDB Project. +# +# Copyright (C) 2021 IndiScale GmbH +# Copyright (C) 2021 Timm Fitschen <t.fitschen@indiscale.com> +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <https://www.gnu.org/licenses/>. +# +# ** end header + +# This file can be used to merge js files together. +# +# call: `./merge_js.sh [JS_FILE]*` +# where the JS_FILE are the files which will be merged into the resulting +# `public/webcaosdb.dist.js` in the order they appear in the command line +# call. See `Makefile` for an example. +# +# All other files in `public/js` are appended to the resulting file in no +# particular order. + + +CORE_MODULES=$@ +SOURCE_DIR=public/js/ +TARGET=public/webcaosdb.dist.js + +function _merge () { + _SOURCE=$2 + _TARGET=$3 + + echo "merging $1 module ${_SOURCE} into ${_TARGET}" + + + echo "//COPIED FROM ${_SOURCE} (START)" >> ${_TARGET} + cat ${_SOURCE} >> ${_TARGET} + echo "//COPIED FROM ${_SOURCE} (END)" >> ${_TARGET} + + rm ${_SOURCE} +} + +# clean up old +rm $TARGET || true +touch $TARGET + +for _SOURCE in ${CORE_MODULES[@]} ; do + _merge "core" "${SOURCE_DIR}${_SOURCE}" $TARGET +done + +# load other js files but exclude any subdirectory +for _SOURCE in $(find ${SOURCE_DIR}* -prune -iname "*.js") ; do + _merge "extension" ${_SOURCE} $TARGET +done + +# for `make test` +for _SOURCE in $(find ${SOURCE_DIR} -ipath "${SOURCE_DIR}modules/*.js") ; do + _merge "extension" ${_SOURCE} $TARGET +done + diff --git a/src/core/js/footer.js b/src/core/js/footer.js deleted file mode 100644 index c48c5cf19c405aea326b36aba2868008466a8329..0000000000000000000000000000000000000000 --- a/src/core/js/footer.js +++ /dev/null @@ -1,60 +0,0 @@ -/* - * ** header v3.0 - * This file is a part of the CaosDB Project. - * - * Copyright (C) 2019 IndiScale GmbH (info@indiscale.com) - * Copyright (C) 2019 Daniel Hornung (d.hornung@indiscale.com) - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see <https://www.gnu.org/licenses/>. - * - * ** end header - */ -'use strict'; - -/** - * Call initially. - * - * TODO refactor to async function for better readability. - * @return something - */ -function footer_initOnDocumentReady() { - - var xhr = new XMLHttpRequest() - - // TODO Refactor and use transformation.retrieveXsltScript, - // - // Event better use the transformation module for injecting an entry point, - // because this implementation does not allow for non-HTML content in the - // caosdb-footer template. - xhr.open("GET", "/webinterface/${BUILD_NUMBER}/xsl/footer.xsl"); - xhr.addEventListener('load', function() { - if (this.status != 200) { - // TODO use proper logging framework (log.getLogger("footer.js");) - console.log(this.status); - return; - } - var footer_xsl = this.responseXML; - - var foot_content = $('[name = "caosdb-footer"]', footer_xsl)[0]; - var fragment = document.createRange().createContextualFragment( - foot_content.innerHTML); - var footer = $("footer")[0]; - footer.appendChild(fragment); - - }); - xhr.send(); - -} - -$(document).ready(footer_initOnDocumentReady); diff --git a/src/core/js/webcaosdb.js b/src/core/js/webcaosdb.js index 2c65b806101265f3a0e346e86497f2c72ad56340..6d374824d0ecc1feebe13f33142b52e3ac9ce7f3 100644 --- a/src/core/js/webcaosdb.js +++ b/src/core/js/webcaosdb.js @@ -1285,6 +1285,10 @@ var paging = new function () { } return index + "L" + length; } + + this.init = function () { + paging.initPaging(window.location.href, document.body.getAttribute("data-response-count")); + } }; var queryForm = new function () { @@ -1889,10 +1893,12 @@ function initOnDocumentReady() { $(this).css('max-height', ""); }); - if (typeof caosdb_modules.auto_init === "undefined") { + if (typeof _caosdb_modules_auto_init === "undefined") { // the test index.html sets this to false, // unset -> no tests caosdb_modules.auto_init = true; + } else { + caosdb_modules.auto_init = _caosdb_modules_auto_init; } caosdb_modules.init(); navbar.init(); diff --git a/src/core/webcaosdb.xsl b/src/core/webcaosdb.xsl index dd5502008d4431ad63896ba06f7954334a282dc4..9d0dd2e235ca59ce6f4e7b75acd59e063e322751 100644 --- a/src/core/webcaosdb.xsl +++ b/src/core/webcaosdb.xsl @@ -69,6 +69,9 @@ <xsl:call-template name="caosdb-head-js" /> </head> <body> + <xsl:attribute name="data-response-count"> + <xsl:value-of select="/Response/@count"/> + </xsl:attribute> <xsl:if test="count(/Response/*)<3 and not(/Response/Error|/Response/Info|/Response/Warning)"> <xsl:attribute name="class">caosdb-welcome</xsl:attribute> </xsl:if> diff --git a/src/core/xsl/main.xsl b/src/core/xsl/main.xsl index 95802360d69a9de513fc6dc5fe6b05cb5c9d8e6c..238f790fdcd93816d36adf35886e162575df9aa3 100644 --- a/src/core/xsl/main.xsl +++ b/src/core/xsl/main.xsl @@ -95,198 +95,13 @@ </xsl:template> <xsl:template name="caosdb-head-js"> <script> - var caosdb_webui_build_number = "${BUILD_NUMBER}"; window.sessionStorage.caosdbBasePath = "<xsl:value-of select="$basepath"/>"; </script> <xsl:element name="script"> <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/jquery.js')"/> + <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/webcaosdb.dist.js')"/> </xsl:attribute> </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/bootstrap.bundle.min.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/bootstrap-autocomplete.min.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/bootstrap-select.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/state-machine.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/showdown.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/dropzone.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/loglevel.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/plotly.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/webcaosdb.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/pako.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/utif.js')"/> - </xsl:attribute> - </xsl:element> - <script> - $(document).ready(() => paging.initPaging(window.location.href, <xsl:value-of select="/Response/@count"/> )); - </script> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/caosdb.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/form_elements.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/ext_autocomplete.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/preview.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/ext_references.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/ext_table_preview.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/ext_xls_download.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/query_shortcuts.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/ext_jupyterdrag.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/annotation.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/edit_mode.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/ext_entity_state.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/ext_file_download.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/leaflet.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/leaflet-graticule.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/leaflet-latlng-graticule.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/leaflet-coordinates.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/proj4.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/proj4leaflet.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/ext_map.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/tour.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/ext_bottom_line.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/ext_sss_markdown.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/ext_trigger_crawler_form.js')"/> - </xsl:attribute> - </xsl:element> - <xsl:element name="script"> - <xsl:attribute name="src"> - <xsl:value-of select="concat($basepath,'webinterface/${BUILD_NUMBER}/js/ext_bookmarks.js')"/> - </xsl:attribute> - </xsl:element> - <!--JS_EXTENSIONS--> </xsl:template> <xsl:template name="caosdb-data-container"> <div class="container d-flex flex-column-reverse flex-lg-row caosdb-f-main"> diff --git a/src/core/xsl/welcome.xsl b/src/core/xsl/welcome.xsl index a38e51607afef2ba107130fda071b808f17c942a..249c2f8e873e83dc4db3132fc22152211fd87965 100644 --- a/src/core/xsl/welcome.xsl +++ b/src/core/xsl/welcome.xsl @@ -25,7 +25,7 @@ <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="html"/> <xsl:template name="welcome"> - <div class="caosdb-f-welcome-panel bg-light"> + <div class="caosdb-v-welcome-panel bg-light"> <h1>Welcome</h1> <p>This is CaosDB.</p> <p>This is the default welcome message. If you are an administrator you can override it. Just copy <code>src/core/xsl/welcome.xsl</code> to <code>src/ext/xsl/welcome.xsl</code> and change this content. Then run <code>make</code> again in CaosdDB's web interface's root directory.</p> diff --git a/test/core/index.html b/test/core/index.html index 709bb06d71399fc9fc83cf052f6526d7b641f086..834684b2e737be2e5f241eed3faaea73b3c4020c 100644 --- a/test/core/index.html +++ b/test/core/index.html @@ -32,67 +32,9 @@ <body> <div id="qunit"></div> <div id="qunit-fixture"></div> - <script src="js/jquery.js"></script> - <script src="js/loglevel.js"></script> - <script src="js/bootstrap.bundle.min.js"></script> - <script src="js/bootstrap-select.js"></script> - <script src="js/bootstrap-autocomplete.min.js"></script> - <script src="js/utif.js"></script> - <script src="js/pako.js"></script> - <script src="js/webcaosdb.js"></script> - <script src="js/plotly.js"></script> <script> - caosdb_modules.auto_init = false; - log.setLevel("trace"); + var _caosdb_modules_auto_init = false; </script> - <script src="js/caosdb.js"></script> - <script src="js/state-machine.js"></script> - <script src="js/showdown.js"></script> - <script src="js/qunit.js"></script> - <script src="js/dropzone.js"></script> - <script src="js/setup.js"></script> - <script src="js/preview.js"></script> - <script src="js/annotation.js"></script> - <script src="js/edit_mode.js"></script> - <script src="js/query_shortcuts.js"></script> - <script src="js/ext_references.js"></script> - <script src="js/ext_file_download.js"></script> - <script src="js/ext_xls_download.js"></script> - <script src="js/form_elements.js"></script> - <script src="js/tour.js"></script> - <script src="js/leaflet.js"></script> - <script src="js/leaflet-graticule.js"></script> - <script src="js/leaflet-latlng-graticule.js"></script> - <script src="js/leaflet-coordinates.js"></script> - <script src="js/proj4.js"></script> - <script src="js/proj4leaflet.js"></script> - <script src="js/ext_map.js"></script> - <script src="js/ext_table_preview.js"></script> - <script src="js/ext_bottom_line.js"></script> - <script src="js/ext_autocomplete.js"></script> - <script src="js/ext_sss_markdown.js"></script> - <script src="js/ext_trigger_crawler_form.js"></script> - <script src="js/ext_bookmarks.js"></script> - <!--EXTENSIONS--> - <script src="js/modules/webcaosdb.js.js"></script> - <script src="js/modules/caosdb.js.js"></script> - <script src="js/modules/common.xsl.js"></script> - <script src="js/modules/entity.xsl.js"></script> - <script src="js/modules/welcome.xsl.js"></script> - <script src="js/modules/query.xsl.js"></script> - <script src="js/modules/annotation.xsl.js"></script> - <script src="js/modules/navbar.xsl.js"></script> - <script src="js/modules/edit_mode.js.js"></script> - <script src="js/modules/ext_xls_download.js.js"></script> - <script src="js/modules/ext_file_download.js.js"></script> - <script src="js/modules/query_shortcuts.js.js"></script> - <script src="js/modules/form_elements.js.js"></script> - <script src="js/modules/ext_references.js.js"></script> - <script src="js/modules/ext_map.js.js"></script> - <script src="js/modules/ext_bottom_line.js.js"></script> - <script src="js/modules/ext_autocomplete.js.js"></script> - <script src="js/modules/ext_sss_markdown.js.js"></script> - <script src="js/modules/ext_trigger_crawler_form.js.js"></script> - <script src="js/modules/ext_bookmarks.js.js"></script> + <script src="webcaosdb.dist.js"></script> </body> </html> diff --git a/test/core/js/modules/welcome.xsl.js b/test/core/js/modules/welcome.xsl.js index 39fb9fd0edd9e4950e9bbad3189b2aeed4ed7a7c..de59eedca9bbacdbc4c797f9bfd51d11bb332132 100644 --- a/test/core/js/modules/welcome.xsl.js +++ b/test/core/js/modules/welcome.xsl.js @@ -46,10 +46,10 @@ QUnit.test("availability", function(assert) { assert.ok(this.welcomeXSL); }) -QUnit.test("welcome template produces .caosdb-f-welcome-panel", function(assert) { +QUnit.test("welcome template produces .caosdb-v-welcome-panel", function(assert) { var xsl = injectTemplate(this.welcomeXSL, '<xsl:template match="/"><xsl:call-template name="welcome"/></xsl:template>'); var xml_str = '<root>'; var xml = str2xml(xml_str); var html = xslt(xml, xsl); - assert.ok($(html.firstElementChild).hasClass("caosdb-f-welcome-panel"), "has class .caosdb-f-welcome-panel"); + assert.ok($(html.firstElementChild).hasClass("caosdb-v-welcome-panel"), "has class .caosdb-v-welcome-panel"); });