diff --git a/ccm-cms-types-organization/src/ccm-cms-types-organization.config b/ccm-cms-types-organization/src/ccm-cms-types-organization.config index d70feedd0..4002f41b8 100755 --- a/ccm-cms-types-organization/src/ccm-cms-types-organization.config +++ b/ccm-cms-types-organization/src/ccm-cms-types-organization.config @@ -1,7 +1,4 @@ - + diff --git a/ccm-cms-types-simpleorganization/application.xml b/ccm-cms-types-simpleorganization/application.xml new file mode 100644 index 000000000..b2e215147 --- /dev/null +++ b/ccm-cms-types-simpleorganization/application.xml @@ -0,0 +1,25 @@ + + + + + + + + + + + + s + + + + + + Exposed GenericOrganizationalUnit + + \ No newline at end of file diff --git a/ccm-cms-types-simpleorganization/pdl/com/arsdigita/content-types/SimpleOrganization.pdl b/ccm-cms-types-simpleorganization/pdl/com/arsdigita/content-types/SimpleOrganization.pdl new file mode 100644 index 000000000..6c17bfe98 --- /dev/null +++ b/ccm-cms-types-simpleorganization/pdl/com/arsdigita/content-types/SimpleOrganization.pdl @@ -0,0 +1,12 @@ +model com.arsdigita.cms.contenttypes; + +import com.arsdigita.kernel.ACSObject; +import com.arsdigita.cms.*; + +object type SimpleOrganization extends GenericOrganizationalUnit { + reference key (ct_simpleorganizations.organization_id); +} + +object type SimpleOrganizationBundle extends GenericOrganizationalUnitBundle { + reference key (ct_simpleorganization_bundles.bundle_id); +} \ No newline at end of file diff --git a/ccm-cms-types-simpleorganization/src/WEB-INF/content-types/com/arsdigita/cms/contenttypes/SimpleOrganization.xml b/ccm-cms-types-simpleorganization/src/WEB-INF/content-types/com/arsdigita/cms/contenttypes/SimpleOrganization.xml new file mode 100644 index 000000000..ea6cb2e0a --- /dev/null +++ b/ccm-cms-types-simpleorganization/src/WEB-INF/content-types/com/arsdigita/cms/contenttypes/SimpleOrganization.xml @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ccm-cms-types-simpleorganization/src/WEB-INF/traversal-adapters/com/arsdigita/cms/contenttypes/SimpleOrganization.xml b/ccm-cms-types-simpleorganization/src/WEB-INF/traversal-adapters/com/arsdigita/cms/contenttypes/SimpleOrganization.xml new file mode 100644 index 000000000..d374db42a --- /dev/null +++ b/ccm-cms-types-simpleorganization/src/WEB-INF/traversal-adapters/com/arsdigita/cms/contenttypes/SimpleOrganization.xml @@ -0,0 +1,13 @@ + + + + + + + + + + \ No newline at end of file diff --git a/ccm-cms-types-simpleorganization/src/ccm-cms-types-simpleorganization.config b/ccm-cms-types-simpleorganization/src/ccm-cms-types-simpleorganization.config new file mode 100644 index 000000000..0ece1ac86 --- /dev/null +++ b/ccm-cms-types-simpleorganization/src/ccm-cms-types-simpleorganization.config @@ -0,0 +1,3 @@ + + + diff --git a/ccm-cms-types-simpleorganization/src/ccm-cms-types-simpleorganization.load b/ccm-cms-types-simpleorganization/src/ccm-cms-types-simpleorganization.load new file mode 100644 index 000000000..f89f10ed7 --- /dev/null +++ b/ccm-cms-types-simpleorganization/src/ccm-cms-types-simpleorganization.load @@ -0,0 +1,16 @@ + + + +
+
+ + + +
+ + + + + + + \ No newline at end of file diff --git a/ccm-cms-types-simpleorganization/src/com/arsdigita/cms/contenttypes/SimpleOrganization.java b/ccm-cms-types-simpleorganization/src/com/arsdigita/cms/contenttypes/SimpleOrganization.java new file mode 100644 index 000000000..22f0513a5 --- /dev/null +++ b/ccm-cms-types-simpleorganization/src/com/arsdigita/cms/contenttypes/SimpleOrganization.java @@ -0,0 +1,37 @@ +package com.arsdigita.cms.contenttypes; + +import com.arsdigita.domain.DataObjectNotFoundException; +import com.arsdigita.persistence.DataObject; +import com.arsdigita.persistence.OID; +import java.math.BigDecimal; + +/** + * + * @author Jens Pelzetter + * @version $Id$ + */ +public class SimpleOrganization extends GenericOrganizationalUnit { + + public static final String BASE_DATA_OBJECT_TYPE = "com.arsdigita.cms.contenttypes.SimpleOrganization"; + + public SimpleOrganization() { + super(BASE_DATA_OBJECT_TYPE); + } + + public SimpleOrganization(final BigDecimal id) throws DataObjectNotFoundException { + this(new OID(BASE_DATA_OBJECT_TYPE, id)); + } + + public SimpleOrganization(final OID oid) throws DataObjectNotFoundException { + super(oid); + } + + public SimpleOrganization(final DataObject dobj) { + super(dobj); + } + + public SimpleOrganization(final String type) { + super(type); + } + +} diff --git a/ccm-cms-types-simpleorganization/src/com/arsdigita/cms/contenttypes/SimpleOrganizationBundle.java b/ccm-cms-types-simpleorganization/src/com/arsdigita/cms/contenttypes/SimpleOrganizationBundle.java new file mode 100644 index 000000000..369a3b0c3 --- /dev/null +++ b/ccm-cms-types-simpleorganization/src/com/arsdigita/cms/contenttypes/SimpleOrganizationBundle.java @@ -0,0 +1,57 @@ +package com.arsdigita.cms.contenttypes; + +import com.arsdigita.cms.ContentItem; +import com.arsdigita.domain.DataObjectNotFoundException; +import com.arsdigita.persistence.DataObject; +import com.arsdigita.persistence.OID; +import com.arsdigita.util.Assert; +import java.math.BigDecimal; + +/** + * + * @author Jens Pelzetter + * @version $Id$ + */ +public class SimpleOrganizationBundle extends GenericOrganizationalUnitBundle { + + public static final String BASE_DATA_OBJECT_TYPE = + "com.arsdigita.cms.contenttypes.SimpleOrganizationBundle"; + + public SimpleOrganizationBundle(final ContentItem primary) { + super(BASE_DATA_OBJECT_TYPE); + + Assert.exists(primary, ContentItem.class); + + setDefaultLanguage(primary.getLanguage()); + setContentType(primary.getContentType()); + addInstance(primary); + + setName(primary.getName()); + } + + public SimpleOrganizationBundle(final OID oid) + throws DataObjectNotFoundException { + super(oid); + } + + public SimpleOrganizationBundle(final BigDecimal id) + throws DataObjectNotFoundException { + super(new OID(BASE_DATA_OBJECT_TYPE, id)); + } + + public SimpleOrganizationBundle(final DataObject dobj) { + super(dobj); + } + + public SimpleOrganizationBundle(final String type) { + super(type); + } + + public SimpleOrganization getOrganization() { + return (SimpleOrganization) getPrimaryInstance(); + } + + public SimpleOrganization getOrganization(final String language) { + return (SimpleOrganization) getInstance(language); + } +} diff --git a/ccm-cms-types-simpleorganization/src/com/arsdigita/cms/contenttypes/SimpleOrganizationInitializer.java b/ccm-cms-types-simpleorganization/src/com/arsdigita/cms/contenttypes/SimpleOrganizationInitializer.java new file mode 100644 index 000000000..2a700acc5 --- /dev/null +++ b/ccm-cms-types-simpleorganization/src/com/arsdigita/cms/contenttypes/SimpleOrganizationInitializer.java @@ -0,0 +1,24 @@ +package com.arsdigita.cms.contenttypes; + +/** + * + * @author Jens Pelzetter + * @version $Id$ + */ +public class SimpleOrganizationInitializer extends ContentTypeInitializer { + + public SimpleOrganizationInitializer() { + super("ccm-cms-types-simpleorganization.pdl.mf", + SimpleOrganization.BASE_DATA_OBJECT_TYPE); + } + + @Override + public String[] getStylesheets() { + return new String[]{INTERNAL_THEME_TYPES_DIR + "SimpleOrganization.xsl"}; + } + + @Override + public String getTraversalXML() { + return "/WEB-INF/traversal-adapters/com/arsdigita/cms/contenttypes/SimpleOrganization.xml"; + } +} diff --git a/ccm-cms-types-simpleorganization/src/com/arsdigita/cms/contenttypes/SimpleOrganizationLoader.java b/ccm-cms-types-simpleorganization/src/com/arsdigita/cms/contenttypes/SimpleOrganizationLoader.java new file mode 100644 index 000000000..5bd3ddec4 --- /dev/null +++ b/ccm-cms-types-simpleorganization/src/com/arsdigita/cms/contenttypes/SimpleOrganizationLoader.java @@ -0,0 +1,23 @@ +package com.arsdigita.cms.contenttypes; + +/** + * + * @author Jens Pelzetter + * @version $Id$ + */ +public class SimpleOrganizationLoader extends AbstractContentTypeLoader { + + public SimpleOrganizationLoader() { + super(); + } + + private static final String[] TYPES = { + "/WEB-INF/content-types/com/arsdigita/cms/contenttypes/SimpleOrganization.xml" + }; + + @Override + public String[] getTypes() { + return TYPES; + } + +} diff --git a/ccm-cms-types-simpleorganization/src/com/arsdigita/cms/contenttypes/ui/SimpleOrganizationCreate.java b/ccm-cms-types-simpleorganization/src/com/arsdigita/cms/contenttypes/ui/SimpleOrganizationCreate.java new file mode 100644 index 000000000..9e3b98a37 --- /dev/null +++ b/ccm-cms-types-simpleorganization/src/com/arsdigita/cms/contenttypes/ui/SimpleOrganizationCreate.java @@ -0,0 +1,27 @@ +package com.arsdigita.cms.contenttypes.ui; + +import com.arsdigita.cms.ContentItem; +import com.arsdigita.cms.ItemSelectionModel; +import com.arsdigita.cms.contenttypes.GenericOrganizationalUnitBundle; +import com.arsdigita.cms.contenttypes.SimpleOrganizationBundle; +import com.arsdigita.cms.ui.authoring.CreationSelector; + +/** + * + * @author Jens Pelzetter + * @version $Id$ + */ +public class SimpleOrganizationCreate extends GenericOrganizationalUnitCreate { + + public SimpleOrganizationCreate(final ItemSelectionModel itemModel, + final CreationSelector parent) { + super(itemModel, parent); + } + + @Override + protected GenericOrganizationalUnitBundle createBundle( + final ContentItem primary) { + return new SimpleOrganizationBundle(primary); + } + +} diff --git a/ccm-cms-types-simpleorganization/src/com/arsdigita/cms/contenttypes/ui/SimpleOrganizationPropertiesStep.java b/ccm-cms-types-simpleorganization/src/com/arsdigita/cms/contenttypes/ui/SimpleOrganizationPropertiesStep.java new file mode 100644 index 000000000..e620c3473 --- /dev/null +++ b/ccm-cms-types-simpleorganization/src/com/arsdigita/cms/contenttypes/ui/SimpleOrganizationPropertiesStep.java @@ -0,0 +1,39 @@ +package com.arsdigita.cms.contenttypes.ui; + +import com.arsdigita.bebop.Component; +import com.arsdigita.cms.ItemSelectionModel; +import com.arsdigita.cms.ui.authoring.AuthoringKitWizard; +import com.arsdigita.cms.ui.authoring.BasicPageForm; +import com.arsdigita.cms.ui.workflow.WorkflowLockedComponentAccess; + +/** + * + * @author Jens Pelzetter + * @version $Id$ + */ +public class SimpleOrganizationPropertiesStep extends GenericOrganizationalUnitPropertiesStep { + + public static final String EDIT_SHEET_NAME = "edit"; + + public SimpleOrganizationPropertiesStep(final ItemSelectionModel itemModel, + final AuthoringKitWizard parent) { + super(itemModel, parent); + } + + protected void createEditSheet(final ItemSelectionModel itemModel) { + final BasicPageForm editSheet = new SimpleOrganizationPropertyForm( + itemModel, this); + add(EDIT_SHEET_NAME, + "Edit", + new WorkflowLockedComponentAccess(editSheet, itemModel), + editSheet.getSaveCancelSection().getCancelButton()); + } + + public static Component getSimpleOrganizationPropertySheet( + final ItemSelectionModel itemModel) { + final Component sheet = GenericOrganizationalUnitPropertiesStep. + getGenericOrganizationalUnitPropertySheet(itemModel); + + return sheet; + } +} diff --git a/ccm-cms-types-simpleorganization/src/com/arsdigita/cms/contenttypes/ui/SimpleOrganizationPropertyForm.java b/ccm-cms-types-simpleorganization/src/com/arsdigita/cms/contenttypes/ui/SimpleOrganizationPropertyForm.java new file mode 100644 index 000000000..8045300e4 --- /dev/null +++ b/ccm-cms-types-simpleorganization/src/com/arsdigita/cms/contenttypes/ui/SimpleOrganizationPropertyForm.java @@ -0,0 +1,43 @@ +package com.arsdigita.cms.contenttypes.ui; + +import com.arsdigita.bebop.FormProcessException; +import com.arsdigita.bebop.event.FormSectionEvent; +import com.arsdigita.cms.ItemSelectionModel; + +/** + * + * @author Jens Pelzetter + * @version $Id$ + */ +public class SimpleOrganizationPropertyForm extends GenericOrganizationalUnitPropertyForm { + + private SimpleOrganizationPropertiesStep m_step; + public static final String ID = "SimpleOrganization_edit"; + + public SimpleOrganizationPropertyForm(final ItemSelectionModel itemModel) { + this(itemModel, null); + } + + public SimpleOrganizationPropertyForm( + final ItemSelectionModel itemModel, + final SimpleOrganizationPropertiesStep step) { + super(itemModel, step); + m_step = step; + addSubmissionListener(this); + } + + @Override + public void addWidgets() { + super.addWidgets(); + } + + @Override + public void init(final FormSectionEvent fse) throws FormProcessException { + super.init(fse); + super.initBasicWidgets(fse); + } + + public void process(final FormSectionEvent fse) throws FormProcessException { + super.process(fse); + } +} diff --git a/ccm-cms-types-simpleorganization/src/com/arsdigita/cms/contenttypes/ui/SimpleOrganizationResources.properties b/ccm-cms-types-simpleorganization/src/com/arsdigita/cms/contenttypes/ui/SimpleOrganizationResources.properties new file mode 100644 index 000000000..9c40e3aea --- /dev/null +++ b/ccm-cms-types-simpleorganization/src/com/arsdigita/cms/contenttypes/ui/SimpleOrganizationResources.properties @@ -0,0 +1 @@ +sciorganization.ui.simpleorganization_properties.title=Basic properties diff --git a/ccm-cms-types-simpleorganization/src/com/arsdigita/cms/contenttypes/ui/SimpleOrganizationResources_de.properties b/ccm-cms-types-simpleorganization/src/com/arsdigita/cms/contenttypes/ui/SimpleOrganizationResources_de.properties new file mode 100644 index 000000000..5d9e28cae --- /dev/null +++ b/ccm-cms-types-simpleorganization/src/com/arsdigita/cms/contenttypes/ui/SimpleOrganizationResources_de.properties @@ -0,0 +1 @@ +sciorganization.ui.simpleorganization_properties.title=Basiseigenschaften diff --git a/ccm-cms-types-simpleorganization/web/themes/heirloom/contenttypes/SimpleOrganization.xsl b/ccm-cms-types-simpleorganization/web/themes/heirloom/contenttypes/SimpleOrganization.xsl new file mode 100644 index 000000000..aa771f5ac --- /dev/null +++ b/ccm-cms-types-simpleorganization/web/themes/heirloom/contenttypes/SimpleOrganization.xsl @@ -0,0 +1,19 @@ + +]> + + + + +

+
+ + +

+
+ +
\ No newline at end of file