Nachfuehren ccm-zes-aplaws zu Aenderungen in ccm-ldn-navigation.

git-svn-id: https://svn.libreccm.org/ccm/trunk@905 8810af33-2d31-482b-a856-94f89814c4df
master
pb 2011-05-12 09:31:16 +00:00
parent 9f36c23ea9
commit f2387d424f
16 changed files with 102 additions and 85 deletions

View File

@ -18,9 +18,7 @@
package com.arsdigita.aplaws; package com.arsdigita.aplaws;
import com.arsdigita.london.navigation.Navigation;
import com.arsdigita.london.navigation.Template; import com.arsdigita.london.navigation.Template;
import com.arsdigita.london.navigation.TemplateMapping;
import com.arsdigita.london.terms.Domain; import com.arsdigita.london.terms.Domain;
import com.arsdigita.london.terms.importer.Parser; import com.arsdigita.london.terms.importer.Parser;
import com.arsdigita.portalworkspace.PageLayout; import com.arsdigita.portalworkspace.PageLayout;
@ -37,19 +35,19 @@ import com.arsdigita.kernel.RoleCollection;
import com.arsdigita.kernel.permissions.PrivilegeDescriptor; import com.arsdigita.kernel.permissions.PrivilegeDescriptor;
import com.arsdigita.persistence.DataQuery; import com.arsdigita.persistence.DataQuery;
import com.arsdigita.runtime.ScriptContext; import com.arsdigita.runtime.ScriptContext;
import com.arsdigita.util.Assert; // import com.arsdigita.util.Assert;
import com.arsdigita.util.UncheckedWrapperException; // import com.arsdigita.util.UncheckedWrapperException;
import com.arsdigita.util.parameter.BooleanParameter; // import com.arsdigita.util.parameter.BooleanParameter;
import com.arsdigita.util.parameter.Parameter; import com.arsdigita.util.parameter.Parameter;
import com.arsdigita.util.parameter.StringParameter; import com.arsdigita.util.parameter.StringParameter;
import com.arsdigita.util.parameter.URLParameter; // import com.arsdigita.util.parameter.URLParameter;
import com.arsdigita.web.Application; import com.arsdigita.web.Application;
import org.apache.log4j.Logger; import org.apache.log4j.Logger;
import java.net.URL; // import java.net.URL;
import java.net.MalformedURLException; // import java.net.MalformedURLException;
import java.util.Date; // import java.util.Date;
import java.util.HashSet; import java.util.HashSet;
import java.util.Iterator; import java.util.Iterator;
import java.util.Set; import java.util.Set;
@ -138,7 +136,8 @@ public class Loader extends PackageLoader {
String[] files = categoryFiles; String[] files = categoryFiles;
final Parser parser = new Parser(); final Parser parser = new Parser();
for (int i = 0; i < files.length; i++) { // for each filename in the array of files containing categories
for (int i = 0 ; i < files.length ; i++) {
final String file = files[i]; final String file = files[i];
if (s_log.isInfoEnabled()) { if (s_log.isInfoEnabled()) {
s_log.info("Process " + file); s_log.info("Process " + file);
@ -181,10 +180,18 @@ public class Loader extends PackageLoader {
registerNavigationTemplates(); registerNavigationTemplates();
// Switch /portal/ to use 1 column layout for funky aplaws stuff. // Switch /portal/ to use 1 column layout for funky aplaws stuff.
Workspace portal = (Workspace)Application // pboy: This will have no effect at all. A portal page created at
// url /portal/ (and beneath) will always use the homepage jsp's which
// are hardcoded to create a three column design and ignore any
// column configuration. All portal pages at other urls are not
// affect by this setting which touches only the one application (portal)
// at url /portal/. Portal pages at other urls use the corresponding
// configuration parameter for its initial value and number of columns
// may be modified at any time using configuration ui.
/* Workspace portal = (Workspace)Application
.retrieveApplicationForPath("/portal/"); .retrieveApplicationForPath("/portal/");
portal.setDefaultLayout(PageLayout portal.setDefaultLayout(PageLayout
.findLayoutByFormat(PageLayout.FORMAT_ONE_COLUMN)); .findLayoutByFormat(PageLayout.FORMAT_ONE_COLUMN)); */
} // end run method } // end run method
// public void registerServicesTemplate(String appURL) { // public void registerServicesTemplate(String appURL) {
@ -288,6 +295,7 @@ public class Loader extends PackageLoader {
// -- "com.arsdigita.aplaws.custom_nav_key", // -- "com.arsdigita.aplaws.custom_nav_key",
// -- Parameter.REQUIRED, // -- Parameter.REQUIRED,
// -- "APLAWS-NAVIGATION"); // -- "APLAWS-NAVIGATION");
/* Zugriff auf Website wird nicht benötigt, aber der Parameter bei Einrichtung /* Zugriff auf Website wird nicht benötigt, aber der Parameter bei Einrichtung
* der Kategorien. Funktion URL prüft auf korrekte Syntax, nicht auf Existenz * der Kategorien. Funktion URL prüft auf korrekte Syntax, nicht auf Existenz
*/ */
@ -354,8 +362,7 @@ public class Loader extends PackageLoader {
Application app = Application.retrieveApplicationForPath(appURL); Application app = Application.retrieveApplicationForPath(appURL);
domain.setAsRootForObject(app, context); domain.setAsRootForObject(app, context);
if (app instanceof ContentSection) { if (app instanceof ContentSection) {
RoleCollection coll = ((ContentSection) app).getStaffGroup(). RoleCollection coll = ((ContentSection) app).getStaffGroup().getOrderedRoles();
getOrderedRoles();
Set adminRoles = new HashSet(); Set adminRoles = new HashSet();
Set categorizeRoles = new HashSet(); Set categorizeRoles = new HashSet();
while (coll.next()) { while (coll.next()) {
@ -366,26 +373,22 @@ public class Loader extends PackageLoader {
String priv = (String) privs.get(RoleFactory.PRIVILEGE); String priv = (String) privs.get(RoleFactory.PRIVILEGE);
if (priv.equals(SecurityManager.CMS_CATEGORY_ADMIN)) { if (priv.equals(SecurityManager.CMS_CATEGORY_ADMIN)) {
adminRoles.add(role); adminRoles.add(role);
} else if (priv.equals( } else if (priv.equals(SecurityManager.CMS_CATEGORIZE_ITEMS)) {
SecurityManager.CMS_CATEGORIZE_ITEMS)) {
categorizeRoles.add(role); categorizeRoles.add(role);
} }
} }
} }
RootCategoryCollection catCollection = Category.getRootCategories( RootCategoryCollection catCollection = Category.getRootCategories(((ContentSection) app));
((ContentSection) app));
while (catCollection.next()) { while (catCollection.next()) {
Iterator adminIter = adminRoles.iterator(); Iterator adminIter = adminRoles.iterator();
while (adminIter.hasNext()) { while (adminIter.hasNext()) {
((Role) adminIter.next()).grantPermission(catCollection. ((Role) adminIter.next()).grantPermission(catCollection.getCategory(),
getCategory(),
PrivilegeDescriptor.ADMIN); PrivilegeDescriptor.ADMIN);
} }
Iterator categorizeIter = categorizeRoles.iterator(); Iterator categorizeIter = categorizeRoles.iterator();
while (categorizeIter.hasNext()) { while (categorizeIter.hasNext()) {
((Role) categorizeIter.next()).grantPermission(catCollection. ((Role) categorizeIter.next()).grantPermission(catCollection.getCategory(),
getCategory(),
Category.MAP_DESCRIPTOR); Category.MAP_DESCRIPTOR);
} }
} }

View File

@ -43,13 +43,14 @@ import com.arsdigita.london.terms.ui.TermWidget;
public class ItemCategoryPicker extends ACSObjectCategoryPicker { public class ItemCategoryPicker extends ACSObjectCategoryPicker {
private static final Logger s_log = Logger.getLogger(ItemCategoryPicker.class);
private static final Logger s_log = Logger.getLogger(ItemCategoryPicker.class);
// private static final class s_picker = this ;
public ItemCategoryPicker(BigDecimalParameter root, public ItemCategoryPicker(BigDecimalParameter root,
StringParameter mode) { StringParameter mode) {
super(root, mode); super(root, mode);
s_log.debug("instantiating ItemCategoryPicker"); s_log.debug("instantiating ItemCategoryPicker");
} }
@ -59,7 +60,8 @@ public class ItemCategoryPicker extends ACSObjectCategoryPicker {
com.arsdigita.bebop.parameters.BigDecimalParameter, com.arsdigita.bebop.parameters.BigDecimalParameter,
com.arsdigita.bebop.parameters.StringParameter) com.arsdigita.bebop.parameters.StringParameter)
*/ */
protected ACSObjectCategoryForm getForm(BigDecimalParameter root, StringParameter mode) { protected ACSObjectCategoryForm getForm(BigDecimalParameter root,
StringParameter mode) {
s_log.debug("getForm"); s_log.debug("getForm");
return new ItemCategoryForm(root, mode, new TermWidget(mode, this)); return new ItemCategoryForm(root, mode, new TermWidget(mode, this));
} }

View File

@ -8,6 +8,13 @@
title="childCategories" title="childCategories"
cache="true"> cache="true">
<!-- Class had been moved from ccm-ldn-aplaws to ccm-ldn-terms in
order to avoid dependencies between modules, ccm-forum-categorised
and a specific kind of the integration module ccm-???-aplaws.
<define:component name="catSubtree"
classname="com.arsdigita.aplaws.ui.CategorySubtree"/>
-->
<define:component name="catSubtree" <define:component name="catSubtree"
classname="com.arsdigita.london.terms.ui.CategorySubtree"/> classname="com.arsdigita.london.terms.ui.CategorySubtree"/>
</define:page> </define:page>

View File

@ -23,6 +23,10 @@
</meta> </meta>
</xsl:template> </xsl:template>
<!-- The file ~/lib/page.css does not exist at least since version 1.0.2
there exists a file of this name in
ccm-cms/web/__ccm__/static/cms/admin/page/page.css
may be a copy&paste error -->
<xsl:template name="aplaws:headerStyleSheets"> <xsl:template name="aplaws:headerStyleSheets">
<link rel="stylesheet" href="/__ccm__/themes/aplaws/lib/page.css" type="text/css" media="screen"/> <link rel="stylesheet" href="/__ccm__/themes/aplaws/lib/page.css" type="text/css" media="screen"/>
</xsl:template> </xsl:template>

View File

@ -8,7 +8,8 @@
<xsl:import href="head.xsl"/> <xsl:import href="head.xsl"/>
<xsl:import href="body.xsl"/> <xsl:import href="body.xsl"/>
<xsl:import href="../../../../../ROOT/packages/bebop/xsl/dcp.xsl"/> <!-- <xsl:import href="../../../../packages/bebop/xsl/dcp.xsl"/> -->
<xsl:import href="../../../heirloom/packages/bebop/xsl/dcp.xsl"/>
<xsl:output method="html"/> <xsl:output method="html"/>

View File

@ -1,2 +1,2 @@
@import url("/css/acs-master.css"); @import url("/css/acs-master.css");
@import url("/__ccm__/apps/navigation/xsl/admin.css"); @import url("/themes/heirloom/apps/navigation/xsl/admin.css");

View File

@ -4,8 +4,8 @@
xmlns:aplaws="http://www.arsdigita.com/aplaws/1.0" xmlns:aplaws="http://www.arsdigita.com/aplaws/1.0"
version="1.0"> version="1.0">
<xsl:import href="../../../../ROOT/packages/bebop/xsl/bebop.xsl"/> <xsl:import href="../../heirloom/packages/bebop/xsl/bebop.xsl"/>
<xsl:import href="../../../../ROOT/packages/ui/xsl/ui.xsl"/> <xsl:import href="../../heirloom/packages/ui/xsl/ui.xsl"/>
<xsl:import href="lib/page.xsl"/> <xsl:import href="lib/page.xsl"/>
<xsl:param name="theme-prefix" /> <xsl:param name="theme-prefix" />

View File

@ -1,18 +1,15 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0"
xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:aplaws="http://www.arsdigita.com/aplaws/1.0"
xmlns:aplaws="http://www.arsdigita.com/aplaws/1.0" xmlns:ui="http://www.arsdigita.com/ui/1.0"
xmlns:ui="http://www.arsdigita.com/ui/1.0" xmlns:cms="http://www.arsdigita.com/cms/1.0"
xmlns:cms="http://www.arsdigita.com/cms/1.0" xmlns:nav="http://ccm.redhat.com/london/navigation"
xmlns:nav="http://ccm.redhat.com/london/navigation"
exclude-result-prefixes="xsl bebop aplaws ui cms nav" exclude-result-prefixes="xsl bebop aplaws ui cms nav"
version="1.0"> version="1.0">
<xsl:import href="../../../../ROOT/__ccm__/apps/navigation/xsl/index.xsl"/> <xsl:import href="../../heirloom/apps/navigation/xsl/index.xsl"/>
<xsl:import href="content-section-index.xsl"/>
<xsl:import href="content-section-index.xsl"/>
</xsl:stylesheet> </xsl:stylesheet>

View File

@ -1,11 +1,10 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:aplaws="http://www.arsdigita.com/aplaws/1.0"
xmlns:aplaws="http://www.arsdigita.com/aplaws/1.0" version="1.0">
version="1.0">
<xsl:import href="../../../../ROOT/packages/bebop/xsl/bebop.xsl"/> <xsl:import href="../../heirloom/packages/bebop/xsl/bebop.xsl"/>
<xsl:import href="../../../../ROOT/packages/ui/xsl/ui.xsl"/> <xsl:import href="../../heirloom/packages/ui/xsl/ui.xsl"/>
<xsl:import href="lib/page.xsl"/> <xsl:import href="lib/page.xsl"/>
<xsl:param name="theme-prefix" /> <xsl:param name="theme-prefix" />

View File

@ -1,21 +1,20 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0"
xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:aplaws="http://www.arsdigita.com/aplaws/1.0"
xmlns:aplaws="http://www.arsdigita.com/aplaws/1.0" xmlns:ui="http://www.arsdigita.com/ui/1.0"
xmlns:ui="http://www.arsdigita.com/ui/1.0" xmlns:cms="http://www.arsdigita.com/cms/1.0"
xmlns:cms="http://www.arsdigita.com/cms/1.0" xmlns:nav="http://ccm.redhat.com/london/navigation"
xmlns:nav="http://ccm.redhat.com/london/navigation" xmlns:search="http://rhea.redhat.com/search/1.0"
xmlns:search="http://rhea.redhat.com/search/1.0" xmlns:atoz="http://xmlns.redhat.com/atoz/1.0"
xmlns:atoz="http://xmlns.redhat.com/atoz/1.0" exclude-result-prefixes="xsl bebop aplaws ui cms nav search atoz"
exclude-result-prefixes="xsl bebop aplaws ui cms nav search atoz" version="1.0">
version="1.0">
<xsl:import href="lib/header.xsl"/> <xsl:import href="lib/header.xsl"/>
<xsl:import href="lib/lib.xsl"/> <xsl:import href="lib/lib.xsl"/>
<xsl:import href="../../../../ROOT/packages/bebop/xsl/dcp.xsl"/> <xsl:import href="../../heirloom/packages/bebop/xsl/dcp.xsl"/>
<xsl:param name="context-prefix"></xsl:param> <xsl:param name="context-prefix"></xsl:param>
<xsl:param name="dispatcher-prefix" /> <xsl:param name="dispatcher-prefix" />

View File

@ -1,11 +1,10 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:aplaws="http://www.arsdigita.com/aplaws/1.0"
xmlns:aplaws="http://www.arsdigita.com/aplaws/1.0" xmlns:terms="http://xmlns.redhat.com/london/terms/1.0"
xmlns:terms="http://xmlns.redhat.com/london/terms/1.0" version="1.0">
version="1.0">
<xsl:import href="../../../../ROOT/__ccm__/apps/navigation/xsl/index.xsl"/> <xsl:import href="../../heirloom/apps/navigation/xsl/index.xsl"/>
<xsl:import href="content-section-index.xsl"/> <xsl:import href="content-section-index.xsl"/>

View File

@ -1,22 +1,25 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet <xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:bebop="http://www.arsdigita.com/bebop/1.0"
xmlns:aplaws="http://www.arsdigita.com/aplaws/1.0" xmlns:aplaws="http://www.arsdigita.com/aplaws/1.0"
xmlns:ui="http://www.arsdigita.com/ui/1.0" xmlns:ui="http://www.arsdigita.com/ui/1.0"
xmlns:cms="http://www.arsdigita.com/cms/1.0" xmlns:cms="http://www.arsdigita.com/cms/1.0"
xmlns:nav="http://ccm.redhat.com/london/navigation" xmlns:nav="http://ccm.redhat.com/london/navigation"
xmlns:search="http://rhea.redhat.com/search/1.0" xmlns:search="http://rhea.redhat.com/search/1.0"
xmlns:portal="http://www.uk.arsdigita.com/portal/1.0" xmlns:portal="http://www.uk.arsdigita.com/portal/1.0"
exclude-result-prefixes="xsl bebop aplaws ui cms nav search portal" exclude-result-prefixes="xsl bebop aplaws ui cms nav search portal"
version="1.0"> version="1.0">
<!-- <xsl:import href="../../../__ccm__/apps/workspace/xsl/index.xsl"/> -->
<xsl:import href="../../heirloom/apps/portal-workspace/xsl/index.xsl"/>
<xsl:import href="../../../../ROOT/__ccm__/apps/portalworkspace/xsl/index.xsl"/>
<xsl:import href="portal/lib.xsl"/> <xsl:import href="portal/lib.xsl"/>
<xsl:import href="portal/portlets.xsl"/> <xsl:import href="portal/portlets.xsl"/>
<xsl:import href="lib/header.xsl"/> <xsl:import href="lib/header.xsl"/>
<xsl:import href="lib/lib.xsl"/> <xsl:import href="lib/lib.xsl"/>
<xsl:import href="../../../../ROOT/packages/bebop/xsl/dcp.xsl"/> <!-- <xsl:import href="../../../packages/bebop/xsl/dcp.xsl"/> -->
<xsl:import href="../../heirloom/packages/bebop/xsl/dcp.xsl"/>
<xsl:param name="context-prefix"></xsl:param> <xsl:param name="context-prefix"></xsl:param>
<xsl:param name="dispatcher-prefix" /> <xsl:param name="dispatcher-prefix" />
@ -41,8 +44,9 @@
<body> <body>
<xsl:call-template name="bebop:dcpJavascript"/> <xsl:call-template name="bebop:dcpJavascript"/>
<a class="navHide" href="#startcontent" title="Go directly to main content" <a class="navHide" href="#startcontent"
accesskey="S">Skip over navigation</a> title="Go directly to main content"
accesskey="S">Skip over navigation</a>
<span class="hide">|</span> <span class="hide">|</span>
<xsl:call-template name="header"/> <xsl:call-template name="header"/>
<xsl:call-template name="wsBreadcrumb"/> <xsl:call-template name="wsBreadcrumb"/>
@ -52,7 +56,7 @@
</xsl:when> </xsl:when>
<xsl:otherwise> <xsl:otherwise>
<xsl:apply-templates select="portal:workspace"/> <xsl:apply-templates select="portal:workspace"/>
<xsl:call-template name="footer"/> <xsl:call-template name="footer"/>
</xsl:otherwise> </xsl:otherwise>
</xsl:choose> </xsl:choose>
</body> </body>

View File

@ -1,17 +1,19 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet <xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:aplaws="http://www.arsdigita.com/aplaws/1.0" xmlns:aplaws="http://www.arsdigita.com/aplaws/1.0"
version="1.0"> version="1.0">
<xsl:import href="../../../../ROOT/__ccm__/apps/portalworkspace/xsl/admin.xsl"/> <!-- <xsl:import href="../../../__ccm__/apps/workspace/xsl/admin.xsl"/> -->
<xsl:import href="../../heirloom/apps/portal-workspace/xsl/admin.xsl"/>
<xsl:import href="lib/page.xsl"/> <xsl:import href="lib/page.xsl"/>
<xsl:param name="theme-prefix" /> <xsl:param name="theme-prefix" />
<xsl:param name="context-prefix" /> <xsl:param name="context-prefix" />
<xsl:template name="aplaws:headerStyleSheets"> <xsl:template name="aplaws:headerStyleSheets">
<link rel="stylesheet" href="{$context-prefix}/css/acs-master.css" type="text/css" media="screen"/> <link rel="stylesheet" href="{$context-prefix}/css/acs-master.css"
type="text/css" media="screen"/>
</xsl:template> </xsl:template>
</xsl:stylesheet> </xsl:stylesheet>