diff --git a/ccm-sci-bundle/bundles/devel/cfg/integration.properties b/ccm-sci-bundle/bundles/devel/cfg/integration.properties
index 9154dce7a..8fec63c6c 100644
--- a/ccm-sci-bundle/bundles/devel/cfg/integration.properties
+++ b/ccm-sci-bundle/bundles/devel/cfg/integration.properties
@@ -52,7 +52,10 @@ waf.search.indexer=lucene
# ##############################################################################
; Searches for localized style sheet (among others)
waf.templating.stylesheet_resolver=com.arsdigita.templating.PatternStylesheetResolver
+; For new installations and Foundry default theme
waf.templating.stylesheet_paths=/WEB-INF/resources/scientificCMS-stylesheet-paths.txt
+; For updates and existing Mandalay based themes:
+#waf.templating.stylesheet_paths=/WEB-INF/resources/scientificCMS-Mandalay-stylesheet-paths.txt
# CORE UI configuration parameters
@@ -84,8 +87,10 @@ waf.workflow.simple.alerts_sender=root@localhost.localdomain
# CORE XML processing configuration parameters
# ##############################################################################
-waf.xml.xsl_transformer=saxonhe
waf.xml.activate_full_date_formatter=true
+; For new installations and Foundry default theme
+waf.xml.xsl_transformer=saxonhe
+; For updates and existing Mandalay based themes:
@@ -116,6 +121,7 @@ com.arsdigita.cms.default_template_resolver_class=com.arsdigita.subsite.dispatch
; com.arsdigita.cms.dhtml_editor_plugins=TableOperations,CSS
com.arsdigita.cms.disable_item_pfs=true
+com.arsdigita.cms.delete_workflow_after_publication=false
com.arsdigita.cms.hide_admin_tabs=true
com.arsdigita.cms.hide_folder_index_checkbox=true
@@ -134,9 +140,9 @@ com.arsdigita.cms.unpublished_not_found=false
com.arsdigita.cms.use_section_categories=false
com.arsdigita.cms.use_streamlined_creation=true
-com.arsdigita.cms.delete_workflow_after_publication=false
# ccm-cms-types-event parameters
+# ##############################################################################
com.arsdigita.cms.contenttypes.event.hide_cost=true
com.arsdigita.cms.contenttypes.event.hide_date_description=false
com.arsdigita.cms.contenttypes.event.hide_event_type=true
diff --git a/ccm-sci-bundle/bundles/standard/cfg/integration.properties b/ccm-sci-bundle/bundles/standard/cfg/integration.properties
index 3acf01b81..9d5f424f7 100644
--- a/ccm-sci-bundle/bundles/standard/cfg/integration.properties
+++ b/ccm-sci-bundle/bundles/standard/cfg/integration.properties
@@ -1,5 +1,5 @@
# ##############################################################################
-# Scientific CMS standard bundle integration.properties, version 2.0.x
+# Scientific CMS standard bundle integration.properties, version 2.3.x
# ##############################################################################
#
#
diff --git a/ccm-sci-bundle/src/WEB-INF/resources/scientificCMS-Mandalay-stylesheet-paths.txt b/ccm-sci-bundle/src/WEB-INF/resources/scientificCMS-Mandalay-stylesheet-paths.txt
new file mode 100644
index 000000000..a22c4e858
--- /dev/null
+++ b/ccm-sci-bundle/src/WEB-INF/resources/scientificCMS-Mandalay-stylesheet-paths.txt
@@ -0,0 +1,60 @@
+# -*- 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 Foundry, 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 Foundry) unmanaged optional custom default
+http://::host::/::webapp::/themes/scicms-custom/start.xsl
+
+# Theme with single entry point (here: Foundry) unmanaged bundle specific default
+#http://::host::/::webapp::/themes/scicms-default/start.xsl
+
+# Theme with single entry point backwards compatible (Mandalay) unmanaged default
+http://::host::/::webapp::/themes/mandalay/start.xsl
+
+
+
+
+# ==============================================================================
+# The following is for multi-entry themes, not used in ScientificCMS
+# ==============================================================================
+
+# Output type is for things such as text/javascript
+#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
+#http://::host::/themes/servlet/content-item/index.xsl?oid=::item_template_oid::&delegated=::item_delegated_url::
+
+# Theme, with optional locale & prefix
+#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
+#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
+# 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
+# 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
+#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/ccm-sci-bundle/web/WEB-INF/systeminformation.properties b/ccm-sci-bundle/web/WEB-INF/systeminformation.properties
index 84165fa6b..a7915df64 100644
--- a/ccm-sci-bundle/web/WEB-INF/systeminformation.properties
+++ b/ccm-sci-bundle/web/WEB-INF/systeminformation.properties
@@ -1,3 +1,3 @@
-version = 2.3.x
+version = 2.3.2
appname = ScientificCMS
apphomepage = http://www.scientificcms.org
diff --git a/ccm-sci-bundle/web/templates/ccm-navigation/navigation/SpecializingList.jsp b/ccm-sci-bundle/web/templates/ccm-navigation/navigation/SpecializingList.jsp
index 31fd0f20e..e2547b141 100644
--- a/ccm-sci-bundle/web/templates/ccm-navigation/navigation/SpecializingList.jsp
+++ b/ccm-sci-bundle/web/templates/ccm-navigation/navigation/SpecializingList.jsp
@@ -28,6 +28,14 @@
classname="com.arsdigita.navigation.ui.category.Path"/>
+ // Navigation menu for mobile devices (responsive)
+
+
+ ((com.arsdigita.navigation.ui.category.Hierarchy) categoryNav).setShowItems(false);
+
+
+
diff --git a/ccm-sci-bundle/web/templates/ccm-navigation/navigation/sci-default.jsp b/ccm-sci-bundle/web/templates/ccm-navigation/navigation/sci-default.jsp
index f7edd8a13..2883b0af3 100644
--- a/ccm-sci-bundle/web/templates/ccm-navigation/navigation/sci-default.jsp
+++ b/ccm-sci-bundle/web/templates/ccm-navigation/navigation/sci-default.jsp
@@ -28,30 +28,38 @@
classname="com.arsdigita.navigation.ui.category.Path"/>
+ // Menu for mobile responsive version
+
+
+ ((com.arsdigita.navigation.ui.category.Hierarchy) categoryNav).setShowItems(false);
+
+
+
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).setDefinition(new CMSDataCollectionDefinition());
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).setRenderer(new CMSDataCollectionRenderer());
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getDefinition().setObjectType("com.arsdigita.cms.ContentPage");
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).setDefinition(new CMSDataCollectionDefinition());
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).setRenderer(new CMSDataCollectionRenderer());
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getDefinition().setObjectType("com.arsdigita.cms.ContentPage");
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getDefinition().setDescendCategories(false);
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getDefinition().addOrder("parent.categories.link.sortKey");
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getDefinition().setDescendCategories(false);
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getDefinition().addOrder("parent.categories.link.sortKey");
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().setPageSize(30);
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute("objectType");
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute("title");
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "definition");
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "summary");
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "lead");
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "description");
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "eventDate");
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "startDate" );
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "endDate");
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "newsDate");
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "imageAttachments.caption");
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "imageAttachments.image.id");
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "pageDescription");
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().setPageSize(30);
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute("objectType");
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute("title");
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "definition");
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "summary");
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "lead");
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "description");
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "eventDate");
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "startDate" );
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "endDate");
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "newsDate");
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "imageAttachments.caption");
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "imageAttachments.image.id");
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "pageDescription");
+ // Menu for mobile (responsive) Version theme UniHB
+
+
+ ((com.arsdigita.navigation.ui.category.Hierarchy) categoryNav).setShowItems(false);
+
+
+
+
@@ -37,7 +46,10 @@
((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).setSQLFilter("(endDate >= :today and (endTime > :time or endTime is null)) or (endDate is null and startDate >= :today)");
- // Java ist mal wieder kompliziert. Man braucht ein Calender-Object, damit man Datumsarithmetik betreiben kann. java.util.Calendar ist allerdings // abstract. Deshalb muß man java.util.GregorianCalendar verwenden. Dann kann man mit der add-Methode verschiedene Felder manipulieren. // Aber Achtung - die add-Method liefert void zurück. Daher kann man das nicht alles in einer Zeile machen. Also Variablen anlegen. // Komplizierter geht's wohl nicht mehr.
+ // Java ist mal wieder kompliziert. Man braucht ein Calender-Object, damit man Datumsarithmetik betreiben kann. java.util.Calendar ist allerdings
+ // abstract. Deshalb muss man java.util.GregorianCalendar verwenden. Dann kann man mit der add-Methode verschiedene Felder manipulieren.
+ // Aber Achtung - die add-Method liefert void zurück. Daher kann man das nicht alles in einer Zeile machen. Also Variablen anlegen.
+ // Komplizierter geht's wohl nicht mehr.
java.util.GregorianCalendar now = new java.util.GregorianCalendar();
java.util.Date today = (new java.util.GregorianCalendar(now.get(java.util.GregorianCalendar.YEAR),
now.get(java.util.GregorianCalendar.MONTH),
diff --git a/ccm-sci-bundle/web/templates/ccm-navigation/navigation/sci-portal.jsp b/ccm-sci-bundle/web/templates/ccm-navigation/navigation/sci-portal.jsp
index d90293cbb..1056811e2 100644
--- a/ccm-sci-bundle/web/templates/ccm-navigation/navigation/sci-portal.jsp
+++ b/ccm-sci-bundle/web/templates/ccm-navigation/navigation/sci-portal.jsp
@@ -32,7 +32,6 @@
classname="com.arsdigita.portalworkspace.ui.WorkspaceViewer"/>
portalsPage.setClassAttr("portalPage");
-
((com.arsdigita.portalworkspace.ui.WorkspaceViewer) portalWorkspace).setWorkspaceModel(new CategoryPortalSelectionModel());
diff --git a/ccm-sci-bundle/web/templates/ccm-navigation/navigation/sci-recent.jsp b/ccm-sci-bundle/web/templates/ccm-navigation/navigation/sci-recent.jsp
index fb78c4971..b56f8019f 100644
--- a/ccm-sci-bundle/web/templates/ccm-navigation/navigation/sci-recent.jsp
+++ b/ccm-sci-bundle/web/templates/ccm-navigation/navigation/sci-recent.jsp
@@ -10,6 +10,8 @@
+
+
long age = Navigation.getConfig().getIndexPageCacheLifetime();
if (age == 0) {
diff --git a/ccm-sci-bundle/web/templates/ccm-navigation/navigation/sci-welcome.jsp b/ccm-sci-bundle/web/templates/ccm-navigation/navigation/sci-welcome.jsp
index dcb232fb2..69efafe9b 100644
--- a/ccm-sci-bundle/web/templates/ccm-navigation/navigation/sci-welcome.jsp
+++ b/ccm-sci-bundle/web/templates/ccm-navigation/navigation/sci-welcome.jsp
@@ -14,9 +14,6 @@
- defaultItemPage.setClassAttr("welcomePage");
-
-
long age = Navigation.getConfig().getIndexPageCacheLifetime();
if (age == 0) {
DispatcherHelper.cacheDisable(response);
@@ -36,81 +33,93 @@
classname="com.arsdigita.navigation.ui.category.Path"/>
+ // Navigation Menu mobile (responsive) version (theme UniHB and others)
+
+
+ ((com.arsdigita.navigation.ui.category.Hierarchy) categoryNav).setShowItems(false);
+
+
+
+
- defaultItemPage.setClassAttr("welcomePage");
+ defaultItemPage.setClassAttr("welcomePage");
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).setDefinition(new CMSDataCollectionDefinition());
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).setRenderer(new CMSDataCollectionRenderer());
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getDefinition().setObjectType("com.arsdigita.cms.ContentPage");
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).setDefinition(new CMSDataCollectionDefinition());
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).setRenderer(new CMSDataCollectionRenderer());
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getDefinition().setObjectType("com.arsdigita.cms.ContentPage");
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getDefinition().setDescendCategories(false);
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getDefinition().addOrder("parent.categories.link.sortKey");
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getDefinition().setDescendCategories(false);
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getDefinition().addOrder("parent.categories.link.sortKey");
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().setPageSize(30);
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute("objectType");
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute("title");
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "definition");
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "summary");
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "lead");
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "description");
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "eventDate");
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "startDate" );
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "endDate");
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "newsDate");
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "imageAttachments.caption");
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "imageAttachments.image.id");
- ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "pageDescription");
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().setPageSize(30);
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute("objectType");
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute("title");
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "definition");
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "summary");
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "lead");
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "description");
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "launchDate");
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "eventDate");
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "startDate" );
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "endDate");
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "newsDate");
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "imageAttachments.caption");
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "imageAttachments.image.id");
+ ((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute( "pageDescription");
+
- ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).setDefinition(new CMSDataCollectionDefinition());
- ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).setRenderer(new CMSDataCollectionRenderer());
- ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).getDefinition().setObjectType("com.arsdigita.cms.contenttypes.Event");
+ ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).setDefinition(new CMSDataCollectionDefinition());
+ ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).setRenderer(new CMSDataCollectionRenderer());
+ ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).getDefinition().setObjectType("com.arsdigita.cms.contenttypes.Event");
- ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).setSQLFilter("(endDate >= :today and (endTime > :time or endTime is null)) or (endDate is null and startDate >= :today)");
+ ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).setSQLFilter("(endDate >= :today and (endTime > :time or endTime is null)) or (endDate is null and startDate >= :today)");
- // Java ist mal wieder kompliziert. Man braucht ein Calender-Object,
- // damit man Datumsarithmetik betreiben kann. java.util.Calendar ist
- // allerdings abstract. Deshalb muss man java.util.GregorianCalendar
- // verwenden. Dann kann man mit der add-Methode verschiedene Felder
- // manipulieren. Aber Achtung - die add-Method liefert void zurueck. Daher
- // kann man das nicht alles in einer Zeile machen. Also Variablen anlegen.
- // Komplizierter geht's wohl nicht mehr.
- java.util.GregorianCalendar now = new java.util.GregorianCalendar();
- java.util.Date today = (new java.util.GregorianCalendar(now.get(java.util.GregorianCalendar.YEAR),
- now.get(java.util.GregorianCalendar.MONTH),
- now.get(java.util.GregorianCalendar.DATE))).getTime();
- // Im Event-CT ist das Datum als SQL-Type Date eingetragen, die Uhrzeit
- // aber als SQL-Typ timestamptz. Leider wird von ccm im letzten
- // das Datum nicht gesetzt, so dass der Timestamp immer eine Uhrzeit am
- // 1.1.1970 angibt. Das ist ziemlich bescheuert und macht hier diesen
- // kompliezierten Vergleich notwendig. Sonst koennte man einfach mit dem
- // aktuellen Timestamp vergleichen.
- java.util.Date time = (new java.util.GregorianCalendar(70,0,1, // this is 01.01.1970 - start of UNIX timestamp
+ // Java ist mal wieder kompliziert. Man braucht ein Calender-Object,
+ // damit man Datumsarithmetik betreiben kann. java.util.Calendar ist
+ // allerdings abstract. Deshalb muss man java.util.GregorianCalendar
+ // verwenden. Dann kann man mit der add-Methode verschiedene Felder
+ // manipulieren. Aber Achtung - die add-Method liefert void zurueck. Daher
+ // kann man das nicht alles in einer Zeile machen. Also Variablen anlegen.
+ // Komplizierter geht's wohl nicht mehr.
+ java.util.GregorianCalendar now = new java.util.GregorianCalendar();
+ java.util.Date today = (new java.util.GregorianCalendar(now.get(java.util.GregorianCalendar.YEAR),
+ now.get(java.util.GregorianCalendar.MONTH),
+ now.get(java.util.GregorianCalendar.DATE))).getTime();
+ // Im Event-CT ist das Datum als SQL-Type Date eingetragen, die Uhrzeit
+ // aber als SQL-Typ timestamptz. Leider wird von ccm im letzten
+ // das Datum nicht gesetzt, so dass der Timestamp immer eine Uhrzeit am
+ // 1.1.1970 angibt. Das ist ziemlich bescheuert und macht hier diesen
+ // kompliezierten Vergleich notwendig. Sonst koennte man einfach mit dem
+ // aktuellen Timestamp vergleichen.
+ java.util.Date time = (new java.util.GregorianCalendar(70,0,1, // this is 01.01.1970 - start of UNIX timestamp
now.get(java.util.GregorianCalendar.HOUR_OF_DAY),
now.get(java.util.GregorianCalendar.MINUTE),
now.get(java.util.GregorianCalendar.SECOND))).getTime();
- ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).setParameter("today", today);
- ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).setParameter("time", time);
+ ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).setParameter("today", today);
+ ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).setParameter("time", time);
- ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).getDefinition().setDescendCategories(true);
- ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).getDefinition().addOrder("startDate");
+ ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).getDefinition().setDescendCategories(true);
+ ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).getDefinition().addOrder("startDate");
- ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).getRenderer().setPageSize(5);
- ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).getRenderer().addAttribute("objectType");
- ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).getRenderer().addAttribute("title");
- ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).getRenderer().addAttribute("lead");
- ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).getRenderer().addAttribute("eventDate");
- ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).getRenderer().addAttribute("launchDate");
- ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).getRenderer().addAttribute("startDate");
- ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).getRenderer().addAttribute("endDate");
- ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).getRenderer().addAttribute( "imageAttachments.caption");
- ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).getRenderer().addAttribute( "imageAttachments.image.id");
+ ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).getRenderer().setPageSize(5);
+ ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).getRenderer().addAttribute("objectType");
+ ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).getRenderer().addAttribute("title");
+ ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).getRenderer().addAttribute("lead");
+ ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).getRenderer().addAttribute("launchDate");
+ ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).getRenderer().addAttribute("eventDate");
+ ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).getRenderer().addAttribute("startDate");
+ ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).getRenderer().addAttribute("endDate");
+ ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).getRenderer().addAttribute( "imageAttachments.caption");
+ ((com.arsdigita.navigation.ui.object.ComplexObjectList) eventList).getRenderer().addAttribute( "imageAttachments.image.id");
+
diff --git a/ccm-sci-bundle/web/themes/scicms-custom/aREADME.custom b/ccm-sci-bundle/web/themes/scicms-custom/aREADME.custom
new file mode 100644
index 000000000..828f679cf
--- /dev/null
+++ b/ccm-sci-bundle/web/themes/scicms-custom/aREADME.custom
@@ -0,0 +1,6 @@
+ScientificCMS theme with single entry point (e.g. Foundry)
+unmanaged optional custom specific default.
+It is used if there is no managed theme (managed by themedirector) configured
+or if themedirector is not installed.
+If there is no custom theme installed, a bundle specific unmanged default
+(scicms-default) is used.
diff --git a/ccm-sci-bundle/web/themes/scicms-default/aREADME.scicms-default b/ccm-sci-bundle/web/themes/scicms-default/aREADME.scicms-default
new file mode 100644
index 000000000..b7bf50d1f
--- /dev/null
+++ b/ccm-sci-bundle/web/themes/scicms-default/aREADME.scicms-default
@@ -0,0 +1,6 @@
+ScientificCMS bundle default unmanaged theme (with single entry point as of
+Foundry).
+It is used if there is no managed theme (managed by themedirector) configured
+(or if themedirector is not installed) and no custom theme (see scicms-custom)
+installed.
+It is part of ScientificCMS basic distribution.