From 8dfe898a266370a39247f5856ce66d95502c63d5 Mon Sep 17 00:00:00 2001 From: pb Date: Wed, 11 Jun 2008 19:22:27 +0000 Subject: [PATCH] remove unnecessary jsp's, new welcome.jsp with configurable events and news git-svn-id: https://svn.libreccm.org/ccm/trunk@55 8810af33-2d31-482b-a856-94f89814c4df --- ccm-shp-aplaws/application.xml | 11 ++- ccm-shp-aplaws/src/ccm-shp-aplaws.config | 2 +- .../src/com/arsdigita/aplaws/Loader.java | 5 - .../navigation/templates/shp-welcome-neu.jsp | 93 ------------------- .../navigation/templates/shp-welcome.jsp | 78 ++++++++++------ 5 files changed, 62 insertions(+), 127 deletions(-) delete mode 100755 ccm-shp-aplaws/web/packages/navigation/templates/shp-welcome-neu.jsp diff --git a/ccm-shp-aplaws/application.xml b/ccm-shp-aplaws/application.xml index 21d753afe..948297f1c 100755 --- a/ccm-shp-aplaws/application.xml +++ b/ccm-shp-aplaws/application.xml @@ -12,15 +12,22 @@ + + + + + + + Service module which tailors the aplaws software to a specific purpose and/or a specific site. @@ -31,7 +38,7 @@ - provide a default theme, which meets accessibility requirements and overwrites the default, table based design (cf. web/.../themes) - This modules tailors APLAWS to a general purpose. + This modules tailors APLAWS to SHP (Schaedel-Hirnpatienten.de). APLAWS is a collaboration and content management system which is based upon the Red Hat Web Application Framework, which is a platform for writing diff --git a/ccm-shp-aplaws/src/ccm-shp-aplaws.config b/ccm-shp-aplaws/src/ccm-shp-aplaws.config index b400866d3..094ab8086 100755 --- a/ccm-shp-aplaws/src/ccm-shp-aplaws.config +++ b/ccm-shp-aplaws/src/ccm-shp-aplaws.config @@ -1,5 +1,5 @@ + storage="ccm-shp-aplaws/aplaws.properties"/> diff --git a/ccm-shp-aplaws/src/com/arsdigita/aplaws/Loader.java b/ccm-shp-aplaws/src/com/arsdigita/aplaws/Loader.java index e527b4149..da685bfae 100755 --- a/ccm-shp-aplaws/src/com/arsdigita/aplaws/Loader.java +++ b/ccm-shp-aplaws/src/com/arsdigita/aplaws/Loader.java @@ -232,11 +232,6 @@ public class Loader extends PackageLoader { "SHP Welcome Page", "SHP Welcome Page for navigation", "/packages/navigation/templates/shp-welcome.jsp"); - - template = Template.create( - "SHP Welcome Page Neu", - "SHP Welcome Page for navigation", - "/packages/navigation/templates/shp-welcome-neu.jsp"); } diff --git a/ccm-shp-aplaws/web/packages/navigation/templates/shp-welcome-neu.jsp b/ccm-shp-aplaws/web/packages/navigation/templates/shp-welcome-neu.jsp deleted file mode 100755 index cae21500c..000000000 --- a/ccm-shp-aplaws/web/packages/navigation/templates/shp-welcome-neu.jsp +++ /dev/null @@ -1,93 +0,0 @@ - - - - - - - - - - long age = Navigation.getConfig().getIndexPageCacheLifetime(); - if (age == 0) { - DispatcherHelper.cacheDisable(response); - } else { - DispatcherHelper.cacheForWorld(response, (int)age); - } - - - - - - - - - - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) itemList).setDefinition(new CMSDataCollectionDefinition()); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) itemList).setRenderer(new CMSDataCollectionRenderer()); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) itemList).getDefinition().setObjectType("com.arsdigita.cms.ContentPage"); - - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) itemList).getDefinition().setDescendCategories(false); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) itemList).getDefinition().addOrder("parent.categories.link.sortKey"); - - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) itemList).getRenderer().setPageSize(30); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute("objectType"); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute("title"); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute("eventDate"); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute("launchDate"); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute("startDate"); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute("endDate"); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute("newsDate"); - - - - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).setDefinition(new CMSDataCollectionDefinition()); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).setRenderer(new CMSDataCollectionRenderer()); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getDefinition().setObjectType("com.arsdigita.cms.contenttypes.Event"); - - //((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getDefinition().getDataCollection(((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getModel()).setFilter("now() between launchDate and endDate"); - - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getDefinition().setDescendCategories(true); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getDefinition().addOrder("startDate"); - - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getRenderer().setPageSize(5); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getRenderer().addAttribute("objectType"); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getRenderer().addAttribute("title"); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getRenderer().addAttribute("lead"); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getRenderer().addAttribute("eventDate"); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getRenderer().addAttribute("launchDate"); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getRenderer().addAttribute("startDate"); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getRenderer().addAttribute("endDate"); - - - - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) newsList).setDefinition(new CMSDataCollectionDefinition()); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) newsList).setRenderer(new CMSDataCollectionRenderer()); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) newsList).getDefinition().setObjectType("com.arsdigita.cms.contenttypes.NewsItem"); - - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) newsList).getDefinition().setDescendCategories(true); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) newsList).getDefinition().addOrder("newsDate desc"); - - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) newsList).getRenderer().setPageSize(5); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) newsList).getRenderer().addAttribute("objectType"); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) newsList).getRenderer().addAttribute("title"); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) newsList).getRenderer().addAttribute("lead"); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) newsList).getRenderer().addAttribute("newsDate"); - - - - - - - diff --git a/ccm-shp-aplaws/web/packages/navigation/templates/shp-welcome.jsp b/ccm-shp-aplaws/web/packages/navigation/templates/shp-welcome.jsp index cae21500c..5c6081782 100755 --- a/ccm-shp-aplaws/web/packages/navigation/templates/shp-welcome.jsp +++ b/ccm-shp-aplaws/web/packages/navigation/templates/shp-welcome.jsp @@ -48,41 +48,67 @@ ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute("newsDate"); + classname="com.arsdigita.london.navigation.ui.object.ComplexObjectList"/> - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).setDefinition(new CMSDataCollectionDefinition()); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).setRenderer(new CMSDataCollectionRenderer()); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getDefinition().setObjectType("com.arsdigita.cms.contenttypes.Event"); + ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) eventList).setDefinition(new CMSDataCollectionDefinition()); + ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) eventList).setRenderer(new CMSDataCollectionRenderer()); + ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) eventList).getDefinition().setObjectType("com.arsdigita.cms.contenttypes.Event"); - //((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getDefinition().getDataCollection(((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getModel()).setFilter("now() between launchDate and endDate"); + ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) eventList).setSQLFilter("(endDate >= :today and (endTime > :time or endTime is null)) or (endDate is null and startDate >= :today)"); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getDefinition().setDescendCategories(true); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getDefinition().addOrder("startDate"); + // 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.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 daß der Timestamp immer eine Uhrzeit am 1.1.1970 angibt. Das ist ziemlich bescheuert und macht hier + // diesen kompliezierten Vergleich notwendig. Sonst könnte 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.london.navigation.ui.object.ComplexObjectList) eventList).setParameter("today", today); + ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) eventList).setParameter("time", time); + + ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) eventList).getDefinition().setDescendCategories(true); + ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) eventList).getDefinition().addOrder("startDate"); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getRenderer().setPageSize(5); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getRenderer().addAttribute("objectType"); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getRenderer().addAttribute("title"); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getRenderer().addAttribute("lead"); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getRenderer().addAttribute("eventDate"); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getRenderer().addAttribute("launchDate"); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getRenderer().addAttribute("startDate"); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getRenderer().addAttribute("endDate"); + ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) eventList).getRenderer().setPageSize(5); + ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) eventList).getRenderer().addAttribute("objectType"); + ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) eventList).getRenderer().addAttribute("title"); + ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) eventList).getRenderer().addAttribute("lead"); + ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) eventList).getRenderer().addAttribute("eventDate"); + ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) eventList).getRenderer().addAttribute("launchDate"); + ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) eventList).getRenderer().addAttribute("startDate"); + ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) eventList).getRenderer().addAttribute("endDate"); + classname="com.arsdigita.london.navigation.ui.object.ComplexObjectList"/> - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) newsList).setDefinition(new CMSDataCollectionDefinition()); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) newsList).setRenderer(new CMSDataCollectionRenderer()); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) newsList).getDefinition().setObjectType("com.arsdigita.cms.contenttypes.NewsItem"); + ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) newsList).setDefinition(new CMSDataCollectionDefinition()); + ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) newsList).setRenderer(new CMSDataCollectionRenderer()); + ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) newsList).getDefinition().setObjectType("com.arsdigita.cms.contenttypes.NewsItem"); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) newsList).getDefinition().setDescendCategories(true); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) newsList).getDefinition().addOrder("newsDate desc"); + ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) newsList).setSQLFilter("newsDate > :oldNewsDate"); + + // 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.util.GregorianCalendar oldDate = new java.util.GregorianCalendar(); + oldDate.add(java.util.Calendar.DATE, -14); + ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) newsList).setParameter("oldNewsDate", oldDate.getTime()); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) newsList).getRenderer().setPageSize(5); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) newsList).getRenderer().addAttribute("objectType"); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) newsList).getRenderer().addAttribute("title"); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) newsList).getRenderer().addAttribute("lead"); - ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) newsList).getRenderer().addAttribute("newsDate"); + ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) newsList).getDefinition().setDescendCategories(true); + ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) newsList).getDefinition().addOrder("newsDate desc"); + + ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) newsList).getRenderer().setPageSize(5); + ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) newsList).getRenderer().addAttribute("objectType"); + ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) newsList).getRenderer().addAttribute("title"); + ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) newsList).getRenderer().addAttribute("lead"); + ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) newsList).getRenderer().addAttribute("newsDate");