ccm-bundle hinzugefügt, wird bundle f. LibreCMS und Nicht-SCI Seiten.
git-svn-id: https://svn.libreccm.org/ccm/trunk@1268 8810af33-2d31-482b-a856-94f89814c4dfmaster
parent
acc72a0b5c
commit
e54358ed23
|
|
@ -0,0 +1,45 @@
|
|||
<?xml version="1.0"?>
|
||||
<ccm:application xmlns:ccm="http://ccm.redhat.com/ccm-project"
|
||||
name="ccm-bundle"
|
||||
prettyName="LibreCMS based on CCM"
|
||||
version="6.6.0"
|
||||
release="1"
|
||||
webapp="ROOT">
|
||||
<ccm:dependencies>
|
||||
<ccm:requires name="ccm-core" version="6.6.0" relation="ge"/>
|
||||
<ccm:requires name="ccm-cms" version="6.6.0" relation="ge"/>
|
||||
<ccm:requires name="ccm-ldn-subsite" version="6.6.0" relation="ge"/>
|
||||
<ccm:requires name="ccm-navigation" version="6.6.0" relation="ge"/>
|
||||
<ccm:requires name="ccm-portalworkspace" version="6.6.1" relation="ge"/>
|
||||
<ccm:requires name="ccm-ldn-terms" version="6.6.0" relation="ge"/>
|
||||
<ccm:requires name="ccm-ldn-search" version="6.6.0" relation="ge"/>
|
||||
</ccm:dependencies>
|
||||
|
||||
<ccm:directories>
|
||||
<!-- pdl is empty and not used, but required because we use sql for
|
||||
some update scripts. -->
|
||||
<ccm:directory name="pdl"/>
|
||||
<ccm:directory name="src"/>
|
||||
<ccm:directory name="sql"/>
|
||||
</ccm:directories>
|
||||
|
||||
<ccm:contacts>
|
||||
<ccm:contact uri="http://www.redhat.com/software/rhea" type="website"/>
|
||||
<ccm:contact uri="mailto:rhea@redhat.com" type="support"/>
|
||||
</ccm:contacts>
|
||||
|
||||
<ccm:description>
|
||||
Service module which tailors the CCM software to use as a general Content
|
||||
Management and Collaboration system - LibreCMS.
|
||||
- setting up a categorization / terms system (cf. load.java)
|
||||
- integrate custom spezific jsp's
|
||||
- setting up custom specific configuration parameters (cf. the bundles)
|
||||
- overwrite default classes by custom specific ones (cf. src/.../bundle)
|
||||
- provide a default theme, which meets accessibility requirements and
|
||||
overwrites the default, table based design (cf. web/.../themes)
|
||||
|
||||
CCM is a collaboration and content management system which is based upon
|
||||
the Red Hat Web Application Framework, which is a platform for writing
|
||||
database-backed web applications in Java.
|
||||
</ccm:description>
|
||||
</ccm:application>
|
||||
|
|
@ -0,0 +1,9 @@
|
|||
* Thu Sep 22 2005 Alan Pevec <apevec@redhat.com>
|
||||
- Build all APLAWS+ bundles from the common set of templates.
|
||||
|
||||
* Mon Feb 21 2005 Alan Pevec <apevec@redhat.com>
|
||||
- Requires applications.
|
||||
|
||||
* Mon Jan 26 2004 Daniel Berrange <berrange@redhat.com>
|
||||
- Initial build.
|
||||
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
BUNDLE_NAME=aplaws-plus-zes-devel
|
||||
BUNDLE_PRETTY_NAME="APLAWS+ ZeS Devel Bundle"
|
||||
VERSION=1.1.2devel
|
||||
RELEASE=1
|
||||
|
|
@ -0,0 +1,143 @@
|
|||
# Scientific CMS demo bundle integration.properties
|
||||
#
|
||||
waf.bebop.base_page=com.arsdigita.aplaws.ui.SimplePage
|
||||
#
|
||||
; dhtml editor to use (system wide)
|
||||
; Xinha is default
|
||||
; default: Xinha editor & src=/assets/xinha/XinhaLoader.js
|
||||
#waf.bebop.dhtml_editor=FCKeditor
|
||||
|
||||
waf.categorization.show_internal_name=true
|
||||
|
||||
waf.dispatcher.default_expiry=3600
|
||||
;
|
||||
waf.kernel.data_permission_check_enabled=false
|
||||
waf.kernel.primary_user_identifier=email
|
||||
; if you activate screen_name, forum loader does not work.
|
||||
; waf.kernel.primary_user_identifier=screen_name
|
||||
waf.kernel.supported_languages=de,en
|
||||
|
||||
; security.properties:
|
||||
waf.auto_registration_on=false
|
||||
|
||||
; Searches for localized style sheet (among others)
|
||||
waf.templating.stylesheet_resolver=com.arsdigita.templating.PatternStylesheetResolver
|
||||
waf.templating.stylesheet_paths=/WEB-INF/resources/scientificCMS-stylesheet-paths.txt
|
||||
|
||||
core.ui.pagemap.root_page_url=navigation/
|
||||
core.ui.pagemap.workspace_url=navigation/
|
||||
core.ui.pagemap.user_redirect_url=content/content-center-redirect.jsp
|
||||
|
||||
; workflow configuration
|
||||
waf.workflow.simple.alerts_enabled=true
|
||||
waf.workflow.simple.alerts_sender=root@localhost.localdomain
|
||||
|
||||
; Configures the xml processing
|
||||
waf.xml.xsl_transformer=xalan
|
||||
waf.xml.activate_full_date_formatter=true
|
||||
|
||||
# ccm-cms parameters
|
||||
|
||||
com.arsdigita.cms.category_authoring_add_form=com.arsdigita.aplaws.ui.ItemCategoryPicker
|
||||
|
||||
com.arsdigita.cms.default_folder_template_path=/default/aplaws-folder.jsp
|
||||
com.arsdigita.cms.default_item_template_path=/default/aplaws-item.jsp
|
||||
com.arsdigita.cms.default_template_resolver_class=com.arsdigita.london.subsite.dispatcher.SubsiteItemTemplateResolver
|
||||
|
||||
; Configure dhtml editor for use in cms content-center
|
||||
; Xinha is default and should work out of the box
|
||||
; com.arsdigita.cms.dhtml_editor_config=XinhaConfig,/assets/xinha/XinhaConfig.js
|
||||
; as a temporary measure a different configuration file which includes a link selection box for CCM items
|
||||
; and CCM images should be specified:
|
||||
com.arsdigita.cms.dhtml_editor_config=XinhaConfig,/assets/xinha/CCMcmsXinhaConfig.js
|
||||
|
||||
; to use FCKeditor:
|
||||
; com.arsdigita.cms.dhtml_editor_config=FCKEditor.Config.StyleDefault?,/assets/fckeditor/config/fckconfigOpenCCM.js
|
||||
; com.arsdigita.cms.dhtml_editor_config=XinhaConfig,/assets/xinha/XinhaConfig.js
|
||||
; com.arsdigita.cms.dhtml_editor_hidden_buttons=
|
||||
; com.arsdigita.cms.dhtml_editor_plugins=TableOperations,CSS
|
||||
com.arsdigita.cms.dhtml_editor_plugins=
|
||||
|
||||
com.arsdigita.cms.disable_item_pfs=true
|
||||
|
||||
com.arsdigita.cms.hide_admin_tabs=true
|
||||
com.arsdigita.cms.hide_folder_index_checkbox=true
|
||||
com.arsdigita.cms.hide_launch_date=true
|
||||
com.arsdigita.cms.hide_templates_tab=true
|
||||
com.arsdigita.cms.hide_timezone=true
|
||||
com.arsdigita.cms.hide_udct_ui=true
|
||||
|
||||
com.arsdigita.cms.use_section_categories=false
|
||||
com.arsdigita.cms.use_streamlined_creation=true
|
||||
|
||||
|
||||
# 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
|
||||
com.arsdigita.cms.contenttypes.event.hide_link_to_map=true
|
||||
com.arsdigita.cms.contenttypes.event.hide_main_contributor=true
|
||||
com.arsdigita.cms.contenttypes.event.use_html_date_description=false
|
||||
com.arsdigita.cms.contenttypes.event.start_year=2000
|
||||
com.arsdigita.cms.contenttypes.event.end_year_delta=5
|
||||
|
||||
|
||||
# ccm-cms-types-newsitem parameters
|
||||
com.arsdigita.cms.contenttypes.newsitem.hide_homepage=true
|
||||
com.arsdigita.cms.contenttypes.newsitem.start_year=2000
|
||||
com.arsdigita.cms.contenttypes.newsitem.end_year_delta=5
|
||||
|
||||
|
||||
# Forum application
|
||||
com.arsdigita.forum.show_new_tabs=true
|
||||
com.arsdigita.forum.use_wysiwyg_editor=true
|
||||
com.arsdigita.forum.allow_quick_finish=true
|
||||
com.arsdigita.forum.disable_page_caching=true
|
||||
|
||||
|
||||
# ccm-navigation application
|
||||
com.arsdigita.navigation.category_menu_show_grand_children=false
|
||||
com.arsdigita.navigation.default_cat_root_path=/navigation/
|
||||
com.arsdigita.navigation.default_template=/templates/ccm-navigation/navigation/sci-default.jsp
|
||||
com.arsdigita.navigation.templates_file=bundle/navigation/sci-templates.txt
|
||||
|
||||
|
||||
# ccm-ldn-search application
|
||||
com.arsdigita.london.search.show_sponsored_links=true
|
||||
|
||||
|
||||
# ccm-ldn-subsite application
|
||||
com.arsdigita.london.subsite.root_category_picker=com.arsdigita.london.terms.ui.RootCategoryPicker
|
||||
|
||||
|
||||
# ccm-ldn-themedirector application
|
||||
themedirector.default_theme_context=
|
||||
# themedirector.default_theme_manifest=ccm-zes-aplaws.web.mf
|
||||
themedirector.default_theme_path=themes/static/aplaws-generic
|
||||
themedirector.file_extensions=bmp css gif jpeg jpg js png xml xsl
|
||||
|
||||
|
||||
# ccm-sci-bundle (Loader only)
|
||||
#com.arsdigita.bundle.category_files=bundle/categories/sci-nav-domain-1.00.xml,bundle/categories/sci-nav-hierarchy-1.00.xml
|
||||
|
||||
# =============================================================================================
|
||||
# runtime specific configurations
|
||||
|
||||
waf.admin.email=webmaster@scientificCMS.org
|
||||
waf.admin.name.given=SCI
|
||||
waf.admin.name.family=Administrator
|
||||
waf.admin.password=sci2000
|
||||
waf.admin.password.question=12345
|
||||
waf.admin.password.answer=6
|
||||
|
||||
waf.runtime.jdbc_url=jdbc\:postgresql\://localhost/ccm-sci?user\=sci&password\=sci47web&stringtype\=unspecified
|
||||
waf.runtime.jdbc_pool_size=30
|
||||
|
||||
waf.web.server=localhost\:8080
|
||||
|
||||
|
||||
# =============================================================================================
|
||||
# devel specific configurations
|
||||
#waf.debug=true
|
||||
#waf.bebop.fancy_xsl_errors=true
|
||||
|
||||
|
|
@ -0,0 +1,166 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
|
||||
<!-- project.xml SCI devel - containing only modules used for ScientificCMS -->
|
||||
|
||||
<ccm:project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:ccm="http://ccm.redhat.com/ccm-project"
|
||||
ccmVersion="6.1"
|
||||
name="ScientificCMS"
|
||||
prettyName="Scientific CMS"
|
||||
version="1-1-6"
|
||||
release="devel"
|
||||
webxml="web-sci.xml"
|
||||
webapp="ROOT"
|
||||
xsi:schemaLocation="http://ccm.redhat.com/ccm-project file:tools-ng/common/xsd/project.xsd">
|
||||
|
||||
<ccm:build>
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
<!-- Scientific CMS set of CORE packages -->
|
||||
<!-- NONE can be omitted for technical reasons / internal dependencies -->
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
|
||||
<!-- Main apps -->
|
||||
<ccm:application name="ccm-core"/>
|
||||
<ccm:application name="ccm-cms"/>
|
||||
|
||||
<!-- Content Assets -->
|
||||
<ccm:application name="ccm-cms-assets-imagestep"/>
|
||||
<ccm:application name="ccm-cms-assets-relatedlink"/>
|
||||
|
||||
<!-- Content Types -->
|
||||
<ccm:application name="ccm-cms-types-article"/>
|
||||
<ccm:application name="ccm-cms-types-filestorageitem"/>
|
||||
<ccm:application name="ccm-cms-types-formitem"/>
|
||||
<ccm:application name="ccm-cms-types-formsectionitem"/>
|
||||
|
||||
<!-- Applications -->
|
||||
<ccm:application name="ccm-navigation"/>
|
||||
<ccm:application name="ccm-portalworkspace"/>
|
||||
<ccm:application name="ccm-themedirector"/>
|
||||
|
||||
<!-- LDN extension -->
|
||||
<ccm:application name="ccm-ldn-search"/>
|
||||
<ccm:application name="ccm-ldn-shortcuts"/>
|
||||
<ccm:application name="ccm-ldn-subsite"/>
|
||||
<ccm:application name="ccm-ldn-terms"/>
|
||||
<ccm:application name="ccm-ldn-util"/>
|
||||
|
||||
<!-- SCI extension -->
|
||||
<ccm:application name="ccm-sci-bundle"/>
|
||||
|
||||
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
<!-- Scientific CMS OPTIONAL packages -->
|
||||
<!-- Various combinations of these packages make up specific editions -->
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
|
||||
<!-- Content Assets -->
|
||||
<ccm:application name="ccm-cms-assets-fileattachment"/>
|
||||
<ccm:application name="ccm-cms-assets-notes"/>
|
||||
|
||||
<!-- Content Types -->
|
||||
<ccm:application name="ccm-cms-types-address"/>
|
||||
<ccm:application name="ccm-cms-types-bookmark"/>
|
||||
<ccm:application name="ccm-cms-types-contact"/>
|
||||
<ccm:application name="ccm-cms-types-event"/>
|
||||
<ccm:application name="ccm-cms-types-image"/>
|
||||
<ccm:application name="ccm-cms-types-mparticle"/>
|
||||
<ccm:application name="ccm-cms-types-newsitem"/>
|
||||
<ccm:application name="ccm-cms-types-person"/>
|
||||
|
||||
<!-- Applications -->
|
||||
<ccm:application name="ccm-cms-publicpersonalprofile"/>
|
||||
<ccm:application name="ccm-portalserver"/>
|
||||
|
||||
<!-- LDN extension -->
|
||||
<!-- temporyrily excluded because configuration has to be cleared
|
||||
<ccm:application name="ccm-ldn-rss"/>
|
||||
-->
|
||||
|
||||
<!-- SCI extension -->
|
||||
<!--
|
||||
<ccm:application name="ccm-sci-personalprojects"/>
|
||||
-->
|
||||
<ccm:application name="ccm-sci-personalpublications"/>
|
||||
<ccm:application name="ccm-sci-publications"/>
|
||||
|
||||
<ccm:application name="ccm-sci-types-member"/>
|
||||
|
||||
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
<!-- Scientific CMS potential ADD-ONS packages -->
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
|
||||
<!-- Content Types -->
|
||||
<!--
|
||||
<ccm:application name="ccm-cms-types-agenda"/>
|
||||
<ccm:application name="ccm-cms-types-faqitem"/>
|
||||
<ccm:application name="ccm-cms-types-glossaryitem"/>
|
||||
<ccm:application name="ccm-cms-types-htmlform"/>
|
||||
<ccm:application name="ccm-cms-types-inlinesite"/>
|
||||
<ccm:application name="ccm-cms-types-job"/>
|
||||
<ccm:application name="ccm-cms-types-legalnotice"/>
|
||||
<ccm:application name="ccm-cms-types-minutes"/>
|
||||
<ccm:application name="ccm-cms-types-organization"/>
|
||||
<ccm:application name="ccm-cms-types-pressrelease"/>
|
||||
<ccm:application name="ccm-cms-types-service"/>
|
||||
<ccm:application name="ccm-cms-types-siteproxy"/>
|
||||
<ccm:application name="ccm-cms-types-xmlfeed"/>
|
||||
-->
|
||||
|
||||
<!-- Applications -->
|
||||
<!--
|
||||
<ccm:application name="ccm-auth-http"/>
|
||||
<ccm:application name="ccm-bookmarks"/>
|
||||
<ccm:application name="ccm-docmgr"/>
|
||||
-->
|
||||
<ccm:application name="ccm-docrepo"/>
|
||||
<ccm:application name="ccm-forum"/>
|
||||
<ccm:application name="ccm-forum-categorised"/>
|
||||
<!--
|
||||
<ccm:application name="ccm-weblog"/>
|
||||
<ccm:application name="ccm-webpage"/>
|
||||
-->
|
||||
|
||||
<!-- LDN extension -->
|
||||
<!--
|
||||
<ccm:application name="ccm-ldn-exporter"/>
|
||||
<ccm:application name="ccm-ldn-freeform"/>
|
||||
<ccm:application name="ccm-ldn-importer"/>
|
||||
-->
|
||||
|
||||
|
||||
</ccm:build>
|
||||
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
<!-- Scientific CMS list of OBSOLETE modules -->
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
|
||||
<!-- Content Types -->
|
||||
<!-- Without known funcionality
|
||||
<ccm:application name="ccm-cms-types-motditem"/> -->
|
||||
|
||||
<!-- Applications -->
|
||||
<!-- currently doesn't work for unknown reason
|
||||
<ccm:application name="ccm-simplesurvey"/> -->
|
||||
<!-- Without known funcionality
|
||||
<ccm:application name="ccm-formbuilder-pdf"/>
|
||||
<ccm:application name="ccm-user-preferences"/> -->
|
||||
|
||||
<!-- LDN extension -->
|
||||
<!-- Conflicts with ccm-sci-bundle (this package) -->
|
||||
<!-- <ccm:application name="ccm-ldn-aplaws"/> -->
|
||||
<!-- In it's current implementation very ldn / aplaws specific
|
||||
<ccm:application name="ccm-ldn-atoz"/>
|
||||
<ccm:application name="ccm-ldn-dublin"/> -->
|
||||
|
||||
|
||||
<!-- tools will be downloaded from trunk, but does not
|
||||
contain java code to be compiled!
|
||||
<ccm:application name="tools"/> -->
|
||||
|
||||
</ccm:project>
|
||||
|
|
@ -0,0 +1,540 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
|
||||
version="2.4">
|
||||
|
||||
<display-name>Scientific CMS</display-name>
|
||||
<description>Content and Collaboration Management for Scientific Institutions</description>
|
||||
|
||||
<!-- path and filename of the log4j user accessible config file
|
||||
WEB-INF/conf/log4j.properties is the built-in default value -->
|
||||
<context-param>
|
||||
<param-name>log4j-conf-file</param-name>
|
||||
<param-value>WEB-INF/conf/log4j.properties</param-value>
|
||||
</context-param>
|
||||
|
||||
|
||||
<!-- Require secure connection by redirect to host-port part
|
||||
of parameter waf.web.secure_server
|
||||
NOT USED with ZeS
|
||||
<filter>
|
||||
<filter-name>secured</filter-name>
|
||||
<filter-class>com.arsdigita.web.SecureFilter</filter-class>
|
||||
</filter>
|
||||
-->
|
||||
<!-- Initialize Profiler timers
|
||||
NOT USED with ZeS standard / production
|
||||
<filter>
|
||||
<filter-name>profiler</filter-name>
|
||||
<filter-class>com.arsdigita.profiler.ProfilerFilter</filter-class>
|
||||
</filter>
|
||||
-->
|
||||
|
||||
<filter>
|
||||
<filter-name>shortcuts</filter-name>
|
||||
<filter-class>com.arsdigita.london.shortcuts.ShortcutFilter</filter-class>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
<filter-name>subsite</filter-name>
|
||||
<filter-class>com.arsdigita.london.subsite.SubsiteFilter</filter-class>
|
||||
</filter>
|
||||
|
||||
<!-- NOT USED HERE
|
||||
<filter-mapping>
|
||||
<filter-name>secured</filter-name>
|
||||
<url-pattern>/*</url-pattern>
|
||||
</filter-mapping>
|
||||
|
||||
<filter-mapping>
|
||||
<filter-name>profiler</filter-name>
|
||||
<url-pattern>/*</url-pattern>
|
||||
</filter-mapping>
|
||||
-->
|
||||
|
||||
<filter-mapping>
|
||||
<filter-name>subsite</filter-name>
|
||||
<url-pattern>/*</url-pattern>
|
||||
</filter-mapping>
|
||||
|
||||
<filter-mapping>
|
||||
<filter-name>shortcuts</filter-name>
|
||||
<url-pattern>/*</url-pattern>
|
||||
</filter-mapping>
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
Context Listener
|
||||
required and used to initialize the runtime environment before any other
|
||||
task is performed or any servlet initialized.
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
<listener>
|
||||
<listener-class>com.arsdigita.web.CCMApplicationContextListener</listener-class>
|
||||
</listener>
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
BASE SERVLET DECLARATIONS SECTION
|
||||
basically requirred by ccm-core
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
|
||||
<servlet>
|
||||
<servlet-name>reg</servlet-name>
|
||||
<servlet-class>com.arsdigita.web.ContextRegistrationServlet</servlet-class>
|
||||
<init-param>
|
||||
<param-name>uri</param-name>
|
||||
<param-value>/</param-value>
|
||||
</init-param>
|
||||
<load-on-startup>1</load-on-startup>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>legacy-dispatcher</servlet-name>
|
||||
<servlet-class>com.arsdigita.sitenode.SiteNodeDispatcher</servlet-class>
|
||||
<load-on-startup>3</load-on-startup>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>ccm-dispatcher</servlet-name>
|
||||
<servlet-class>com.arsdigita.web.DispatcherServlet</servlet-class>
|
||||
<init-param>
|
||||
<param-name>fallback-servlet</param-name>
|
||||
<param-value>legacy-dispatcher</param-value>
|
||||
</init-param>
|
||||
<load-on-startup>2</load-on-startup>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>legacy-adapter</servlet-name>
|
||||
<servlet-class>com.arsdigita.web.LegacyAdapterServlet</servlet-class>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>cache-manager</servlet-name>
|
||||
<servlet-class>com.arsdigita.caching.CacheServlet</servlet-class>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>db-test</servlet-name>
|
||||
<servlet-class>com.arsdigita.web.monitoring.DBTestServlet</servlet-class>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>versioning-log</servlet-name>
|
||||
<servlet-class>com.arsdigita.versioning.VersioningServlet</servlet-class>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>oid-redirect</servlet-name>
|
||||
<servlet-class>com.arsdigita.web.OIDRedirectServlet</servlet-class>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>resource-resolver</servlet-name>
|
||||
<servlet-class>com.arsdigita.web.ResourceServlet</servlet-class>
|
||||
</servlet>
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
ADDITIONAL SERVLET DECLARATIONS SECTION
|
||||
basically requirred by ccm-cms
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
|
||||
<servlet>
|
||||
<servlet-name>content-section</servlet-name>
|
||||
<servlet-class>com.arsdigita.cms.ContentSectionServlet</servlet-class>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>content-type-xsl</servlet-name>
|
||||
<servlet-class>com.arsdigita.cms.dispatcher.ContentTypeXSLServlet</servlet-class>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>content-item-xsl</servlet-name>
|
||||
<servlet-class>com.arsdigita.cms.dispatcher.ContentItemXSLServlet</servlet-class>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>template-xsl</servlet-name>
|
||||
<servlet-class>com.arsdigita.cms.dispatcher.TemplateXSLServlet</servlet-class>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>TextOnlyServlet</servlet-name>
|
||||
<display-name>Text Only Servlet</display-name>
|
||||
<servlet-class>
|
||||
com.arsdigita.web.InternalPrefixerServlet
|
||||
</servlet-class>
|
||||
<init-param>
|
||||
<param-name>prefix</param-name>
|
||||
<param-value>/text</param-value>
|
||||
</init-param>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>PrintFriendlyServlet</servlet-name>
|
||||
<display-name>Printer Friendly Output Servlet</display-name>
|
||||
<servlet-class>
|
||||
com.arsdigita.web.InternalPrefixerServlet
|
||||
</servlet-class>
|
||||
<init-param>
|
||||
<param-name>prefix</param-name>
|
||||
<param-value>/print</param-value>
|
||||
</init-param>
|
||||
</servlet>
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
MODULES SERVLET DECLARATIONS SECTION
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
|
||||
|
||||
<!-- module ccm-forum - servlet declarations BEGIN -->
|
||||
<servlet>
|
||||
<servlet-name>forum-main</servlet-name>
|
||||
<servlet-class>com.arsdigita.forum.ForumServlet</servlet-class>
|
||||
</servlet>
|
||||
<!-- module ccm-forum - servlet declarations END -->
|
||||
|
||||
<servlet>
|
||||
<servlet-name>portalworkspace-files</servlet-name>
|
||||
<servlet-class>com.arsdigita.web.ApplicationFileServlet</servlet-class>
|
||||
<init-param>
|
||||
<param-name>template-path</param-name>
|
||||
<param-value>/templates/ccm-portalworkspace</param-value>
|
||||
</init-param>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>navigation-files</servlet-name>
|
||||
<servlet-class>com.arsdigita.web.ApplicationFileServlet</servlet-class>
|
||||
<init-param>
|
||||
<param-name>template-path</param-name>
|
||||
<param-value>/templates/ccm-navigation</param-value>
|
||||
</init-param>
|
||||
<init-param>
|
||||
<param-name>file-resolver</param-name>
|
||||
<param-value>com.arsdigita.navigation.NavigationFileResolver</param-value>
|
||||
</init-param>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>portlet-type-xsl</servlet-name>
|
||||
<servlet-class>com.arsdigita.dispatcher.PortletTypeXSLServlet</servlet-class>
|
||||
</servlet>
|
||||
|
||||
<!-- module ccm-ldn-rss - servlet declaration BEGIN -->
|
||||
<servlet>
|
||||
<servlet-name>rss-files</servlet-name>
|
||||
<servlet-class>com.arsdigita.web.ApplicationFileServlet</servlet-class>
|
||||
<init-param>
|
||||
<param-name>template-path</param-name>
|
||||
<param-value>/templates/ccm-ldn-rss</param-value>
|
||||
</init-param>
|
||||
<init-param>
|
||||
<param-name>file-resolver</param-name>
|
||||
<param-value>com.arsdigita.london.rss.RSSFileResolver</param-value>
|
||||
</init-param>
|
||||
</servlet>
|
||||
<!-- module ccm-ldn-rss - servlet declaration END -->
|
||||
|
||||
<!-- module ccm-ldn-search - servlet declarations BEGIN -->
|
||||
<servlet>
|
||||
<servlet-name>worker</servlet-name>
|
||||
<servlet-class>com.arsdigita.london.search.SearchWorkerServlet</servlet-class>
|
||||
<load-on-startup>4</load-on-startup>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>search-files</servlet-name>
|
||||
<servlet-class>com.arsdigita.web.ApplicationFileServlet</servlet-class>
|
||||
<init-param>
|
||||
<param-name>template-path</param-name>
|
||||
<param-value>/templates/ccm-ldn-search</param-value>
|
||||
</init-param>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>AxisServlet</servlet-name>
|
||||
<display-name>Apache-Axis Servlet</display-name>
|
||||
<servlet-class>
|
||||
org.apache.axis.transport.http.AxisServlet
|
||||
</servlet-class>
|
||||
</servlet>
|
||||
<!-- module ccm-ldn-search - servlet declarations END -->
|
||||
|
||||
<!-- module ccm-ldn-shortcuts - servlet definitions -->
|
||||
<servlet>
|
||||
<servlet-name>shortcuts-files</servlet-name>
|
||||
<servlet-class>com.arsdigita.web.ApplicationFileServlet</servlet-class>
|
||||
<init-param>
|
||||
<param-name>template-path</param-name>
|
||||
<param-value>/templates/ccm-ldn-shortcuts</param-value>
|
||||
</init-param>
|
||||
</servlet>
|
||||
|
||||
<!-- module ccm-ldn-subsite - servlet declarations BEGIN -->
|
||||
<servlet>
|
||||
<servlet-name>subsite-files</servlet-name>
|
||||
<servlet-class>com.arsdigita.web.ApplicationFileServlet</servlet-class>
|
||||
<init-param>
|
||||
<param-name>template-path</param-name>
|
||||
<param-value>/templates/ccm-ldn-subsite</param-value>
|
||||
</init-param>
|
||||
</servlet>
|
||||
<!-- module ccm-ldn-subsite - servlet declarations END -->
|
||||
|
||||
<!-- module ccm-ldn-terms - servlet declarations BEGIN -->
|
||||
<servlet>
|
||||
<servlet-name>terms-files</servlet-name>
|
||||
<servlet-class>com.arsdigita.web.ApplicationFileServlet</servlet-class>
|
||||
<init-param>
|
||||
<param-name>template-path</param-name>
|
||||
<param-value>/templates/ccm-ldn-terms</param-value>
|
||||
</init-param>
|
||||
</servlet>
|
||||
<!-- module ccm-ldn-terms - servlet declarations END -->
|
||||
|
||||
<!-- module ccm-themedirector - servlet declarations BEGIN -->
|
||||
<servlet>
|
||||
<servlet-name>theme-files</servlet-name>
|
||||
<servlet-class>com.arsdigita.web.ApplicationFileServlet</servlet-class>
|
||||
<init-param>
|
||||
<param-name>template-path</param-name>
|
||||
<param-value>/templates/ccm-themedirector</param-value>
|
||||
</init-param>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>ThemeDownload</servlet-name>
|
||||
<servlet-class>com.arsdigita.themedirector.dispatcher.ThemeDownloadServlet</servlet-class>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>ThemePreviewServlet</servlet-name>
|
||||
<display-name>Servlet to allow admins to preview look/feel</display-name>
|
||||
<servlet-class>
|
||||
com.arsdigita.themedirector.dispatcher.InternalThemePrefixerServlet
|
||||
</servlet-class>
|
||||
<init-param>
|
||||
<param-name>prefix</param-name>
|
||||
<param-value>/theme</param-value>
|
||||
</init-param>
|
||||
</servlet>
|
||||
<!-- module ccm-themedirector - servlet declarations END -->
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
MODULES SERVLET MAPPINGS SECTION
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
|
||||
|
||||
<!-- module ccm-forum - servlet mappings BEGIN -->
|
||||
<servlet-mapping>
|
||||
<servlet-name>forum-main</servlet-name>
|
||||
<url-pattern>/forum-main/main/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
<!-- module ccm-forum - servlet mappings END -->
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>portlet-type-xsl</servlet-name>
|
||||
<url-pattern>/__ccm__/servlet/portlet-type/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>portalworkspace-files</servlet-name>
|
||||
<url-pattern>/ccm-portalworkspace/files/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>navigation-files</servlet-name>
|
||||
<url-pattern>/ccm-navigation/files/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<!-- module ccm-ldn-rss - servlet mappings -->
|
||||
<servlet-mapping>
|
||||
<servlet-name>rss-files</servlet-name>
|
||||
<url-pattern>/ccm-ldn-rss/files/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<!-- module ccm-ldn-search - servlet mappings BEGIN -->
|
||||
<servlet-mapping>
|
||||
<servlet-name>search-files</servlet-name>
|
||||
<url-pattern>/ccm-ldn-search/files/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>AxisServlet</servlet-name>
|
||||
<url-pattern>/services/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
<!-- module ccm-ldn-search - servlet mappings END -->
|
||||
|
||||
<!-- module ccm-ldn-shortcuts - servlet mappings -->
|
||||
<servlet-mapping>
|
||||
<servlet-name>shortcuts-files</servlet-name>
|
||||
<url-pattern>/ccm-ldn-shortcuts/files/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<!-- module ccm-ldn-subsite - servlet mappings BEGIN -->
|
||||
<servlet-mapping>
|
||||
<servlet-name>subsite-files</servlet-name>
|
||||
<url-pattern>/ccm-ldn-subsite/files/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
<!-- module ccm-ldn-subsite - servlet mappings END -->
|
||||
|
||||
<!-- module ccm-ldn-terms - servlet mappings BEGIN -->
|
||||
<servlet-mapping>
|
||||
<servlet-name>terms-files</servlet-name>
|
||||
<url-pattern>/ccm-ldn-terms/files/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
<!-- module ccm-ldn-terms - servlet mappings END -->
|
||||
|
||||
<!-- module ccm-themedirector - servlet mappings BEGIN -->
|
||||
<servlet-mapping>
|
||||
<servlet-name>theme-files</servlet-name>
|
||||
<url-pattern>/theme-files/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>ThemeDownload</servlet-name>
|
||||
<url-pattern>/theme-files/download/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>ThemePreviewServlet</servlet-name>
|
||||
<url-pattern>/theme/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
<!-- module ccm-themedirector - servlet mappings END -->
|
||||
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
BASE SERVLET MAPPINGS SECTION
|
||||
basically requirred by ccm-core
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>reg</servlet-name>
|
||||
<url-pattern>/__ccm__/null/reg/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>ccm-dispatcher</servlet-name>
|
||||
<url-pattern>/ccm/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>legacy-adapter</servlet-name>
|
||||
<url-pattern>/__ccm__/servlet/legacy-adapter/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>cache-manager</servlet-name>
|
||||
<url-pattern>/expireCache/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>db-test</servlet-name>
|
||||
<url-pattern>/dbtest</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>versioning-log</servlet-name>
|
||||
<url-pattern>/versioning/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>oid-redirect</servlet-name>
|
||||
<url-pattern>/redirect/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>resource-resolver</servlet-name>
|
||||
<url-pattern>/resource/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
ADDITIONAL SERVLET MAPPINGS SECTION
|
||||
basically requirred by ccm-cms
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>content-section</servlet-name>
|
||||
<url-pattern>/__ccm__/servlet/content-section/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>content-item-xsl</servlet-name>
|
||||
<url-pattern>/__ccm__/servlet/content-item/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>content-type-xsl</servlet-name>
|
||||
<url-pattern>/__ccm__/servlet/content-type/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>template-xsl</servlet-name>
|
||||
<url-pattern>/__ccm__/servlet/template/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>TextOnlyServlet</servlet-name>
|
||||
<url-pattern>/text/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>PrintFriendlyServlet</servlet-name>
|
||||
<url-pattern>/print/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
ERROR PAGES
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
|
||||
<error-page>
|
||||
<exception-type>com.arsdigita.dispatcher.AccessDeniedException</exception-type>
|
||||
<location>/error/access-denied.jsp</location>
|
||||
</error-page>
|
||||
|
||||
<error-page>
|
||||
<exception-type>com.arsdigita.dispatcher.ObjectNotFoundException</exception-type>
|
||||
<location>/error/object-not-found.jsp</location>
|
||||
</error-page>
|
||||
|
||||
<error-page>
|
||||
<exception-type>com.arsdigita.kernel.permissions.PermissionException</exception-type>
|
||||
<location>/error/permission-denied.jsp</location>
|
||||
</error-page>
|
||||
|
||||
<error-page>
|
||||
<exception-type>com.arsdigita.persistence.DbNotAvailableException</exception-type>
|
||||
<location>/error/db-not-available.jsp</location>
|
||||
</error-page>
|
||||
|
||||
<error-page>
|
||||
<exception-type>com.arsdigita.db.DbNotAvailableException</exception-type>
|
||||
<location>/error/db-not-available.jsp</location>
|
||||
</error-page>
|
||||
|
||||
<error-page>
|
||||
<exception-type>java.lang.Exception</exception-type>
|
||||
<location>/error/general.jsp</location>
|
||||
</error-page>
|
||||
|
||||
<error-page>
|
||||
<exception-type>java.lang.Error</exception-type>
|
||||
<location>/error/general.jsp</location>
|
||||
</error-page>
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
TAG LIBS
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
|
||||
<taglib>
|
||||
<taglib-uri>/WEB-INF/bebop-show.tld</taglib-uri>
|
||||
<taglib-location>/WEB-INF/bebop-show.tld</taglib-location>
|
||||
</taglib>
|
||||
|
||||
<taglib>
|
||||
<taglib-uri>/WEB-INF/bebop-define.tld</taglib-uri>
|
||||
<taglib-location>/WEB-INF/bebop-define.tld</taglib-location>
|
||||
</taglib>
|
||||
|
||||
</web-app>
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
Subdirectory <cat> may optionally contain one or more local site specific
|
||||
import xml files for Terms domain categories.
|
||||
|
||||
|
|
@ -0,0 +1,48 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
Document : domain-nav-sci-1.00.xml
|
||||
Created on : 8. Aug. 2007, 10:00
|
||||
Author : pb
|
||||
Description:
|
||||
Definition of the terms (categories) in the SHP Navigation Menue.
|
||||
In hierarchy-nav-shp the structure of the tree will be defined.
|
||||
-->
|
||||
|
||||
<terms:domain xmlns:terms="http://xmlns.redhat.com/london/terms/1.0"
|
||||
about="http://www.aplaws.org.uk/standards/nav/1.03/termslist.xml"
|
||||
key="STD-NAV"
|
||||
title="Sci Navigation List"
|
||||
version="1.00" released="2007-08-10">
|
||||
|
||||
<terms:term id="1000" name="Institut" inAtoZ="false"/>
|
||||
<terms:term id="1200" name="Abteilungen" inAtoZ="false"/>
|
||||
<terms:term id="1220" name="Abteilung 1" inAtoZ="false"/>
|
||||
<terms:term id="1240" name="Abteilung 2" inAtoZ="false"/>
|
||||
<terms:term id="1260" name="Abteilung 3" inAtoZ="false"/>
|
||||
<terms:term id="1280" name="Abteilung 4" inAtoZ="false"/>
|
||||
<terms:term id="1300" name="Abteilung 5" inAtoZ="false"/>
|
||||
<terms:term id="1400" name="Mitglieder" inAtoZ="false"/>
|
||||
<terms:term id="1600" name="Bibliothek" inAtoZ="false"/>
|
||||
<terms:term id="1800" name="Ankündigungen" inAtoZ="false"/>
|
||||
|
||||
<terms:term id="3000" name="Forschung" inAtoZ="false"/>
|
||||
<terms:term id="3200" name="Projekte" inAtoZ="false"/>
|
||||
<terms:term id="3400" name="Veröffentlichungen" inAtoZ="false"/>
|
||||
<terms:term id="3420" name="Publikationen" inAtoZ="false"/>
|
||||
<terms:term id="3440" name="Arbeitspapiere" inAtoZ="false"/>
|
||||
<terms:term id="3460" name="Schriftenreihe" inAtoZ="false"/>
|
||||
<terms:term id="3480" name="Sci Report" inAtoZ="false"/>
|
||||
<terms:term id="3500" name="Jahresberichte" inAtoZ="false"/>
|
||||
<terms:term id="3600" name="Kolloquium" inAtoZ="false"/>
|
||||
<terms:term id="3800" name="Jour Fix" inAtoZ="false"/>
|
||||
<terms:term id="4000" name="Tagungen" inAtoZ="false"/>
|
||||
|
||||
<terms:term id="5000" name="Lehre und Studium" inAtoZ="false"/>
|
||||
<terms:term id="5200" name="Masterstudiengang Sci" inAtoZ="false"/>
|
||||
<terms:term id="5400" name="Weitere Lehre" inAtoZ="false"/>
|
||||
|
||||
<terms:term id="9002" name="Archiv" inAtoZ="false"/>
|
||||
<terms:term id="9200" name="Informative Links" inAtoZ="false"/>
|
||||
|
||||
</terms:domain>
|
||||
|
||||
|
|
@ -0,0 +1,229 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
Document : hierarchy-nav-sci-1.00.xml
|
||||
Created on : 8. Aug. 2007, 10:30
|
||||
Author : pb
|
||||
Description:
|
||||
Purpose of the document follows.
|
||||
-->
|
||||
|
||||
<terms:hierarchy xmlns:terms="http://xmlns.redhat.com/london/terms/1.0">
|
||||
<terms:domain resource="http://www.aplaws.org.uk/standards/nav/1.03/termslist.xml"/>
|
||||
<!-- set root terms -->
|
||||
<terms:term id="1000"/>
|
||||
<terms:term id="3000"/>
|
||||
<terms:term id="5000"/>
|
||||
|
||||
<terms:orderedPair>
|
||||
<!-- narrower terms, first level -->
|
||||
<terms:source>
|
||||
<terms:term id="1000"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="1200"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<!-- narrower terms, second level -->
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="1200"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="1220"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="1200"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="1240"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="1200"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="1260"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="1200"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="1280"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="1200"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="1300"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
<!-- narrower terms, second level END -->
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="1000"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="1400"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="1000"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="1600"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="1000"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="1800"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="1000"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="9002"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="1000"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="9200"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="3000"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="3200"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="3000"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="3400"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<!-- narrower terms, second level -->
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="3400"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="3420"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="3400"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="3440"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="3400"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="3460"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="3400"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="3480"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="3400"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="3500"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
<!-- narrower terms, second level END -->
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="3000"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="3600"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="3000"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="3800"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="3000"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="4000"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="5000"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="5200"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="5000"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="5200"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
</terms:hierarchy>
|
||||
|
|
@ -0,0 +1,151 @@
|
|||
<?xml version="1.0"?>
|
||||
<terms:domain xmlns:terms="http://xmlns.redhat.com/london/terms/1.0"
|
||||
about="http://www.aplaws.org.uk/standards/nav/1.03/termslist.xml"
|
||||
key="APLAWS-NAV"
|
||||
title="APLAWS Navigation List"
|
||||
version="1.03" released="2004-03-24">
|
||||
|
||||
<terms:term id="1" name="Business" inAtoZ="false"/>
|
||||
<terms:term id="1007" name="Jobs and careers" inAtoZ="false"/>
|
||||
<terms:term id="1021" name="Legal services" inAtoZ="false"/>
|
||||
<terms:term id="1039" name="Leisure and culture" inAtoZ="false"/>
|
||||
<terms:term id="1286" name="Policing and public safety" inAtoZ="false"/>
|
||||
<terms:term id="1325" name="Social issues" inAtoZ="false"/>
|
||||
<terms:term id="1337" name="Transport and streets" inAtoZ="false"/>
|
||||
<terms:term id="204" name="Education and learning" inAtoZ="false"/>
|
||||
<terms:term id="281" name="Environment" inAtoZ="false"/>
|
||||
<terms:term id="3088" name="Council, government and democracy" inAtoZ="false"/>
|
||||
<terms:term id="3168" name="Obsolete terms" inAtoZ="false"/>
|
||||
<terms:term id="596" name="Health and social care" inAtoZ="false"/>
|
||||
<terms:term id="93" name="Community and living" inAtoZ="false"/>
|
||||
<terms:term id="946" name="Housing" inAtoZ="false"/>
|
||||
<terms:term id="11" name="Business promotion" inAtoZ="false"/>
|
||||
<terms:term id="15" name="Business property" inAtoZ="false"/>
|
||||
<terms:term id="1523" name="Business procurement" inAtoZ="false"/>
|
||||
<terms:term id="21" name="Business sectors and services" inAtoZ="false"/>
|
||||
<terms:term id="3100" name="Workers' co-operatives" inAtoZ="false"/>
|
||||
<terms:term id="3300" name="Business and street trading licences" inAtoZ="false"/>
|
||||
<terms:term id="3323" name="Business support and advice" inAtoZ="false"/>
|
||||
<terms:term id="3329" name="Imports and exports" inAtoZ="false"/>
|
||||
<terms:term id="5" name="Business finance" inAtoZ="false"/>
|
||||
<terms:term id="59" name="Economic development" inAtoZ="false"/>
|
||||
<terms:term id="62" name="Employing people" inAtoZ="false"/>
|
||||
<terms:term id="66" name="Health and safety" inAtoZ="false"/>
|
||||
<terms:term id="70" name="Trading standards" inAtoZ="false"/>
|
||||
<terms:term id="8" name="Business opportunities" inAtoZ="false"/>
|
||||
<terms:term id="1008" name="Finding work" inAtoZ="false"/>
|
||||
<terms:term id="1017" name="Retirement" inAtoZ="false"/>
|
||||
<terms:term id="1026" name="Legal advice" inAtoZ="false"/>
|
||||
<terms:term id="1029" name="Courts" inAtoZ="false"/>
|
||||
<terms:term id="1037" name="Probation" inAtoZ="false"/>
|
||||
<terms:term id="1308" name="Police" inAtoZ="false"/>
|
||||
<terms:term id="1309" name="Prisons" inAtoZ="false"/>
|
||||
<terms:term id="1326" name="Equal opportunities" inAtoZ="false"/>
|
||||
<terms:term id="2083" name="Legislation" inAtoZ="false"/>
|
||||
<terms:term id="3025" name="Civil and human rights" inAtoZ="false"/>
|
||||
<terms:term id="3441" name="Legal professions" inAtoZ="false"/>
|
||||
<terms:term id="3442" name="Young offending" inAtoZ="false"/>
|
||||
<terms:term id="1041" name="Arts and entertainment" inAtoZ="false"/>
|
||||
<terms:term id="1098" name="Children's activities" inAtoZ="false"/>
|
||||
<terms:term id="1102" name="Libraries" inAtoZ="false"/>
|
||||
<terms:term id="1106" name="Local history and heritage" inAtoZ="false"/>
|
||||
<terms:term id="1113" name="Hobbies and interests" inAtoZ="false"/>
|
||||
<terms:term id="1132" name="Parks and recreation" inAtoZ="false"/>
|
||||
<terms:term id="1164" name="Social clubs" inAtoZ="false"/>
|
||||
<terms:term id="1165" name="Sports" inAtoZ="false"/>
|
||||
<terms:term id="1248" name="Tourism and travel" inAtoZ="false"/>
|
||||
<terms:term id="1258" name="Uniformed groups" inAtoZ="false"/>
|
||||
<terms:term id="1261" name="Young people's activities" inAtoZ="false"/>
|
||||
<terms:term id="1482" name="Museums and galleries" inAtoZ="false"/>
|
||||
<terms:term id="1287" name="Accidents, emergencies and safety" inAtoZ="false"/>
|
||||
<terms:term id="1298" name="Coastguard" inAtoZ="false"/>
|
||||
<terms:term id="1299" name="Crime and law enforcement" inAtoZ="false"/>
|
||||
<terms:term id="1310" name="Victim support" inAtoZ="false"/>
|
||||
<terms:term id="1311" name="Discrimination or harassment" inAtoZ="false"/>
|
||||
<terms:term id="3454" name="Fire fighting and rescue services" inAtoZ="false"/>
|
||||
<!-- bug: this appears twice (look up a bit)
|
||||
<terms:term id="1326" name="Equal opportunities" inAtoZ="false"/>
|
||||
-->
|
||||
<terms:term id="1327" name="Identity cards" inAtoZ="false"/>
|
||||
<terms:term id="1328" name="Immigration and nationality" inAtoZ="false"/>
|
||||
<terms:term id="1329" name="Sexual orientation" inAtoZ="false"/>
|
||||
<terms:term id="1331" name="Firearms" inAtoZ="false"/>
|
||||
<terms:term id="1332" name="Population and migration" inAtoZ="false"/>
|
||||
<terms:term id="1333" name="Privacy and data protection" inAtoZ="false"/>
|
||||
<terms:term id="1335" name="Rural communities" inAtoZ="false"/>
|
||||
<terms:term id="1336" name="Social inclusion" inAtoZ="false"/>
|
||||
<terms:term id="697" name="Family planning" inAtoZ="false"/>
|
||||
<terms:term id="1352" name="Public rights of way" inAtoZ="false"/>
|
||||
<terms:term id="1353" name="Motor vehicles, roads and parking" inAtoZ="false"/>
|
||||
<terms:term id="1388" name="Public transport" inAtoZ="false"/>
|
||||
<terms:term id="1402" name="Road and pathway maintenance" inAtoZ="false"/>
|
||||
<terms:term id="1424" name="Transport planning" inAtoZ="false"/>
|
||||
<terms:term id="3457" name="Ports and harbours" inAtoZ="false"/>
|
||||
<terms:term id="3459" name="Waterways" inAtoZ="false"/>
|
||||
<terms:term id="3461" name="Reservoirs" inAtoZ="false"/>
|
||||
<terms:term id="205" name="Educational institutions" inAtoZ="false"/>
|
||||
<terms:term id="206" name="Distance learning" inAtoZ="false"/>
|
||||
<terms:term id="212" name="Language tuition" inAtoZ="false"/>
|
||||
<terms:term id="219" name="Adult and community education" inAtoZ="false"/>
|
||||
<terms:term id="2237" name="Teaching" inAtoZ="false"/>
|
||||
<terms:term id="238" name="Work based learning" inAtoZ="false"/>
|
||||
<terms:term id="280" name="Youth service" inAtoZ="false"/>
|
||||
<terms:term id="3008" name="Higher education" inAtoZ="false"/>
|
||||
<terms:term id="3345" name="Home education" inAtoZ="false"/>
|
||||
<terms:term id="3346" name="School library service" inAtoZ="false"/>
|
||||
<terms:term id="3347" name="Schools and colleges" inAtoZ="false"/>
|
||||
<terms:term id="3359" name="Education welfare services" inAtoZ="false"/>
|
||||
<terms:term id="3366" name="Youth support" inAtoZ="false"/>
|
||||
<terms:term id="3440" name="Job training and development" inAtoZ="false"/>
|
||||
<terms:term id="284" name="Animal welfare" inAtoZ="false"/>
|
||||
<terms:term id="3374" name="Land and premises" inAtoZ="false"/>
|
||||
<terms:term id="3379" name="Pests and nuisance" inAtoZ="false"/>
|
||||
<terms:term id="3391" name="Pollution" inAtoZ="false"/>
|
||||
<terms:term id="3393" name="Street care and cleaning" inAtoZ="false"/>
|
||||
<terms:term id="3400" name="Town centre management" inAtoZ="false"/>
|
||||
<terms:term id="347" name="Food production and quality" inAtoZ="false"/>
|
||||
<terms:term id="372" name="Planning" inAtoZ="false"/>
|
||||
<terms:term id="409" name="Energy" inAtoZ="false"/>
|
||||
<terms:term id="420" name="Rubbish, waste and recycling" inAtoZ="false"/>
|
||||
<terms:term id="451" name="Weather" inAtoZ="false"/>
|
||||
<terms:term id="13" name="Information management" inAtoZ="false"/>
|
||||
<terms:term id="3116" name="Democratic processes and events" inAtoZ="false"/>
|
||||
<terms:term id="3344" name="Data protection and freedom of information" inAtoZ="false"/>
|
||||
<terms:term id="454" name="Central government" inAtoZ="false"/>
|
||||
<terms:term id="459" name="Councils" inAtoZ="false"/>
|
||||
<terms:term id="524" name="Elections" inAtoZ="false"/>
|
||||
<terms:term id="552" name="European affairs" inAtoZ="false"/>
|
||||
<terms:term id="566" name="International affairs" inAtoZ="false"/>
|
||||
<terms:term id="569" name="Non-governmental organisations" inAtoZ="false"/>
|
||||
<terms:term id="584" name="Political parties" inAtoZ="false"/>
|
||||
<terms:term id="592" name="Public services" inAtoZ="false"/>
|
||||
<terms:term id="593" name="Regional governments" inAtoZ="false"/>
|
||||
<terms:term id="178" name="Village newsletters" inAtoZ="false"/>
|
||||
<terms:term id="462" name="Council documents, facts and figures" inAtoZ="false"/>
|
||||
<terms:term id="514" name="Petitions" inAtoZ="false"/>
|
||||
<terms:term id="515" name="Surveys" inAtoZ="false"/>
|
||||
<terms:term id="597" name="Health and medical care" inAtoZ="false"/>
|
||||
<terms:term id="631" name="Disabilities" inAtoZ="false"/>
|
||||
<terms:term id="856" name="Social policy" inAtoZ="false"/>
|
||||
<terms:term id="860" name="Social services" inAtoZ="false"/>
|
||||
<terms:term id="107" name="Ethnic communities" inAtoZ="false"/>
|
||||
<terms:term id="1302" name="Community safety" inAtoZ="false"/>
|
||||
<terms:term id="1527" name="Life events" inAtoZ="false"/>
|
||||
<terms:term id="182" name="Twinning" inAtoZ="false"/>
|
||||
<terms:term id="184" name="Voluntary organisations" inAtoZ="false"/>
|
||||
<terms:term id="201" name="Volunteering" inAtoZ="false"/>
|
||||
<terms:term id="3013" name="Neighbourhood and village" inAtoZ="false"/>
|
||||
<terms:term id="3101" name="Interpreters' services" inAtoZ="false"/>
|
||||
<terms:term id="3118" name="Charities and citizens' interest groups" inAtoZ="false"/>
|
||||
<terms:term id="3330" name="Community grants" inAtoZ="false"/>
|
||||
<terms:term id="3332" name="Faiths, beliefs and religions" inAtoZ="false"/>
|
||||
<terms:term id="95" name="Consumer advice and protection" inAtoZ="false"/>
|
||||
<terms:term id="1627" name="Supported and sheltered housing" inAtoZ="false"/>
|
||||
<terms:term id="2639" name="Private housing" inAtoZ="false"/>
|
||||
<terms:term id="3424" name="Housing associations and co-operatives" inAtoZ="false"/>
|
||||
<terms:term id="3426" name="Housing finance" inAtoZ="false"/>
|
||||
<terms:term id="3430" name="Housing improvement and repairs" inAtoZ="false"/>
|
||||
<terms:term id="3438" name="Multiple occupancy homes" inAtoZ="false"/>
|
||||
<terms:term id="952" name="Housing advice" inAtoZ="false"/>
|
||||
<terms:term id="960" name="Council housing" inAtoZ="false"/>
|
||||
</terms:domain>
|
||||
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,160 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<terms:mapping xmlns:terms="http://xmlns.redhat.com/london/terms/1.0">
|
||||
<terms:source>
|
||||
<terms:domain resource="http://www.esd.org.uk/standards/lgcl/1.03/termslist.xml"/>
|
||||
</terms:source>
|
||||
<terms:destination>
|
||||
<terms:domain resource="http://www.aplaws.org.uk/standards/nav/1.03/termslist.xml"/>
|
||||
</terms:destination>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source><terms:term id="1"/></terms:source>
|
||||
<terms:destination><terms:term id="1"/></terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source><terms:term id="1007"/></terms:source>
|
||||
<terms:destination><terms:term id="1007"/></terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair><terms:source><terms:term id="1021"/></terms:source><terms:destination><terms:term id="1021"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1039"/></terms:source><terms:destination><terms:term id="1039"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1286"/></terms:source><terms:destination><terms:term id="1286"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1325"/></terms:source><terms:destination><terms:term id="1325"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1337"/></terms:source><terms:destination><terms:term id="1337"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="204"/></terms:source><terms:destination><terms:term id="204"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="281"/></terms:source><terms:destination><terms:term id="281"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3088"/></terms:source><terms:destination><terms:term id="3088"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3168"/></terms:source><terms:destination><terms:term id="3168"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="596"/></terms:source><terms:destination><terms:term id="596"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="93"/></terms:source><terms:destination><terms:term id="93"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="946"/></terms:source><terms:destination><terms:term id="946"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="11"/></terms:source><terms:destination><terms:term id="11"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="15"/></terms:source><terms:destination><terms:term id="15"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1523"/></terms:source><terms:destination><terms:term id="1523"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="21"/></terms:source><terms:destination><terms:term id="21"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3100"/></terms:source><terms:destination><terms:term id="3100"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3300"/></terms:source><terms:destination><terms:term id="3300"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3323"/></terms:source><terms:destination><terms:term id="3323"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3329"/></terms:source><terms:destination><terms:term id="3329"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="5"/></terms:source><terms:destination><terms:term id="5"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="59"/></terms:source><terms:destination><terms:term id="59"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="62"/></terms:source><terms:destination><terms:term id="62"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="66"/></terms:source><terms:destination><terms:term id="66"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="70"/></terms:source><terms:destination><terms:term id="70"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="8"/></terms:source><terms:destination><terms:term id="8"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1008"/></terms:source><terms:destination><terms:term id="1008"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1017"/></terms:source><terms:destination><terms:term id="1017"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1026"/></terms:source><terms:destination><terms:term id="1026"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1029"/></terms:source><terms:destination><terms:term id="1029"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1037"/></terms:source><terms:destination><terms:term id="1037"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1308"/></terms:source><terms:destination><terms:term id="1308"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1309"/></terms:source><terms:destination><terms:term id="1309"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1326"/></terms:source><terms:destination><terms:term id="1326"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="2083"/></terms:source><terms:destination><terms:term id="2083"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3025"/></terms:source><terms:destination><terms:term id="3025"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3441"/></terms:source><terms:destination><terms:term id="3441"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3442"/></terms:source><terms:destination><terms:term id="3442"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1041"/></terms:source><terms:destination><terms:term id="1041"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1098"/></terms:source><terms:destination><terms:term id="1098"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1102"/></terms:source><terms:destination><terms:term id="1102"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1106"/></terms:source><terms:destination><terms:term id="1106"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1113"/></terms:source><terms:destination><terms:term id="1113"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1132"/></terms:source><terms:destination><terms:term id="1132"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1164"/></terms:source><terms:destination><terms:term id="1164"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1165"/></terms:source><terms:destination><terms:term id="1165"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1248"/></terms:source><terms:destination><terms:term id="1248"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1258"/></terms:source><terms:destination><terms:term id="1258"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1261"/></terms:source><terms:destination><terms:term id="1261"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1482"/></terms:source><terms:destination><terms:term id="1482"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1287"/></terms:source><terms:destination><terms:term id="1287"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1298"/></terms:source><terms:destination><terms:term id="1298"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1299"/></terms:source><terms:destination><terms:term id="1299"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1310"/></terms:source><terms:destination><terms:term id="1310"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1311"/></terms:source><terms:destination><terms:term id="1311"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3454"/></terms:source><terms:destination><terms:term id="3454"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1326"/></terms:source><terms:destination><terms:term id="1326"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1327"/></terms:source><terms:destination><terms:term id="1327"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1328"/></terms:source><terms:destination><terms:term id="1328"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1329"/></terms:source><terms:destination><terms:term id="1329"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1331"/></terms:source><terms:destination><terms:term id="1331"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1332"/></terms:source><terms:destination><terms:term id="1332"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1333"/></terms:source><terms:destination><terms:term id="1333"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1335"/></terms:source><terms:destination><terms:term id="1335"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1336"/></terms:source><terms:destination><terms:term id="1336"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="697"/></terms:source><terms:destination><terms:term id="697"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1352"/></terms:source><terms:destination><terms:term id="1352"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1353"/></terms:source><terms:destination><terms:term id="1353"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1388"/></terms:source><terms:destination><terms:term id="1388"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1402"/></terms:source><terms:destination><terms:term id="1402"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1424"/></terms:source><terms:destination><terms:term id="1424"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3457"/></terms:source><terms:destination><terms:term id="3457"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3459"/></terms:source><terms:destination><terms:term id="3459"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3461"/></terms:source><terms:destination><terms:term id="3461"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="205"/></terms:source><terms:destination><terms:term id="205"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="206"/></terms:source><terms:destination><terms:term id="206"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="212"/></terms:source><terms:destination><terms:term id="212"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="219"/></terms:source><terms:destination><terms:term id="219"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="2237"/></terms:source><terms:destination><terms:term id="2237"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="238"/></terms:source><terms:destination><terms:term id="238"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="280"/></terms:source><terms:destination><terms:term id="280"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3008"/></terms:source><terms:destination><terms:term id="3008"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3345"/></terms:source><terms:destination><terms:term id="3345"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3346"/></terms:source><terms:destination><terms:term id="3346"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3347"/></terms:source><terms:destination><terms:term id="3347"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3359"/></terms:source><terms:destination><terms:term id="3359"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3366"/></terms:source><terms:destination><terms:term id="3366"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3440"/></terms:source><terms:destination><terms:term id="3440"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="284"/></terms:source><terms:destination><terms:term id="284"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3374"/></terms:source><terms:destination><terms:term id="3374"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3379"/></terms:source><terms:destination><terms:term id="3379"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3391"/></terms:source><terms:destination><terms:term id="3391"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3393"/></terms:source><terms:destination><terms:term id="3393"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3400"/></terms:source><terms:destination><terms:term id="3400"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="347"/></terms:source><terms:destination><terms:term id="347"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="372"/></terms:source><terms:destination><terms:term id="372"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="409"/></terms:source><terms:destination><terms:term id="409"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="420"/></terms:source><terms:destination><terms:term id="420"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="451"/></terms:source><terms:destination><terms:term id="451"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="13"/></terms:source><terms:destination><terms:term id="13"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3116"/></terms:source><terms:destination><terms:term id="3116"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3344"/></terms:source><terms:destination><terms:term id="3344"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="454"/></terms:source><terms:destination><terms:term id="454"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="459"/></terms:source><terms:destination><terms:term id="459"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="524"/></terms:source><terms:destination><terms:term id="524"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="552"/></terms:source><terms:destination><terms:term id="552"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="566"/></terms:source><terms:destination><terms:term id="566"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="569"/></terms:source><terms:destination><terms:term id="569"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="584"/></terms:source><terms:destination><terms:term id="584"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="592"/></terms:source><terms:destination><terms:term id="592"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="593"/></terms:source><terms:destination><terms:term id="593"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="178"/></terms:source><terms:destination><terms:term id="178"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="462"/></terms:source><terms:destination><terms:term id="462"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="514"/></terms:source><terms:destination><terms:term id="514"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="515"/></terms:source><terms:destination><terms:term id="515"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="597"/></terms:source><terms:destination><terms:term id="597"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="631"/></terms:source><terms:destination><terms:term id="631"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="856"/></terms:source><terms:destination><terms:term id="856"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="860"/></terms:source><terms:destination><terms:term id="860"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="107"/></terms:source><terms:destination><terms:term id="107"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1302"/></terms:source><terms:destination><terms:term id="1302"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1527"/></terms:source><terms:destination><terms:term id="1527"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="182"/></terms:source><terms:destination><terms:term id="182"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="184"/></terms:source><terms:destination><terms:term id="184"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="201"/></terms:source><terms:destination><terms:term id="201"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3013"/></terms:source><terms:destination><terms:term id="3013"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3101"/></terms:source><terms:destination><terms:term id="3101"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3118"/></terms:source><terms:destination><terms:term id="3118"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3330"/></terms:source><terms:destination><terms:term id="3330"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3332"/></terms:source><terms:destination><terms:term id="3332"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="95"/></terms:source><terms:destination><terms:term id="95"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1627"/></terms:source><terms:destination><terms:term id="1627"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="2639"/></terms:source><terms:destination><terms:term id="2639"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3424"/></terms:source><terms:destination><terms:term id="3424"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3426"/></terms:source><terms:destination><terms:term id="3426"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3430"/></terms:source><terms:destination><terms:term id="3430"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3438"/></terms:source><terms:destination><terms:term id="3438"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="952"/></terms:source><terms:destination><terms:term id="952"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="960"/></terms:source><terms:destination><terms:term id="960"/></terms:destination></terms:orderedPair>
|
||||
</terms:mapping>
|
||||
|
|
@ -0,0 +1,44 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
|
||||
<xsl:stylesheet version="1.0"
|
||||
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns:terms="http://xmlns.redhat.com/london/terms/1.0">
|
||||
|
||||
<xsl:template match="terms:domain">
|
||||
|
||||
<terms:mapping xmlns:terms="http://xmlns.redhat.com/london/terms/1.0">
|
||||
<terms:source>
|
||||
<terms:domain resource="http://www.esd.org.uk/standards/lgcl/1.03/termslist.xml"/>
|
||||
</terms:source>
|
||||
<terms:destination>
|
||||
<terms:domain resource="http://www.aplaws.org.uk/standards/nav/1.03/termslist.xml"/>
|
||||
</terms:destination>
|
||||
|
||||
<xsl:apply-templates />
|
||||
|
||||
</terms:mapping>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="terms:term">
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term>
|
||||
<xsl:attribute name="id">
|
||||
<xsl:value-of select="@id" />
|
||||
</xsl:attribute>
|
||||
</terms:term>
|
||||
</terms:source>
|
||||
<terms:destination>
|
||||
<terms:term>
|
||||
<xsl:attribute name="id">
|
||||
<xsl:value-of select="@id" />
|
||||
</xsl:attribute>
|
||||
</terms:term>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
|
|
@ -0,0 +1,9 @@
|
|||
ScientificCMS Default Items Page,Sci Default Navigation Index Page ordering items in ascending order,/templates/ccm-navigation/navigation/sci-default.jsp
|
||||
ScientificCMS Recent Items Page,Sci List of items ordered with most recent first,/templates/ccm-navigation/navigation/sci-recent.jsp
|
||||
ScientificCMS A-Z Items,Sci List of items paginated as A-Z,/templates/ccm-navigation/navigation/sci-atoz.jsp
|
||||
ScientificCMS Events Page,Sci Events Page ordering events in ??? order,/templates/ccm-navigation/navigation/sci-events.jsp
|
||||
ScientificCMS Portal Page,Sci Portal Page for embedding a portal page as navigation leaves page,/templates/ccm-navigation/navigation/sci-portal.jsp
|
||||
ScientificCMS Portal Welcome Page,Sci Portal page meant as site welcome page,/templates/ccm-navigation/navigation/sci-portal-welcome.jsp
|
||||
ScientificCMS Navigation Welcome Page,Sci site welcome page created by navigation root term,/templates/ccm-navigation/navigation/sci-welcome.jsp
|
||||
ScientificCMS Specializing Items List,Sci Specialising List item page,/templates/ccm-navigation/navigation/SpecializingList.jsp
|
||||
ScientificCMS Publications List,Sci publications listing page,/templates/ccm-navigation/navigation/SciPublicationList.jsp
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
Subdirectory <cat> may optionally contain one or more local site specific
|
||||
import xml files for Terms domain categories.
|
||||
|
||||
|
|
@ -0,0 +1,12 @@
|
|||
Subdirectory <nav> may optionally contain navigation item templates for
|
||||
navigation index pages which either overwrite or ammend those templates
|
||||
which are default for ccm-sci-bundle and stored in
|
||||
/web/templates/ccm-navigation/navigation
|
||||
|
||||
Templates of the same name in this subdirectory just overwrite the
|
||||
default files. Templates of different names are stored in addition
|
||||
to the default template files. In the later case a developer must
|
||||
provide a customised template.txt file replacing the default file
|
||||
/src/WEB-INF/navigation/sci-templates.txt
|
||||
This file must be specified in parameter
|
||||
com.arsdigita.navigation.templates_file
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
Bundle subdir themes
|
||||
|
||||
Purpose:
|
||||
This subdir may optionally contain theme files which either replace part of the
|
||||
theme or add files to the theme provided as default for ScientificCMS and this
|
||||
way adopt the theme for site specific design.
|
||||
|
||||
All files and subdirectories all copied asis to the applications ~/themes
|
||||
directory in its document (context) root.
|
||||
|
||||
It is the responsibility of developer / system integrator to ensure all files
|
||||
are copied to the right location and the theme works with the modification. No
|
||||
functionality or consistency check is perfordmed!
|
||||
|
|
@ -0,0 +1 @@
|
|||
Just a dummy file for test purpose during development.
|
||||
|
|
@ -0,0 +1,12 @@
|
|||
Subdirectory <nav> may optionally contain navigation item templates for
|
||||
navigation index pages which either overwrite or ammend those templates
|
||||
which are default for ccm-sci-bundle and stored in
|
||||
/web/templates/ccm-navigation/navigation
|
||||
|
||||
Templates of the same name in this subdirectory just overwrite the
|
||||
default files. Templates of different names are stored in addition
|
||||
to the default template files. In the later case a developer must
|
||||
provide a customised template.txt file replacing the default file
|
||||
/src/WEB-INF/navigation/sci-templates.txt
|
||||
This file must be specified in parameter
|
||||
com.arsdigita.london.navigation.templates_file
|
||||
|
|
@ -0,0 +1,9 @@
|
|||
* Thu Sep 22 2005 Alan Pevec <apevec@redhat.com>
|
||||
- Build all APLAWS+ bundles from the common set of templates.
|
||||
|
||||
* Mon Feb 21 2005 Alan Pevec <apevec@redhat.com>
|
||||
- Requires applications.
|
||||
|
||||
* Mon Jan 26 2004 Daniel Berrange <berrange@redhat.com>
|
||||
- Initial build.
|
||||
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
BUNDLE_NAME=aplaws-plus-zes-devel
|
||||
BUNDLE_PRETTY_NAME="APLAWS+ ZeS Devel Bundle"
|
||||
VERSION=1.1.2devel
|
||||
RELEASE=1
|
||||
|
|
@ -0,0 +1,143 @@
|
|||
# Scientific CMS devel bundle integration.properties
|
||||
#
|
||||
waf.bebop.base_page=com.arsdigita.aplaws.ui.SimplePage
|
||||
#
|
||||
; dhtml editor to use (system wide)
|
||||
; Xinha is default
|
||||
; default: Xinha editor & src=/assets/xinha/XinhaLoader.js
|
||||
#waf.bebop.dhtml_editor=FCKeditor
|
||||
|
||||
waf.categorization.show_internal_name=true
|
||||
|
||||
waf.dispatcher.default_expiry=3600
|
||||
;
|
||||
waf.kernel.data_permission_check_enabled=false
|
||||
waf.kernel.primary_user_identifier=email
|
||||
; if you activate screen_name, forum loader does not work.
|
||||
; waf.kernel.primary_user_identifier=screen_name
|
||||
waf.kernel.supported_languages=de,en
|
||||
|
||||
; security.properties:
|
||||
waf.auto_registration_on=false
|
||||
|
||||
; Searches for localized style sheet (among others)
|
||||
waf.templating.stylesheet_resolver=com.arsdigita.templating.PatternStylesheetResolver
|
||||
waf.templating.stylesheet_paths=/WEB-INF/resources/scientificCMS-stylesheet-paths.txt
|
||||
|
||||
core.ui.pagemap.root_page_url=navigation/
|
||||
core.ui.pagemap.workspace_url=navigation/
|
||||
core.ui.pagemap.user_redirect_url=content/content-center-redirect.jsp
|
||||
|
||||
; workflow configuration
|
||||
waf.workflow.simple.alerts_enabled=true
|
||||
waf.workflow.simple.alerts_sender=root@localhost.localdomain
|
||||
|
||||
; Configures the xml processing
|
||||
waf.xml.xsl_transformer=xalan
|
||||
waf.xml.activate_full_date_formatter=true
|
||||
|
||||
# ccm-cms parameters
|
||||
|
||||
com.arsdigita.cms.category_authoring_add_form=com.arsdigita.aplaws.ui.ItemCategoryPicker
|
||||
|
||||
com.arsdigita.cms.default_folder_template_path=/default/aplaws-folder.jsp
|
||||
com.arsdigita.cms.default_item_template_path=/default/aplaws-item.jsp
|
||||
com.arsdigita.cms.default_template_resolver_class=com.arsdigita.london.subsite.dispatcher.SubsiteItemTemplateResolver
|
||||
|
||||
; Configure dhtml editor for use in cms content-center
|
||||
; Xinha is default and should work out of the box
|
||||
; com.arsdigita.cms.dhtml_editor_config=XinhaConfig,/assets/xinha/XinhaConfig.js
|
||||
; as a temporary measure a different configuration file which includes a link selection box for CCM items
|
||||
; and CCM images should be specified:
|
||||
com.arsdigita.cms.dhtml_editor_config=XinhaConfig,/assets/xinha/CCMcmsXinhaConfig.js
|
||||
|
||||
; to use FCKeditor:
|
||||
; com.arsdigita.cms.dhtml_editor_config=FCKEditor.Config.StyleDefault?,/assets/fckeditor/config/fckconfigOpenCCM.js
|
||||
; com.arsdigita.cms.dhtml_editor_config=XinhaConfig,/assets/xinha/XinhaConfig.js
|
||||
; com.arsdigita.cms.dhtml_editor_hidden_buttons=
|
||||
; com.arsdigita.cms.dhtml_editor_plugins=TableOperations,CSS
|
||||
com.arsdigita.cms.dhtml_editor_plugins=
|
||||
|
||||
com.arsdigita.cms.disable_item_pfs=true
|
||||
|
||||
com.arsdigita.cms.hide_admin_tabs=true
|
||||
com.arsdigita.cms.hide_folder_index_checkbox=true
|
||||
com.arsdigita.cms.hide_launch_date=true
|
||||
com.arsdigita.cms.hide_templates_tab=true
|
||||
com.arsdigita.cms.hide_timezone=true
|
||||
com.arsdigita.cms.hide_udct_ui=true
|
||||
|
||||
com.arsdigita.cms.use_section_categories=false
|
||||
com.arsdigita.cms.use_streamlined_creation=true
|
||||
|
||||
|
||||
# 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
|
||||
com.arsdigita.cms.contenttypes.event.hide_link_to_map=true
|
||||
com.arsdigita.cms.contenttypes.event.hide_main_contributor=true
|
||||
com.arsdigita.cms.contenttypes.event.use_html_date_description=false
|
||||
com.arsdigita.cms.contenttypes.event.start_year=2000
|
||||
com.arsdigita.cms.contenttypes.event.end_year_delta=5
|
||||
|
||||
|
||||
# ccm-cms-types-newsitem parameters
|
||||
com.arsdigita.cms.contenttypes.newsitem.hide_homepage=true
|
||||
com.arsdigita.cms.contenttypes.newsitem.start_year=2000
|
||||
com.arsdigita.cms.contenttypes.newsitem.end_year_delta=5
|
||||
|
||||
|
||||
# Forum application
|
||||
com.arsdigita.forum.show_new_tabs=true
|
||||
com.arsdigita.forum.use_wysiwyg_editor=true
|
||||
com.arsdigita.forum.allow_quick_finish=true
|
||||
com.arsdigita.forum.disable_page_caching=true
|
||||
|
||||
|
||||
# ccm-navigation application
|
||||
com.arsdigita.navigation.category_menu_show_grand_children=false
|
||||
com.arsdigita.navigation.default_cat_root_path=/navigation/
|
||||
com.arsdigita.navigation.default_template=/templates/ccm-navigation/navigation/sci-default.jsp
|
||||
com.arsdigita.navigation.templates_file=bundle/navigation/sci-templates.txt
|
||||
|
||||
|
||||
# ccm-ldn-search application
|
||||
com.arsdigita.london.search.show_sponsored_links=true
|
||||
|
||||
|
||||
# ccm-ldn-subsite application
|
||||
com.arsdigita.london.subsite.root_category_picker=com.arsdigita.london.terms.ui.RootCategoryPicker
|
||||
|
||||
|
||||
# ccm-ldn-themedirector application
|
||||
themedirector.default_theme_context=
|
||||
# themedirector.default_theme_manifest=ccm-zes-aplaws.web.mf
|
||||
themedirector.default_theme_path=themes/static/aplaws-generic
|
||||
themedirector.file_extensions=bmp css gif jpeg jpg js png xml xsl
|
||||
|
||||
|
||||
# ccm-sci-bundle (Loader only)
|
||||
#com.arsdigita.bundle.category_files=bundle/categories/sci-nav-domain-1.00.xml,bundle/categories/sci-nav-hierarchy-1.00.xml
|
||||
|
||||
# =============================================================================================
|
||||
# runtime specific configurations
|
||||
|
||||
waf.admin.email=webmaster@scientificCMS.org
|
||||
waf.admin.name.given=SCI
|
||||
waf.admin.name.family=Administrator
|
||||
waf.admin.password=sci2000
|
||||
waf.admin.password.question=12345
|
||||
waf.admin.password.answer=6
|
||||
|
||||
waf.runtime.jdbc_url=jdbc\:postgresql\://localhost/ccm-sci?user\=sci&password\=sci47web&stringtype\=unspecified
|
||||
waf.runtime.jdbc_pool_size=30
|
||||
|
||||
waf.web.server=localhost\:8080
|
||||
|
||||
|
||||
# =============================================================================================
|
||||
# devel specific configurations
|
||||
waf.debug=true
|
||||
waf.bebop.fancy_xsl_errors=true
|
||||
|
||||
|
|
@ -0,0 +1,166 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
|
||||
<!-- project.xml SCI devel - containing only modules used for ScientificCMS -->
|
||||
|
||||
<ccm:project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:ccm="http://ccm.redhat.com/ccm-project"
|
||||
ccmVersion="6.1"
|
||||
name="ScientificCMS"
|
||||
prettyName="Scientific CMS"
|
||||
version="1-1-6"
|
||||
release="devel"
|
||||
webxml="web-sci.xml"
|
||||
webapp="ROOT"
|
||||
xsi:schemaLocation="http://ccm.redhat.com/ccm-project file:tools-ng/common/xsd/project.xsd">
|
||||
|
||||
<ccm:build>
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
<!-- Scientific CMS set of CORE packages -->
|
||||
<!-- NONE can be omitted for technical reasons / internal dependencies -->
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
|
||||
<!-- Main apps -->
|
||||
<ccm:application name="ccm-core"/>
|
||||
<ccm:application name="ccm-cms"/>
|
||||
|
||||
<!-- Content Assets -->
|
||||
<ccm:application name="ccm-cms-assets-imagestep"/>
|
||||
<ccm:application name="ccm-cms-assets-relatedlink"/>
|
||||
|
||||
<!-- Content Types -->
|
||||
<ccm:application name="ccm-cms-types-article"/>
|
||||
<ccm:application name="ccm-cms-types-filestorageitem"/>
|
||||
<ccm:application name="ccm-cms-types-formitem"/>
|
||||
<ccm:application name="ccm-cms-types-formsectionitem"/>
|
||||
|
||||
<!-- Applications -->
|
||||
<ccm:application name="ccm-navigation"/>
|
||||
<ccm:application name="ccm-portalworkspace"/>
|
||||
<ccm:application name="ccm-themedirector"/>
|
||||
|
||||
<!-- LDN extension -->
|
||||
<ccm:application name="ccm-ldn-search"/>
|
||||
<ccm:application name="ccm-ldn-shortcuts"/>
|
||||
<ccm:application name="ccm-ldn-subsite"/>
|
||||
<ccm:application name="ccm-ldn-terms"/>
|
||||
<ccm:application name="ccm-ldn-util"/>
|
||||
|
||||
<!-- SCI extension -->
|
||||
<ccm:application name="ccm-sci-bundle"/>
|
||||
|
||||
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
<!-- Scientific CMS OPTIONAL packages -->
|
||||
<!-- Various combinations of these packages make up specific editions -->
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
|
||||
<!-- Content Assets -->
|
||||
<ccm:application name="ccm-cms-assets-fileattachment"/>
|
||||
<ccm:application name="ccm-cms-assets-notes"/>
|
||||
|
||||
<!-- Content Types -->
|
||||
<ccm:application name="ccm-cms-types-address"/>
|
||||
<ccm:application name="ccm-cms-types-bookmark"/>
|
||||
<ccm:application name="ccm-cms-types-contact"/>
|
||||
<ccm:application name="ccm-cms-types-event"/>
|
||||
<ccm:application name="ccm-cms-types-image"/>
|
||||
<ccm:application name="ccm-cms-types-mparticle"/>
|
||||
<ccm:application name="ccm-cms-types-newsitem"/>
|
||||
<ccm:application name="ccm-cms-types-person"/>
|
||||
|
||||
<!-- Applications -->
|
||||
<ccm:application name="ccm-cms-publicpersonalprofile"/>
|
||||
<ccm:application name="ccm-portalserver"/>
|
||||
|
||||
<!-- LDN extension -->
|
||||
<!-- temporyrily excluded because configuration has to be cleared
|
||||
<ccm:application name="ccm-ldn-rss"/>
|
||||
-->
|
||||
|
||||
<!-- SCI extension -->
|
||||
<!--
|
||||
<ccm:application name="ccm-sci-personalprojects"/>
|
||||
-->
|
||||
<ccm:application name="ccm-sci-personalpublications"/>
|
||||
<ccm:application name="ccm-sci-publications"/>
|
||||
|
||||
<ccm:application name="ccm-sci-types-member"/>
|
||||
|
||||
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
<!-- Scientific CMS potential ADD-ONS packages -->
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
|
||||
<!-- Content Types -->
|
||||
<!--
|
||||
<ccm:application name="ccm-cms-types-agenda"/>
|
||||
<ccm:application name="ccm-cms-types-faqitem"/>
|
||||
<ccm:application name="ccm-cms-types-glossaryitem"/>
|
||||
<ccm:application name="ccm-cms-types-htmlform"/>
|
||||
<ccm:application name="ccm-cms-types-inlinesite"/>
|
||||
<ccm:application name="ccm-cms-types-job"/>
|
||||
<ccm:application name="ccm-cms-types-legalnotice"/>
|
||||
<ccm:application name="ccm-cms-types-minutes"/>
|
||||
<ccm:application name="ccm-cms-types-organization"/>
|
||||
<ccm:application name="ccm-cms-types-pressrelease"/>
|
||||
<ccm:application name="ccm-cms-types-service"/>
|
||||
<ccm:application name="ccm-cms-types-siteproxy"/>
|
||||
<ccm:application name="ccm-cms-types-xmlfeed"/>
|
||||
-->
|
||||
|
||||
<!-- Applications -->
|
||||
<!--
|
||||
<ccm:application name="ccm-auth-http"/>
|
||||
<ccm:application name="ccm-bookmarks"/>
|
||||
<ccm:application name="ccm-docmgr"/>
|
||||
-->
|
||||
<ccm:application name="ccm-docrepo"/>
|
||||
<ccm:application name="ccm-forum"/>
|
||||
<ccm:application name="ccm-forum-categorised"/>
|
||||
<!--
|
||||
<ccm:application name="ccm-weblog"/>
|
||||
<ccm:application name="ccm-webpage"/>
|
||||
-->
|
||||
|
||||
<!-- LDN extension -->
|
||||
<!--
|
||||
<ccm:application name="ccm-ldn-exporter"/>
|
||||
<ccm:application name="ccm-ldn-freeform"/>
|
||||
<ccm:application name="ccm-ldn-importer"/>
|
||||
-->
|
||||
|
||||
|
||||
</ccm:build>
|
||||
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
<!-- Scientific CMS list of OBSOLETE modules -->
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
|
||||
<!-- Content Types -->
|
||||
<!-- Without known funcionality
|
||||
<ccm:application name="ccm-cms-types-motditem"/> -->
|
||||
|
||||
<!-- Applications -->
|
||||
<!-- currently doesn't work for unknown reason
|
||||
<ccm:application name="ccm-simplesurvey"/> -->
|
||||
<!-- Without known funcionality
|
||||
<ccm:application name="ccm-formbuilder-pdf"/>
|
||||
<ccm:application name="ccm-user-preferences"/> -->
|
||||
|
||||
<!-- LDN extension -->
|
||||
<!-- Conflicts with ccm-sci-bundle (this package) -->
|
||||
<!-- <ccm:application name="ccm-ldn-aplaws"/> -->
|
||||
<!-- In it's current implementation very ldn / aplaws specific
|
||||
<ccm:application name="ccm-ldn-atoz"/>
|
||||
<ccm:application name="ccm-ldn-dublin"/> -->
|
||||
|
||||
|
||||
<!-- tools will be downloaded from trunk, but does not
|
||||
contain java code to be compiled!
|
||||
<ccm:application name="tools"/> -->
|
||||
|
||||
</ccm:project>
|
||||
|
|
@ -0,0 +1,540 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
|
||||
version="2.4">
|
||||
|
||||
<display-name>Scientific CMS</display-name>
|
||||
<description>Content and Collaboration Management for Scientific Institutions</description>
|
||||
|
||||
<!-- path and filename of the log4j user accessible config file
|
||||
WEB-INF/conf/log4j.properties is the built-in default value -->
|
||||
<context-param>
|
||||
<param-name>log4j-conf-file</param-name>
|
||||
<param-value>WEB-INF/conf/log4j.properties</param-value>
|
||||
</context-param>
|
||||
|
||||
|
||||
<!-- Require secure connection by redirect to host-port part
|
||||
of parameter waf.web.secure_server
|
||||
NOT USED with ZeS
|
||||
<filter>
|
||||
<filter-name>secured</filter-name>
|
||||
<filter-class>com.arsdigita.web.SecureFilter</filter-class>
|
||||
</filter>
|
||||
-->
|
||||
<!-- Initialize Profiler timers
|
||||
NOT USED with ZeS standard / production
|
||||
<filter>
|
||||
<filter-name>profiler</filter-name>
|
||||
<filter-class>com.arsdigita.profiler.ProfilerFilter</filter-class>
|
||||
</filter>
|
||||
-->
|
||||
|
||||
<filter>
|
||||
<filter-name>shortcuts</filter-name>
|
||||
<filter-class>com.arsdigita.london.shortcuts.ShortcutFilter</filter-class>
|
||||
</filter>
|
||||
|
||||
<filter>
|
||||
<filter-name>subsite</filter-name>
|
||||
<filter-class>com.arsdigita.london.subsite.SubsiteFilter</filter-class>
|
||||
</filter>
|
||||
|
||||
<!-- NOT USED HERE
|
||||
<filter-mapping>
|
||||
<filter-name>secured</filter-name>
|
||||
<url-pattern>/*</url-pattern>
|
||||
</filter-mapping>
|
||||
|
||||
<filter-mapping>
|
||||
<filter-name>profiler</filter-name>
|
||||
<url-pattern>/*</url-pattern>
|
||||
</filter-mapping>
|
||||
-->
|
||||
|
||||
<filter-mapping>
|
||||
<filter-name>subsite</filter-name>
|
||||
<url-pattern>/*</url-pattern>
|
||||
</filter-mapping>
|
||||
|
||||
<filter-mapping>
|
||||
<filter-name>shortcuts</filter-name>
|
||||
<url-pattern>/*</url-pattern>
|
||||
</filter-mapping>
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
Context Listener
|
||||
required and used to initialize the runtime environment before any other
|
||||
task is performed or any servlet initialized.
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
<listener>
|
||||
<listener-class>com.arsdigita.web.CCMApplicationContextListener</listener-class>
|
||||
</listener>
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
BASE SERVLET DECLARATIONS SECTION
|
||||
basically requirred by ccm-core
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
|
||||
<servlet>
|
||||
<servlet-name>reg</servlet-name>
|
||||
<servlet-class>com.arsdigita.web.ContextRegistrationServlet</servlet-class>
|
||||
<init-param>
|
||||
<param-name>uri</param-name>
|
||||
<param-value>/</param-value>
|
||||
</init-param>
|
||||
<load-on-startup>1</load-on-startup>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>legacy-dispatcher</servlet-name>
|
||||
<servlet-class>com.arsdigita.sitenode.SiteNodeDispatcher</servlet-class>
|
||||
<load-on-startup>3</load-on-startup>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>ccm-dispatcher</servlet-name>
|
||||
<servlet-class>com.arsdigita.web.DispatcherServlet</servlet-class>
|
||||
<init-param>
|
||||
<param-name>fallback-servlet</param-name>
|
||||
<param-value>legacy-dispatcher</param-value>
|
||||
</init-param>
|
||||
<load-on-startup>2</load-on-startup>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>legacy-adapter</servlet-name>
|
||||
<servlet-class>com.arsdigita.web.LegacyAdapterServlet</servlet-class>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>cache-manager</servlet-name>
|
||||
<servlet-class>com.arsdigita.caching.CacheServlet</servlet-class>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>db-test</servlet-name>
|
||||
<servlet-class>com.arsdigita.web.monitoring.DBTestServlet</servlet-class>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>versioning-log</servlet-name>
|
||||
<servlet-class>com.arsdigita.versioning.VersioningServlet</servlet-class>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>oid-redirect</servlet-name>
|
||||
<servlet-class>com.arsdigita.web.OIDRedirectServlet</servlet-class>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>resource-resolver</servlet-name>
|
||||
<servlet-class>com.arsdigita.web.ResourceServlet</servlet-class>
|
||||
</servlet>
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
ADDITIONAL SERVLET DECLARATIONS SECTION
|
||||
basically requirred by ccm-cms
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
|
||||
<servlet>
|
||||
<servlet-name>content-section</servlet-name>
|
||||
<servlet-class>com.arsdigita.cms.ContentSectionServlet</servlet-class>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>content-type-xsl</servlet-name>
|
||||
<servlet-class>com.arsdigita.cms.dispatcher.ContentTypeXSLServlet</servlet-class>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>content-item-xsl</servlet-name>
|
||||
<servlet-class>com.arsdigita.cms.dispatcher.ContentItemXSLServlet</servlet-class>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>template-xsl</servlet-name>
|
||||
<servlet-class>com.arsdigita.cms.dispatcher.TemplateXSLServlet</servlet-class>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>TextOnlyServlet</servlet-name>
|
||||
<display-name>Text Only Servlet</display-name>
|
||||
<servlet-class>
|
||||
com.arsdigita.web.InternalPrefixerServlet
|
||||
</servlet-class>
|
||||
<init-param>
|
||||
<param-name>prefix</param-name>
|
||||
<param-value>/text</param-value>
|
||||
</init-param>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>PrintFriendlyServlet</servlet-name>
|
||||
<display-name>Printer Friendly Output Servlet</display-name>
|
||||
<servlet-class>
|
||||
com.arsdigita.web.InternalPrefixerServlet
|
||||
</servlet-class>
|
||||
<init-param>
|
||||
<param-name>prefix</param-name>
|
||||
<param-value>/print</param-value>
|
||||
</init-param>
|
||||
</servlet>
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
MODULES SERVLET DECLARATIONS SECTION
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
|
||||
|
||||
<!-- module ccm-forum - servlet declarations BEGIN -->
|
||||
<servlet>
|
||||
<servlet-name>forum-main</servlet-name>
|
||||
<servlet-class>com.arsdigita.forum.ForumServlet</servlet-class>
|
||||
</servlet>
|
||||
<!-- module ccm-forum - servlet declarations END -->
|
||||
|
||||
<servlet>
|
||||
<servlet-name>portalworkspace-files</servlet-name>
|
||||
<servlet-class>com.arsdigita.web.ApplicationFileServlet</servlet-class>
|
||||
<init-param>
|
||||
<param-name>template-path</param-name>
|
||||
<param-value>/templates/ccm-portalworkspace</param-value>
|
||||
</init-param>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>navigation-files</servlet-name>
|
||||
<servlet-class>com.arsdigita.web.ApplicationFileServlet</servlet-class>
|
||||
<init-param>
|
||||
<param-name>template-path</param-name>
|
||||
<param-value>/templates/ccm-navigation</param-value>
|
||||
</init-param>
|
||||
<init-param>
|
||||
<param-name>file-resolver</param-name>
|
||||
<param-value>com.arsdigita.navigation.NavigationFileResolver</param-value>
|
||||
</init-param>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>portlet-type-xsl</servlet-name>
|
||||
<servlet-class>com.arsdigita.dispatcher.PortletTypeXSLServlet</servlet-class>
|
||||
</servlet>
|
||||
|
||||
<!-- module ccm-ldn-rss - servlet declaration BEGIN -->
|
||||
<servlet>
|
||||
<servlet-name>rss-files</servlet-name>
|
||||
<servlet-class>com.arsdigita.web.ApplicationFileServlet</servlet-class>
|
||||
<init-param>
|
||||
<param-name>template-path</param-name>
|
||||
<param-value>/templates/ccm-ldn-rss</param-value>
|
||||
</init-param>
|
||||
<init-param>
|
||||
<param-name>file-resolver</param-name>
|
||||
<param-value>com.arsdigita.london.rss.RSSFileResolver</param-value>
|
||||
</init-param>
|
||||
</servlet>
|
||||
<!-- module ccm-ldn-rss - servlet declaration END -->
|
||||
|
||||
<!-- module ccm-ldn-search - servlet declarations BEGIN -->
|
||||
<servlet>
|
||||
<servlet-name>worker</servlet-name>
|
||||
<servlet-class>com.arsdigita.london.search.SearchWorkerServlet</servlet-class>
|
||||
<load-on-startup>4</load-on-startup>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>search-files</servlet-name>
|
||||
<servlet-class>com.arsdigita.web.ApplicationFileServlet</servlet-class>
|
||||
<init-param>
|
||||
<param-name>template-path</param-name>
|
||||
<param-value>/templates/ccm-ldn-search</param-value>
|
||||
</init-param>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>AxisServlet</servlet-name>
|
||||
<display-name>Apache-Axis Servlet</display-name>
|
||||
<servlet-class>
|
||||
org.apache.axis.transport.http.AxisServlet
|
||||
</servlet-class>
|
||||
</servlet>
|
||||
<!-- module ccm-ldn-search - servlet declarations END -->
|
||||
|
||||
<!-- module ccm-ldn-shortcuts - servlet definitions -->
|
||||
<servlet>
|
||||
<servlet-name>shortcuts-files</servlet-name>
|
||||
<servlet-class>com.arsdigita.web.ApplicationFileServlet</servlet-class>
|
||||
<init-param>
|
||||
<param-name>template-path</param-name>
|
||||
<param-value>/templates/ccm-ldn-shortcuts</param-value>
|
||||
</init-param>
|
||||
</servlet>
|
||||
|
||||
<!-- module ccm-ldn-subsite - servlet declarations BEGIN -->
|
||||
<servlet>
|
||||
<servlet-name>subsite-files</servlet-name>
|
||||
<servlet-class>com.arsdigita.web.ApplicationFileServlet</servlet-class>
|
||||
<init-param>
|
||||
<param-name>template-path</param-name>
|
||||
<param-value>/templates/ccm-ldn-subsite</param-value>
|
||||
</init-param>
|
||||
</servlet>
|
||||
<!-- module ccm-ldn-subsite - servlet declarations END -->
|
||||
|
||||
<!-- module ccm-ldn-terms - servlet declarations BEGIN -->
|
||||
<servlet>
|
||||
<servlet-name>terms-files</servlet-name>
|
||||
<servlet-class>com.arsdigita.web.ApplicationFileServlet</servlet-class>
|
||||
<init-param>
|
||||
<param-name>template-path</param-name>
|
||||
<param-value>/templates/ccm-ldn-terms</param-value>
|
||||
</init-param>
|
||||
</servlet>
|
||||
<!-- module ccm-ldn-terms - servlet declarations END -->
|
||||
|
||||
<!-- module ccm-themedirector - servlet declarations BEGIN -->
|
||||
<servlet>
|
||||
<servlet-name>theme-files</servlet-name>
|
||||
<servlet-class>com.arsdigita.web.ApplicationFileServlet</servlet-class>
|
||||
<init-param>
|
||||
<param-name>template-path</param-name>
|
||||
<param-value>/templates/ccm-themedirector</param-value>
|
||||
</init-param>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>ThemeDownload</servlet-name>
|
||||
<servlet-class>com.arsdigita.themedirector.dispatcher.ThemeDownloadServlet</servlet-class>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>ThemePreviewServlet</servlet-name>
|
||||
<display-name>Servlet to allow admins to preview look/feel</display-name>
|
||||
<servlet-class>
|
||||
com.arsdigita.themedirector.dispatcher.InternalThemePrefixerServlet
|
||||
</servlet-class>
|
||||
<init-param>
|
||||
<param-name>prefix</param-name>
|
||||
<param-value>/theme</param-value>
|
||||
</init-param>
|
||||
</servlet>
|
||||
<!-- module ccm-themedirector - servlet declarations END -->
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
MODULES SERVLET MAPPINGS SECTION
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
|
||||
|
||||
<!-- module ccm-forum - servlet mappings BEGIN -->
|
||||
<servlet-mapping>
|
||||
<servlet-name>forum-main</servlet-name>
|
||||
<url-pattern>/forum-main/main/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
<!-- module ccm-forum - servlet mappings END -->
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>portlet-type-xsl</servlet-name>
|
||||
<url-pattern>/__ccm__/servlet/portlet-type/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>portalworkspace-files</servlet-name>
|
||||
<url-pattern>/ccm-portalworkspace/files/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>navigation-files</servlet-name>
|
||||
<url-pattern>/ccm-navigation/files/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<!-- module ccm-ldn-rss - servlet mappings -->
|
||||
<servlet-mapping>
|
||||
<servlet-name>rss-files</servlet-name>
|
||||
<url-pattern>/ccm-ldn-rss/files/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<!-- module ccm-ldn-search - servlet mappings BEGIN -->
|
||||
<servlet-mapping>
|
||||
<servlet-name>search-files</servlet-name>
|
||||
<url-pattern>/ccm-ldn-search/files/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>AxisServlet</servlet-name>
|
||||
<url-pattern>/services/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
<!-- module ccm-ldn-search - servlet mappings END -->
|
||||
|
||||
<!-- module ccm-ldn-shortcuts - servlet mappings -->
|
||||
<servlet-mapping>
|
||||
<servlet-name>shortcuts-files</servlet-name>
|
||||
<url-pattern>/ccm-ldn-shortcuts/files/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<!-- module ccm-ldn-subsite - servlet mappings BEGIN -->
|
||||
<servlet-mapping>
|
||||
<servlet-name>subsite-files</servlet-name>
|
||||
<url-pattern>/ccm-ldn-subsite/files/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
<!-- module ccm-ldn-subsite - servlet mappings END -->
|
||||
|
||||
<!-- module ccm-ldn-terms - servlet mappings BEGIN -->
|
||||
<servlet-mapping>
|
||||
<servlet-name>terms-files</servlet-name>
|
||||
<url-pattern>/ccm-ldn-terms/files/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
<!-- module ccm-ldn-terms - servlet mappings END -->
|
||||
|
||||
<!-- module ccm-themedirector - servlet mappings BEGIN -->
|
||||
<servlet-mapping>
|
||||
<servlet-name>theme-files</servlet-name>
|
||||
<url-pattern>/theme-files/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>ThemeDownload</servlet-name>
|
||||
<url-pattern>/theme-files/download/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>ThemePreviewServlet</servlet-name>
|
||||
<url-pattern>/theme/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
<!-- module ccm-themedirector - servlet mappings END -->
|
||||
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
BASE SERVLET MAPPINGS SECTION
|
||||
basically requirred by ccm-core
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>reg</servlet-name>
|
||||
<url-pattern>/__ccm__/null/reg/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>ccm-dispatcher</servlet-name>
|
||||
<url-pattern>/ccm/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>legacy-adapter</servlet-name>
|
||||
<url-pattern>/__ccm__/servlet/legacy-adapter/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>cache-manager</servlet-name>
|
||||
<url-pattern>/expireCache/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>db-test</servlet-name>
|
||||
<url-pattern>/dbtest</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>versioning-log</servlet-name>
|
||||
<url-pattern>/versioning/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>oid-redirect</servlet-name>
|
||||
<url-pattern>/redirect/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>resource-resolver</servlet-name>
|
||||
<url-pattern>/resource/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
ADDITIONAL SERVLET MAPPINGS SECTION
|
||||
basically requirred by ccm-cms
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>content-section</servlet-name>
|
||||
<url-pattern>/__ccm__/servlet/content-section/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>content-item-xsl</servlet-name>
|
||||
<url-pattern>/__ccm__/servlet/content-item/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>content-type-xsl</servlet-name>
|
||||
<url-pattern>/__ccm__/servlet/content-type/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>template-xsl</servlet-name>
|
||||
<url-pattern>/__ccm__/servlet/template/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>TextOnlyServlet</servlet-name>
|
||||
<url-pattern>/text/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>PrintFriendlyServlet</servlet-name>
|
||||
<url-pattern>/print/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
ERROR PAGES
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
|
||||
<error-page>
|
||||
<exception-type>com.arsdigita.dispatcher.AccessDeniedException</exception-type>
|
||||
<location>/error/access-denied.jsp</location>
|
||||
</error-page>
|
||||
|
||||
<error-page>
|
||||
<exception-type>com.arsdigita.dispatcher.ObjectNotFoundException</exception-type>
|
||||
<location>/error/object-not-found.jsp</location>
|
||||
</error-page>
|
||||
|
||||
<error-page>
|
||||
<exception-type>com.arsdigita.kernel.permissions.PermissionException</exception-type>
|
||||
<location>/error/permission-denied.jsp</location>
|
||||
</error-page>
|
||||
|
||||
<error-page>
|
||||
<exception-type>com.arsdigita.persistence.DbNotAvailableException</exception-type>
|
||||
<location>/error/db-not-available.jsp</location>
|
||||
</error-page>
|
||||
|
||||
<error-page>
|
||||
<exception-type>com.arsdigita.db.DbNotAvailableException</exception-type>
|
||||
<location>/error/db-not-available.jsp</location>
|
||||
</error-page>
|
||||
|
||||
<error-page>
|
||||
<exception-type>java.lang.Exception</exception-type>
|
||||
<location>/error/general.jsp</location>
|
||||
</error-page>
|
||||
|
||||
<error-page>
|
||||
<exception-type>java.lang.Error</exception-type>
|
||||
<location>/error/general.jsp</location>
|
||||
</error-page>
|
||||
|
||||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
TAG LIBS
|
||||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
||||
|
||||
<taglib>
|
||||
<taglib-uri>/WEB-INF/bebop-show.tld</taglib-uri>
|
||||
<taglib-location>/WEB-INF/bebop-show.tld</taglib-location>
|
||||
</taglib>
|
||||
|
||||
<taglib>
|
||||
<taglib-uri>/WEB-INF/bebop-define.tld</taglib-uri>
|
||||
<taglib-location>/WEB-INF/bebop-define.tld</taglib-location>
|
||||
</taglib>
|
||||
|
||||
</web-app>
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
Subdirectory <cat> may optionally contain one or more local site specific
|
||||
import xml files for Terms domain categories.
|
||||
|
||||
|
|
@ -0,0 +1,48 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
Document : domain-nav-sci-1.00.xml
|
||||
Created on : 8. Aug. 2007, 10:00
|
||||
Author : pb
|
||||
Description:
|
||||
Definition of the terms (categories) in the SHP Navigation Menue.
|
||||
In hierarchy-nav-shp the structure of the tree will be defined.
|
||||
-->
|
||||
|
||||
<terms:domain xmlns:terms="http://xmlns.redhat.com/london/terms/1.0"
|
||||
about="http://www.aplaws.org.uk/standards/nav/1.03/termslist.xml"
|
||||
key="STD-NAV"
|
||||
title="Sci Navigation List"
|
||||
version="1.00" released="2007-08-10">
|
||||
|
||||
<terms:term id="1000" name="Institut" inAtoZ="false"/>
|
||||
<terms:term id="1200" name="Abteilungen" inAtoZ="false"/>
|
||||
<terms:term id="1220" name="Abteilung 1" inAtoZ="false"/>
|
||||
<terms:term id="1240" name="Abteilung 2" inAtoZ="false"/>
|
||||
<terms:term id="1260" name="Abteilung 3" inAtoZ="false"/>
|
||||
<terms:term id="1280" name="Abteilung 4" inAtoZ="false"/>
|
||||
<terms:term id="1300" name="Abteilung 5" inAtoZ="false"/>
|
||||
<terms:term id="1400" name="Mitglieder" inAtoZ="false"/>
|
||||
<terms:term id="1600" name="Bibliothek" inAtoZ="false"/>
|
||||
<terms:term id="1800" name="Ankündigungen" inAtoZ="false"/>
|
||||
|
||||
<terms:term id="3000" name="Forschung" inAtoZ="false"/>
|
||||
<terms:term id="3200" name="Projekte" inAtoZ="false"/>
|
||||
<terms:term id="3400" name="Veröffentlichungen" inAtoZ="false"/>
|
||||
<terms:term id="3420" name="Publikationen" inAtoZ="false"/>
|
||||
<terms:term id="3440" name="Arbeitspapiere" inAtoZ="false"/>
|
||||
<terms:term id="3460" name="Schriftenreihe" inAtoZ="false"/>
|
||||
<terms:term id="3480" name="Sci Report" inAtoZ="false"/>
|
||||
<terms:term id="3500" name="Jahresberichte" inAtoZ="false"/>
|
||||
<terms:term id="3600" name="Kolloquium" inAtoZ="false"/>
|
||||
<terms:term id="3800" name="Jour Fix" inAtoZ="false"/>
|
||||
<terms:term id="4000" name="Tagungen" inAtoZ="false"/>
|
||||
|
||||
<terms:term id="5000" name="Lehre und Studium" inAtoZ="false"/>
|
||||
<terms:term id="5200" name="Masterstudiengang Sci" inAtoZ="false"/>
|
||||
<terms:term id="5400" name="Weitere Lehre" inAtoZ="false"/>
|
||||
|
||||
<terms:term id="9002" name="Archiv" inAtoZ="false"/>
|
||||
<terms:term id="9200" name="Informative Links" inAtoZ="false"/>
|
||||
|
||||
</terms:domain>
|
||||
|
||||
|
|
@ -0,0 +1,229 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
Document : hierarchy-nav-sci-1.00.xml
|
||||
Created on : 8. Aug. 2007, 10:30
|
||||
Author : pb
|
||||
Description:
|
||||
Purpose of the document follows.
|
||||
-->
|
||||
|
||||
<terms:hierarchy xmlns:terms="http://xmlns.redhat.com/london/terms/1.0">
|
||||
<terms:domain resource="http://www.aplaws.org.uk/standards/nav/1.03/termslist.xml"/>
|
||||
<!-- set root terms -->
|
||||
<terms:term id="1000"/>
|
||||
<terms:term id="3000"/>
|
||||
<terms:term id="5000"/>
|
||||
|
||||
<terms:orderedPair>
|
||||
<!-- narrower terms, first level -->
|
||||
<terms:source>
|
||||
<terms:term id="1000"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="1200"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<!-- narrower terms, second level -->
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="1200"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="1220"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="1200"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="1240"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="1200"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="1260"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="1200"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="1280"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="1200"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="1300"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
<!-- narrower terms, second level END -->
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="1000"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="1400"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="1000"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="1600"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="1000"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="1800"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="1000"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="9002"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="1000"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="9200"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="3000"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="3200"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="3000"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="3400"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<!-- narrower terms, second level -->
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="3400"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="3420"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="3400"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="3440"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="3400"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="3460"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="3400"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="3480"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="3400"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="3500"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
<!-- narrower terms, second level END -->
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="3000"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="3600"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="3000"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="3800"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="3000"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="4000"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="5000"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="5200"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term id="5000"/>
|
||||
</terms:source>
|
||||
<terms:destination isDefault="true" isPreferred="true">
|
||||
<terms:term id="5200"/>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
</terms:hierarchy>
|
||||
|
|
@ -0,0 +1,151 @@
|
|||
<?xml version="1.0"?>
|
||||
<terms:domain xmlns:terms="http://xmlns.redhat.com/london/terms/1.0"
|
||||
about="http://www.aplaws.org.uk/standards/nav/1.03/termslist.xml"
|
||||
key="APLAWS-NAV"
|
||||
title="APLAWS Navigation List"
|
||||
version="1.03" released="2004-03-24">
|
||||
|
||||
<terms:term id="1" name="Business" inAtoZ="false"/>
|
||||
<terms:term id="1007" name="Jobs and careers" inAtoZ="false"/>
|
||||
<terms:term id="1021" name="Legal services" inAtoZ="false"/>
|
||||
<terms:term id="1039" name="Leisure and culture" inAtoZ="false"/>
|
||||
<terms:term id="1286" name="Policing and public safety" inAtoZ="false"/>
|
||||
<terms:term id="1325" name="Social issues" inAtoZ="false"/>
|
||||
<terms:term id="1337" name="Transport and streets" inAtoZ="false"/>
|
||||
<terms:term id="204" name="Education and learning" inAtoZ="false"/>
|
||||
<terms:term id="281" name="Environment" inAtoZ="false"/>
|
||||
<terms:term id="3088" name="Council, government and democracy" inAtoZ="false"/>
|
||||
<terms:term id="3168" name="Obsolete terms" inAtoZ="false"/>
|
||||
<terms:term id="596" name="Health and social care" inAtoZ="false"/>
|
||||
<terms:term id="93" name="Community and living" inAtoZ="false"/>
|
||||
<terms:term id="946" name="Housing" inAtoZ="false"/>
|
||||
<terms:term id="11" name="Business promotion" inAtoZ="false"/>
|
||||
<terms:term id="15" name="Business property" inAtoZ="false"/>
|
||||
<terms:term id="1523" name="Business procurement" inAtoZ="false"/>
|
||||
<terms:term id="21" name="Business sectors and services" inAtoZ="false"/>
|
||||
<terms:term id="3100" name="Workers' co-operatives" inAtoZ="false"/>
|
||||
<terms:term id="3300" name="Business and street trading licences" inAtoZ="false"/>
|
||||
<terms:term id="3323" name="Business support and advice" inAtoZ="false"/>
|
||||
<terms:term id="3329" name="Imports and exports" inAtoZ="false"/>
|
||||
<terms:term id="5" name="Business finance" inAtoZ="false"/>
|
||||
<terms:term id="59" name="Economic development" inAtoZ="false"/>
|
||||
<terms:term id="62" name="Employing people" inAtoZ="false"/>
|
||||
<terms:term id="66" name="Health and safety" inAtoZ="false"/>
|
||||
<terms:term id="70" name="Trading standards" inAtoZ="false"/>
|
||||
<terms:term id="8" name="Business opportunities" inAtoZ="false"/>
|
||||
<terms:term id="1008" name="Finding work" inAtoZ="false"/>
|
||||
<terms:term id="1017" name="Retirement" inAtoZ="false"/>
|
||||
<terms:term id="1026" name="Legal advice" inAtoZ="false"/>
|
||||
<terms:term id="1029" name="Courts" inAtoZ="false"/>
|
||||
<terms:term id="1037" name="Probation" inAtoZ="false"/>
|
||||
<terms:term id="1308" name="Police" inAtoZ="false"/>
|
||||
<terms:term id="1309" name="Prisons" inAtoZ="false"/>
|
||||
<terms:term id="1326" name="Equal opportunities" inAtoZ="false"/>
|
||||
<terms:term id="2083" name="Legislation" inAtoZ="false"/>
|
||||
<terms:term id="3025" name="Civil and human rights" inAtoZ="false"/>
|
||||
<terms:term id="3441" name="Legal professions" inAtoZ="false"/>
|
||||
<terms:term id="3442" name="Young offending" inAtoZ="false"/>
|
||||
<terms:term id="1041" name="Arts and entertainment" inAtoZ="false"/>
|
||||
<terms:term id="1098" name="Children's activities" inAtoZ="false"/>
|
||||
<terms:term id="1102" name="Libraries" inAtoZ="false"/>
|
||||
<terms:term id="1106" name="Local history and heritage" inAtoZ="false"/>
|
||||
<terms:term id="1113" name="Hobbies and interests" inAtoZ="false"/>
|
||||
<terms:term id="1132" name="Parks and recreation" inAtoZ="false"/>
|
||||
<terms:term id="1164" name="Social clubs" inAtoZ="false"/>
|
||||
<terms:term id="1165" name="Sports" inAtoZ="false"/>
|
||||
<terms:term id="1248" name="Tourism and travel" inAtoZ="false"/>
|
||||
<terms:term id="1258" name="Uniformed groups" inAtoZ="false"/>
|
||||
<terms:term id="1261" name="Young people's activities" inAtoZ="false"/>
|
||||
<terms:term id="1482" name="Museums and galleries" inAtoZ="false"/>
|
||||
<terms:term id="1287" name="Accidents, emergencies and safety" inAtoZ="false"/>
|
||||
<terms:term id="1298" name="Coastguard" inAtoZ="false"/>
|
||||
<terms:term id="1299" name="Crime and law enforcement" inAtoZ="false"/>
|
||||
<terms:term id="1310" name="Victim support" inAtoZ="false"/>
|
||||
<terms:term id="1311" name="Discrimination or harassment" inAtoZ="false"/>
|
||||
<terms:term id="3454" name="Fire fighting and rescue services" inAtoZ="false"/>
|
||||
<!-- bug: this appears twice (look up a bit)
|
||||
<terms:term id="1326" name="Equal opportunities" inAtoZ="false"/>
|
||||
-->
|
||||
<terms:term id="1327" name="Identity cards" inAtoZ="false"/>
|
||||
<terms:term id="1328" name="Immigration and nationality" inAtoZ="false"/>
|
||||
<terms:term id="1329" name="Sexual orientation" inAtoZ="false"/>
|
||||
<terms:term id="1331" name="Firearms" inAtoZ="false"/>
|
||||
<terms:term id="1332" name="Population and migration" inAtoZ="false"/>
|
||||
<terms:term id="1333" name="Privacy and data protection" inAtoZ="false"/>
|
||||
<terms:term id="1335" name="Rural communities" inAtoZ="false"/>
|
||||
<terms:term id="1336" name="Social inclusion" inAtoZ="false"/>
|
||||
<terms:term id="697" name="Family planning" inAtoZ="false"/>
|
||||
<terms:term id="1352" name="Public rights of way" inAtoZ="false"/>
|
||||
<terms:term id="1353" name="Motor vehicles, roads and parking" inAtoZ="false"/>
|
||||
<terms:term id="1388" name="Public transport" inAtoZ="false"/>
|
||||
<terms:term id="1402" name="Road and pathway maintenance" inAtoZ="false"/>
|
||||
<terms:term id="1424" name="Transport planning" inAtoZ="false"/>
|
||||
<terms:term id="3457" name="Ports and harbours" inAtoZ="false"/>
|
||||
<terms:term id="3459" name="Waterways" inAtoZ="false"/>
|
||||
<terms:term id="3461" name="Reservoirs" inAtoZ="false"/>
|
||||
<terms:term id="205" name="Educational institutions" inAtoZ="false"/>
|
||||
<terms:term id="206" name="Distance learning" inAtoZ="false"/>
|
||||
<terms:term id="212" name="Language tuition" inAtoZ="false"/>
|
||||
<terms:term id="219" name="Adult and community education" inAtoZ="false"/>
|
||||
<terms:term id="2237" name="Teaching" inAtoZ="false"/>
|
||||
<terms:term id="238" name="Work based learning" inAtoZ="false"/>
|
||||
<terms:term id="280" name="Youth service" inAtoZ="false"/>
|
||||
<terms:term id="3008" name="Higher education" inAtoZ="false"/>
|
||||
<terms:term id="3345" name="Home education" inAtoZ="false"/>
|
||||
<terms:term id="3346" name="School library service" inAtoZ="false"/>
|
||||
<terms:term id="3347" name="Schools and colleges" inAtoZ="false"/>
|
||||
<terms:term id="3359" name="Education welfare services" inAtoZ="false"/>
|
||||
<terms:term id="3366" name="Youth support" inAtoZ="false"/>
|
||||
<terms:term id="3440" name="Job training and development" inAtoZ="false"/>
|
||||
<terms:term id="284" name="Animal welfare" inAtoZ="false"/>
|
||||
<terms:term id="3374" name="Land and premises" inAtoZ="false"/>
|
||||
<terms:term id="3379" name="Pests and nuisance" inAtoZ="false"/>
|
||||
<terms:term id="3391" name="Pollution" inAtoZ="false"/>
|
||||
<terms:term id="3393" name="Street care and cleaning" inAtoZ="false"/>
|
||||
<terms:term id="3400" name="Town centre management" inAtoZ="false"/>
|
||||
<terms:term id="347" name="Food production and quality" inAtoZ="false"/>
|
||||
<terms:term id="372" name="Planning" inAtoZ="false"/>
|
||||
<terms:term id="409" name="Energy" inAtoZ="false"/>
|
||||
<terms:term id="420" name="Rubbish, waste and recycling" inAtoZ="false"/>
|
||||
<terms:term id="451" name="Weather" inAtoZ="false"/>
|
||||
<terms:term id="13" name="Information management" inAtoZ="false"/>
|
||||
<terms:term id="3116" name="Democratic processes and events" inAtoZ="false"/>
|
||||
<terms:term id="3344" name="Data protection and freedom of information" inAtoZ="false"/>
|
||||
<terms:term id="454" name="Central government" inAtoZ="false"/>
|
||||
<terms:term id="459" name="Councils" inAtoZ="false"/>
|
||||
<terms:term id="524" name="Elections" inAtoZ="false"/>
|
||||
<terms:term id="552" name="European affairs" inAtoZ="false"/>
|
||||
<terms:term id="566" name="International affairs" inAtoZ="false"/>
|
||||
<terms:term id="569" name="Non-governmental organisations" inAtoZ="false"/>
|
||||
<terms:term id="584" name="Political parties" inAtoZ="false"/>
|
||||
<terms:term id="592" name="Public services" inAtoZ="false"/>
|
||||
<terms:term id="593" name="Regional governments" inAtoZ="false"/>
|
||||
<terms:term id="178" name="Village newsletters" inAtoZ="false"/>
|
||||
<terms:term id="462" name="Council documents, facts and figures" inAtoZ="false"/>
|
||||
<terms:term id="514" name="Petitions" inAtoZ="false"/>
|
||||
<terms:term id="515" name="Surveys" inAtoZ="false"/>
|
||||
<terms:term id="597" name="Health and medical care" inAtoZ="false"/>
|
||||
<terms:term id="631" name="Disabilities" inAtoZ="false"/>
|
||||
<terms:term id="856" name="Social policy" inAtoZ="false"/>
|
||||
<terms:term id="860" name="Social services" inAtoZ="false"/>
|
||||
<terms:term id="107" name="Ethnic communities" inAtoZ="false"/>
|
||||
<terms:term id="1302" name="Community safety" inAtoZ="false"/>
|
||||
<terms:term id="1527" name="Life events" inAtoZ="false"/>
|
||||
<terms:term id="182" name="Twinning" inAtoZ="false"/>
|
||||
<terms:term id="184" name="Voluntary organisations" inAtoZ="false"/>
|
||||
<terms:term id="201" name="Volunteering" inAtoZ="false"/>
|
||||
<terms:term id="3013" name="Neighbourhood and village" inAtoZ="false"/>
|
||||
<terms:term id="3101" name="Interpreters' services" inAtoZ="false"/>
|
||||
<terms:term id="3118" name="Charities and citizens' interest groups" inAtoZ="false"/>
|
||||
<terms:term id="3330" name="Community grants" inAtoZ="false"/>
|
||||
<terms:term id="3332" name="Faiths, beliefs and religions" inAtoZ="false"/>
|
||||
<terms:term id="95" name="Consumer advice and protection" inAtoZ="false"/>
|
||||
<terms:term id="1627" name="Supported and sheltered housing" inAtoZ="false"/>
|
||||
<terms:term id="2639" name="Private housing" inAtoZ="false"/>
|
||||
<terms:term id="3424" name="Housing associations and co-operatives" inAtoZ="false"/>
|
||||
<terms:term id="3426" name="Housing finance" inAtoZ="false"/>
|
||||
<terms:term id="3430" name="Housing improvement and repairs" inAtoZ="false"/>
|
||||
<terms:term id="3438" name="Multiple occupancy homes" inAtoZ="false"/>
|
||||
<terms:term id="952" name="Housing advice" inAtoZ="false"/>
|
||||
<terms:term id="960" name="Council housing" inAtoZ="false"/>
|
||||
</terms:domain>
|
||||
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,160 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<terms:mapping xmlns:terms="http://xmlns.redhat.com/london/terms/1.0">
|
||||
<terms:source>
|
||||
<terms:domain resource="http://www.esd.org.uk/standards/lgcl/1.03/termslist.xml"/>
|
||||
</terms:source>
|
||||
<terms:destination>
|
||||
<terms:domain resource="http://www.aplaws.org.uk/standards/nav/1.03/termslist.xml"/>
|
||||
</terms:destination>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source><terms:term id="1"/></terms:source>
|
||||
<terms:destination><terms:term id="1"/></terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source><terms:term id="1007"/></terms:source>
|
||||
<terms:destination><terms:term id="1007"/></terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
<terms:orderedPair><terms:source><terms:term id="1021"/></terms:source><terms:destination><terms:term id="1021"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1039"/></terms:source><terms:destination><terms:term id="1039"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1286"/></terms:source><terms:destination><terms:term id="1286"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1325"/></terms:source><terms:destination><terms:term id="1325"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1337"/></terms:source><terms:destination><terms:term id="1337"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="204"/></terms:source><terms:destination><terms:term id="204"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="281"/></terms:source><terms:destination><terms:term id="281"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3088"/></terms:source><terms:destination><terms:term id="3088"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3168"/></terms:source><terms:destination><terms:term id="3168"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="596"/></terms:source><terms:destination><terms:term id="596"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="93"/></terms:source><terms:destination><terms:term id="93"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="946"/></terms:source><terms:destination><terms:term id="946"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="11"/></terms:source><terms:destination><terms:term id="11"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="15"/></terms:source><terms:destination><terms:term id="15"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1523"/></terms:source><terms:destination><terms:term id="1523"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="21"/></terms:source><terms:destination><terms:term id="21"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3100"/></terms:source><terms:destination><terms:term id="3100"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3300"/></terms:source><terms:destination><terms:term id="3300"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3323"/></terms:source><terms:destination><terms:term id="3323"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3329"/></terms:source><terms:destination><terms:term id="3329"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="5"/></terms:source><terms:destination><terms:term id="5"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="59"/></terms:source><terms:destination><terms:term id="59"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="62"/></terms:source><terms:destination><terms:term id="62"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="66"/></terms:source><terms:destination><terms:term id="66"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="70"/></terms:source><terms:destination><terms:term id="70"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="8"/></terms:source><terms:destination><terms:term id="8"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1008"/></terms:source><terms:destination><terms:term id="1008"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1017"/></terms:source><terms:destination><terms:term id="1017"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1026"/></terms:source><terms:destination><terms:term id="1026"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1029"/></terms:source><terms:destination><terms:term id="1029"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1037"/></terms:source><terms:destination><terms:term id="1037"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1308"/></terms:source><terms:destination><terms:term id="1308"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1309"/></terms:source><terms:destination><terms:term id="1309"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1326"/></terms:source><terms:destination><terms:term id="1326"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="2083"/></terms:source><terms:destination><terms:term id="2083"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3025"/></terms:source><terms:destination><terms:term id="3025"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3441"/></terms:source><terms:destination><terms:term id="3441"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3442"/></terms:source><terms:destination><terms:term id="3442"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1041"/></terms:source><terms:destination><terms:term id="1041"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1098"/></terms:source><terms:destination><terms:term id="1098"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1102"/></terms:source><terms:destination><terms:term id="1102"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1106"/></terms:source><terms:destination><terms:term id="1106"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1113"/></terms:source><terms:destination><terms:term id="1113"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1132"/></terms:source><terms:destination><terms:term id="1132"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1164"/></terms:source><terms:destination><terms:term id="1164"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1165"/></terms:source><terms:destination><terms:term id="1165"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1248"/></terms:source><terms:destination><terms:term id="1248"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1258"/></terms:source><terms:destination><terms:term id="1258"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1261"/></terms:source><terms:destination><terms:term id="1261"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1482"/></terms:source><terms:destination><terms:term id="1482"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1287"/></terms:source><terms:destination><terms:term id="1287"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1298"/></terms:source><terms:destination><terms:term id="1298"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1299"/></terms:source><terms:destination><terms:term id="1299"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1310"/></terms:source><terms:destination><terms:term id="1310"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1311"/></terms:source><terms:destination><terms:term id="1311"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3454"/></terms:source><terms:destination><terms:term id="3454"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1326"/></terms:source><terms:destination><terms:term id="1326"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1327"/></terms:source><terms:destination><terms:term id="1327"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1328"/></terms:source><terms:destination><terms:term id="1328"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1329"/></terms:source><terms:destination><terms:term id="1329"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1331"/></terms:source><terms:destination><terms:term id="1331"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1332"/></terms:source><terms:destination><terms:term id="1332"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1333"/></terms:source><terms:destination><terms:term id="1333"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1335"/></terms:source><terms:destination><terms:term id="1335"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1336"/></terms:source><terms:destination><terms:term id="1336"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="697"/></terms:source><terms:destination><terms:term id="697"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1352"/></terms:source><terms:destination><terms:term id="1352"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1353"/></terms:source><terms:destination><terms:term id="1353"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1388"/></terms:source><terms:destination><terms:term id="1388"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1402"/></terms:source><terms:destination><terms:term id="1402"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1424"/></terms:source><terms:destination><terms:term id="1424"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3457"/></terms:source><terms:destination><terms:term id="3457"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3459"/></terms:source><terms:destination><terms:term id="3459"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3461"/></terms:source><terms:destination><terms:term id="3461"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="205"/></terms:source><terms:destination><terms:term id="205"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="206"/></terms:source><terms:destination><terms:term id="206"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="212"/></terms:source><terms:destination><terms:term id="212"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="219"/></terms:source><terms:destination><terms:term id="219"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="2237"/></terms:source><terms:destination><terms:term id="2237"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="238"/></terms:source><terms:destination><terms:term id="238"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="280"/></terms:source><terms:destination><terms:term id="280"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3008"/></terms:source><terms:destination><terms:term id="3008"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3345"/></terms:source><terms:destination><terms:term id="3345"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3346"/></terms:source><terms:destination><terms:term id="3346"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3347"/></terms:source><terms:destination><terms:term id="3347"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3359"/></terms:source><terms:destination><terms:term id="3359"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3366"/></terms:source><terms:destination><terms:term id="3366"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3440"/></terms:source><terms:destination><terms:term id="3440"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="284"/></terms:source><terms:destination><terms:term id="284"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3374"/></terms:source><terms:destination><terms:term id="3374"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3379"/></terms:source><terms:destination><terms:term id="3379"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3391"/></terms:source><terms:destination><terms:term id="3391"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3393"/></terms:source><terms:destination><terms:term id="3393"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3400"/></terms:source><terms:destination><terms:term id="3400"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="347"/></terms:source><terms:destination><terms:term id="347"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="372"/></terms:source><terms:destination><terms:term id="372"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="409"/></terms:source><terms:destination><terms:term id="409"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="420"/></terms:source><terms:destination><terms:term id="420"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="451"/></terms:source><terms:destination><terms:term id="451"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="13"/></terms:source><terms:destination><terms:term id="13"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3116"/></terms:source><terms:destination><terms:term id="3116"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3344"/></terms:source><terms:destination><terms:term id="3344"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="454"/></terms:source><terms:destination><terms:term id="454"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="459"/></terms:source><terms:destination><terms:term id="459"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="524"/></terms:source><terms:destination><terms:term id="524"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="552"/></terms:source><terms:destination><terms:term id="552"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="566"/></terms:source><terms:destination><terms:term id="566"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="569"/></terms:source><terms:destination><terms:term id="569"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="584"/></terms:source><terms:destination><terms:term id="584"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="592"/></terms:source><terms:destination><terms:term id="592"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="593"/></terms:source><terms:destination><terms:term id="593"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="178"/></terms:source><terms:destination><terms:term id="178"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="462"/></terms:source><terms:destination><terms:term id="462"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="514"/></terms:source><terms:destination><terms:term id="514"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="515"/></terms:source><terms:destination><terms:term id="515"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="597"/></terms:source><terms:destination><terms:term id="597"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="631"/></terms:source><terms:destination><terms:term id="631"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="856"/></terms:source><terms:destination><terms:term id="856"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="860"/></terms:source><terms:destination><terms:term id="860"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="107"/></terms:source><terms:destination><terms:term id="107"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1302"/></terms:source><terms:destination><terms:term id="1302"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1527"/></terms:source><terms:destination><terms:term id="1527"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="182"/></terms:source><terms:destination><terms:term id="182"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="184"/></terms:source><terms:destination><terms:term id="184"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="201"/></terms:source><terms:destination><terms:term id="201"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3013"/></terms:source><terms:destination><terms:term id="3013"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3101"/></terms:source><terms:destination><terms:term id="3101"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3118"/></terms:source><terms:destination><terms:term id="3118"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3330"/></terms:source><terms:destination><terms:term id="3330"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3332"/></terms:source><terms:destination><terms:term id="3332"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="95"/></terms:source><terms:destination><terms:term id="95"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="1627"/></terms:source><terms:destination><terms:term id="1627"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="2639"/></terms:source><terms:destination><terms:term id="2639"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3424"/></terms:source><terms:destination><terms:term id="3424"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3426"/></terms:source><terms:destination><terms:term id="3426"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3430"/></terms:source><terms:destination><terms:term id="3430"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="3438"/></terms:source><terms:destination><terms:term id="3438"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="952"/></terms:source><terms:destination><terms:term id="952"/></terms:destination></terms:orderedPair>
|
||||
<terms:orderedPair><terms:source><terms:term id="960"/></terms:source><terms:destination><terms:term id="960"/></terms:destination></terms:orderedPair>
|
||||
</terms:mapping>
|
||||
|
|
@ -0,0 +1,44 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
|
||||
<xsl:stylesheet version="1.0"
|
||||
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns:terms="http://xmlns.redhat.com/london/terms/1.0">
|
||||
|
||||
<xsl:template match="terms:domain">
|
||||
|
||||
<terms:mapping xmlns:terms="http://xmlns.redhat.com/london/terms/1.0">
|
||||
<terms:source>
|
||||
<terms:domain resource="http://www.esd.org.uk/standards/lgcl/1.03/termslist.xml"/>
|
||||
</terms:source>
|
||||
<terms:destination>
|
||||
<terms:domain resource="http://www.aplaws.org.uk/standards/nav/1.03/termslist.xml"/>
|
||||
</terms:destination>
|
||||
|
||||
<xsl:apply-templates />
|
||||
|
||||
</terms:mapping>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="terms:term">
|
||||
|
||||
<terms:orderedPair>
|
||||
<terms:source>
|
||||
<terms:term>
|
||||
<xsl:attribute name="id">
|
||||
<xsl:value-of select="@id" />
|
||||
</xsl:attribute>
|
||||
</terms:term>
|
||||
</terms:source>
|
||||
<terms:destination>
|
||||
<terms:term>
|
||||
<xsl:attribute name="id">
|
||||
<xsl:value-of select="@id" />
|
||||
</xsl:attribute>
|
||||
</terms:term>
|
||||
</terms:destination>
|
||||
</terms:orderedPair>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
||||
|
|
@ -0,0 +1,9 @@
|
|||
ScientificCMS Default Items Page,Sci Default Navigation Index Page ordering items in ascending order,/templates/ccm-ldn-navigation/navigation/sci-default.jsp
|
||||
ScientificCMS Recent Items Page,Sci List of items ordered with most recent first,/templates/ccm-ldn-navigation/navigation/sci-recent.jsp
|
||||
ScientificCMS A-Z Items,Sci List of items paginated as A-Z,/templates/ccm-ldn-navigation/navigation/sci-atoz.jsp
|
||||
ScientificCMS Events Page,Sci Events Page ordering events in ??? order,/templates/ccm-ldn-navigation/navigation/sci-events.jsp
|
||||
ScientificCMS Portal Page,Sci Portal Page for embedding a portal page as navigation leaves page,/templates/ccm-ldn-navigation/navigation/sci-portal.jsp
|
||||
ScientificCMS Portal Welcome Page,Sci Portal page meant as site welcome page,/templates/ccm-ldn-navigation/navigation/sci-portal-welcome.jsp
|
||||
ScientificCMS Navigation Welcome Page,Sci site welcome page created by navigation root term,/templates/ccm-ldn-navigation/navigation/sci-welcome.jsp
|
||||
ScientificCMS Specializing Items List,Sci Specialising List item page,/templates/ccm-ldn-navigation/navigation/SpecializingList.jsp
|
||||
ScientificCMS Publications List,Sci publications listing page,/templates/ccm-ldn-navigation/navigation/SciPublicationList.jsp
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
Subdirectory <cat> may optionally contain one or more local site specific
|
||||
import xml files for Terms domain categories.
|
||||
|
||||
|
|
@ -0,0 +1,12 @@
|
|||
Subdirectory <nav> may optionally contain navigation item templates for
|
||||
navigation index pages which either overwrite or ammend those templates
|
||||
which are default for ccm-sci-bundle and stored in
|
||||
/web/templates/ccm-navigation/navigation
|
||||
|
||||
Templates of the same name in this subdirectory just overwrite the
|
||||
default files. Templates of different names are stored in addition
|
||||
to the default template files. In the later case a developer must
|
||||
provide a customised template.txt file replacing the default file
|
||||
/src/WEB-INF/navigation/sci-templates.txt
|
||||
This file must be specified in parameter
|
||||
com.arsdigita.navigation.templates_file
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
Bundle subdir themes
|
||||
|
||||
Purpose:
|
||||
This subdir may optionally contain theme files which either replace part of the
|
||||
theme or add files to the theme provided as default for ScientificCMS and this
|
||||
way adopt the theme for site specific design.
|
||||
|
||||
All files and subdirectories all copied asis to the applications ~/themes
|
||||
directory in its document (context) root.
|
||||
|
||||
It is the responsibility of developer / system integrator to ensure all files
|
||||
are copied to the right location and the theme works with the modification. No
|
||||
functionality or consistency check is perfordmed!
|
||||
|
|
@ -0,0 +1 @@
|
|||
Just a dummy file for test purpose during development.
|
||||
|
|
@ -0,0 +1,12 @@
|
|||
Subdirectory <nav> may optionally contain navigation item templates for
|
||||
navigation index pages which either overwrite or ammend those templates
|
||||
which are default for ccm-sci-bundle and stored in
|
||||
/web/templates/ccm-navigation/navigation
|
||||
|
||||
Templates of the same name in this subdirectory just overwrite the
|
||||
default files. Templates of different names are stored in addition
|
||||
to the default template files. In the later case a developer must
|
||||
provide a customised template.txt file replacing the default file
|
||||
/src/WEB-INF/navigation/sci-templates.txt
|
||||
This file must be specified in parameter
|
||||
com.arsdigita.london.navigation.templates_file
|
||||
|
|
@ -0,0 +1,9 @@
|
|||
* Thu Sep 22 2005 Alan Pevec <apevec@redhat.com>
|
||||
- Build all APLAWS+ bundles from the common set of templates.
|
||||
|
||||
* Mon Feb 21 2005 Alan Pevec <apevec@redhat.com>
|
||||
- Requires applications.
|
||||
|
||||
* Mon Jan 26 2004 Daniel Berrange <berrange@redhat.com>
|
||||
- Initial build.
|
||||
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
BUNDLE_NAME=aplaws-plus-shp
|
||||
BUNDLE_PRETTY_NAME="APLAWS+ SHP Standard Bundle"
|
||||
VERSION=1.0.5devel
|
||||
RELEASE=1
|
||||
|
|
@ -0,0 +1,23 @@
|
|||
<servlet>
|
||||
<servlet-name>TextOnlyServlet</servlet-name>
|
||||
<display-name>Text Only Servlet</display-name>
|
||||
<servlet-class>
|
||||
com.arsdigita.web.InternalPrefixerServlet
|
||||
</servlet-class>
|
||||
<init-param>
|
||||
<param-name>prefix</param-name>
|
||||
<param-value>/text</param-value>
|
||||
</init-param>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>PrintFriendlyServlet</servlet-name>
|
||||
<display-name>Printer Friendly Output Servlet</display-name>
|
||||
<servlet-class>
|
||||
com.arsdigita.web.InternalPrefixerServlet
|
||||
</servlet-class>
|
||||
<init-param>
|
||||
<param-name>prefix</param-name>
|
||||
<param-value>/print</param-value>
|
||||
</init-param>
|
||||
</servlet>
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
<servlet-mapping>
|
||||
<servlet-name>TextOnlyServlet</servlet-name>
|
||||
<url-pattern>/text/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>PrintFriendlyServlet</servlet-name>
|
||||
<url-pattern>/print/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
|
|
@ -0,0 +1,92 @@
|
|||
--
|
||||
-- Copyright (C) 2011 Peter Boy All Rights Reserved.
|
||||
--
|
||||
-- This library is free software; you can redistribute it and/or
|
||||
-- modify it under the terms of the GNU Lesser General Public License
|
||||
-- as published by the Free Software Foundation; either version 2.1 of
|
||||
-- the License, or (at your option) any later version.
|
||||
--
|
||||
-- This library 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
|
||||
-- Lesser General Public License for more details.
|
||||
--
|
||||
-- You should have received a copy of the GNU Lesser General Public
|
||||
-- License along with this library; if not, write to the Free Software
|
||||
-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
--
|
||||
-- $DateTime: 2011/11/10 23:15:09 $
|
||||
-- $Id: upd_nav_templates_table pboy $
|
||||
|
||||
-- Internal use at Bremen University only!
|
||||
-- Updates various university sites from als ccm-xxx-aplaws to scm-sci-bundle
|
||||
|
||||
-- Update new path
|
||||
update nav_templates
|
||||
set url=replace(url,'packages/navigation/templates'
|
||||
,'templates/ccm-navigation/navigation')
|
||||
where url like '%packages/navigation/templates%';
|
||||
|
||||
|
||||
-- AAP: update jsp names
|
||||
update nav_templates
|
||||
set url=replace(url,'aap-atoz','sci-atoz'),
|
||||
description=replace(description,'AAP','SCI'),
|
||||
title=replace(title,'AAP','SCI')
|
||||
where url like '%aap-atoz%';
|
||||
|
||||
update nav_templates
|
||||
set url=replace(url,'aap-default' ,'sci-default'),
|
||||
description=replace(description,'AAP','SCI'),
|
||||
title=replace(title,'AAP','SCI')
|
||||
where url like '%aap-default%';
|
||||
|
||||
update nav_templates
|
||||
set url=replace(url,'aap-portal' ,'sci-portal'),
|
||||
description=replace(description,'AAP','SCI'),
|
||||
title=replace(title,'AAP','SCI')
|
||||
where url like '%aap-portal%';
|
||||
|
||||
update nav_templates
|
||||
set url=replace(url,'aap-recent' ,'sci-recent'),
|
||||
description=replace(description,'AAP','SCI'),
|
||||
title=replace(title,'AAP','SCI')
|
||||
where url like '%aap-recent%';
|
||||
|
||||
update nav_templates
|
||||
set url=replace(url,'aap-welcome' ,'sci-welcome'),
|
||||
description=replace(description,'AAP','SCI'),
|
||||
title=replace(title,'AAP','SCI')
|
||||
where url like '%aap-welcome%';
|
||||
|
||||
|
||||
-- IAW: update jsp names
|
||||
update nav_templates
|
||||
set url=replace(url,'iaw-atoz','sci-atoz'),
|
||||
description=replace(description,'IAW','SCI'),
|
||||
title=replace(title,'IAW','SCI')
|
||||
where url like '%iaw-atoz%';
|
||||
|
||||
update nav_templates
|
||||
set url=replace(url,'iaw-default' ,'sci-default'),
|
||||
description=replace(description,'IAW','SCI'),
|
||||
title=replace(title,'IAW','SCI')
|
||||
where url like '%iaw-default%';
|
||||
|
||||
update nav_templates
|
||||
set url=replace(url,'iaw-portal' ,'sci-portal'),
|
||||
description=replace(description,'IAW','SCI'),
|
||||
title=replace(title,'IAW','SCI')
|
||||
where url like '%iaw-portal%';
|
||||
|
||||
update nav_templates
|
||||
set url=replace(url,'iaw-recent' ,'sci-recent'),
|
||||
description=replace(description,'IAW','SCI'),
|
||||
title=replace(title,'IAW','SCI')
|
||||
where url like '%iaw-recent%';
|
||||
|
||||
update nav_templates
|
||||
set url=replace(url,'iaw-welcome' ,'sci-welcome'),
|
||||
description=replace(description,'IAW','SCI'),
|
||||
title=replace(title,'IAW','SCI')
|
||||
where url like '%iaw-welcome%';
|
||||
|
|
@ -0,0 +1,68 @@
|
|||
--
|
||||
-- Copyright (C) 2011 Peter Boy All Rights Reserved.
|
||||
--
|
||||
-- This library is free software; you can redistribute it and/or
|
||||
-- modify it under the terms of the GNU Lesser General Public License
|
||||
-- as published by the Free Software Foundation; either version 2.1 of
|
||||
-- the License, or (at your option) any later version.
|
||||
--
|
||||
-- This library 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
|
||||
-- Lesser General Public License for more details.
|
||||
--
|
||||
-- You should have received a copy of the GNU Lesser General Public
|
||||
-- License along with this library; if not, write to the Free Software
|
||||
-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
--
|
||||
-- $Id: upd_system_tables.sql pboy $
|
||||
|
||||
-- adjust various system tables to the new name of application (ccm-sci-bundle)
|
||||
|
||||
alter table init_requirements drop constraint init_requirements_init_f_cmmdn ;
|
||||
|
||||
alter table init_requirements drop constraint init_require_requ_init_f_i6rgg ;
|
||||
|
||||
update inits
|
||||
set class_name=replace(class_name,'arsdigita.aplaws', 'arsdigita.bundle')
|
||||
where class_name like '%arsdigita.aplaws%' ;
|
||||
|
||||
update init_requirements
|
||||
set init=replace(init,'arsdigita.aplaws', 'arsdigita.bundle')
|
||||
where init like '%arsdigita.aplaws%' ;
|
||||
|
||||
update init_requirements
|
||||
set required_init=replace(required_init,'arsdigita.aplaws', 'arsdigita.bundle')
|
||||
where required_init like '%arsdigita.aplaws%' ;
|
||||
|
||||
ALTER TABLE ONLY init_requirements
|
||||
ADD CONSTRAINT init_requirements_init_f_cmmdn FOREIGN KEY (init)
|
||||
REFERENCES inits (class_name) MATCH SIMPLE
|
||||
ON UPDATE NO ACTION ON DELETE NO ACTION;
|
||||
|
||||
ALTER TABLE init_requirements
|
||||
ADD CONSTRAINT init_require_requ_init_f_i6rgg FOREIGN KEY (required_init)
|
||||
REFERENCES inits (class_name) MATCH SIMPLE
|
||||
ON UPDATE NO ACTION ON DELETE NO ACTION;
|
||||
|
||||
|
||||
-- update application_types
|
||||
-- set object_type=replace(object_type,'london.portal', 'portalworkspace')
|
||||
-- where object_type like '%london.portal%' ;
|
||||
|
||||
-- table applications doesn't require an update
|
||||
|
||||
-- update apm_package_types
|
||||
-- set package_key=replace(package_key,'workspace', 'portalworkspace')
|
||||
-- where package_key like 'workspace' ;
|
||||
|
||||
-- table apm_packages doesn't require an update either
|
||||
-- table site_nodes doesn't require an update either
|
||||
|
||||
|
||||
-- update application type in acs_objects
|
||||
update acs_objects
|
||||
set (object_type,default_domain_class) =
|
||||
(replace(object_type,'arsdigita.aplaws', 'arsdigita.bundle') ,
|
||||
replace(default_domain_class,'arsdigita.aplaws', 'arsdigita.bundle') )
|
||||
where object_type like '%arsdigita.aplaws%' ;
|
||||
|
|
@ -0,0 +1,26 @@
|
|||
--
|
||||
-- Copyright (C) 2011 Peter Boy All Rights Reserved.
|
||||
--
|
||||
-- This library is free software; you can redistribute it and/or
|
||||
-- modify it under the terms of the GNU Lesser General Public License
|
||||
-- as published by the Free Software Foundation; either version 2.1 of
|
||||
-- the License, or (at your option) any later version.
|
||||
--
|
||||
-- This library 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
|
||||
-- Lesser General Public License for more details.
|
||||
--
|
||||
-- You should have received a copy of the GNU Lesser General Public
|
||||
-- License along with this library; if not, write to the Free Software
|
||||
-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
--
|
||||
-- $DateTime: 2011/11/10 23:15:09 $
|
||||
-- $Id: oracle-se-0.0.0-6.6.0 pboy $
|
||||
|
||||
-- Internal use at Bremen University only!
|
||||
-- Updates various university sites from als ccm-xxx-aplaws to scm-sci-bundle
|
||||
|
||||
@@ default/0.0.0-6.6.0/upd_system_tables.sql
|
||||
@@ default/0.0.0-6.6.0/upd_nav_templates_table.sql
|
||||
|
||||
|
|
@ -0,0 +1,31 @@
|
|||
--
|
||||
-- Copyright (C) 2011 Peter Boy All Rights Reserved.
|
||||
--
|
||||
-- This library is free software; you can redistribute it and/or
|
||||
-- modify it under the terms of the GNU Lesser General Public License
|
||||
-- as published by the Free Software Foundation; either version 2.1 of
|
||||
-- the License, or (at your option) any later version.
|
||||
--
|
||||
-- This library 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
|
||||
-- Lesser General Public License for more details.
|
||||
--
|
||||
-- You should have received a copy of the GNU Lesser General Public
|
||||
-- License along with this library; if not, write to the Free Software
|
||||
-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
--
|
||||
-- $DateTime: 2011/11/10 23:15:09 $
|
||||
-- $Id: postgres-0.0.0-6.6.0 pboy $
|
||||
|
||||
\echo Red Hat Enterprise ccm-sci-bundle 0.0.0 -> 6.6.0 Upgrade Script (PostgreSQL)
|
||||
|
||||
-- Internal use at Bremen University only!
|
||||
-- Updates various university sites from als ccm-xxx-aplaws to scm-sci-bundle
|
||||
|
||||
begin;
|
||||
|
||||
\i default/0.0.0-6.6.0/upd_system_tables.sql
|
||||
\i default/0.0.0-6.6.0/upd_nav_templates_table.sql
|
||||
|
||||
commit;
|
||||
|
|
@ -0,0 +1,47 @@
|
|||
# -*- text -*-
|
||||
# This file locates stylesheets, if you are using the
|
||||
# "PatternStylesheetResolver". Please read the Javadoc for that file for
|
||||
# the full story.
|
||||
|
||||
# Output type is for things such as text/javascript
|
||||
http://::host::/resource/::webapp::/__ccm__/apps/::application::/xsl/::url::-::outputtype::-::locale::.xsl
|
||||
http://::host::/resource/::webapp::/__ccm__/apps/::application::/xsl/::url::-::outputtype::.xsl
|
||||
|
||||
# Grabs custom item xsl for CMS
|
||||
http://::host::/__ccm__/servlet/content-item/index.xsl?oid=::item_template_oid::&delegated=::item_delegated_url::
|
||||
|
||||
# added by Quasimodo
|
||||
# Theme with single entry point (e.g Mandalay)
|
||||
http://::host::/resource/::webapp::/themes/::themedir::/::theme::/start.xsl
|
||||
|
||||
# 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
|
||||
# XXX change ROOT -> ccm-ldn-aplaws
|
||||
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
|
||||
http://::host::/resource/ROOT/__ccm__/themes/aplaws-generic/::application::-::url::-::prefix::-::locale::.xsl
|
||||
http://::host::/resource/ROOT/__ccm__/themes/aplaws-generic/::application::-::url::-::prefix::.xsl
|
||||
|
||||
# APLAWS generic default, with locale
|
||||
# XXX change ROOT -> ccm-ldn-aplaws
|
||||
http://::host::/resource/ROOT/themes/static/aplaws-generic/::application::-::url::-::locale::.xsl
|
||||
http://::host::/resource/ROOT/themes/static/aplaws-generic/::application::-::url::.xsl
|
||||
http://::host::/resource/ROOT/__ccm__/themes/aplaws-generic/::application::-::url::-::locale::.xsl
|
||||
http://::host::/resource/ROOT/__ccm__/themes/aplaws-generic/::application::-::url::.xsl
|
||||
|
||||
# Global default, from application's own web app
|
||||
http://::host::/resource/::webapp::/__ccm__/apps/::application::/xsl/::url::-::locale::.xsl
|
||||
http://::host::/resource/::webapp::/__ccm__/apps/::application::/xsl/::url::.xsl
|
||||
|
||||
# Global default, from application's own web app - relocated version >= 6.6.1
|
||||
http://::host::/resource/ROOT/themes/heirloom/apps/::application::/xsl/::url::-::locale::.xsl
|
||||
http://::host::/resource/ROOT/themes/heirloom/apps/::application::/xsl/::url::.xsl
|
||||
http://::host::/resource/::webapp::/themes/heirloom/apps/::application::/xsl/::url::-::locale::.xsl
|
||||
http://::host::/resource/::webapp::/themes/heirloom/apps/::application::/xsl/::url::.xsl
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<registry>
|
||||
<!-- Config specifies the name of the class which handles configuration
|
||||
properties and the directory and file name of the config parameters
|
||||
in registry. -->
|
||||
<!-- currently nothing to config
|
||||
<config class="com.arsdigita.bundle.BundleConfig"
|
||||
storage="ccm-sci-bundle/bundle.properties"/>
|
||||
-->
|
||||
|
||||
</registry>
|
||||
|
|
@ -0,0 +1,22 @@
|
|||
<load>
|
||||
<requires>
|
||||
<table name="inits"/>
|
||||
<table name="acs_objects"/>
|
||||
<initializer class="com.arsdigita.core.Initializer"/>
|
||||
<table name="cms_items"/>
|
||||
<initializer class="com.arsdigita.cms.Initializer"/>
|
||||
<initializer class="com.arsdigita.london.terms.Initializer"/>
|
||||
<initializer class="com.arsdigita.london.subsite.Initializer"/>
|
||||
<initializer class="com.arsdigita.portalworkspace.Initializer"/>
|
||||
<initializer class="com.arsdigita.london.search.Initializer"/>
|
||||
</requires>
|
||||
<provides>
|
||||
<!--
|
||||
<table name=""/>
|
||||
-->
|
||||
<initializer class="com.arsdigita.bundle.Initializer"/>
|
||||
</provides>
|
||||
<scripts>
|
||||
<data class="com.arsdigita.bundle.Loader"/>
|
||||
</scripts>
|
||||
</load>
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
<upgrade>
|
||||
<version from="0.0.0" to="6.6.0">
|
||||
<script sql="ccm-sci-bundle/upgrade/::database::-0.0.0-6.6.0.sql"/>
|
||||
</version>
|
||||
</upgrade>
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
/*
|
||||
* Copyright (C) 2002-2005 Runtime Collective Ltd. All Rights Reserved.
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public License
|
||||
* as published by the Free Software Foundation; either version 2.1 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This library 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
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
package com.arsdigita.aplaws;
|
||||
|
||||
import org.apache.log4j.Logger;
|
||||
|
||||
public class Aplaws {
|
||||
public static final String versionId =
|
||||
"$Id: Aplaws.java 1297 2006-08-25 18:17:50Z apevec $";
|
||||
|
||||
private static final Logger LOG = Logger.getLogger(Aplaws.class);
|
||||
|
||||
private static AplawsConfig aplawsConfig = new AplawsConfig();
|
||||
|
||||
static {
|
||||
aplawsConfig.load();
|
||||
}
|
||||
|
||||
public static final AplawsConfig getAplawsConfig() {
|
||||
return aplawsConfig;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,51 @@
|
|||
/*
|
||||
* Copyright (C) 2002-2005 Runtime Collective Ltd. All Rights Reserved.
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public License
|
||||
* as published by the Free Software Foundation; either version 2.1 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This library 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
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
package com.arsdigita.aplaws;
|
||||
|
||||
import com.arsdigita.runtime.AbstractConfig;
|
||||
import com.arsdigita.util.parameter.Parameter;
|
||||
import com.arsdigita.util.parameter.BooleanParameter;
|
||||
import com.arsdigita.util.parameter.StringParameter;
|
||||
|
||||
/**
|
||||
* AplawsConfig
|
||||
*
|
||||
* @version $Revision: 1.2 $ $Date: 2005/01/07 19:01:40 $
|
||||
* @version $Id: AplawsConfig.java 1565 2007-04-18 16:46:14Z apevec $
|
||||
*/
|
||||
public class AplawsConfig extends AbstractConfig {
|
||||
|
||||
private final Parameter m_ajaxExpandAllBranches = new BooleanParameter(
|
||||
"com.arsdigita.aplaws.ajax_expand_on_all_branches",
|
||||
Parameter.OPTIONAL,
|
||||
Boolean.FALSE);
|
||||
|
||||
|
||||
|
||||
public AplawsConfig() {
|
||||
register(m_ajaxExpandAllBranches);
|
||||
loadInfo();
|
||||
}
|
||||
|
||||
|
||||
|
||||
public boolean ajaxExpandAllBranches () {
|
||||
return ((Boolean)get(m_ajaxExpandAllBranches)).booleanValue();
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
com.arsdigita.aplaws.ajax_expand_on_all_branches.title=Use Ajax on all branch expansions
|
||||
com.arsdigita.aplaws.ajax_expand_on_all_branches.purpose=Use Ajax on all branches, or bring back entire subtree on expansion of top level root
|
||||
com.arsdigita.aplaws.ajax_expand_on_all_branches.example=true|false
|
||||
com.arsdigita.aplaws.ajax_expand_on_all_branches.format=[boolean]
|
||||
|
|
@ -0,0 +1,58 @@
|
|||
/*
|
||||
* Copyright (C) 2001-2004 Red Hat Inc. All Rights Reserved.
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public License
|
||||
* as published by the Free Software Foundation; either version 2.1 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This library 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
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
package com.arsdigita.bundle;
|
||||
|
||||
import com.arsdigita.categorization.Categorization;
|
||||
import com.arsdigita.runtime.CompoundInitializer;
|
||||
import com.arsdigita.runtime.DomainInitEvent;
|
||||
import com.arsdigita.templating.PatternStylesheetResolver;
|
||||
|
||||
import com.arsdigita.london.terms.TermCategoryListener;
|
||||
|
||||
import org.apache.log4j.Logger;
|
||||
|
||||
|
||||
/**
|
||||
* The CCM bundle initializer.
|
||||
*
|
||||
* @version $Id: Initializer.java 1232 2006-06-22 12:01:30Z sskracic $
|
||||
*/
|
||||
public class Initializer extends CompoundInitializer {
|
||||
|
||||
private static Logger s_log = Logger.getLogger
|
||||
(Initializer.class.getName());
|
||||
|
||||
|
||||
/**
|
||||
* Package Implementation of {@link Initializer#init(DomainInitEvent)}.
|
||||
*
|
||||
* @param evt
|
||||
*/
|
||||
@Override
|
||||
public void init(DomainInitEvent evt) {
|
||||
super.init(evt);
|
||||
|
||||
Categorization.addCategoryListener(new TermCategoryListener());
|
||||
|
||||
PatternStylesheetResolver.registerPatternGenerator(
|
||||
"webapp",
|
||||
new WebAppPatternGenerator()
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,307 @@
|
|||
/*
|
||||
* Copyright (C) 2001-2004 Red Hat Inc. All Rights Reserved.
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public License
|
||||
* as published by the Free Software Foundation; either version 2.1 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This library 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
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
package com.arsdigita.bundle;
|
||||
|
||||
import com.arsdigita.london.terms.Domain;
|
||||
import com.arsdigita.london.terms.importer.Parser;
|
||||
|
||||
import com.arsdigita.categorization.Category;
|
||||
import com.arsdigita.categorization.RootCategoryCollection;
|
||||
import com.arsdigita.cms.ContentSection;
|
||||
import com.arsdigita.cms.SecurityManager;
|
||||
import com.arsdigita.cms.ui.role.RoleFactory;
|
||||
import com.arsdigita.loader.PackageLoader;
|
||||
import com.arsdigita.kernel.Role;
|
||||
import com.arsdigita.kernel.RoleCollection;
|
||||
import com.arsdigita.kernel.permissions.PrivilegeDescriptor;
|
||||
import com.arsdigita.persistence.DataQuery;
|
||||
import com.arsdigita.runtime.ScriptContext;
|
||||
import com.arsdigita.util.parameter.Parameter;
|
||||
import com.arsdigita.util.parameter.StringArrayParameter;
|
||||
import com.arsdigita.web.Application;
|
||||
|
||||
import org.apache.log4j.Logger;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.Iterator;
|
||||
import java.util.Set;
|
||||
import java.util.StringTokenizer;
|
||||
|
||||
/**
|
||||
* Loader executes nonrecurring at install time and loads (installs and
|
||||
* initializes) the ScientificCMS integration module persistently into database.
|
||||
*
|
||||
* Creates category domains in the terms application according to
|
||||
* configuration files and adds jsp templates to navigation.
|
||||
*
|
||||
* @author Justin Ross <jross@redhat.com>
|
||||
* @author Peter Boy <pboy@barkhof.uni-bremen.de>
|
||||
* @version $Id: Loader.java 755 2005-09-02 13:42:47Z sskracic $
|
||||
*/
|
||||
public class Loader extends PackageLoader {
|
||||
|
||||
/** Logger instance for debugging */
|
||||
private static final Logger s_log = Logger.getLogger(Loader.class);
|
||||
|
||||
/**
|
||||
* List of comma separated sets of application instance specifications,
|
||||
* optionally used to create arbitrary custom application instances
|
||||
* according to local sites requirements.
|
||||
* It's the developers / administrators responsibility to ensure all
|
||||
* necessary application types have been created previously.
|
||||
* Example:
|
||||
* "FULL_QUALIFIED_CLASS_NAME : URL : TITLE ,
|
||||
* FULL_QUALIFIED_CLASS_NAME : URL : TITLE ,
|
||||
* .... ,
|
||||
* FULL_QUALIFIED_CLASS_NAME : URL : TITLE "
|
||||
*/
|
||||
private Parameter m_customApplicationInstances = new StringArrayParameter(
|
||||
"com.arsdigita.bundle.local_app_instances",
|
||||
Parameter.OPTIONAL, null
|
||||
);
|
||||
|
||||
/**
|
||||
* Comma separated list of fully qualified filenames, each file containing
|
||||
* a set of Terms domain catagories definitions. These form an initial set
|
||||
* of category tree(s), at minimum for navigation, optionally additional
|
||||
* domains.
|
||||
* Files are stored as part of the jar, so classloader can find them.
|
||||
*/
|
||||
private Parameter m_categoryFiles = new StringArrayParameter(
|
||||
"com.arsdigita.bundle.category_files",
|
||||
Parameter.REQUIRED,new String[]{
|
||||
"bundle/categories/sci-nav-domain-1.00.xml",
|
||||
"bundle/categories/sci-nav-hierarchy-1.00.xml" }
|
||||
);
|
||||
|
||||
/**
|
||||
* List of comma separated sets of domain mappings.
|
||||
* It's the developers / administrators responsibility to ensure all
|
||||
* necessary category domains have been imported previously and are spelled
|
||||
* correctly. The list may contain set for different domain key and/or
|
||||
* different applications and contexts. If an domain key requires several
|
||||
* applications, repeat the key and specify a different application and/or
|
||||
* context
|
||||
* Example:
|
||||
* "DOMAIN_KEY_1 : APP_URL_1 [: CONTEXT_1] ,
|
||||
* DOMAIN_KEY_1 : APP_URL_2 [: CONTEXT_1] ,
|
||||
* DOMAIN_KEY_2 : APP_URL_1 [: CONTEXT] ,
|
||||
* .... ,
|
||||
* DOMAIN_KEY_n : APP_URL_n [: CONTEXT_n] "
|
||||
*
|
||||
*/
|
||||
private Parameter m_domainMappings = new StringArrayParameter(
|
||||
"com.arsdigita.bundle.domain_mappings",
|
||||
Parameter.REQUIRED,new String[]{ "STD-NAV:/navigation/",
|
||||
"STD-NAV:/content/",
|
||||
"STD-NAV:/portal/" }
|
||||
);
|
||||
|
||||
|
||||
/**
|
||||
* Constructor
|
||||
*/
|
||||
public Loader() {
|
||||
|
||||
// Register defined parameters to the context by adding
|
||||
// the parameter to a map of parameters
|
||||
register(m_customApplicationInstances);
|
||||
register(m_categoryFiles);
|
||||
register(m_domainMappings);
|
||||
|
||||
}
|
||||
|
||||
|
||||
public void run(final ScriptContext ctx) {
|
||||
|
||||
/* Create site specific custom applications instances of arbitrary
|
||||
* type specified by optional configuration parameter.
|
||||
* Typically used to create additional navigation instances for alternativ
|
||||
* navigation tree(s) or additional content sections.
|
||||
*/
|
||||
String[] customApplicationInstances = (String[]) get(m_customApplicationInstances);
|
||||
if ( customApplicationInstances != null) {
|
||||
|
||||
for (int i = 0 ; i < customApplicationInstances.length ; i++) {
|
||||
|
||||
final String aCustomApplicationInstance = customApplicationInstances[i];
|
||||
|
||||
StringTokenizer tok = new StringTokenizer( aCustomApplicationInstance, ":" );
|
||||
String type = null; // full qualified class name
|
||||
String url = null; // url fragment (last part)
|
||||
String title = null; // title of new application instance
|
||||
String parent = null; // parent class name
|
||||
for ( int j = 0; tok.hasMoreTokens(); j++ ) {
|
||||
if ( 0 == j ) {
|
||||
type = tok.nextToken();
|
||||
} else if ( 1 == j ) {
|
||||
url = tok.nextToken();
|
||||
} else if ( 2 == j ) {
|
||||
title = tok.nextToken();
|
||||
} else if ( 3 == j ) {
|
||||
parent = tok.nextToken();
|
||||
} else {
|
||||
parent = null;
|
||||
}
|
||||
}
|
||||
|
||||
Application.createApplication(type, url, title, null);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
/* Import from the categories definition files: Create Terms domains
|
||||
* and populate them with categories
|
||||
* (alternatively this could be delegated to terms.Loader because it's
|
||||
* all Terms)
|
||||
* Creates one or more Terms domains, but NO domain mapping for navigation.
|
||||
* Therefore, registerDomains is required for /navigation/ otherwise
|
||||
* the systems throws NPE for ccm/navigation.
|
||||
*/
|
||||
String[] files = (String[]) get(m_categoryFiles);
|
||||
final Parser parser = new Parser();
|
||||
// for each filename in the array of files containing categories
|
||||
for (int i = 0 ; i < files.length ; i++) {
|
||||
final String file = files[i];
|
||||
if (s_log.isInfoEnabled()) {
|
||||
s_log.info("Process " + file);
|
||||
}
|
||||
/* Import a Terms category domain. */
|
||||
parser.parse(Thread.currentThread().getContextClassLoader().
|
||||
getResourceAsStream(file));
|
||||
}
|
||||
|
||||
|
||||
/* Creates domain mappings according to configuration file. By default
|
||||
* at least one domain mapping for standard navigation is created,
|
||||
* otherwise navigation wouldn't work.
|
||||
* IOt is the developers / administrators responsibility that KEY is
|
||||
* existent, i.e. previously importet in the previous step.
|
||||
*/
|
||||
String[] domainMappings = (String[]) get(m_domainMappings);
|
||||
for (int i = 0 ; i < domainMappings.length ; i++) {
|
||||
|
||||
final String aDomainMapping = domainMappings[i];
|
||||
|
||||
StringTokenizer tok = new StringTokenizer( aDomainMapping, ":" );
|
||||
String key = null;
|
||||
String app = null;
|
||||
String context = null;
|
||||
for ( int j = 0; tok.hasMoreTokens(); j++ ) {
|
||||
if ( 0 == j ) {
|
||||
key = tok.nextToken();
|
||||
} else if ( 1 == j ) {
|
||||
app = tok.nextToken();
|
||||
} else if ( 2 == j ) {
|
||||
context = tok.nextToken();
|
||||
} else {
|
||||
context = null;
|
||||
}
|
||||
}
|
||||
|
||||
registerDomain(key, app, context);
|
||||
|
||||
}
|
||||
|
||||
|
||||
// registerServicesTemplate("/services/"); wird nicht gebraucht
|
||||
|
||||
} // end run method
|
||||
|
||||
|
||||
// public void registerServicesTemplate(String appURL) {
|
||||
// Application app = Application.retrieveApplicationForPath(appURL);
|
||||
// Assert.exists(app, Application.class);
|
||||
// Category root = Category.getRootForObject(app);
|
||||
// Assert.exists(root, Category.class);
|
||||
//
|
||||
// Template template = Template.create(
|
||||
// "APLAWS Services",
|
||||
// "APLAWS ESD Toolkit Services",
|
||||
// "/packages/navigation/templates/aplaws-services.jsp");
|
||||
//
|
||||
// new TemplateMapping( template,
|
||||
// root,
|
||||
// Template.DEFAULT_DISPATCHER_CONTEXT,
|
||||
// Template.DEFAULT_USE_CONTEXT );
|
||||
// }
|
||||
|
||||
|
||||
/**
|
||||
* Determines the Terms domain using domainKey as well as the application
|
||||
* instance using appURL and then creates a domain mapping using context
|
||||
* as domain context.
|
||||
*
|
||||
* Uses Package com.arsdigita.london.terms.Domain (!)
|
||||
*
|
||||
* @param domainKey
|
||||
* @param appURL
|
||||
* @param context
|
||||
*/
|
||||
public void registerDomain(String domainKey,
|
||||
String appURL,
|
||||
String context) {
|
||||
if (s_log.isDebugEnabled()) {
|
||||
s_log.debug("Mapping domain " + domainKey + " to app " + appURL
|
||||
+ " in context " + context);
|
||||
}
|
||||
|
||||
/* Determine Domain and Application objects, both MUST exist! */
|
||||
Domain domain = Domain.retrieve(domainKey);
|
||||
Application app = Application.retrieveApplicationForPath(appURL);
|
||||
|
||||
/* Create domain mapping */
|
||||
domain.setAsRootForObject(app, context);
|
||||
|
||||
/* Create permissions and roles for content-center applications only */
|
||||
if (app instanceof ContentSection) {
|
||||
RoleCollection coll = ((ContentSection) app).getStaffGroup().getOrderedRoles();
|
||||
Set adminRoles = new HashSet();
|
||||
Set categorizeRoles = new HashSet();
|
||||
while (coll.next()) {
|
||||
Role role = coll.getRole();
|
||||
final DataQuery privs = RoleFactory.getRolePrivileges(
|
||||
app.getID(), role.getGroup().getID());
|
||||
while (privs.next()) {
|
||||
String priv = (String) privs.get(RoleFactory.PRIVILEGE);
|
||||
if (priv.equals(SecurityManager.CMS_CATEGORY_ADMIN)) {
|
||||
adminRoles.add(role);
|
||||
} else if (priv.equals(SecurityManager.CMS_CATEGORIZE_ITEMS)) {
|
||||
categorizeRoles.add(role);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
RootCategoryCollection catCollection = Category.getRootCategories(((ContentSection) app));
|
||||
while (catCollection.next()) {
|
||||
Iterator adminIter = adminRoles.iterator();
|
||||
while (adminIter.hasNext()) {
|
||||
((Role) adminIter.next()).grantPermission(catCollection.getCategory(),
|
||||
PrivilegeDescriptor.ADMIN);
|
||||
}
|
||||
Iterator categorizeIter = categorizeRoles.iterator();
|
||||
while (categorizeIter.hasNext()) {
|
||||
((Role) categorizeIter.next()).grantPermission(catCollection.getCategory(),
|
||||
Category.MAP_DESCRIPTOR);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,374 @@
|
|||
/*
|
||||
* Copyright (C) 2001-2004 Red Hat Inc. All Rights Reserved.
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public License
|
||||
* as published by the Free Software Foundation; either version 2.1 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This library 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
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
package com.arsdigita.bundle;
|
||||
|
||||
import com.arsdigita.xml.Element;
|
||||
|
||||
import com.arsdigita.persistence.metadata.ObjectType;
|
||||
import com.arsdigita.persistence.metadata.Property;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Stack;
|
||||
import java.math.BigDecimal;
|
||||
import org.apache.log4j.Logger;
|
||||
|
||||
public class ObjectTypeSchemaGenerator extends ObjectTypeTraversal {
|
||||
|
||||
private static final Logger logger = Logger.getLogger(ObjectTypeSchemaGenerator.class);
|
||||
private boolean m_wrapRoot = false;
|
||||
private boolean m_wrapObjects = false;
|
||||
private boolean m_wrapAttributes = false;
|
||||
private Stack m_history = new Stack();
|
||||
private HashMap m_elements = new HashMap();
|
||||
// The xs:element
|
||||
private Element m_element;
|
||||
// The (optional) xs:complexType
|
||||
private Element m_type;
|
||||
// The (optional) xs:sequence
|
||||
private Element m_sequence;
|
||||
// The (optional property
|
||||
private Property m_property;
|
||||
private Stack m_properties = new Stack();
|
||||
private Element m_root;
|
||||
private String m_rootName;
|
||||
public static final String SCHEMA_PREFIX = "xs:";
|
||||
public static final String SCHEMA_NS =
|
||||
"http://www.w3.org/2001/XMLSchema";
|
||||
private static HashMap s_types = new HashMap();
|
||||
|
||||
static {
|
||||
logger.debug("Static initalizer starting...");
|
||||
s_types.put(String.class, "xs:string");
|
||||
s_types.put(Boolean.class, "xs:boolean");
|
||||
s_types.put(Integer.class, "xs:integer");
|
||||
s_types.put(BigDecimal.class, "xs:double");
|
||||
logger.debug("Static initalizer finished.");
|
||||
}
|
||||
|
||||
protected static String lookupType(Class klass) {
|
||||
if (s_types.containsKey(klass)) {
|
||||
return (String) s_types.get(klass);
|
||||
}
|
||||
return "xs:string";
|
||||
}
|
||||
|
||||
public static void registerType(Class klass, String type) {
|
||||
s_types.put(klass, type);
|
||||
}
|
||||
|
||||
public ObjectTypeSchemaGenerator(String rootName,
|
||||
String namespace) {
|
||||
m_root = new Element(SCHEMA_PREFIX + "schema",
|
||||
SCHEMA_NS);
|
||||
m_rootName = rootName;
|
||||
|
||||
// Set the namespace for nodes defined by the schema
|
||||
m_root.addAttribute("targetNamespace", namespace);
|
||||
// Set the default namespace for unqualified nodes
|
||||
m_root.addAttribute("xmlns", namespace);
|
||||
// All nodes in an instance doc conforming to the schema
|
||||
// must be qualified
|
||||
m_root.addAttribute("elementFormDefault", "qualified");
|
||||
}
|
||||
|
||||
public Element getRoot() {
|
||||
return m_root;
|
||||
}
|
||||
|
||||
/**
|
||||
* Determines XML output for root object.
|
||||
* If set to true a separate element will
|
||||
* be output for the root object, if false,
|
||||
* then the element passed into the constructor
|
||||
* will be used.
|
||||
*/
|
||||
public void setWrapRoot(boolean value) {
|
||||
m_wrapRoot = value;
|
||||
}
|
||||
|
||||
/**
|
||||
* Determines XML output used for objects.
|
||||
* If set to true, then a wrapper XML element
|
||||
* will be generated for the association,
|
||||
* and then individual elements generated for
|
||||
* each object. If false then no wrapper
|
||||
* XML element will be produced.
|
||||
*/
|
||||
public void setWrapObjects(boolean value) {
|
||||
m_wrapObjects = value;
|
||||
}
|
||||
|
||||
/**
|
||||
* Determines XML output used for scalar
|
||||
* attributes. If set to true, then each
|
||||
* attribute is output as a separate element,
|
||||
* otherwise, attributes are output as simple
|
||||
* attributes.
|
||||
*/
|
||||
public void setWrapAttributes(boolean value) {
|
||||
m_wrapAttributes = value;
|
||||
}
|
||||
|
||||
/**
|
||||
* Method called when the processing of an object
|
||||
* starts
|
||||
*/
|
||||
protected void beginObject(ObjectType obj,
|
||||
String path) {
|
||||
// XXX deal with revisited objects - xs:choice possibly
|
||||
|
||||
if (m_type != null && m_sequence == null) {
|
||||
Element sequence = m_type.newChildElement(SCHEMA_PREFIX + "sequence",
|
||||
SCHEMA_NS);
|
||||
m_sequence = sequence;
|
||||
}
|
||||
|
||||
Element parent;
|
||||
String name;
|
||||
if (m_element == null) {
|
||||
if (m_wrapRoot) {
|
||||
Element element = m_root.newChildElement(SCHEMA_PREFIX
|
||||
+ "element",
|
||||
SCHEMA_NS);
|
||||
element.addAttribute("name", m_rootName);
|
||||
|
||||
Element type = element.newChildElement(SCHEMA_PREFIX
|
||||
+ "complexType",
|
||||
SCHEMA_NS);
|
||||
Element sequence = type.newChildElement(SCHEMA_PREFIX
|
||||
+ "sequence",
|
||||
SCHEMA_NS);
|
||||
|
||||
parent = sequence;
|
||||
name = nameFromPath(path);
|
||||
} else {
|
||||
parent = m_root;
|
||||
name = m_rootName;
|
||||
}
|
||||
} else {
|
||||
parent = m_sequence;
|
||||
if (m_wrapObjects) {
|
||||
name = "object";
|
||||
} else {
|
||||
name = nameFromPath(path);
|
||||
}
|
||||
}
|
||||
Element element = parent.newChildElement(SCHEMA_PREFIX + "element",
|
||||
SCHEMA_NS);
|
||||
element.addAttribute("name", name);
|
||||
|
||||
if (m_property != null) {
|
||||
if (m_property.isNullable()) {
|
||||
element.addAttribute("minOccurs", "0");
|
||||
}
|
||||
if (m_property.isCollection()) {
|
||||
element.addAttribute("maxOccurs", "unbounded");
|
||||
}
|
||||
}
|
||||
|
||||
Element type = element.newChildElement(SCHEMA_PREFIX + "complexType",
|
||||
SCHEMA_NS);
|
||||
|
||||
Element oid = type.newChildElement(SCHEMA_PREFIX + "attribute",
|
||||
SCHEMA_NS);
|
||||
oid.addAttribute("name", "oid");
|
||||
oid.addAttribute("type", "xs:string");
|
||||
|
||||
// Add to the path -> element map, not that we use this info yet
|
||||
m_elements.put(path, element);
|
||||
|
||||
// Preserve context
|
||||
m_history.push(new Element[]{m_element, m_type, m_sequence});
|
||||
|
||||
m_element = element;
|
||||
m_type = type;
|
||||
m_sequence = null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Method called when the procesing of an object
|
||||
* completes
|
||||
*/
|
||||
protected void endObject(ObjectType obj,
|
||||
String path) {
|
||||
Element[] saved = (Element[]) m_history.pop();
|
||||
m_element = saved[0];
|
||||
m_type = saved[1];
|
||||
m_sequence = saved[2];
|
||||
}
|
||||
|
||||
/**
|
||||
* Method called when an attribute is encountered
|
||||
*/
|
||||
protected void handleAttribute(ObjectType obj,
|
||||
String path,
|
||||
Property property) {
|
||||
if (m_wrapAttributes) {
|
||||
if (m_sequence == null) {
|
||||
Element sequence = m_type.newChildElement(SCHEMA_PREFIX
|
||||
+ "sequence",
|
||||
SCHEMA_NS);
|
||||
m_sequence = sequence;
|
||||
}
|
||||
|
||||
Element element = new Element(SCHEMA_PREFIX + "element",
|
||||
SCHEMA_NS);
|
||||
element.addAttribute("name", property.getName());
|
||||
// XXX pdl type -> xs type mapping
|
||||
element.addAttribute("type", lookupType(property.getJavaClass()));
|
||||
|
||||
if (property.isNullable()) {
|
||||
element.addAttribute("minOccurs", "0");
|
||||
}
|
||||
|
||||
// Add to element
|
||||
m_sequence.addContent(element);
|
||||
|
||||
// Add to the path -> element map
|
||||
m_elements.put(path, element);
|
||||
} else {
|
||||
Element element = new Element(SCHEMA_PREFIX + "attribute",
|
||||
SCHEMA_NS);
|
||||
element.addAttribute("name", property.getName());
|
||||
// XXX pdl type -> xs type mapping
|
||||
element.addAttribute("type", lookupType(property.getJavaClass()));
|
||||
|
||||
if (property.isRequired()) {
|
||||
element.addAttribute("use", "required");
|
||||
}
|
||||
|
||||
// Add to element
|
||||
m_type.addContent(element);
|
||||
|
||||
// Add to the path -> element map
|
||||
m_elements.put(path, element);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Method called when the processing of a role
|
||||
* starts
|
||||
*/
|
||||
protected void beginRole(ObjectType obj,
|
||||
String path,
|
||||
Property property) {
|
||||
if (m_wrapObjects) {
|
||||
if (m_sequence == null) {
|
||||
Element sequence = m_type.newChildElement(SCHEMA_PREFIX
|
||||
+ "sequence",
|
||||
SCHEMA_NS);
|
||||
m_sequence = sequence;
|
||||
}
|
||||
|
||||
Element element = m_sequence.newChildElement(SCHEMA_PREFIX
|
||||
+ "element",
|
||||
SCHEMA_NS);
|
||||
element.addAttribute("name", property.getName());
|
||||
if (property.isNullable()) {
|
||||
element.addAttribute("minOccurs", "0");
|
||||
}
|
||||
|
||||
Element type = element.newChildElement(SCHEMA_PREFIX + "complexType",
|
||||
SCHEMA_NS);
|
||||
Element sequence = type.newChildElement(SCHEMA_PREFIX + "sequence",
|
||||
SCHEMA_NS);
|
||||
|
||||
// Preserve context
|
||||
m_history.push(new Element[]{m_element, m_type, m_sequence});
|
||||
|
||||
m_element = element;
|
||||
m_type = type;
|
||||
m_sequence = sequence;
|
||||
}
|
||||
m_properties.push(m_property);
|
||||
m_property = property;
|
||||
}
|
||||
|
||||
/**
|
||||
* Method called when the procesing of a role
|
||||
* completes
|
||||
*/
|
||||
protected void endRole(ObjectType obj,
|
||||
String path,
|
||||
Property property) {
|
||||
if (m_wrapObjects) {
|
||||
Element[] saved = (Element[]) m_history.pop();
|
||||
m_element = saved[0];
|
||||
m_type = saved[1];
|
||||
m_sequence = saved[2];
|
||||
}
|
||||
m_property = (Property) m_properties.pop();
|
||||
}
|
||||
|
||||
/**
|
||||
* Method called when the processing of an association
|
||||
* starts
|
||||
*/
|
||||
protected void beginAssociation(ObjectType obj,
|
||||
String path,
|
||||
Property property) {
|
||||
if (m_wrapObjects) {
|
||||
if (m_sequence == null) {
|
||||
Element sequence = m_type.newChildElement(SCHEMA_PREFIX
|
||||
+ "sequence",
|
||||
SCHEMA_NS);
|
||||
m_sequence = sequence;
|
||||
}
|
||||
|
||||
Element element = m_sequence.newChildElement(SCHEMA_PREFIX
|
||||
+ "element",
|
||||
SCHEMA_NS);
|
||||
element.addAttribute("name", property.getName());
|
||||
if (property.isNullable()) {
|
||||
element.addAttribute("minOccurs", "0");
|
||||
}
|
||||
|
||||
Element type = element.newChildElement(SCHEMA_PREFIX + "complexType",
|
||||
SCHEMA_NS);
|
||||
Element sequence = type.newChildElement(SCHEMA_PREFIX + "sequence",
|
||||
SCHEMA_NS);
|
||||
|
||||
// Preserve context
|
||||
m_history.push(new Element[]{m_element, m_type, m_sequence});
|
||||
|
||||
m_element = element;
|
||||
m_type = type;
|
||||
m_sequence = sequence;
|
||||
}
|
||||
m_properties.push(m_property);
|
||||
m_property = property;
|
||||
}
|
||||
|
||||
/**
|
||||
* Method called when the procesing of an association
|
||||
* completes
|
||||
*/
|
||||
protected void endAssociation(ObjectType obj,
|
||||
String path,
|
||||
Property property) {
|
||||
if (m_wrapObjects) {
|
||||
Element[] saved = (Element[]) m_history.pop();
|
||||
m_element = saved[0];
|
||||
m_type = saved[1];
|
||||
m_sequence = saved[2];
|
||||
}
|
||||
m_property = (Property) m_properties.pop();
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,358 @@
|
|||
/*
|
||||
* Copyright (C) 2001-2004 Red Hat Inc. All Rights Reserved.
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public License
|
||||
* as published by the Free Software Foundation; either version 2.1 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This library 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
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
package com.arsdigita.bundle;
|
||||
|
||||
import com.arsdigita.util.Assert;
|
||||
|
||||
import com.arsdigita.persistence.metadata.ObjectType;
|
||||
import com.arsdigita.persistence.metadata.Property;
|
||||
import com.arsdigita.persistence.metadata.MetadataRoot;
|
||||
|
||||
import java.util.Iterator;
|
||||
import java.util.HashMap;
|
||||
|
||||
import org.apache.log4j.Logger;
|
||||
|
||||
// XXX this class is pretty similar to DomainObjectTraversal
|
||||
// and it would be nice to figure out a way to let them share
|
||||
// some of their logic (provided it didn't cripple / obfuscate
|
||||
// the API).
|
||||
|
||||
// At minimum the process for registering & looking up hierachical
|
||||
// adapters can be shared. Also the mangling of names / paths.
|
||||
|
||||
|
||||
/**
|
||||
* <p>This class provides a general purpose framework for iterating
|
||||
* over a domain object's properties, processing attributes and
|
||||
* traversing associations as required.</p>
|
||||
*
|
||||
* <p>Subclasses should implement the startXXX and endXXX methods to
|
||||
* provide whatever processing logic they require upon encountering
|
||||
* attributes, roles, associations and objects.</p>
|
||||
*
|
||||
* <p>The {@link com.arsdigita.domain.ObjectTypeTraversalAdapter}
|
||||
* provides a means to control which properties are processed and,
|
||||
* most importantly, which associations are traversed. When
|
||||
* registering an adapter, a 'use context' is supplied allowing
|
||||
* different adapters to be used according to the requirements of any
|
||||
* implementing subclass. It is recommended that the use context be
|
||||
* based on the fully qualified name of the class using
|
||||
* ObjectTypeTraversal, e.g.,
|
||||
* com.arsdigita.cms.ui.ObjectTypeRenderer.</p>
|
||||
*
|
||||
* <p>The path argument provided to the adapter and the startXXX ad
|
||||
* endXXX methods indicates which associations are currently being
|
||||
* traversed. The first element in the path is always '/object'. If it
|
||||
* then starts to traverse the 'rootCategory' association, the path
|
||||
* will become '/object/rootCategory'. For self-recursive
|
||||
* associations, rather than building up a long repeating string, the
|
||||
* path will be shortened by adding a '+' for each element that is
|
||||
* repeated. For example, '/object/container+' indicates that the
|
||||
* container association has been followed two or more times.</p>
|
||||
*/
|
||||
public abstract class ObjectTypeTraversal {
|
||||
|
||||
private static HashMap s_adapters = new HashMap();
|
||||
|
||||
private static final Logger s_log = Logger.getLogger(ObjectTypeTraversal.class);
|
||||
|
||||
/**
|
||||
* Registers a traversal adapter for an object type in a given
|
||||
* context.
|
||||
*
|
||||
* @param type the object type whose items will be traversed
|
||||
* @param adapter the adapter for controlling object traversal
|
||||
* @param context the context in which the adapter should be used
|
||||
*/
|
||||
public static void registerAdapter(ObjectType type,
|
||||
ObjectTypeTraversalAdapter adapter,
|
||||
String context) {
|
||||
s_adapters.put(new AdapterKey(type, context), adapter);
|
||||
}
|
||||
|
||||
/**
|
||||
* Unregisteres a traversal adapter for an object type in a
|
||||
* given context
|
||||
*
|
||||
* @param type the object type whose items will be traversed
|
||||
* @param context the context in which the adapter should be used
|
||||
*/
|
||||
public static void unregisterAdapter(ObjectType type,
|
||||
String context) {
|
||||
s_adapters.remove(new AdapterKey(type, context));
|
||||
}
|
||||
|
||||
/**
|
||||
* Registers a traversal adapter for an object type in a given
|
||||
* context.
|
||||
*
|
||||
* @param type the object type whose items will be traversed
|
||||
* @param adapter the adapter for controlling object traversal
|
||||
* @param context the context in which the adapter should be used
|
||||
*/
|
||||
public static void registerAdapter(String type,
|
||||
ObjectTypeTraversalAdapter adapter,
|
||||
String context) {
|
||||
registerAdapter(MetadataRoot.getMetadataRoot().getObjectType(type),
|
||||
adapter,
|
||||
context);
|
||||
}
|
||||
|
||||
/**
|
||||
* Unregisteres a traversal adapter for an object type in a
|
||||
* given context
|
||||
*
|
||||
* @param type the object type whose items will be traversed
|
||||
* @param context the context in which the adapter should be used
|
||||
*/
|
||||
public static void unregisterAdapter(String type,
|
||||
String context) {
|
||||
unregisterAdapter(MetadataRoot.getMetadataRoot().getObjectType(type),
|
||||
context);
|
||||
}
|
||||
|
||||
/**
|
||||
* Retrieves the traversal adapter for an object type in a given
|
||||
* context.
|
||||
*
|
||||
* @param type the object type to lookup
|
||||
* @param context the adapter context
|
||||
*/
|
||||
public static ObjectTypeTraversalAdapter lookupAdapter(ObjectType type,
|
||||
String context) {
|
||||
return (ObjectTypeTraversalAdapter)s_adapters
|
||||
.get(new AdapterKey(type, context));
|
||||
}
|
||||
|
||||
/**
|
||||
* Retrieves the closest matching traversal adapter for an object type
|
||||
* in a given context. The algorithm looks for an exact match, then
|
||||
* considers the supertype, and the supertype's supertype. If no match
|
||||
* could be found at all, returns null
|
||||
*
|
||||
* @param type the object type to search for
|
||||
* @param context the adapter context
|
||||
*/
|
||||
public static ObjectTypeTraversalAdapter findAdapter(ObjectType type,
|
||||
String context) {
|
||||
ObjectTypeTraversalAdapter adapter = null;
|
||||
while (adapter == null && type != null) {
|
||||
adapter = lookupAdapter(type, context);
|
||||
type = type.getSupertype();
|
||||
}
|
||||
return adapter;
|
||||
}
|
||||
|
||||
/**
|
||||
* Walks over properties of a domain object, invoking
|
||||
* methods to handle assoications, roles and attributes.
|
||||
*
|
||||
* @param obj the domain object to traverse
|
||||
* @param context the context for the traversal adapter
|
||||
*/
|
||||
public void walk(String type,
|
||||
String context) {
|
||||
walk(MetadataRoot.getMetadataRoot().getObjectType(type),
|
||||
context);
|
||||
}
|
||||
|
||||
/**
|
||||
* Walks over properties of a domain object, invoking
|
||||
* methods to handle assoications, roles and attributes.
|
||||
*
|
||||
* @param obj the domain object to traverse
|
||||
* @param context the context for the traversal adapter
|
||||
*/
|
||||
public void walk(ObjectType type,
|
||||
String context) {
|
||||
Assert.exists(type, ObjectType.class);
|
||||
|
||||
ObjectTypeTraversalAdapter adapter = findAdapter(type,
|
||||
context);
|
||||
Assert.exists(adapter, ObjectTypeTraversalAdapter.class);
|
||||
walk(adapter, type, "/object");
|
||||
}
|
||||
|
||||
private void walk(ObjectTypeTraversalAdapter adapter,
|
||||
ObjectType type,
|
||||
String path) {
|
||||
beginObject(type, path);
|
||||
|
||||
if (s_log.isInfoEnabled()) {
|
||||
s_log.info("Walking " + path + " type: " + type.getQualifiedName());
|
||||
}
|
||||
|
||||
for (Iterator i = type.getProperties(); i.hasNext(); ) {
|
||||
Property prop = (Property) i.next();
|
||||
String propName = prop.getName();
|
||||
|
||||
if (!adapter.processProperty(type,
|
||||
appendToPath(path, prop.getName()),
|
||||
prop)) {
|
||||
if (s_log.isDebugEnabled()) {
|
||||
s_log.debug("Skipping property " + propName);
|
||||
}
|
||||
continue;
|
||||
}
|
||||
if (s_log.isDebugEnabled()) {
|
||||
s_log.debug("Process property " + propName + " type " + prop.getType().getQualifiedName());
|
||||
}
|
||||
|
||||
if (prop.isAttribute()) {
|
||||
handleAttribute(type, path, prop);
|
||||
} else {
|
||||
if (!prop.isCollection()) {
|
||||
beginRole(type, path, prop);
|
||||
|
||||
walk(adapter,
|
||||
(ObjectType)prop.getType(),
|
||||
appendToPath(path, propName));
|
||||
|
||||
endRole(type, path, prop);
|
||||
} else {
|
||||
beginAssociation(type, path, prop);
|
||||
|
||||
Property roleProp = prop.getAssociatedProperty();
|
||||
|
||||
walk(adapter,
|
||||
(ObjectType)prop.getType(),
|
||||
appendToPath(path, propName));
|
||||
|
||||
endAssociation(type, path, prop);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
endObject(type, path);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Method called when the processing of an object
|
||||
* starts
|
||||
*/
|
||||
protected abstract void beginObject(ObjectType obj,
|
||||
String path);
|
||||
/**
|
||||
* Method called when the procesing of an object
|
||||
* completes
|
||||
*/
|
||||
protected abstract void endObject(ObjectType obj,
|
||||
String path);
|
||||
|
||||
/**
|
||||
* Method called when an attribute is encountered
|
||||
*/
|
||||
protected abstract void handleAttribute(ObjectType obj,
|
||||
String path,
|
||||
Property property);
|
||||
|
||||
/**
|
||||
* Method called when the processing of a role
|
||||
* starts
|
||||
*/
|
||||
protected abstract void beginRole(ObjectType obj,
|
||||
String path,
|
||||
Property property);
|
||||
|
||||
/**
|
||||
* Method called when the procesing of a role
|
||||
* completes
|
||||
*/
|
||||
protected abstract void endRole(ObjectType obj,
|
||||
String path,
|
||||
Property property);
|
||||
|
||||
/**
|
||||
* Method called when the processing of an association
|
||||
* starts
|
||||
*/
|
||||
protected abstract void beginAssociation(ObjectType obj,
|
||||
String path,
|
||||
Property property);
|
||||
|
||||
/**
|
||||
* Method called when the procesing of an association
|
||||
* completes
|
||||
*/
|
||||
protected abstract void endAssociation(ObjectType obj,
|
||||
String path,
|
||||
Property property);
|
||||
|
||||
|
||||
protected String appendToPath(String path,
|
||||
String name) {
|
||||
if (path.endsWith("/" + name)) {
|
||||
path = path + "+";
|
||||
} else if (!path.endsWith("/" + name + "+")) {
|
||||
path = path + "/" + name;
|
||||
}
|
||||
|
||||
return path;
|
||||
}
|
||||
|
||||
protected String nameFromPath(String path) {
|
||||
int index = path.lastIndexOf("/");
|
||||
Assert.isTrue(index >= 0, "Path starts with /");
|
||||
|
||||
if (path.endsWith("+")) {
|
||||
return path.substring(index + 1, path.length() - 2);
|
||||
} else {
|
||||
return path.substring(index + 1);
|
||||
}
|
||||
}
|
||||
|
||||
protected String parentFromPath(String path) {
|
||||
int index = path.lastIndexOf("/");
|
||||
Assert.isTrue(index >= 0, "Path starts with /");
|
||||
|
||||
if (index == 0) {
|
||||
return null;
|
||||
} else {
|
||||
return path.substring(0, index - 1);
|
||||
}
|
||||
}
|
||||
|
||||
private static class AdapterKey {
|
||||
private ObjectType m_type;
|
||||
private String m_context;
|
||||
|
||||
public AdapterKey(ObjectType type,
|
||||
String context) {
|
||||
m_type = type;
|
||||
m_context = context;
|
||||
}
|
||||
|
||||
public boolean equals(Object o) {
|
||||
if (o instanceof AdapterKey) {
|
||||
AdapterKey k = (AdapterKey)o;
|
||||
return k.m_type.equals(m_type) &&
|
||||
k.m_context.equals(m_context);
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public int hashCode() {
|
||||
return m_type.hashCode() + m_context.hashCode();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,60 @@
|
|||
/*
|
||||
* Copyright (C) 2001-2004 Red Hat Inc. All Rights Reserved.
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public License
|
||||
* as published by the Free Software Foundation; either version 2.1 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This library 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
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
package com.arsdigita.bundle;
|
||||
|
||||
import com.arsdigita.persistence.metadata.Property;
|
||||
import com.arsdigita.persistence.metadata.ObjectType;
|
||||
|
||||
// XXX this class is pretty similar to DomainObjectTraversal
|
||||
// and it would be nice to figure out a way to let them share
|
||||
// some of their logic (provided it didn't cripple / obfuscate
|
||||
// the API).
|
||||
|
||||
/**
|
||||
* <p>This interface is used to control traversal of domain
|
||||
* objects. Whenever a property is encountered, the {@link
|
||||
* #processProperty} method will be called to determine whether or not
|
||||
* to continue processing the object. The most important use for this
|
||||
* is to prevent the needless (and potentially infinite) traversal of
|
||||
* associations between objects, but it can also be used to filter out
|
||||
* certain attributes.</p>
|
||||
*
|
||||
* <p>Instances of this class need to be registered using the
|
||||
* DomainObjectTraversal.registerAdapter method.</p>
|
||||
*
|
||||
* @see com.arsdigita.domain.DomainObjectTraversal
|
||||
* @see com.arsdigita.domain.SimpleDomainObjectTraversalAdapter
|
||||
* @version $Id: ObjectTypeTraversalAdapter.java 287 2005-02-22 00:29:02Z sskracic $
|
||||
*/
|
||||
public interface ObjectTypeTraversalAdapter {
|
||||
/**
|
||||
* Invoked to determine whether to process a property.
|
||||
* Should return true to allow processing to commence,
|
||||
* false to prevent it.
|
||||
*
|
||||
* @param obj the object type currently being processed
|
||||
* @param path the path to the current domain object from
|
||||
* the root object being traversed
|
||||
* @param prop the property about to be processed
|
||||
* @return true if the property should be processed
|
||||
*/
|
||||
public boolean processProperty(ObjectType obj,
|
||||
String path,
|
||||
Property prop);
|
||||
}
|
||||
|
|
@ -0,0 +1,151 @@
|
|||
/*
|
||||
* Copyright (C) 2001-2004 Red Hat Inc. All Rights Reserved.
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public License
|
||||
* as published by the Free Software Foundation; either version 2.1 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This library 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
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
package com.arsdigita.bundle;
|
||||
|
||||
import org.apache.log4j.Logger;
|
||||
import com.arsdigita.persistence.metadata.Property;
|
||||
import com.arsdigita.persistence.metadata.ObjectType;
|
||||
import java.util.HashSet;
|
||||
|
||||
/**
|
||||
* This is a general purpose traversal adaptor
|
||||
* that allows/denies processing of a property
|
||||
* based on the path to the property, and its
|
||||
* presence in an inclusion/exclusion set.
|
||||
*
|
||||
* Instances of this class can be configured using
|
||||
* the ObjectTypeTraversalInitializer
|
||||
*
|
||||
* <p>See <code>com.arsdigita.cms.installer.ObjectTypeTraversalInitializer</code>.
|
||||
*/
|
||||
public class SimpleObjectTypeTraversalAdapter
|
||||
implements ObjectTypeTraversalAdapter {
|
||||
|
||||
private static final Logger s_log =
|
||||
Logger.getLogger(SimpleObjectTypeTraversalAdapter.class);
|
||||
|
||||
/**
|
||||
* Rule that indicates the set of properties should be treated
|
||||
* as an inclusion list. ie, don't allow any properties except
|
||||
* those listed. This is the default for associations
|
||||
*/
|
||||
public final static int RULE_INCLUDE = 0;
|
||||
/**
|
||||
* Rule that indicates the set of properties should be treated
|
||||
* as an exclusion list. ie, allow through all properties,
|
||||
* except those listed. This is the default for attributes.
|
||||
*/
|
||||
public final static int RULE_EXCLUDE = 1;
|
||||
|
||||
private HashSet m_attr = new HashSet();
|
||||
private HashSet m_assoc = new HashSet();
|
||||
|
||||
private int m_attrRule = RULE_EXCLUDE;
|
||||
private int m_assocRule = RULE_INCLUDE;
|
||||
|
||||
private SimpleObjectTypeTraversalAdapter m_parent;
|
||||
|
||||
/**
|
||||
* Creates a new traversal adapter, with no parent
|
||||
* delegate. If no explicit rule is present it will
|
||||
* return false if RULE_INCLUDE is set, or true if
|
||||
* RULE_EXCLUDE is set.
|
||||
*/
|
||||
public SimpleObjectTypeTraversalAdapter() {
|
||||
this(null);
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a new traversal adapter, extending the rules
|
||||
* defined by a parent. If there is no explicit rule
|
||||
* for the property questioned, it will delegate the
|
||||
* query to the parent.
|
||||
* @param parent the parent adapter to delegate to
|
||||
*/
|
||||
public SimpleObjectTypeTraversalAdapter(
|
||||
SimpleObjectTypeTraversalAdapter parent
|
||||
) {
|
||||
m_parent = parent;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set the rule for processing attributes
|
||||
*
|
||||
* @param rule the new processing rule
|
||||
*/
|
||||
public void setAttributeRule(int rule) {
|
||||
m_attrRule = rule;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set the rule for processing associations
|
||||
*
|
||||
* @param rule the new processing rule
|
||||
*/
|
||||
public void setAssociationRule(int rule) {
|
||||
m_assocRule = rule;
|
||||
}
|
||||
|
||||
/**
|
||||
* Add a property to the attribute property set.
|
||||
*
|
||||
* @param path the full path to the property
|
||||
*/
|
||||
public void addAttributeProperty(String prop) {
|
||||
m_attr.add(prop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Add a property to the association property set.
|
||||
*
|
||||
* @param path the full path to the property
|
||||
*/
|
||||
public void addAssociationProperty(String prop) {
|
||||
m_assoc.add(prop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Determines whether or not to allow processing
|
||||
* of a property, based on the property set and
|
||||
* the processing rule
|
||||
*/
|
||||
public boolean processProperty(ObjectType obj,
|
||||
String path,
|
||||
Property prop) {
|
||||
if (prop.isAttribute()) {
|
||||
boolean result = m_attr.contains(path);
|
||||
s_log.debug("Check attr " + path + " contains " +
|
||||
result + " " + m_attrRule);
|
||||
if (!result && m_parent != null) {
|
||||
s_log.debug("No explicit rule, delegating to parent");
|
||||
return m_parent.processProperty(obj, path, prop);
|
||||
}
|
||||
return m_attrRule == RULE_INCLUDE ? result : !result;
|
||||
} else {
|
||||
boolean result = m_assoc.contains(path);
|
||||
s_log.debug("Check assoc " + path + " contains " +
|
||||
result + " " + m_attrRule);
|
||||
if (!result && m_parent != null) {
|
||||
s_log.debug("No explicit rule, delegating to parent");
|
||||
return m_parent.processProperty(obj, path, prop);
|
||||
}
|
||||
return m_assocRule == RULE_INCLUDE ? result : !result;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,57 @@
|
|||
/*
|
||||
* Copyright (C) 2001-2004 Red Hat Inc. All Rights Reserved.
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public License
|
||||
* as published by the Free Software Foundation; either version 2.1 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This library 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
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
package com.arsdigita.bundle;
|
||||
|
||||
|
||||
import com.arsdigita.web.Application;
|
||||
import com.arsdigita.web.Web;
|
||||
import com.arsdigita.templating.PatternGenerator;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
|
||||
import org.apache.log4j.Logger;
|
||||
|
||||
|
||||
/**
|
||||
* Generates a set of patterns corresponding to the current
|
||||
* web application prefix
|
||||
*/
|
||||
public class WebAppPatternGenerator implements PatternGenerator {
|
||||
|
||||
private static final Logger s_log =
|
||||
Logger.getLogger(WebAppPatternGenerator.class);
|
||||
|
||||
public String[] generateValues(String key,
|
||||
HttpServletRequest req) {
|
||||
Application app = Web.getContext().getApplication();
|
||||
String ctx = app == null ? null : app.getContextPath();
|
||||
|
||||
if (app == null ||
|
||||
ctx == null ||
|
||||
"".equals(ctx)) {
|
||||
return new String[] { Web.ROOT_WEBAPP };
|
||||
}
|
||||
|
||||
if (ctx.startsWith("/")) {
|
||||
ctx = ctx.substring(1);
|
||||
}
|
||||
|
||||
return new String[] { ctx };
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,46 @@
|
|||
/**
|
||||
* Copyright (C) 2005 Runtime Collective Ltd. All Rights Reserved.
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public License
|
||||
* as published by the Free Software Foundation; either version 2.1 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This library 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
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
package com.arsdigita.bundle.ui;
|
||||
|
||||
import com.arsdigita.bebop.PageState;
|
||||
import com.arsdigita.cms.CMS;
|
||||
import com.arsdigita.cms.ContentBundle;
|
||||
import com.arsdigita.cms.ContentItem;
|
||||
import com.arsdigita.cms.ContentPage;
|
||||
import com.arsdigita.kernel.ACSObject;
|
||||
import com.arsdigita.london.navigation.Navigation;
|
||||
import com.arsdigita.london.terms.ui.AbstractAssignedTerms;
|
||||
|
||||
import org.apache.log4j.Logger;
|
||||
|
||||
public class AssignedIndexItemTerms extends AbstractAssignedTerms {
|
||||
|
||||
private static final Logger s_log = Logger.getLogger(AssignedIndexItemTerms.class);
|
||||
|
||||
protected ACSObject getObject(PageState state) {
|
||||
|
||||
ACSObject obj = Navigation.getConfig().getDefaultModel().getObject();
|
||||
|
||||
if (s_log.isDebugEnabled()) {
|
||||
s_log.debug("Dealing with item " + obj);
|
||||
}
|
||||
|
||||
return obj;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,36 @@
|
|||
/*
|
||||
* Copyright (C) 2001-2004 Red Hat Inc. All Rights Reserved.
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public License
|
||||
* as published by the Free Software Foundation; either version 2.1 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This library 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
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
package com.arsdigita.bundle.ui;
|
||||
|
||||
import com.arsdigita.bebop.PageState;
|
||||
import com.arsdigita.cms.CMS;
|
||||
import com.arsdigita.kernel.ACSObject;
|
||||
import com.arsdigita.london.terms.ui.AbstractAssignedTerms;
|
||||
|
||||
/**
|
||||
*
|
||||
* Invoked by jsp
|
||||
* (e.g. packages/content-section/templates/default/aplaws-item.jsp)
|
||||
*/
|
||||
public class AssignedItemTerms extends AbstractAssignedTerms {
|
||||
|
||||
protected ACSObject getObject(PageState state) {
|
||||
return CMS.getContext().getContentItem().getParent();
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,57 @@
|
|||
/*
|
||||
* Copyright (C) 2001-2004 Red Hat Inc. All Rights Reserved.
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public License
|
||||
* as published by the Free Software Foundation; either version 2.1 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This library 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
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
package com.arsdigita.bundle.ui;
|
||||
|
||||
import com.arsdigita.navigation.Navigation;
|
||||
import com.arsdigita.navigation.NavigationModel;
|
||||
|
||||
import com.arsdigita.persistence.SessionManager;
|
||||
import com.arsdigita.persistence.DataCollection;
|
||||
|
||||
import com.arsdigita.domain.DomainObjectFactory;
|
||||
|
||||
import com.arsdigita.categorization.Category;
|
||||
import com.arsdigita.util.Assert;
|
||||
import com.arsdigita.bebop.PageState;
|
||||
|
||||
import com.arsdigita.portalworkspace.Workspace;
|
||||
import com.arsdigita.portalworkspace.ui.WorkspaceSelectionModel;
|
||||
|
||||
public class CategoryPortalSelectionModel extends WorkspaceSelectionModel {
|
||||
|
||||
protected Workspace getDefaultWorkspace(PageState state) {
|
||||
NavigationModel model = Navigation.getConfig().getDefaultModel();
|
||||
Category cat = model.getCategory();
|
||||
Assert.exists(cat);
|
||||
|
||||
DataCollection workspaces
|
||||
= SessionManager.getSession().retrieve(
|
||||
Workspace.BASE_DATA_OBJECT_TYPE);
|
||||
workspaces.addEqualsFilter("categories.id", cat.getID());
|
||||
|
||||
if (workspaces.next()) {
|
||||
Workspace wk = (Workspace)DomainObjectFactory
|
||||
.newInstance(workspaces.getDataObject());
|
||||
workspaces.close();
|
||||
return wk;
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,66 @@
|
|||
/*
|
||||
* Copyright (C) 2001-2004 Red Hat Inc. All Rights Reserved.
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public License
|
||||
* as published by the Free Software Foundation; either version 2.1 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This library 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
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
package com.arsdigita.bundle.ui;
|
||||
|
||||
import com.arsdigita.london.terms.Term;
|
||||
import com.arsdigita.london.terms.ui.AbstractTermDetails;
|
||||
import com.arsdigita.persistence.DataCollection;
|
||||
import com.arsdigita.persistence.SessionManager;
|
||||
import com.arsdigita.london.navigation.Navigation;
|
||||
import com.arsdigita.categorization.Category;
|
||||
import com.arsdigita.bebop.PageState;
|
||||
import com.arsdigita.domain.DomainObjectFactory;
|
||||
|
||||
import org.apache.log4j.Logger;
|
||||
|
||||
public class CategoryTermDetails extends AbstractTermDetails {
|
||||
|
||||
private static final Logger s_log = Logger.getLogger(CategoryTermDetails.class);
|
||||
|
||||
protected Term getTerm(PageState state) {
|
||||
Category cat = Navigation.getConfig().getDefaultModel()
|
||||
.getCategory();
|
||||
|
||||
if (cat == null) {
|
||||
s_log.debug("No category found, skiping term");
|
||||
return null;
|
||||
}
|
||||
|
||||
DataCollection terms = SessionManager.getSession()
|
||||
.retrieve(Term.BASE_DATA_OBJECT_TYPE);
|
||||
terms.addEqualsFilter(Term.MODEL + "." + Category.ID,
|
||||
cat.getID());
|
||||
|
||||
if (terms.next()) {
|
||||
Term term = (Term)DomainObjectFactory
|
||||
.newInstance(terms.getDataObject());
|
||||
terms.close();
|
||||
if (s_log.isInfoEnabled()) {
|
||||
s_log.info("Found term " + term + " for category " + cat);
|
||||
}
|
||||
return term;
|
||||
}
|
||||
|
||||
if (s_log.isDebugEnabled()) {
|
||||
s_log.debug("No term found for category " + cat);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,88 @@
|
|||
/*
|
||||
* Copyright (C) 2001 ArsDigita Corporation. All Rights Reserved.
|
||||
*
|
||||
* The contents of this file are subject to the ArsDigita Public
|
||||
* License (the "License"); you may not use this file except in
|
||||
* compliance with the License. You may obtain a copy of
|
||||
* the License at http://www.arsdigita.com/ADPL.txt
|
||||
*
|
||||
* Software distributed under the License is distributed on an "AS
|
||||
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
* implied. See the License for the specific language governing
|
||||
* rights and limitations under the License.
|
||||
*
|
||||
*/
|
||||
|
||||
package com.arsdigita.aplaws.ui;
|
||||
|
||||
import com.arsdigita.bebop.AbstractSingleSelectionModel;
|
||||
import com.arsdigita.portalworkspace.ui.PortalSelectionModel;
|
||||
import com.arsdigita.portalworkspace.WorkspacePage;
|
||||
import com.arsdigita.bebop.PageState;
|
||||
import com.arsdigita.bebop.parameters.ParameterModel;
|
||||
import com.arsdigita.domain.DomainObject;
|
||||
|
||||
import org.apache.log4j.Logger;
|
||||
|
||||
public class HomepagePortalSelectionModel extends AbstractSingleSelectionModel
|
||||
implements PortalSelectionModel {
|
||||
|
||||
/** Private logger instance for debugging */
|
||||
private static Logger s_log = Logger.getLogger(
|
||||
HomepagePortalSelectionModel.class);
|
||||
|
||||
private HomepageWorkspaceSelectionModel m_workspace;
|
||||
private int m_column;
|
||||
|
||||
public HomepagePortalSelectionModel(HomepageWorkspaceSelectionModel workspace,
|
||||
int column) {
|
||||
m_workspace = workspace;
|
||||
m_column = column;
|
||||
|
||||
if (s_log.isDebugEnabled()) {
|
||||
s_log.debug("Constructor HomepageWorkspaceSelectionModel " + " [" +
|
||||
"Workspace: " + m_workspace + "," +
|
||||
"Columns: " + column + "]");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public void onCustomize(PageState state) {
|
||||
m_workspace.onCustomize(state, m_column);
|
||||
}
|
||||
|
||||
public void onReset(PageState state) {
|
||||
m_workspace.onReset(state, m_column);
|
||||
}
|
||||
|
||||
public HomepageWorkspaceSelectionModel getWorkspaceModel() {
|
||||
return m_workspace;
|
||||
}
|
||||
|
||||
public Object getSelectedKey(PageState state) {
|
||||
return getSelectedPortal(state).getID();
|
||||
}
|
||||
|
||||
public void setSelectedKey(PageState state,
|
||||
Object key) {
|
||||
throw new UnsupportedOperationException("cannot set key");
|
||||
}
|
||||
|
||||
public void setSelectedObject(PageState state,
|
||||
DomainObject key) {
|
||||
throw new UnsupportedOperationException("cannot set object");
|
||||
}
|
||||
|
||||
public ParameterModel getStateParameter() {
|
||||
throw new UnsupportedOperationException("not state param");
|
||||
}
|
||||
|
||||
|
||||
public DomainObject getSelectedObject(PageState state) {
|
||||
return getSelectedPortal(state);
|
||||
}
|
||||
|
||||
public WorkspacePage getSelectedPortal(PageState state) {
|
||||
return m_workspace.getPortal(state, m_column);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,174 @@
|
|||
/*
|
||||
* Copyright (C) 2001 ArsDigita Corporation. All Rights Reserved.
|
||||
*
|
||||
* The contents of this file are subject to the ArsDigita Public
|
||||
* License (the "License"); you may not use this file except in
|
||||
* compliance with the License. You may obtain a copy of
|
||||
* the License at http://www.arsdigita.com/ADPL.txt
|
||||
*
|
||||
* Software distributed under the License is distributed on an "AS
|
||||
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
* implied. See the License for the specific language governing
|
||||
* rights and limitations under the License.
|
||||
*
|
||||
*/
|
||||
|
||||
package com.arsdigita.aplaws.ui;
|
||||
|
||||
import com.arsdigita.bebop.SimpleContainer;
|
||||
import com.arsdigita.bebop.ActionLink;
|
||||
import com.arsdigita.bebop.Page;
|
||||
import com.arsdigita.bebop.event.ActionEvent;
|
||||
import com.arsdigita.bebop.event.ActionListener;
|
||||
import com.arsdigita.portalworkspace.ui.PersistentPortal;
|
||||
import com.arsdigita.portalworkspace.Workspace;
|
||||
import com.arsdigita.bebop.PageState;
|
||||
import com.arsdigita.xml.Element;
|
||||
import com.arsdigita.portalworkspace.ui.PortalConstants;
|
||||
import com.arsdigita.kernel.permissions.PermissionService;
|
||||
import com.arsdigita.kernel.permissions.PermissionDescriptor;
|
||||
import com.arsdigita.kernel.permissions.PrivilegeDescriptor;
|
||||
import com.arsdigita.kernel.Party;
|
||||
import com.arsdigita.kernel.Kernel;
|
||||
|
||||
import org.apache.log4j.Logger;
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
*/
|
||||
public class HomepageWorkspace extends SimpleContainer {
|
||||
|
||||
/** Private logger instance for debugging */
|
||||
private static Logger s_log = Logger.getLogger(
|
||||
HomepageWorkspace.class);
|
||||
|
||||
private HomepagePortalSelectionModel m_model;
|
||||
private ActionLink m_reset;
|
||||
private ActionLink m_browse;
|
||||
private ActionLink m_edit;
|
||||
private PersistentPortal m_browser;
|
||||
private PersistentPortal m_editor;
|
||||
private boolean m_customizable;
|
||||
private boolean m_readOnly;
|
||||
private String m_name;
|
||||
|
||||
public HomepageWorkspace() {
|
||||
super("portal:homepageWorkspace", PortalConstants.PORTAL_XML_NS);
|
||||
m_customizable = false;
|
||||
|
||||
if (s_log.isDebugEnabled()) {
|
||||
s_log.debug("Constructor HomepageWorkspace finished. " );
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public void setModel(HomepagePortalSelectionModel model) {
|
||||
m_model = model;
|
||||
|
||||
if (s_log.isDebugEnabled()) {
|
||||
s_log.debug("setModel: " + m_model );
|
||||
}
|
||||
}
|
||||
|
||||
public void setCustomizable(boolean customizable) {
|
||||
m_customizable = customizable;
|
||||
}
|
||||
|
||||
public void setReadOnly(boolean readOnly) {
|
||||
m_readOnly = readOnly;
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
m_name = name;
|
||||
}
|
||||
|
||||
public void addWidgets() {
|
||||
m_edit = new ActionLink("customize");
|
||||
m_browse = new ActionLink("browse");
|
||||
m_reset = new ActionLink("reset");
|
||||
m_reset.setConfirmation("Are you sure you wish to reset this column? " +
|
||||
"This will permanently remove all portlets.");
|
||||
|
||||
m_browser = new PersistentPortal(m_model,
|
||||
m_name,
|
||||
PortalConstants.MODE_DISPLAY);
|
||||
m_editor = new PersistentPortal(m_model,
|
||||
m_name,
|
||||
PortalConstants.MODE_EDITOR);
|
||||
|
||||
m_edit.addActionListener(new ActionListener() {
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
PageState state = e.getPageState();
|
||||
setDisplayMode(state, false);
|
||||
|
||||
m_model.onCustomize(state);
|
||||
}
|
||||
});
|
||||
m_browse.addActionListener(new ActionListener() {
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
PageState state = e.getPageState();
|
||||
setDisplayMode(state, true);
|
||||
}
|
||||
});
|
||||
m_reset.addActionListener(new ActionListener() {
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
PageState state = e.getPageState();
|
||||
setDisplayMode(state, true);
|
||||
|
||||
m_model.onReset(state);
|
||||
}
|
||||
});
|
||||
|
||||
add(m_edit);
|
||||
add(m_browse);
|
||||
add(m_reset);
|
||||
add(m_editor);
|
||||
add(m_browser);
|
||||
}
|
||||
|
||||
public void setDisplayMode(PageState state,
|
||||
boolean browse) {
|
||||
if (m_readOnly) {
|
||||
return;
|
||||
}
|
||||
m_browse.setVisible(state, !browse);
|
||||
m_reset.setVisible(state, !browse);
|
||||
m_edit.setVisible(state, browse);
|
||||
m_browser.setVisible(state, browse);
|
||||
m_editor.setVisible(state, !browse);
|
||||
}
|
||||
|
||||
public void register(Page page) {
|
||||
super.register(page);
|
||||
|
||||
page.setVisibleDefault(m_browse, false);
|
||||
page.setVisibleDefault(m_reset, false);
|
||||
page.setVisibleDefault(m_edit, !m_readOnly);
|
||||
page.setVisibleDefault(m_browser, true);
|
||||
page.setVisibleDefault(m_editor, false);
|
||||
}
|
||||
|
||||
public void generateXML(PageState state,
|
||||
Element parent) {
|
||||
Party party = Kernel.getContext().getParty();
|
||||
Workspace global = m_model.getWorkspaceModel().getGlobalWorkspace(state);
|
||||
PermissionDescriptor admin =
|
||||
new PermissionDescriptor(PrivilegeDescriptor.ADMIN,
|
||||
global,
|
||||
party);
|
||||
boolean hasAdmin = PermissionService.checkPermission(admin);
|
||||
boolean userWorkspaces = Workspace.getConfig().getCreateUserWorkspaces();
|
||||
|
||||
if (party == null || m_readOnly ||
|
||||
(!hasAdmin && !m_customizable) || (!hasAdmin && !userWorkspaces)) {
|
||||
m_reset.setVisible(state, false);
|
||||
m_browse.setVisible(state, false);
|
||||
m_edit.setVisible(state, false);
|
||||
}
|
||||
|
||||
super.generateXML(state, parent);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,287 @@
|
|||
/*
|
||||
* Copyright (C) 2001 ArsDigita Corporation. All Rights Reserved.
|
||||
*
|
||||
* The contents of this file are subject to the ArsDigita Public
|
||||
* License (the "License"); you may not use this file except in
|
||||
* compliance with the License. You may obtain a copy of
|
||||
* the License at http://www.arsdigita.com/ADPL.txt
|
||||
*
|
||||
* Software distributed under the License is distributed on an "AS
|
||||
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
* implied. See the License for the specific language governing
|
||||
* rights and limitations under the License.
|
||||
*
|
||||
*/
|
||||
|
||||
package com.arsdigita.aplaws.ui;
|
||||
|
||||
|
||||
import com.arsdigita.bebop.RequestLocal;
|
||||
import com.arsdigita.bebop.PageState;
|
||||
|
||||
|
||||
import com.arsdigita.kernel.Party;
|
||||
import com.arsdigita.kernel.User;
|
||||
import com.arsdigita.kernel.Kernel;
|
||||
import com.arsdigita.kernel.permissions.PermissionService;
|
||||
import com.arsdigita.kernel.permissions.PermissionDescriptor;
|
||||
import com.arsdigita.kernel.permissions.PrivilegeDescriptor;
|
||||
|
||||
import com.arsdigita.portalworkspace.Workspace;
|
||||
import com.arsdigita.portalworkspace.WorkspacePage;
|
||||
import com.arsdigita.portalworkspace.WorkspacePageCollection;
|
||||
|
||||
import com.arsdigita.london.subsite.Subsite;
|
||||
|
||||
import com.arsdigita.util.Assert;
|
||||
import com.arsdigita.util.UncheckedWrapperException;
|
||||
|
||||
import com.arsdigita.domain.DataObjectNotFoundException;
|
||||
|
||||
import org.apache.log4j.Logger;
|
||||
|
||||
|
||||
public class HomepageWorkspaceSelectionModel {
|
||||
private RequestLocal m_loaded = new RequestLocal();
|
||||
private RequestLocal m_global = new RequestLocal();
|
||||
private RequestLocal m_personal = new RequestLocal();
|
||||
private RequestLocal m_left = new RequestLocal();
|
||||
private RequestLocal m_middle = new RequestLocal();
|
||||
private RequestLocal m_right = new RequestLocal();
|
||||
private RequestLocal m_custom = new RequestLocal();
|
||||
|
||||
private static Logger s_log = Logger.getLogger
|
||||
(HomepageWorkspaceSelectionModel.class.getName());
|
||||
|
||||
public WorkspacePage getPortal(PageState state,
|
||||
int column) {
|
||||
if (!Boolean.TRUE.equals(m_loaded.get(state))) {
|
||||
loadWorkspacePages(state);
|
||||
}
|
||||
|
||||
if (column == 0) { // Always global portal
|
||||
return (WorkspacePage)m_left.get(state);
|
||||
} else if (column == 1) { // Always global portal
|
||||
return (WorkspacePage)m_middle.get(state);
|
||||
} else if (column == 2) { // Personal portal, fallback on global
|
||||
Party party = (Party)Kernel.getContext().getParty();
|
||||
WorkspacePage right = (WorkspacePage)m_right.get(state);
|
||||
PermissionDescriptor admin =
|
||||
new PermissionDescriptor(PrivilegeDescriptor.ADMIN,
|
||||
right,
|
||||
party);
|
||||
// Always ensure admin gets global portal
|
||||
// don't use custom portals if asked not to
|
||||
if (m_custom.get(state) == null ||
|
||||
PermissionService.checkPermission(admin) ||
|
||||
!Workspace.getConfig().getCreateUserWorkspaces()) {
|
||||
s_log.debug("Returning global portal");
|
||||
return (WorkspacePage)m_right.get(state);
|
||||
} else {
|
||||
s_log.debug("Returning personal portal");
|
||||
return (WorkspacePage)m_custom.get(state);
|
||||
}
|
||||
}
|
||||
|
||||
throw new UncheckedWrapperException("column out of range (0..2)");
|
||||
}
|
||||
|
||||
public void onCustomize(PageState state,
|
||||
int column) {
|
||||
if (!Boolean.TRUE.equals(m_loaded.get(state))) {
|
||||
loadWorkspacePages(state);
|
||||
}
|
||||
|
||||
Party party = (Party)Kernel.getContext().getParty();
|
||||
|
||||
Assert.exists(party, Party.class);
|
||||
|
||||
// When customizing right column, may need to clone
|
||||
// for a personal portal
|
||||
// don't use custom portals if asked not to
|
||||
if (column == 2 &&
|
||||
Workspace.getConfig().getCreateUserWorkspaces()) {
|
||||
Workspace global = getTopWorkspace();
|
||||
|
||||
WorkspacePage right = (WorkspacePage)m_right.get(state);
|
||||
PermissionDescriptor admin =
|
||||
new PermissionDescriptor(PrivilegeDescriptor.ADMIN,
|
||||
right,
|
||||
party);
|
||||
if (PermissionService.checkPermission(admin)) {
|
||||
s_log.debug("Party has admin on global portal");
|
||||
return;
|
||||
}
|
||||
|
||||
if (m_custom.get(state) != null) {
|
||||
s_log.debug("Party has custom portal already");
|
||||
return;
|
||||
}
|
||||
|
||||
s_log.debug("Looking for custom column 2");
|
||||
|
||||
Workspace custom = null;
|
||||
try {
|
||||
custom = global.retrieveSubworkspaceForParty(party);
|
||||
s_log.debug("Found exsting personal workspce");
|
||||
} catch (DataObjectNotFoundException ex) {
|
||||
s_log.debug("Created new personal workspace");
|
||||
custom = Workspace.createWorkspace(
|
||||
"personal-" + party.getID(),
|
||||
"Personal Workspace for " + party.getDisplayName(),
|
||||
global,
|
||||
(User)party
|
||||
);
|
||||
}
|
||||
s_log.debug("Looking for portal");
|
||||
m_personal.set(state, custom);
|
||||
WorkspacePageCollection portals = custom.getPages();
|
||||
portals.addOrder(WorkspacePage.SORT_KEY);
|
||||
WorkspacePage portal;
|
||||
if (portals.next()) {
|
||||
s_log.debug("Found portal");
|
||||
portal = portals.getPage();
|
||||
portals.close();
|
||||
} else {
|
||||
s_log.debug("Create portal");
|
||||
portal = custom.addPage("Custom", "Custom page");
|
||||
}
|
||||
m_custom.set(state, portal);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public void onReset(PageState state,
|
||||
int column) {
|
||||
if (!Boolean.TRUE.equals(m_loaded.get(state))) {
|
||||
loadWorkspacePages(state);
|
||||
}
|
||||
|
||||
Party party = Kernel.getContext().getParty();
|
||||
|
||||
Assert.exists(party, Party.class);
|
||||
|
||||
WorkspacePage clear = null;
|
||||
|
||||
// don't use custom portals if asked not to
|
||||
if (column == 2 &&
|
||||
Workspace.getConfig().getCreateUserWorkspaces()) {
|
||||
// If we find a custom workspace, then delete it,
|
||||
// otherwise just clear the portlets.
|
||||
Workspace global = getTopWorkspace();
|
||||
Workspace custom = null;
|
||||
try {
|
||||
custom = global.retrieveSubworkspaceForParty(party);
|
||||
Assert.isTrue(custom.getParty() != null &&
|
||||
custom.getParty().equals(party),
|
||||
"party is not null and not admin");
|
||||
s_log.debug("Found exsting personal workspce");
|
||||
custom.delete();
|
||||
m_custom.set(state, null);
|
||||
} catch (DataObjectNotFoundException ex) {
|
||||
clear = (WorkspacePage)m_right.get(state);
|
||||
}
|
||||
} else if (column == 1) {
|
||||
clear = (WorkspacePage)m_middle.get(state);
|
||||
} else if (column == 0) {
|
||||
clear = (WorkspacePage)m_left.get(state);
|
||||
}
|
||||
|
||||
if (clear != null) {
|
||||
clear.clearPortlets();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public Workspace getGlobalWorkspace(PageState state) {
|
||||
if (!Boolean.TRUE.equals(m_loaded.get(state))) {
|
||||
loadWorkspacePages(state);
|
||||
}
|
||||
|
||||
return (Workspace)m_global.get(state);
|
||||
}
|
||||
|
||||
public Workspace getPersonalWorkspace(PageState state) {
|
||||
if (!Boolean.TRUE.equals(m_loaded.get(state))) {
|
||||
loadWorkspacePages(state);
|
||||
}
|
||||
|
||||
return (Workspace)m_personal.get(state);
|
||||
}
|
||||
|
||||
private void loadWorkspacePages(PageState state) {
|
||||
Workspace global = getTopWorkspace();
|
||||
m_global.set(state, global);
|
||||
|
||||
WorkspacePage left = null;
|
||||
WorkspacePage middle = null;
|
||||
WorkspacePage right = null;
|
||||
|
||||
WorkspacePageCollection portals = global.getPages();
|
||||
portals.addOrder(WorkspacePage.SORT_KEY);
|
||||
while (portals.next()) {
|
||||
WorkspacePage portal = portals.getPage();
|
||||
|
||||
if (portal.getSortKey() == 0) {
|
||||
left = portal;
|
||||
} else if (portal.getSortKey() == 1) {
|
||||
middle = portal;
|
||||
} else if (portal.getSortKey() == 2) {
|
||||
right = portal;
|
||||
}
|
||||
}
|
||||
|
||||
if (left == null) {
|
||||
left = global.addPage("Left", "Left hand page");
|
||||
}
|
||||
if (middle == null) {
|
||||
middle = global.addPage("Middle", "Middle page");
|
||||
}
|
||||
if (right == null) {
|
||||
right = global.addPage("Right", "Right hand page");
|
||||
}
|
||||
m_left.set(state, left);
|
||||
m_middle.set(state, middle);
|
||||
m_right.set(state, right);
|
||||
|
||||
|
||||
Party party = (Party)Kernel.getContext().getParty();
|
||||
m_custom.set(state, null);
|
||||
if (party != null) {
|
||||
Workspace custom = null;
|
||||
try {
|
||||
custom = global.retrieveSubworkspaceForParty(party);
|
||||
} catch (DataObjectNotFoundException ex) {
|
||||
// nada
|
||||
}
|
||||
if (custom != null) {
|
||||
portals = custom.getPages();
|
||||
portals.addOrder(WorkspacePage.SORT_KEY);
|
||||
if (portals.next()) {
|
||||
WorkspacePage portal = portals.getPage();
|
||||
m_custom.set(state, portal);
|
||||
}
|
||||
portals.close();
|
||||
}
|
||||
s_log.debug("Is there a custom portal ?" + custom +
|
||||
" - " + m_custom.get(state));
|
||||
m_personal.set(state, custom);
|
||||
}
|
||||
|
||||
m_loaded.set(state, Boolean.TRUE);
|
||||
}
|
||||
|
||||
protected Workspace getTopWorkspace() {
|
||||
if (Subsite.getContext().hasSite()) {
|
||||
if (s_log.isDebugEnabled()) {
|
||||
s_log.debug("Return a subsite front page");
|
||||
}
|
||||
return (Workspace)Subsite.getContext().getSite().getFrontPage();
|
||||
} else {
|
||||
if (s_log.isDebugEnabled()) {
|
||||
s_log.debug("Return the main front page");
|
||||
}
|
||||
return (Workspace)Kernel.getContext().getResource();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,80 @@
|
|||
/*
|
||||
* Copyright (C) 2001-2004 Red Hat Inc. All Rights Reserved.
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public License
|
||||
* as published by the Free Software Foundation; either version 2.1 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This library 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
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
package com.arsdigita.aplaws.ui;
|
||||
|
||||
import org.apache.log4j.Logger;
|
||||
|
||||
import com.arsdigita.bebop.PageState;
|
||||
import com.arsdigita.bebop.parameters.BigDecimalParameter;
|
||||
import com.arsdigita.bebop.parameters.StringParameter;
|
||||
import com.arsdigita.categorization.ui.ACSObjectCategoryForm;
|
||||
import com.arsdigita.cms.CMS;
|
||||
import com.arsdigita.cms.ContentItem;
|
||||
import com.arsdigita.cms.ui.authoring.*;
|
||||
import com.arsdigita.kernel.ACSObject;
|
||||
import com.arsdigita.london.terms.ui.ACSObjectCategoryPicker;
|
||||
import com.arsdigita.london.terms.ui.TermWidget;
|
||||
|
||||
/**
|
||||
* <p> cms specific Concrete implementation of
|
||||
* <code>com.arsdigita.aplaws.ui.ACSObjectCategoryPicker</code>. </p>
|
||||
*
|
||||
*
|
||||
*
|
||||
* <p>Activated by pointing the parameter
|
||||
* <code>com.arsdigita.cms.category_authoring_add_form<</code> to it.</p>
|
||||
*/
|
||||
|
||||
|
||||
public class ItemCategoryPicker extends ACSObjectCategoryPicker {
|
||||
|
||||
private static final Logger s_log = Logger.getLogger(ItemCategoryPicker.class);
|
||||
// private static final class s_picker = this ;
|
||||
|
||||
public ItemCategoryPicker(BigDecimalParameter root,
|
||||
StringParameter mode) {
|
||||
super(root, mode);
|
||||
s_log.debug("instantiating ItemCategoryPicker");
|
||||
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* @see com.arsdigita.aplaws.ui.ACSObjectCategoryPicker#getForm(
|
||||
com.arsdigita.bebop.parameters.BigDecimalParameter,
|
||||
com.arsdigita.bebop.parameters.StringParameter)
|
||||
*/
|
||||
protected ACSObjectCategoryForm getForm(BigDecimalParameter root,
|
||||
StringParameter mode) {
|
||||
s_log.debug("getForm");
|
||||
return new ItemCategoryForm(root, mode, new TermWidget(mode, this));
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* @see com.arsdigita.aplaws.ui.ACSObjectCategoryPicker#getObject()
|
||||
*/
|
||||
protected ACSObject getObject(PageState state) {
|
||||
ContentItem item = CMS.getContext().getContentItem();
|
||||
return item.getParent();
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,69 @@
|
|||
/*
|
||||
* Copyright (C) 2001-2004 Red Hat Inc. All Rights Reserved.
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public License
|
||||
* as published by the Free Software Foundation; either version 2.1 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This library 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
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
package com.arsdigita.aplaws.ui;
|
||||
|
||||
import com.arsdigita.bebop.PageState;
|
||||
import com.arsdigita.bebop.Label;
|
||||
import com.arsdigita.dispatcher.DispatcherHelper;
|
||||
import com.arsdigita.xml.Document;
|
||||
import com.arsdigita.xml.Element;
|
||||
import com.arsdigita.web.Web;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* Special implementation of <code>com.arsdigita.ui.SimplePage</code> as
|
||||
* the base page to serve bebop pages.</p>
|
||||
*
|
||||
* <p>Activated by pointing the parameter <code>waf.bebop.base_page</code>
|
||||
* to it.</p>
|
||||
*/
|
||||
public class SimplePage extends com.arsdigita.ui.SimplePage {
|
||||
|
||||
public SimplePage(String application,
|
||||
Label title,
|
||||
String id) {
|
||||
super(application, title, id);
|
||||
}
|
||||
|
||||
|
||||
public Element generateXMLHelper(PageState state,
|
||||
Document parent) {
|
||||
Element page = super.generateXMLHelper(state, parent);
|
||||
|
||||
/*
|
||||
* TODO: What specific funcionality is added here and what is
|
||||
* its purpose and why is the bebop standard implementation
|
||||
* insufficient.
|
||||
*
|
||||
* Two xml attributes are added in addition to the bebop standard
|
||||
* implementation.
|
||||
*/
|
||||
if (Web.getContext().getRequestURL() != null) {
|
||||
page.addAttribute("url", Web.getContext().getRequestURL().toString());
|
||||
|
||||
page.addAttribute("textOnly", "/text".equals(
|
||||
DispatcherHelper
|
||||
.getDispatcherPrefix(state.getRequest()))
|
||||
? "1" : "0"
|
||||
);
|
||||
}
|
||||
|
||||
return page;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,57 @@
|
|||
/*
|
||||
* Copyright (C) 2001-2004 Red Hat Inc. All Rights Reserved.
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public License
|
||||
* as published by the Free Software Foundation; either version 2.1 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This library 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
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
package com.arsdigita.aplaws.ui;
|
||||
|
||||
import com.arsdigita.london.terms.Domain;
|
||||
import com.arsdigita.london.terms.ui.AbstractTermItemSummary;
|
||||
|
||||
import com.arsdigita.bebop.PageState;
|
||||
import com.arsdigita.bebop.Page;
|
||||
import com.arsdigita.bebop.parameters.StringParameter;
|
||||
|
||||
public class TermItemSummary extends AbstractTermItemSummary {
|
||||
|
||||
private StringParameter m_key;
|
||||
private String m_defaultKey = "LGSL";
|
||||
|
||||
public TermItemSummary() {
|
||||
m_key = new StringParameter("key");
|
||||
}
|
||||
|
||||
public void register(Page p) {
|
||||
super.register(p);
|
||||
|
||||
p.addGlobalStateParam(m_key);
|
||||
}
|
||||
|
||||
public void setDefaultDomain(String key) {
|
||||
m_defaultKey = key;
|
||||
}
|
||||
|
||||
protected Domain getDomain(PageState state) {
|
||||
String key = (String)state.getValue(m_key);
|
||||
|
||||
if (key == null) {
|
||||
key = m_defaultKey;
|
||||
}
|
||||
|
||||
return Domain.retrieve(key);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,137 @@
|
|||
/*
|
||||
* FCKeditor - The text editor for internet
|
||||
* Copyright (C) 2003-2005 Frederico Caldeira Knabben
|
||||
*
|
||||
* Licensed under the terms of the GNU Lesser General Public License:
|
||||
* http://www.opensource.org/licenses/lgpl-license.php
|
||||
*
|
||||
* For further information visit:
|
||||
* http://www.fckeditor.net/
|
||||
*
|
||||
* File Name: fckconfigOpenCCM.js
|
||||
* Editor configuration settings for use in admin interface in APLAWS/OpenCCM.
|
||||
* This configuration is designed to match the following goals:
|
||||
* - Easy useage of the editor
|
||||
* - Clean HTML output, this means for example that no deprected elements are useable from the editor
|
||||
*
|
||||
* This file is organized in the same way as the page of the FCKEditor documentation showing all config options.
|
||||
* The page can be found here: http://docs.fckeditor.net/FCKeditor_2.x/Developers_Guide/Configuration/Configuration_Options
|
||||
*
|
||||
* - Semantic HTML output. This means that elements like <em> are prefered against such as <b>
|
||||
* This config is loaded from the Javascript in the calling page using AFTER the
|
||||
* default fckconfig.js is loaded.
|
||||
*
|
||||
* File Authors:
|
||||
* Chris Burnett (orginale fckeditordefaultstyle.js for APLAWS)
|
||||
* Jens Pelzetter
|
||||
*/
|
||||
|
||||
/* **************************************************************************************************************** */
|
||||
|
||||
|
||||
/* Editor Behavior
|
||||
--------------- */
|
||||
|
||||
FCKConfig.AutoDetectPasteFromWord = false ; //Paste Word text directly to the editor (only IE)
|
||||
FCKConfig.CleanWordKeepsStructure = true ; //Prefer to keep HTML structure, not layout
|
||||
FCKConfig.DocType = '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">' ;
|
||||
FCKConfig.ForcePasteAsPlainText = true ; //Text pasted in from another app will appear as plain text
|
||||
|
||||
|
||||
/* Styles
|
||||
------ */
|
||||
|
||||
FCKConfig.StylesXmlPath = FCKConfig.EditorPath + 'config/fckconfigOpenCCM.xml' ; //Some styles
|
||||
|
||||
/* HTML Output
|
||||
----------- */
|
||||
|
||||
FCKConfig.FormatOutput = true ; //Format output code
|
||||
FCKConfig.FormatSource = true ;
|
||||
|
||||
/* User interface
|
||||
-------------- */
|
||||
|
||||
FCKConfig.ContextMenu = ['Generic','Link','Anchor','Image','Flash','Select','Textarea','Checkbox','Radio','TextField','HiddenField','ImageButton','Button','BulletedList','NumberedList','TableCell','Table','Form'] ;
|
||||
FCKConfig.ImageDlgHideLink = true ;
|
||||
FCKConfig.ImageDlgHideAdvanced = true ;
|
||||
FCKConfig.ShowDropDialog = true ;
|
||||
FCKConfig.ToolbarSets["AplawsBasic"] = [
|
||||
['Style','-','OrderedList','UnorderedList','Subscript', 'Superscript', '-','SpellCheck','Link','Unlink','RemoveFormat','-','ImageButton', '-', 'AdvToolbar', 'About']
|
||||
] ;
|
||||
|
||||
FCKConfig.ToolbarSets["AplawsAdvanced"] = [
|
||||
['Style','-','OrderedList','UnorderedList','Subscript', 'Superscript'],
|
||||
['Cut','Copy','Paste','PasteText','PasteWord','Undo','Redo','RemoveFormat'],
|
||||
['Find','Replace','SelectAll', '-','SpellCheck'],
|
||||
'/',
|
||||
['Link','Unlink','Anchor','-','Source'],
|
||||
['SimpleToolbar']
|
||||
] ;
|
||||
|
||||
|
||||
// Replace the Advanced toolbar with AplawsAdvanced & setup the Basic toolbar to use the AplawsBasic toolbar
|
||||
// The two toolbars are used to support the dynamic toolbar switching plugin.
|
||||
// Set the Default to be the Basic version so that the editor loads the basic toolbar on startup.
|
||||
|
||||
FCKConfig.ToolbarSets["Advanced"] = FCKConfig.ToolbarSets["AplawsAdvanced"] ;
|
||||
FCKConfig.ToolbarSets["Basic"] = FCKConfig.ToolbarSets["AplawsBasic"] ;
|
||||
FCKConfig.ToolbarSets["Default"] = FCKConfig.ToolbarSets["Basic"] ;
|
||||
|
||||
/* Advanced
|
||||
-------- */
|
||||
FCKConfig.FirefoxSpellChecker = true ;
|
||||
FCKConfig.SpellChecker = 'ieSpell' ; // 'ieSpell' | 'SpellerPages'
|
||||
FCKConfig.IeSpellDownloadUrl = 'http://www.iespell.com/rel/ieSpellSetup211325.exe' ;
|
||||
|
||||
/* File Browser and Updoader
|
||||
------------------------- */
|
||||
|
||||
FCKConfig.LinkBrowser = true ;
|
||||
FCKConfig.LinkBrowserURL = "/ccm/content/admin/search.jsp?useURL=true&widget=getElementById('txtUrl')" ;
|
||||
FCKConfig.LinkBrowserWindowWidth = FCKConfig.ScreenWidth * 0.7 ; // 70%
|
||||
FCKConfig.LinkBrowserWindowHeight = FCKConfig.ScreenHeight * 0.7 ; // 70%
|
||||
|
||||
|
||||
/*
|
||||
FCKConfig.ToolbarSets["AplawsBasic"] = [
|
||||
['Style','-','Bold','OrderedList','UnorderedList','-','SpellCheck','Link','Unlink','RemoveFormat','-','AdvToolbar']
|
||||
] ;
|
||||
|
||||
FCKConfig.ToolbarSets["AplawsAdvanced"] = [
|
||||
['Style','-','Bold','OrderedList','UnorderedList'],
|
||||
['Cut','Copy','Paste','PasteText','PasteWord','Undo','Redo','RemoveFormat'],
|
||||
['Find','Replace','SelectAll', '-','SpellCheck'],
|
||||
'/',
|
||||
['UniversalKey'],
|
||||
['Link','Unlink','Anchor','-','Source'],
|
||||
['SimpleToolbar']
|
||||
] ;
|
||||
|
||||
|
||||
// Replace the Advanced toolbar with AplawsAdvanced & setup the Basic toolbar to use the AplawsBasic toolbar
|
||||
// The two toolbars are used to support the dynamic toolbar switching plugin.
|
||||
// Set the Default to be the Basic version so that the editor loads the basic toolbar on startup.
|
||||
|
||||
FCKConfig.ToolbarSets["Advanced"] = FCKConfig.ToolbarSets["AplawsAdvanced"] ;
|
||||
FCKConfig.ToolbarSets["Basic"] = FCKConfig.ToolbarSets["AplawsBasic"] ;
|
||||
FCKConfig.ToolbarSets["Default"] = FCKConfig.ToolbarSets["Basic"] ;
|
||||
|
||||
|
||||
FCKConfig.StylesXmlPath = FCKConfig.EditorPath + 'config/fckconfigstyledefault.xml' ;
|
||||
FCKConfig.ContextMenu = ['Generic','Link','Anchor','Image','Flash','Select','Textarea','Checkbox','Radio','TextField','HiddenField','ImageButton','Button','BulletedList','NumberedList','TableCell','Table','Form'] ;
|
||||
|
||||
FCKConfig.SpellChecker = 'ieSpell' ; // 'ieSpell' | 'SpellerPages'
|
||||
FCKConfig.IeSpellDownloadUrl = 'http://www.iespell.com/rel/ieSpellSetup211325.exe' ;
|
||||
|
||||
FCKConfig.ImageDlgHideLink = true ;
|
||||
FCKConfig.ImageDlgHideAdvanced = true ;
|
||||
|
||||
FCKConfig.FlashDlgHideAdvanced = true ;
|
||||
|
||||
FCKConfig.LinkBrowser = true ;
|
||||
FCKConfig.LinkBrowserURL = "/ccm/content/admin/search.jsp?useURL=true&widget=getElementById('txtUrl')" ;
|
||||
FCKConfig.LinkBrowserWindowWidth = FCKConfig.ScreenWidth * 0.7 ; // 70%
|
||||
FCKConfig.LinkBrowserWindowHeight = FCKConfig.ScreenHeight * 0.7 ; // 70%
|
||||
*/
|
||||
|
||||
|
|
@ -0,0 +1,12 @@
|
|||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
|
||||
|
||||
<Styles>
|
||||
<Style name="Heading 3" element="h3" />
|
||||
<Style name="Heading 4" element="h4" />
|
||||
<Style name="Heading 5" element="h5" />
|
||||
<Style name="Heading 6" element="h6" />
|
||||
<Style name="Emphasized" element="em" />
|
||||
<Style name="Strong emphasized" element="strong" />
|
||||
<Style name="Body Text" element="p" />
|
||||
</Styles>
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
/* This compressed file is part of Xinha. For uncompressed sources, forum, and bug reports, go to xinha.org */
|
||||
/* This file is part of version 0.95 released Mon, 12 May 2008 17:33:15 +0200 */
|
||||
/* The URL of the most recent version of this file is http://svn.xinha.webfactional.com/trunk/examples/XinhaConfig.js */
|
||||
xinha_init=null;
|
||||
xinha_config=null;
|
||||
xinha_init=xinha_init?xinha_init:function(){
|
||||
xinha_editors=xinha_editors?xinha_editors:["myTextArea","anotherOne"];
|
||||
xinha_plugins=xinha_plugins?xinha_plugins:["CharacterMap","ContextMenu","SmartReplace","Stylist","Linker","SuperClean","TableOperations"];
|
||||
if(!Xinha.loadPlugins(xinha_plugins,xinha_init)){
|
||||
return;
|
||||
}
|
||||
xinha_config=xinha_config?xinha_config():new Xinha.Config();
|
||||
xinha_config.pageStyleSheets=[_editor_url+"examples/full_example.css"];
|
||||
xinha_editors=Xinha.makeEditors(xinha_editors,xinha_config,xinha_plugins);
|
||||
Xinha.startEditors(xinha_editors);
|
||||
};
|
||||
Xinha.addOnloadHandler(xinha_init);
|
||||
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
<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.web.URL"/>
|
||||
<jsp:directive.page import="com.arsdigita.web.RedirectSignal"/>
|
||||
|
||||
<jsp:scriptlet>
|
||||
// throw new RedirectSignal(URL.there(request, "/navigation/"), false);
|
||||
throw new RedirectSignal(URL.there(request, "/portal/"), false);
|
||||
</jsp:scriptlet>
|
||||
</jsp:root>
|
||||
|
|
@ -0,0 +1,41 @@
|
|||
<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.navigation.NavigationModel,
|
||||
com.arsdigita.navigation.cms.CMSNavigationModel"/>
|
||||
|
||||
<jsp:declaration>
|
||||
NavigationModel model = new CMSNavigationModel();
|
||||
</jsp:declaration>
|
||||
|
||||
<define:page name="itemPage" application="content-section"
|
||||
title="APLAWS" cache="true">
|
||||
|
||||
<define:component name="categoryPath"
|
||||
classname="com.arsdigita.navigation.ui.category.Path"/>
|
||||
<jsp:scriptlet>
|
||||
((com.arsdigita.navigation.ui.category.Path)categoryPath)
|
||||
.setModel(model);
|
||||
</jsp:scriptlet>
|
||||
<define:component name="categoryMenu"
|
||||
classname="com.arsdigita.navigation.ui.category.Menu"/>
|
||||
<jsp:scriptlet>
|
||||
((com.arsdigita.navigation.ui.category.Menu)categoryMenu)
|
||||
.setModel(model);
|
||||
</jsp:scriptlet>
|
||||
<define:component name="itemXML"
|
||||
classname="com.arsdigita.cms.dispatcher.ContentPanel"/>
|
||||
|
||||
<define:component name="relatedItems"
|
||||
classname="com.arsdigita.navigation.ui.RelatedItems"/>
|
||||
|
||||
<define:component name="assignedTerms"
|
||||
classname="com.arsdigita.bundle.ui.AssignedItemTerms"/>
|
||||
</define:page>
|
||||
|
||||
<show:all/>
|
||||
|
||||
</jsp:root>
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
<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">
|
||||
|
||||
<define:page name="autoCategories" pageClass="com.arsdigita.cms.ui.authoring.EmptyPage" title="autoCategories" cache="true">
|
||||
|
||||
<define:component name="autoTerms"
|
||||
classname="com.arsdigita.aplaws.ui.AutoTerms"/>
|
||||
</define:page>
|
||||
|
||||
<show:all/>
|
||||
</jsp:root>
|
||||
|
|
@ -0,0 +1,23 @@
|
|||
<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">
|
||||
|
||||
<define:page name="childCategories"
|
||||
pageClass="com.arsdigita.cms.ui.authoring.EmptyPage"
|
||||
title="childCategories"
|
||||
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"
|
||||
classname="com.arsdigita.london.terms.ui.CategorySubtree"/>
|
||||
</define:page>
|
||||
|
||||
<show:all/>
|
||||
</jsp:root>
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
<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:scriptlet>
|
||||
((Object)null).hashCode();
|
||||
</jsp:scriptlet>
|
||||
|
||||
</jsp:root>
|
||||
|
|
@ -0,0 +1,49 @@
|
|||
<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="person"
|
||||
application="content"
|
||||
title="person4Homepages"
|
||||
cache="false">
|
||||
|
||||
<define:component name="personList"
|
||||
classname="com.arsdigita.london.navigation.ui.object.ComplexObjectList"/>
|
||||
<jsp:scriptlet>
|
||||
((com.arsdigita.london.navigation.ui.object.ComplexObjectList) personList).setDefinition(new CMSDataCollectionDefinition());
|
||||
((com.arsdigita.london.navigation.ui.object.ComplexObjectList) personList).setRenderer(new CMSDataCollectionRenderer());
|
||||
((com.arsdigita.london.navigation.ui.object.ComplexObjectList) personList).getDefinition().setObjectType("com.arsdigita.cms.contenttypes.GenericPerson");
|
||||
((com.arsdigita.london.navigation.ui.object.ComplexObjectList) personList).getRenderer().setSpecializeObjects(true);
|
||||
((com.arsdigita.london.navigation.ui.object.ComplexObjectList) personList).getDefinition().setDescendCategories(true);
|
||||
((com.arsdigita.london.navigation.ui.object.ComplexObjectList) personList).getDefinition().setExcludeIndexObjects(false);
|
||||
((com.arsdigita.london.navigation.ui.object.ComplexObjectList) personList).getDefinition().setFilterCategory(false);
|
||||
((com.arsdigita.london.navigation.ui.object.ComplexObjectList) personList).getRenderer().setPageSize(99999);
|
||||
if((request.getParameterMap().get("DaBInId") != null) && (((String[])request.getParameterMap().get("DaBInId")).length > 0)) {
|
||||
String[] params = (String[]) request.getParameterMap().get("DaBInId");
|
||||
String dabinid = params[0];
|
||||
((com.arsdigita.london.navigation.ui.object.ComplexObjectList) personList).setSQLFilter(String.format("pageDescription LIKE '%%DaBInId={%s}%%'", dabinid));
|
||||
}
|
||||
|
||||
</jsp:scriptlet>
|
||||
</define:page>
|
||||
|
||||
<show:all/>
|
||||
|
||||
</jsp:root>
|
||||
|
|
@ -0,0 +1,52 @@
|
|||
<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="publications"
|
||||
application="content"
|
||||
title="Publications4Homepages"
|
||||
cache="false">
|
||||
|
||||
<define:component name="projectList"
|
||||
classname="com.arsdigita.london.navigation.ui.object.ComplexObjectList"/>
|
||||
<jsp:scriptlet>
|
||||
((com.arsdigita.london.navigation.ui.object.ComplexObjectList) projectList).setDefinition(new CMSDataCollectionDefinition());
|
||||
((com.arsdigita.london.navigation.ui.object.ComplexObjectList) projectList).setRenderer(new CMSDataCollectionRenderer());
|
||||
((com.arsdigita.london.navigation.ui.object.ComplexObjectList) projectList).getDefinition().setObjectType("com.arsdigita.cms.contenttypes.SciProject");
|
||||
((com.arsdigita.london.navigation.ui.object.ComplexObjectList) projectList).getRenderer().setSpecializeObjects(true);
|
||||
((com.arsdigita.london.navigation.ui.object.ComplexObjectList) projectList).getDefinition().setDescendCategories(true);
|
||||
((com.arsdigita.london.navigation.ui.object.ComplexObjectList) projectList).getDefinition().setExcludeIndexObjects(false);
|
||||
((com.arsdigita.london.navigation.ui.object.ComplexObjectList) projectList).getDefinition().setFilterCategory(false);
|
||||
((com.arsdigita.london.navigation.ui.object.ComplexObjectList) projectList).getDefinition().setAddOrder("title");
|
||||
((com.arsdigita.london.navigation.ui.object.ComplexObjectList) projectList).getRenderer().setSpecializeObjectsContext("sciProjectList");
|
||||
if((request.getParameterMap().get("DaBInId") != null) && (((String[])request.getParameterMap().get("DaBInId")).length > 0)) {
|
||||
String[] params = (String[]) request.getParameterMap().get("DaBInId");
|
||||
String dabinid = params[0];
|
||||
((com.arsdigita.london.navigation.ui.object.ComplexObjectList) projectList).setSQLFilter(String.format("persons.pageDescription LIKE '%%DaBInId={%s}%%'", dabinid));
|
||||
|
||||
}
|
||||
|
||||
((com.arsdigita.london.navigation.ui.object.ComplexObjectList) projectList).getRenderer().setPageSize(99999);
|
||||
</jsp:scriptlet>
|
||||
</define:page>
|
||||
|
||||
<show:all/>
|
||||
|
||||
</jsp:root>
|
||||
|
|
@ -0,0 +1,51 @@
|
|||
<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="publications"
|
||||
application="content"
|
||||
title="Publications4Homepages"
|
||||
cache="false">
|
||||
|
||||
<define:component name="publicationList"
|
||||
classname="com.arsdigita.london.navigation.ui.object.ComplexObjectList"/>
|
||||
<jsp:scriptlet>
|
||||
((com.arsdigita.london.navigation.ui.object.ComplexObjectList) publicationList).setDefinition(new CMSDataCollectionDefinition());
|
||||
((com.arsdigita.london.navigation.ui.object.ComplexObjectList) publicationList).setRenderer(new CMSDataCollectionRenderer());
|
||||
((com.arsdigita.london.navigation.ui.object.ComplexObjectList) publicationList).getDefinition().setObjectType("com.arsdigita.cms.contenttypes.Publication");
|
||||
((com.arsdigita.london.navigation.ui.object.ComplexObjectList) publicationList).getRenderer().setSpecializeObjects(true);
|
||||
((com.arsdigita.london.navigation.ui.object.ComplexObjectList) publicationList).getDefinition().setDescendCategories(true);
|
||||
((com.arsdigita.london.navigation.ui.object.ComplexObjectList) publicationList).getDefinition().setExcludeIndexObjects(false);
|
||||
((com.arsdigita.london.navigation.ui.object.ComplexObjectList) publicationList).getDefinition().setFilterCategory(false);
|
||||
((com.arsdigita.london.navigation.ui.object.ComplexObjectList) publicationList).getDefinition().addOrder("yearOfPublication desc");
|
||||
if((request.getParameterMap().get("DaBInId") != null) && (((String[])request.getParameterMap().get("DaBInId")).length > 0)) {
|
||||
String[] params = (String[]) request.getParameterMap().get("DaBInId");
|
||||
String dabinid = params[0];
|
||||
((com.arsdigita.london.navigation.ui.object.ComplexObjectList) publicationList).setSQLFilter(String.format("authors.pageDescription LIKE '%%DaBInId={%s}%%'", dabinid));
|
||||
|
||||
}
|
||||
|
||||
((com.arsdigita.london.navigation.ui.object.ComplexObjectList) publicationList).getRenderer().setPageSize(99999);
|
||||
</jsp:scriptlet>
|
||||
</define:page>
|
||||
|
||||
<show:all/>
|
||||
|
||||
</jsp:root>
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
<jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="1.2">
|
||||
|
||||
<jsp:directive.page import="com.arsdigita.dispatcher.DispatcherHelper" />
|
||||
|
||||
<jsp:scriptlet>
|
||||
|
||||
String returnURL = request.getParameter("returnURL");
|
||||
|
||||
if ( returnURL == null ) {
|
||||
returnURL = "/";
|
||||
}
|
||||
|
||||
String mode = request.getParameter("textOnly");
|
||||
if ("1".equals(mode)) {
|
||||
if (!returnURL.startsWith("/text")) {
|
||||
returnURL = "/text" + returnURL;
|
||||
}
|
||||
} else {
|
||||
if (returnURL.startsWith("/text")) {
|
||||
returnURL = returnURL.substring(5);
|
||||
}
|
||||
}
|
||||
|
||||
response.sendRedirect(returnURL);
|
||||
</jsp:scriptlet>
|
||||
|
||||
</jsp:root>
|
||||
|
|
@ -0,0 +1,9 @@
|
|||
Information for administrators and developers:
|
||||
|
||||
This directory contains Navigation item pages specifically crafted for
|
||||
Scientific CMS. The are activated by a customized template.txt file list.
|
||||
|
||||
These file may be overwritten or ammended by site specific templates stored
|
||||
in den bundles subdirectory. In case of additional templates a customised
|
||||
template.txt must be provided and activated in the integrations.properties
|
||||
configuration file.
|
||||
|
|
@ -0,0 +1,61 @@
|
|||
<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.navigation.Navigation"/>
|
||||
<jsp:directive.page import="com.arsdigita.navigation.cms.CMSDataCollectionDefinition"/>
|
||||
<jsp:directive.page import="com.arsdigita.navigation.cms.CMSDataCollectionRenderer"/>
|
||||
<jsp:directive.page import="com.arsdigita.navigation.ui.object.CustomizableObjectList"/>
|
||||
|
||||
<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="false">
|
||||
<define:component name="greetingItem"
|
||||
classname="com.arsdigita.navigation.ui.GreetingItem"/>
|
||||
<define:component name="categoryPath"
|
||||
classname="com.arsdigita.navigation.ui.category.Path"/>
|
||||
<define:component name="categoryMenu"
|
||||
classname="com.arsdigita.navigation.ui.category.Menu"/>
|
||||
<define:component name="itemList"
|
||||
classname="com.arsdigita.navigation.ui.object.CustomizableObjectList"/>
|
||||
|
||||
<jsp:scriptlet>
|
||||
CustomizableObjectList objList = (CustomizableObjectList) itemList;
|
||||
objList.setDefinition(new CMSDataCollectionDefinition());
|
||||
objList.setRenderer(new CMSDataCollectionRenderer());
|
||||
objList.setCustomName("SciPublicationsList");
|
||||
objList.getDefinition().setObjectType("com.arsdigita.cms.contenttypes.Publication");
|
||||
objList.getDefinition().setDescendCategories(false);
|
||||
objList.addTextFilter("title", "title");
|
||||
objList.addTextFilter("authors.surname", "author");
|
||||
objList.addSelectFilter("yearOfPublication", "yearOfPublication", true, true, true, true);
|
||||
objList.addSortField("title", "title asc");
|
||||
objList.addSortField("yearAsc", "yearOfPublication asc");
|
||||
objList.addSortField("yearDesc", "yearOfPublication desc");
|
||||
objList.addSortField("authors", "authors.surname asc, authors.givenname asc");
|
||||
objList.getDefinition().addOrder(objList.getOrder(request.getParameter("sort")));
|
||||
|
||||
objList.getRenderer().setPageSize(20);
|
||||
objList.getRenderer().setSpecializeObjects(true);
|
||||
|
||||
</jsp:scriptlet>
|
||||
|
||||
<define:component name="assignedTerms"
|
||||
classname="com.arsdigita.navigation.ui.CategoryIndexAssignedTerms"/>
|
||||
|
||||
</define:page>
|
||||
<show:all/>
|
||||
|
||||
</jsp:root>
|
||||
|
|
@ -0,0 +1,46 @@
|
|||
<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.navigation.Navigation"/>
|
||||
<jsp:directive.page import="com.arsdigita.navigation.cms.CMSDataCollectionDefinition"/>
|
||||
<jsp:directive.page import="com.arsdigita.navigation.cms.CMSDataCollectionRenderer"/>
|
||||
<jsp:directive.page import="org.apache.log4j.Logger"/>
|
||||
|
||||
<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="false">
|
||||
<define:component name="greetingItem"
|
||||
classname="com.arsdigita.navigation.ui.GreetingItem"/>
|
||||
<define:component name="categoryPath"
|
||||
classname="com.arsdigita.navigation.ui.category.Path"/>
|
||||
<define:component name="categoryMenu"
|
||||
classname="com.arsdigita.navigation.ui.category.Menu"/>
|
||||
<define:component name="itemList"
|
||||
classname="com.arsdigita.navigation.ui.object.ComplexObjectList"/>
|
||||
<jsp:scriptlet>
|
||||
((com.arsdigita.navigation.ui.object.ComplexObjectList) itemList).setDefinition(new CMSDataCollectionDefinition());
|
||||
((com.arsdigita.navigation.ui.object.ComplexObjectList) itemList).setRenderer(new CMSDataCollectionRenderer());
|
||||
((com.arsdigita.navigation.ui.object.ComplexObjectList) itemList).getDefinition().setObjectType("com.arsdigita.cms.ContentPage");
|
||||
((com.arsdigita.navigation.ui.object.ComplexObjectList) itemList).getDefinition().addOrder("parent.categories.link.sortKey");
|
||||
((com.arsdigita.navigation.ui.object.ComplexObjectList) itemList).getRenderer().setPageSize(20);
|
||||
((com.arsdigita.navigation.ui.object.ComplexObjectList) itemList).getRenderer().setSpecializeObjects(true);
|
||||
</jsp:scriptlet>
|
||||
|
||||
<define:component name="assignedTerms"
|
||||
classname="com.arsdigita.navigation.ui.CategoryIndexAssignedTerms"/>
|
||||
</define:page>
|
||||
<show:all/>
|
||||
</jsp:root>
|
||||
|
|
@ -0,0 +1,51 @@
|
|||
<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.navigation.Navigation"/>
|
||||
<jsp:directive.page import="com.arsdigita.navigation.cms.CMSDataCollectionDefinition"/>
|
||||
<jsp:directive.page import="com.arsdigita.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="atozItemPage" application="navigation"
|
||||
title="Navigation" cache="true">
|
||||
|
||||
<define:component name="greetingItem"
|
||||
classname="com.arsdigita.navigation.ui.GreetingItem"/>
|
||||
<define:component name="categoryPath"
|
||||
classname="com.arsdigita.navigation.ui.category.Path"/>
|
||||
<define:component name="categoryMenu"
|
||||
classname="com.arsdigita.navigation.ui.category.Menu"/>
|
||||
<define:component name="itemList"
|
||||
classname="com.arsdigita.navigation.ui.object.AtoZObjectList"/>
|
||||
<jsp:scriptlet>
|
||||
((com.arsdigita.navigation.ui.object.AtoZObjectList) itemList).setDefinition(new CMSDataCollectionDefinition());
|
||||
((com.arsdigita.navigation.ui.object.AtoZObjectList) itemList).setRenderer(new CMSDataCollectionRenderer());
|
||||
((com.arsdigita.navigation.ui.object.AtoZObjectList) itemList).getDefinition().setObjectType("com.arsdigita.cms.ContentPage");
|
||||
|
||||
((com.arsdigita.navigation.ui.object.AtoZObjectList) itemList).getDefinition().setDescendCategories(false);
|
||||
((com.arsdigita.navigation.ui.object.AtoZObjectList) itemList).getDefinition().addOrder("title");
|
||||
|
||||
((com.arsdigita.navigation.ui.object.AtoZObjectList) itemList).getRenderer().setPageSize(20);
|
||||
((com.arsdigita.navigation.ui.object.AtoZObjectList) itemList).getRenderer().addAttribute("objectType");
|
||||
((com.arsdigita.navigation.ui.object.AtoZObjectList) itemList).getRenderer().addAttribute( "title");
|
||||
((com.arsdigita.navigation.ui.object.AtoZObjectList) itemList).getRenderer().addAttribute( "definition");
|
||||
((com.arsdigita.navigation.ui.object.AtoZObjectList) itemList).getRenderer().addAttribute( "summary");
|
||||
((com.arsdigita.navigation.ui.object.AtoZObjectList) itemList).getRenderer().addAttribute( "lead");
|
||||
</jsp:scriptlet>
|
||||
</define:page>
|
||||
|
||||
<show:all/>
|
||||
</jsp:root>
|
||||
|
|
@ -0,0 +1,59 @@
|
|||
<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.navigation.Navigation"/>
|
||||
<jsp:directive.page import="com.arsdigita.navigation.cms.CMSDataCollectionDefinition"/>
|
||||
<jsp:directive.page import="com.arsdigita.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.navigation.ui.GreetingItem"/>
|
||||
<define:component name="categoryPath"
|
||||
classname="com.arsdigita.navigation.ui.category.Path"/>
|
||||
<define:component name="categoryMenu"
|
||||
classname="com.arsdigita.navigation.ui.category.Menu"/>
|
||||
<define:component name="itemList"
|
||||
classname="com.arsdigita.navigation.ui.object.SimpleObjectList"/>
|
||||
<jsp:scriptlet>
|
||||
((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).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");
|
||||
</jsp:scriptlet>
|
||||
|
||||
<define:component name="assignedTerms"
|
||||
classname="com.arsdigita.navigation.ui.CategoryIndexAssignedTerms"/>
|
||||
|
||||
</define:page>
|
||||
<show:all/>
|
||||
</jsp:root>
|
||||
|
|
@ -0,0 +1,73 @@
|
|||
<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.navigation.Navigation"/>
|
||||
<jsp:directive.page import="com.arsdigita.navigation.cms.CMSDataCollectionDefinition"/>
|
||||
<jsp:directive.page import="com.arsdigita.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.navigation.ui.GreetingItem"/>
|
||||
<define:component name="categoryPath"
|
||||
classname="com.arsdigita.navigation.ui.category.Path"/>
|
||||
<define:component name="categoryMenu"
|
||||
classname="com.arsdigita.navigation.ui.category.Menu"/>
|
||||
<define:component name="eventList"
|
||||
classname="com.arsdigita.navigation.ui.object.ComplexObjectList"/>
|
||||
<jsp:scriptlet>
|
||||
((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)");
|
||||
|
||||
// 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.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).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");
|
||||
</jsp:scriptlet>
|
||||
|
||||
<define:component name="assignedTerms"
|
||||
classname="com.arsdigita.navigation.ui.CategoryIndexAssignedTerms"/>
|
||||
|
||||
</define:page>
|
||||
<show:all/>
|
||||
</jsp:root>
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
<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 template to use a portal page as index page in navigation --%>
|
||||
|
||||
<jsp:directive.page import="com.arsdigita.dispatcher.DispatcherHelper"/>
|
||||
<jsp:directive.page import="com.arsdigita.navigation.Navigation"/>
|
||||
<jsp:directive.page import="com.arsdigita.bebop.parameters.BigDecimalParameter"/>
|
||||
<jsp:directive.page import="com.arsdigita.aplaws.ui.CategoryPortalSelectionModel"/>
|
||||
|
||||
<jsp:scriptlet>
|
||||
long age = Navigation.getConfig().getIndexPageCacheLifetime();
|
||||
if (age == 0) {
|
||||
DispatcherHelper.cacheDisable(response);
|
||||
} else {
|
||||
DispatcherHelper.cacheForWorld(response, (int)age);
|
||||
}
|
||||
</jsp:scriptlet>
|
||||
|
||||
<define:page name="portalsPage" application="navigation"
|
||||
title="Navigation" cache="true">
|
||||
|
||||
<define:component name="categoryPath"
|
||||
classname="com.arsdigita.navigation.ui.category.Path"/>
|
||||
<define:component name="categoryMenu"
|
||||
classname="com.arsdigita.navigation.ui.category.Menu"/>
|
||||
<define:component name="portalWorkspace"
|
||||
classname="com.arsdigita.portalworkspace.ui.WorkspaceViewer"/>
|
||||
<jsp:scriptlet>
|
||||
((com.arsdigita.portalworkspace.ui.WorkspaceViewer) portalWorkspace).setWorkspaceModel(new CategoryPortalSelectionModel());
|
||||
</jsp:scriptlet>
|
||||
</define:page>
|
||||
|
||||
<show:all/>
|
||||
</jsp:root>
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
<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 template to use a portal page as index page in navigation -->
|
||||
|
||||
<jsp:directive.page import="com.arsdigita.dispatcher.DispatcherHelper"/>
|
||||
<jsp:directive.page import="com.arsdigita.navigation.Navigation"/>
|
||||
<jsp:directive.page import="com.arsdigita.bebop.parameters.BigDecimalParameter"/>
|
||||
<jsp:directive.page import="com.arsdigita.aplaws.ui.CategoryPortalSelectionModel"/>
|
||||
|
||||
<jsp:scriptlet>
|
||||
long age = Navigation.getConfig().getIndexPageCacheLifetime();
|
||||
if (age == 0) {
|
||||
DispatcherHelper.cacheDisable(response);
|
||||
} else {
|
||||
DispatcherHelper.cacheForWorld(response, (int)age);
|
||||
}
|
||||
</jsp:scriptlet>
|
||||
|
||||
<define:page name="portalsPage" application="navigation"
|
||||
title="Navigation" cache="true">
|
||||
|
||||
<define:component name="categoryPath"
|
||||
classname="com.arsdigita.navigation.ui.category.Path"/>
|
||||
<define:component name="categoryMenu"
|
||||
classname="com.arsdigita.navigation.ui.category.Menu"/>
|
||||
<define:component name="portalWorkspace"
|
||||
classname="com.arsdigita.portalworkspace.ui.WorkspaceViewer"/>
|
||||
<jsp:scriptlet>
|
||||
((com.arsdigita.portalworkspace.ui.WorkspaceViewer) portalWorkspace).setWorkspaceModel(new CategoryPortalSelectionModel());
|
||||
</jsp:scriptlet>
|
||||
</define:page>
|
||||
|
||||
<show:all/>
|
||||
</jsp:root>
|
||||
|
|
@ -0,0 +1,56 @@
|
|||
<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.navigation.Navigation"/>
|
||||
<jsp:directive.page import="com.arsdigita.navigation.cms.CMSDataCollectionDefinition"/>
|
||||
<jsp:directive.page import="com.arsdigita.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="recentItemPage" application="navigation"
|
||||
title="Navigation" cache="true">
|
||||
|
||||
<define:component name="greetingItem"
|
||||
classname="com.arsdigita.navigation.ui.GreetingItem"/>
|
||||
<define:component name="categoryPath"
|
||||
classname="com.arsdigita.navigation.ui.category.Path"/>
|
||||
<define:component name="categoryMenu"
|
||||
classname="com.arsdigita.navigation.ui.category.Menu"/>
|
||||
<define:component name="itemList"
|
||||
classname="com.arsdigita.navigation.ui.object.SimpleObjectList"/>
|
||||
<jsp:scriptlet>
|
||||
((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("id");
|
||||
|
||||
((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( "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");
|
||||
|
||||
</jsp:scriptlet>
|
||||
</define:page>
|
||||
|
||||
<show:all/>
|
||||
</jsp:root>
|
||||
|
|
@ -0,0 +1,121 @@
|
|||
<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 template for the ZeS welcome / start page using navigation -->
|
||||
|
||||
<jsp:directive.page import="com.arsdigita.dispatcher.DispatcherHelper"/>
|
||||
<jsp:directive.page import="com.arsdigita.bebop.parameters.BigDecimalParameter"/>
|
||||
<jsp:directive.page import="com.arsdigita.navigation.Navigation"/>
|
||||
<jsp:directive.page import="com.arsdigita.navigation.cms.CMSDataCollectionDefinition"/>
|
||||
<jsp:directive.page import="com.arsdigita.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.navigation.ui.GreetingItem"/>
|
||||
<define:component name="categoryPath"
|
||||
classname="com.arsdigita.navigation.ui.category.Path"/>
|
||||
<define:component name="categoryMenu"
|
||||
classname="com.arsdigita.navigation.ui.category.Menu"/>
|
||||
<define:component name="itemList"
|
||||
classname="com.arsdigita.navigation.ui.object.SimpleObjectList"/>
|
||||
<jsp:scriptlet>
|
||||
((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).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("eventDate");
|
||||
((com.arsdigita.navigation.ui.object.SimpleObjectList) itemList).getRenderer().addAttribute("launchDate");
|
||||
((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");
|
||||
</jsp:scriptlet>
|
||||
<define:component name="eventList"
|
||||
classname="com.arsdigita.navigation.ui.object.ComplexObjectList"/>
|
||||
<jsp:scriptlet>
|
||||
((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)");
|
||||
|
||||
// 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.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).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");
|
||||
</jsp:scriptlet>
|
||||
<define:component name="newsList"
|
||||
classname="com.arsdigita.navigation.ui.object.ComplexObjectList"/>
|
||||
<jsp:scriptlet>
|
||||
((com.arsdigita.navigation.ui.object.ComplexObjectList) newsList).setDefinition(new CMSDataCollectionDefinition());
|
||||
((com.arsdigita.navigation.ui.object.ComplexObjectList) newsList).setRenderer(new CMSDataCollectionRenderer());
|
||||
((com.arsdigita.navigation.ui.object.ComplexObjectList) newsList).getDefinition().setObjectType("com.arsdigita.cms.contenttypes.NewsItem");
|
||||
|
||||
((com.arsdigita.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.MONTH, -2);
|
||||
((com.arsdigita.navigation.ui.object.ComplexObjectList) newsList).setParameter("oldNewsDate", oldDate.getTime());
|
||||
|
||||
((com.arsdigita.navigation.ui.object.ComplexObjectList) newsList).getDefinition().setDescendCategories(true);
|
||||
((com.arsdigita.navigation.ui.object.ComplexObjectList) newsList).getDefinition().addOrder("newsDate desc");
|
||||
|
||||
((com.arsdigita.navigation.ui.object.ComplexObjectList) newsList).getRenderer().setPageSize(5);
|
||||
((com.arsdigita.navigation.ui.object.ComplexObjectList) newsList).getRenderer().addAttribute("objectType");
|
||||
((com.arsdigita.navigation.ui.object.ComplexObjectList) newsList).getRenderer().addAttribute("title");
|
||||
((com.arsdigita.navigation.ui.object.ComplexObjectList) newsList).getRenderer().addAttribute("lead");
|
||||
((com.arsdigita.navigation.ui.object.ComplexObjectList) newsList).getRenderer().addAttribute("newsDate");
|
||||
</jsp:scriptlet>
|
||||
|
||||
<define:component name="assignedTerms"
|
||||
classname="com.arsdigita.navigation.ui.CategoryIndexAssignedTerms"/>
|
||||
|
||||
</define:page>
|
||||
<show:all/>
|
||||
</jsp:root>
|
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue