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
master
pb 2008-06-11 19:22:27 +00:00
parent 67e8559995
commit 8dfe898a26
5 changed files with 62 additions and 127 deletions

View File

@ -12,15 +12,22 @@
<ccm:requires name="ccm-ldn-portal" version="6.2.0" relation="ge"/> <ccm:requires name="ccm-ldn-portal" version="6.2.0" relation="ge"/>
<ccm:requires name="ccm-ldn-terms" version="6.3.1" relation="ge"/> <ccm:requires name="ccm-ldn-terms" version="6.3.1" relation="ge"/>
<!-- not required anymore (2007-06-09) <!-- not required anymore (2007-06-09)
<ccm:requires name="ccm-ldn-dublin" version="6.2.0" relation="ge"/> ccm:requires name="ccm-ldn-dublin" version="6.2.0" relation="ge"
--> -->
<ccm:requires name="ccm-ldn-navigation" version="6.2.0" relation="ge"/> <ccm:requires name="ccm-ldn-navigation" version="6.2.0" relation="ge"/>
<ccm:requires name="ccm-ldn-search" version="6.3.0" relation="ge"/> <ccm:requires name="ccm-ldn-search" version="6.3.0" relation="ge"/>
</ccm:dependencies> </ccm:dependencies>
<ccm:directories>
<ccm:directory name="pdl"/>
<ccm:directory name="src"/>
</ccm:directories>
<ccm:contacts> <ccm:contacts>
<ccm:contact uri="http://www.redhat.com/software/rhea" type="website"/> <ccm:contact uri="http://www.redhat.com/software/rhea" type="website"/>
<ccm:contact uri="mailto:rhea@redhat.com" type="support"/> <ccm:contact uri="mailto:rhea@redhat.com" type="support"/>
</ccm:contacts> </ccm:contacts>
<ccm:description> <ccm:description>
Service module which tailors the aplaws software to a specific purpose Service module which tailors the aplaws software to a specific purpose
and/or a specific site. and/or a specific site.
@ -31,7 +38,7 @@
- provide a default theme, which meets accessibility requirements and - provide a default theme, which meets accessibility requirements and
overwrites the default, table based design (cf. web/.../themes) 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 APLAWS is a collaboration and content management system which is based upon
the Red Hat Web Application Framework, which is a platform for writing the Red Hat Web Application Framework, which is a platform for writing

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<registry> <registry>
<config class="com.arsdigita.aplaws.AplawsConfig" <config class="com.arsdigita.aplaws.AplawsConfig"
storage="ccm-ldn-aplaws/aplaws.properties"/> storage="ccm-shp-aplaws/aplaws.properties"/>
</registry> </registry>

View File

@ -232,11 +232,6 @@ public class Loader extends PackageLoader {
"SHP Welcome Page", "SHP Welcome Page",
"SHP Welcome Page for navigation", "SHP Welcome Page for navigation",
"/packages/navigation/templates/shp-welcome.jsp"); "/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");
} }

View File

@ -1,93 +0,0 @@
<jsp:root
xmlns:jsp="http://java.sun.com/JSP/Page"
xmlns:define="/WEB-INF/bebop-define.tld"
xmlns:show="/WEB-INF/bebop-show.tld"
version="1.2">
<jsp:directive.page import="com.arsdigita.dispatcher.DispatcherHelper"/>
<jsp:directive.page import="com.arsdigita.bebop.parameters.BigDecimalParameter"/>
<jsp:directive.page import="com.arsdigita.london.navigation.Navigation"/>
<jsp:directive.page import="com.arsdigita.london.navigation.cms.CMSDataCollectionDefinition"/>
<jsp:directive.page import="com.arsdigita.london.navigation.cms.CMSDataCollectionRenderer"/>
<jsp:scriptlet>
long age = Navigation.getConfig().getIndexPageCacheLifetime();
if (age == 0) {
DispatcherHelper.cacheDisable(response);
} else {
DispatcherHelper.cacheForWorld(response, (int)age);
}
</jsp:scriptlet>
<define:page name="defaultItemPage" application="navigation"
title="Navigation" cache="true">
<define:component name="greetingItem"
classname="com.arsdigita.london.navigation.ui.GreetingItem"/>
<define:component name="categoryPath"
classname="com.arsdigita.london.navigation.ui.category.Path"/>
<define:component name="categoryMenu"
classname="com.arsdigita.london.navigation.ui.category.Menu"/>
<define:component name="itemList"
classname="com.arsdigita.london.navigation.ui.object.SimpleObjectList"/>
<jsp:scriptlet>
((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");
</jsp:scriptlet>
<define:component name="eventList"
classname="com.arsdigita.london.navigation.ui.object.SimpleObjectList"/>
<jsp:scriptlet>
((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");
</jsp:scriptlet>
<define:component name="newsList"
classname="com.arsdigita.london.navigation.ui.object.SimpleObjectList"/>
<jsp:scriptlet>
((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");
</jsp:scriptlet>
<define:component name="assignedTerms"
classname="com.arsdigita.london.navigation.ui.CategoryIndexAssignedTerms"/>
</define:page>
<show:all/>
</jsp:root>

View File

@ -48,41 +48,67 @@
((com.arsdigita.london.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute("newsDate"); ((com.arsdigita.london.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute("newsDate");
</jsp:scriptlet> </jsp:scriptlet>
<define:component name="eventList" <define:component name="eventList"
classname="com.arsdigita.london.navigation.ui.object.SimpleObjectList"/> classname="com.arsdigita.london.navigation.ui.object.ComplexObjectList"/>
<jsp:scriptlet> <jsp:scriptlet>
((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).setDefinition(new CMSDataCollectionDefinition()); ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) eventList).setDefinition(new CMSDataCollectionDefinition());
((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).setRenderer(new CMSDataCollectionRenderer()); ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) 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).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 &gt;= :today and (endTime &gt; :time or endTime is null)) or (endDate is null and startDate &gt;= :today)");
((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getDefinition().setDescendCategories(true); // 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.
((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getDefinition().addOrder("startDate"); 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.ComplexObjectList) eventList).getRenderer().setPageSize(5);
((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getRenderer().addAttribute("objectType"); ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) eventList).getRenderer().addAttribute("objectType");
((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getRenderer().addAttribute("title"); ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) eventList).getRenderer().addAttribute("title");
((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getRenderer().addAttribute("lead"); ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) eventList).getRenderer().addAttribute("lead");
((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getRenderer().addAttribute("eventDate"); ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) eventList).getRenderer().addAttribute("eventDate");
((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getRenderer().addAttribute("launchDate"); ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) eventList).getRenderer().addAttribute("launchDate");
((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getRenderer().addAttribute("startDate"); ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) eventList).getRenderer().addAttribute("startDate");
((com.arsdigita.london.navigation.ui.object.SimpleObjectList) eventList).getRenderer().addAttribute("endDate"); ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) eventList).getRenderer().addAttribute("endDate");
</jsp:scriptlet> </jsp:scriptlet>
<define:component name="newsList" <define:component name="newsList"
classname="com.arsdigita.london.navigation.ui.object.SimpleObjectList"/> classname="com.arsdigita.london.navigation.ui.object.ComplexObjectList"/>
<jsp:scriptlet> <jsp:scriptlet>
((com.arsdigita.london.navigation.ui.object.SimpleObjectList) newsList).setDefinition(new CMSDataCollectionDefinition()); ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) newsList).setDefinition(new CMSDataCollectionDefinition());
((com.arsdigita.london.navigation.ui.object.SimpleObjectList) newsList).setRenderer(new CMSDataCollectionRenderer()); ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) 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).getDefinition().setObjectType("com.arsdigita.cms.contenttypes.NewsItem");
((com.arsdigita.london.navigation.ui.object.SimpleObjectList) newsList).getDefinition().setDescendCategories(true); ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) newsList).setSQLFilter("newsDate &gt; :oldNewsDate");
((com.arsdigita.london.navigation.ui.object.SimpleObjectList) newsList).getDefinition().addOrder("newsDate desc");
// 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.ComplexObjectList) newsList).getDefinition().setDescendCategories(true);
((com.arsdigita.london.navigation.ui.object.SimpleObjectList) newsList).getRenderer().addAttribute("objectType"); ((com.arsdigita.london.navigation.ui.object.ComplexObjectList) newsList).getDefinition().addOrder("newsDate desc");
((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.ComplexObjectList) newsList).getRenderer().setPageSize(5);
((com.arsdigita.london.navigation.ui.object.SimpleObjectList) newsList).getRenderer().addAttribute("newsDate"); ((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");
</jsp:scriptlet> </jsp:scriptlet>
<define:component name="assignedTerms" <define:component name="assignedTerms"